← Back to team overview

openlp-core team mailing list archive

[Merge] lp:~sam92/openlp/improve-single-click-behavior into lp:openlp

 

Samuel Mehrbrodt has proposed merging lp:~sam92/openlp/improve-single-click-behavior into lp:openlp.

Requested reviews:
  OpenLP Core (openlp-core)

For more details, see:
https://code.launchpad.net/~sam92/openlp/improve-single-click-behavior/+merge/220124

Remove flickering when single click option is active

To test:
Activate the "Preview items when clicked in Media Manager" option (Advanced options)

Before patch: Focus goes to preview widget, then returns to Media manager (produces flickering)
After patch: Focus stays on Media manager (no flickering)

Please review, if it's approved, I'll write a test.
-- 
https://code.launchpad.net/~sam92/openlp/improve-single-click-behavior/+merge/220124
Your team OpenLP Core is requested to review the proposed merge of lp:~sam92/openlp/improve-single-click-behavior into lp:openlp.
=== modified file 'openlp/core/lib/mediamanageritem.py'
--- openlp/core/lib/mediamanageritem.py	2014-04-12 20:19:22 +0000
+++ openlp/core/lib/mediamanageritem.py	2014-05-19 19:30:33 +0000
@@ -495,8 +495,8 @@
             if service_item:
                 service_item.from_plugin = True
                 self.preview_controller.add_service_item(service_item)
-                if keep_focus:
-                    self.list_view.setFocus()
+                if not keep_focus:
+                    self.preview_controller.preview_widget.setFocus()
 
     def on_live_click(self):
         """
@@ -535,6 +535,7 @@
             if remote:
                 service_item.will_auto_start = True
             self.live_controller.add_service_item(service_item)
+            self.live_controller.preview_widget.setFocus()
 
     def create_item_from_id(self, item_id):
         """

=== modified file 'openlp/core/ui/listpreviewwidget.py'
--- openlp/core/ui/listpreviewwidget.py	2014-03-20 19:10:31 +0000
+++ openlp/core/ui/listpreviewwidget.py	2014-05-19 19:30:33 +0000
@@ -136,7 +136,6 @@
         if self.service_item.is_text():
             self.resizeRowsToContents()
         self.setColumnWidth(0, self.viewport().width())
-        self.setFocus()
         self.change_slide(slide_number)
 
     def change_slide(self, slide):