forked from openlp/openlp
- Turned the two new hidden settings into registry flags
This commit is contained in:
parent
c249eb1f20
commit
68b4d62502
@ -164,8 +164,6 @@ class Settings(QtCore.QSettings):
|
|||||||
'core/display on monitor': True,
|
'core/display on monitor': True,
|
||||||
'core/override position': False,
|
'core/override position': False,
|
||||||
'core/application version': '0.0',
|
'core/application version': '0.0',
|
||||||
'core/is live item edited and replaced': False,
|
|
||||||
'core/has doubleclicking preview added item to service': False,
|
|
||||||
'images/background color': '#000000',
|
'images/background color': '#000000',
|
||||||
'media/players': 'system,webkit',
|
'media/players': 'system,webkit',
|
||||||
'media/override player': QtCore.Qt.Unchecked,
|
'media/override player': QtCore.Qt.Unchecked,
|
||||||
|
@ -488,9 +488,8 @@ class MediaManagerItem(QtWidgets.QWidget, RegistryProperties):
|
|||||||
'You must select one or more items to preview.'))
|
'You must select one or more items to preview.'))
|
||||||
else:
|
else:
|
||||||
log.debug('%s Preview requested' % self.plugin.name)
|
log.debug('%s Preview requested' % self.plugin.name)
|
||||||
# If ('advanced/double click live') is not enabled, double clicking preview adds the item to Service.
|
# Reset the flag for: "has doubleclick added item to service" to False.
|
||||||
# This setting prevents it from being sent to Service multiple times, in here it is reset to False.
|
Registry().set_flag('has doubleclick added item to service', False)
|
||||||
Settings().setValue('core/has doubleclicking preview added item to service', False)
|
|
||||||
service_item = self.build_service_item()
|
service_item = self.build_service_item()
|
||||||
if service_item:
|
if service_item:
|
||||||
service_item.from_plugin = True
|
service_item.from_plugin = True
|
||||||
|
@ -475,7 +475,7 @@ class MainDisplay(OpenLPMixin, Display, RegistryProperties):
|
|||||||
self.footer(service_item.foot_text)
|
self.footer(service_item.foot_text)
|
||||||
# if was hidden keep it hidden
|
# if was hidden keep it hidden
|
||||||
if self.hide_mode and self.is_live and not service_item.is_media():
|
if self.hide_mode and self.is_live and not service_item.is_media():
|
||||||
if Settings().value('core/auto unblank') and not Settings().value('core/is live item edited and replaced'):
|
if Settings().value('core/auto unblank'):
|
||||||
Registry().execute('slidecontroller_live_unblank')
|
Registry().execute('slidecontroller_live_unblank')
|
||||||
else:
|
else:
|
||||||
self.hide_display(self.hide_mode)
|
self.hide_display(self.hide_mode)
|
||||||
|
@ -658,7 +658,6 @@ class MainWindow(QtWidgets.QMainWindow, Ui_MainWindow, RegistryProperties):
|
|||||||
"""
|
"""
|
||||||
# This setting is set to false, in case def replace_service_manager_item in slidecontroller would crash the
|
# This setting is set to false, in case def replace_service_manager_item in slidecontroller would crash the
|
||||||
# program and make blank to modes unavailable.
|
# program and make blank to modes unavailable.
|
||||||
Settings().setValue('core/is live item edited and replaced', False)
|
|
||||||
self.application.process_events()
|
self.application.process_events()
|
||||||
for plugin in self.plugin_manager.plugins:
|
for plugin in self.plugin_manager.plugins:
|
||||||
if plugin.is_active():
|
if plugin.is_active():
|
||||||
|
@ -139,6 +139,7 @@ class SlideController(DisplayController, RegistryProperties):
|
|||||||
Set up the Slide Controller.
|
Set up the Slide Controller.
|
||||||
"""
|
"""
|
||||||
super(SlideController, self).__init__(parent)
|
super(SlideController, self).__init__(parent)
|
||||||
|
Registry().set_flag('replace service manager item', False)
|
||||||
|
|
||||||
def post_set_up(self):
|
def post_set_up(self):
|
||||||
"""
|
"""
|
||||||
@ -797,18 +798,18 @@ class SlideController(DisplayController, RegistryProperties):
|
|||||||
|
|
||||||
def replace_service_manager_item(self, item):
|
def replace_service_manager_item(self, item):
|
||||||
"""
|
"""
|
||||||
Replacement item following a remote edit
|
Replacement item following a remote edit.
|
||||||
This action also takes place when a song that is sent to live from Service Manager is edited.
|
This action also takes place when a song that is sent to live from Service Manager is edited.
|
||||||
If display is blanked, it will get unblanked if automatic unblanking is enabled. We prevent this from happening
|
If display is blanked, it will get unblanked if automatic unblanking is enabled. We prevent this from happening
|
||||||
by setting a hidden setting to "True" and then to "False" after the processing is done.
|
by setting a flag to "True" and then to "False" after the processing is done.
|
||||||
The setting is also set to "False" on every start up, should the program ever crash during this process.
|
The flag is also set to "False" on startup so display may be unblanked properly.
|
||||||
|
|
||||||
:param item: The current service item
|
:param item: The current service item
|
||||||
"""
|
"""
|
||||||
if item == self.service_item:
|
if item == self.service_item:
|
||||||
Settings().setValue('core/is live item edited and replaced', True)
|
Registry().set_flag('replace service manager item', True)
|
||||||
self._process_item(item, self.preview_widget.current_slide_number())
|
self._process_item(item, self.preview_widget.current_slide_number())
|
||||||
Settings().setValue('core/is live item edited and replaced', False)
|
Registry().set_flag('replace service manager item', False)
|
||||||
|
|
||||||
def add_service_manager_item(self, item, slide_no):
|
def add_service_manager_item(self, item, slide_no):
|
||||||
"""
|
"""
|
||||||
@ -977,9 +978,12 @@ class SlideController(DisplayController, RegistryProperties):
|
|||||||
|
|
||||||
def on_slide_unblank(self):
|
def on_slide_unblank(self):
|
||||||
"""
|
"""
|
||||||
Handle the slidecontroller unblank event
|
Handle the slidecontroller unblank event.
|
||||||
|
If we are re-processing service item, don't unblank the display
|
||||||
|
(Found in def replace_service_manager_item)
|
||||||
"""
|
"""
|
||||||
self.on_blank_display(False)
|
if not Registry().get_flag('replace service manager item') == True:
|
||||||
|
self.on_blank_display(False)
|
||||||
|
|
||||||
def on_blank_display(self, checked=None):
|
def on_blank_display(self, checked=None):
|
||||||
"""
|
"""
|
||||||
@ -1111,13 +1115,12 @@ class SlideController(DisplayController, RegistryProperties):
|
|||||||
% timeout)
|
% timeout)
|
||||||
return
|
return
|
||||||
# If "click live slide to unblank" is enabled, unblank the display. And start = Item is sent to Live.
|
# If "click live slide to unblank" is enabled, unblank the display. And start = Item is sent to Live.
|
||||||
# 'core/is live item edited and replaced' is only True when replacing Live item with the same item from Service.
|
|
||||||
# Note: If this if statement is placed at the bottom of this function instead of top slide transitions are lost.
|
# Note: If this if statement is placed at the bottom of this function instead of top slide transitions are lost.
|
||||||
if self.is_live and Settings().value('core/click live slide to unblank'):
|
if self.is_live and Settings().value('core/click live slide to unblank'):
|
||||||
# With this display stays blanked when "auto unblank" setting is not enabled and new item is sent to Live.
|
# With this display stays blanked when "auto unblank" setting is not enabled and new item is sent to Live.
|
||||||
if not Settings().value('core/auto unblank') and start:
|
if not Settings().value('core/auto unblank') and start:
|
||||||
()
|
()
|
||||||
if not start and not Settings().value('core/is live item edited and replaced'):
|
if not start:
|
||||||
Registry().execute('slidecontroller_live_unblank')
|
Registry().execute('slidecontroller_live_unblank')
|
||||||
row = self.preview_widget.current_slide_number()
|
row = self.preview_widget.current_slide_number()
|
||||||
old_selected_row = self.selected_row
|
old_selected_row = self.selected_row
|
||||||
@ -1395,9 +1398,9 @@ class SlideController(DisplayController, RegistryProperties):
|
|||||||
# Prevent same item in preview from being sent to Service multiple times. Changing preview slide resets
|
# Prevent same item in preview from being sent to Service multiple times. Changing preview slide resets
|
||||||
# this setting. Sending to preview from Service does not reset this setting, this is a design choise.
|
# this setting. Sending to preview from Service does not reset this setting, this is a design choise.
|
||||||
# Do note that this still allows to add item to Service multiple times if icon is clicked.
|
# Do note that this still allows to add item to Service multiple times if icon is clicked.
|
||||||
elif not Settings().value('core/has doubleclicking preview added item to service'):
|
elif not Registry().get_flag('has doubleclick added item to service') == True:
|
||||||
self.on_preview_add_to_service()
|
self.on_preview_add_to_service()
|
||||||
Settings().setValue('core/has doubleclicking preview added item to service', True)
|
Registry().set_flag('has doubleclick added item to service', True)
|
||||||
|
|
||||||
def on_go_live(self, field=None):
|
def on_go_live(self, field=None):
|
||||||
"""
|
"""
|
||||||
|
Loading…
Reference in New Issue
Block a user