Merge lp:~googol-deactivatedaccount/openlp/bug-718797-2.0 into lp:openlp/2.0

Proposed by Andreas Preikschat
Status: Rejected
Rejected by: Andreas Preikschat
Proposed branch: lp:~googol-deactivatedaccount/openlp/bug-718797-2.0
Merge into: lp:openlp/2.0
Diff against target: 82 lines (+44/-0)
1 file modified
openlp/core/ui/slidecontroller.py (+44/-0)
To merge this branch: bzr merge lp:~googol-deactivatedaccount/openlp/bug-718797-2.0
Reviewer Review Type Date Requested Status
OpenLP Core Pending
Review via email: mp+185670@code.launchpad.net

Description of the change

Hello,

- separate blank buttons again (#718797)

I backported this, because we were asked often to do this. This can be a little "surprise feature".

Is it alright for you to merge this eventhough it is a new feature?

To post a comment you must log in.
Revision history for this message
Jonathan Corwin (j-corwin) wrote :

I fear this could be the start of a slippery slope. We managed to introduce a bug into 2.0.2 without adding new features. If we start adding a little surprise feature here and there, no matter how small, then more little bugs could creep in.
My personal opinion is that we should stick to bug fixes in 2.0.

Revision history for this message
Andreas Preikschat (googol-deactivatedaccount) wrote :

Thanks for your comment. You are probably right.

Revision history for this message
Raoul Snyman (raoul-snyman) wrote :

I agree with Jonathan. If we want to include more features we should be releasing more often (think Chrome/Firefox).
--
Sent from my Android device with K-9 Mail. Please excuse my brevity.

Revision history for this message
Andreas Preikschat (googol-deactivatedaccount) wrote :

Okay, accepted.

Unmerged revisions

2170. By Andreas Preikschat

fixed bug 718797 (RFE Separate blank buttons)

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
=== modified file 'openlp/core/ui/slidecontroller.py'
--- openlp/core/ui/slidecontroller.py 2013-02-10 12:21:59 +0000
+++ openlp/core/ui/slidecontroller.py 2013-09-15 13:23:21 +0000
@@ -44,6 +44,10 @@
4444
45log = logging.getLogger(__name__)45log = logging.getLogger(__name__)
4646
47
48HIDE_MENU_THRESHOLD = 40
49
50
47class SlideList(QtGui.QTableWidget):51class SlideList(QtGui.QTableWidget):
48 """52 """
49 Customised version of QTableWidget which can respond to keyboard53 Customised version of QTableWidget which can respond to keyboard
@@ -104,6 +108,14 @@
104 u'audioPauseItem',108 u'audioPauseItem',
105 u'audioTimeLabel'109 u'audioTimeLabel'
106 ]110 ]
111 self.wideMenu = [
112 u'blankScreenButton',
113 u'themeScreenButton',
114 u'desktopScreenButton'
115 ]
116 self.narrowMenu = [
117 u'hideMenu'
118 ]
107 self.timer_id = 0119 self.timer_id = 0
108 self.songEdit = False120 self.songEdit = False
109 self.selectedRow = 0121 self.selectedRow = 0
@@ -220,6 +232,19 @@
220 self.hideMenu.menu().addAction(self.blankScreen)232 self.hideMenu.menu().addAction(self.blankScreen)
221 self.hideMenu.menu().addAction(self.themeScreen)233 self.hideMenu.menu().addAction(self.themeScreen)
222 self.hideMenu.menu().addAction(self.desktopScreen)234 self.hideMenu.menu().addAction(self.desktopScreen)
235 # Wide menu of display control buttons.
236 self.blankScreenButton = QtGui.QToolButton(self.toolbar)
237 self.blankScreenButton.setObjectName(u'blankScreenButton')
238 self.toolbar.addToolbarWidget(self.blankScreenButton)
239 self.blankScreenButton.setDefaultAction(self.blankScreen)
240 self.themeScreenButton = QtGui.QToolButton(self.toolbar)
241 self.themeScreenButton.setObjectName(u'themeScreenButton')
242 self.toolbar.addToolbarWidget(self.themeScreenButton)
243 self.themeScreenButton.setDefaultAction(self.themeScreen)
244 self.desktopScreenButton = QtGui.QToolButton(self.toolbar)
245 self.desktopScreenButton.setObjectName(u'desktopScreenButton')
246 self.toolbar.addToolbarWidget(self.desktopScreenButton)
247 self.desktopScreenButton.setDefaultAction(self.desktopScreen)
223 self.toolbar.addToolbarAction(u'loopSeparator', separator=True)248 self.toolbar.addToolbarAction(u'loopSeparator', separator=True)
224 # Play Slides Menu249 # Play Slides Menu
225 self.playSlidesMenu = QtGui.QToolButton(self.toolbar)250 self.playSlidesMenu = QtGui.QToolButton(self.toolbar)
@@ -399,6 +424,7 @@
399 QtCore.SIGNAL(u'slidecontroller_toggle_display'),424 QtCore.SIGNAL(u'slidecontroller_toggle_display'),
400 self.toggleDisplay)425 self.toggleDisplay)
401 self.toolbar.setWidgetVisible(self.loopList, False)426 self.toolbar.setWidgetVisible(self.loopList, False)
427 self.toolbar.setWidgetVisible(self.wideMenu, False)
402 else:428 else:
403 QtCore.QObject.connect(self.previewListWidget,429 QtCore.QObject.connect(self.previewListWidget,
404 QtCore.SIGNAL(u'doubleClicked(QModelIndex)'),430 QtCore.SIGNAL(u'doubleClicked(QModelIndex)'),
@@ -649,6 +675,24 @@
649 for framenumber in range(len(self.serviceItem.get_frames())):675 for framenumber in range(len(self.serviceItem.get_frames())):
650 self.previewListWidget.setRowHeight(676 self.previewListWidget.setRowHeight(
651 framenumber, width / self.ratio)677 framenumber, width / self.ratio)
678 self.onControllerSizeChanged()
679
680 def onControllerSizeChanged(self):
681 """
682 Change layout of display control buttons on controller size change
683 """
684 if self.isLive:
685 # Space used by the toolbar.
686 used_space = self.toolbar.size().width() + self.hideMenu.size().width()
687 width = self.controller.width()
688 # Add the threshold to prevent flickering.
689 if width > used_space + HIDE_MENU_THRESHOLD and self.hideMenu.isVisible():
690 self.toolbar.setWidgetVisible(self.narrowMenu, False)
691 self.toolbar.setWidgetVisible(self.wideMenu)
692 # Take away a threshold to prevent flickering.
693 elif width < used_space - HIDE_MENU_THRESHOLD and not self.hideMenu.isVisible():
694 self.toolbar.setWidgetVisible(self.wideMenu, False)
695 self.toolbar.setWidgetVisible(self.narrowMenu)
652696
653 def onSongBarHandler(self):697 def onSongBarHandler(self):
654 request = unicode(self.sender().text())698 request = unicode(self.sender().text())

Subscribers

People subscribed via source and target branches