- Fixed bug 1462420 - Double clicking Preview adds item to Service countless times

(Added hidden setting for controlling this, it is set to True once double clicking
  has added item to Service and gets reset to False once new item is sent to preview.
This commit is contained in:
suutari-olli 2016-04-17 04:13:39 +03:00
parent 5fa0687762
commit 69af91edef
3 changed files with 10 additions and 3 deletions

View File

@ -162,6 +162,7 @@ class Settings(QtCore.QSettings):
'core/display on monitor': True,
'core/override position': False,
'core/application version': '0.0',
'core/doubleclicking preview has added to service': False,
'images/background color': '#000000',
'media/players': 'system,webkit',
'media/override player': QtCore.Qt.Unchecked,

View File

@ -481,6 +481,9 @@ class MediaManagerItem(QtWidgets.QWidget, RegistryProperties):
'You must select one or more items to preview.'))
else:
log.debug('%s Preview requested' % self.plugin.name)
# If ('advanced/double click live') is not enabled, double clicking preview adds the item to Service.
# This setting prevents it from being sent to Service multiple times, in here it is reset to False.
Settings().setValue('core/doubleclicking preview has added to service', False)
service_item = self.build_service_item()
if service_item:
service_item.from_plugin = True

View File

@ -1371,10 +1371,13 @@ class SlideController(DisplayController, RegistryProperties):
Registry().execute('%s_stop' % self.service_item.name.lower(), [self.service_item, self.is_live])
if self.service_item.is_media():
self.on_media_close()
if Settings().value('core/auto unblank'):
self.on_go_live()
else:
self.on_go_live()
# If ('advanced/double click live') is not enabled, double clicking preview adds the item to Service.
# Prevent same item in preview from being sent to Service multiple times. Changing preview slide resets
# this setting. Do note that this still allows to add item to Service multiple times if icon is clicked.
elif not Settings().value('core/doubleclicking preview has added to service'):
self.on_preview_add_to_service()
Settings().setValue('core/doubleclicking preview has added to service', True)
def on_go_live(self, field=None):
"""