Merge lp:~googol-deactivatedaccount/openlp/bug-827862 into lp:openlp
Status: | Merged |
---|---|
Approved by: | Tim Bentley |
Approved revision: | 1799 |
Merged at revision: | 1797 |
Proposed branch: | lp:~googol-deactivatedaccount/openlp/bug-827862 |
Merge into: | lp:openlp |
Diff against target: |
215 lines (+177/-3) 1 file modified
openlp/core/ui/slidecontroller.py (+177/-3) |
To merge this branch: | bzr merge lp:~googol-deactivatedaccount/openlp/bug-827862 |
Related bugs: |
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Tim Bentley | Approve | ||
Raoul Snyman | Approve | ||
Review via email: mp+80783@code.launchpad.net |
This proposal supersedes a proposal from 2011-10-31.
Commit message
- fixed bug #827862 (Add Shortcut to change verse, chorus, ... in the live controller)
Description of the change
Hello,
- fixed bug #827862 (Add Shortcut to change verse, chorus, ... in the live controller)
What exactly can yo do?
You can navigate/jump to any (!) slide in the slidecontrollers. In other words you can navigate/jump to aother bible verse slide, presentation slide, image or song verse. There is no limitation (e. g. you can also go from bible verse slide 1 to slide 12.
How does it not work?
This does not use traditional shortcuts (shortcut = press one or more keys at the same time).
Why does it work this way?
Shortcuts are limited. E. g. you cannot have "v+1" as shortcut. You can have "v" or "1" as shortcut.
How does it work?
Imagine you want to jump to slide "v3". What do you do? First you press "v" and then you press "4". But you have to be fast enough. (This might sound stupid to you and you might want to criticise this, but remember that if we were using shortcuts you had to press them at the same time.)
Unfortunately this adds an import from plugins to core. Also it adds plugin specific shortcuts to core. I actually moved some code to the songs plugin, but then decided that this is wrong as well. The reason is quite simple: Core has to be able to display a song (from the service manager) even when the songs plugin is disabled. (Note, when you have a service file with English Verse Names, because the service file comes from an English OpenLP instance then this will not work on a German OpenLP instance, because the verse names are not translated!) Thus it is not plugin specific, but core. However, I made sure that core won't break if the songs plugin is not available.
Being unavailable will not stop imports it just switches them off so there would be no breakage.
I do not like imports in the the middle of code.
It would be better to move the verse case to core.