Merge lp:~trb143/openlp/bug-fixes into lp:openlp

Proposed by Tim Bentley
Status: Merged
Approved by: Raoul Snyman
Approved revision: 1726
Merged at revision: 1741
Proposed branch: lp:~trb143/openlp/bug-fixes
Merge into: lp:openlp
Diff against target: 229 lines (+43/-31)
9 files modified
openlp/core/lib/mediamanageritem.py (+8/-7)
openlp/core/ui/slidecontroller.py (+2/-0)
openlp/plugins/bibles/lib/mediaitem.py (+2/-1)
openlp/plugins/custom/lib/mediaitem.py (+2/-1)
openlp/plugins/images/lib/mediaitem.py (+8/-6)
openlp/plugins/media/lib/mediaitem.py (+8/-6)
openlp/plugins/presentations/lib/mediaitem.py (+9/-7)
openlp/plugins/remotes/lib/httpserver.py (+2/-2)
openlp/plugins/songs/lib/mediaitem.py (+2/-1)
To merge this branch: bzr merge lp:~trb143/openlp/bug-fixes
Reviewer Review Type Date Requested Status
Raoul Snyman Approve
Review via email: mp+74289@code.launchpad.net

Description of the change

Bypass the error message if triggered from the Remote interface. No action is taken though

Do not display the initial screen if there is only 1 display.

To post a comment you must log in.
Revision history for this message
Raoul Snyman (raoul-snyman) wrote :

Looks OK to me.

review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'openlp/core/lib/mediamanageritem.py'
2--- openlp/core/lib/mediamanageritem.py 2011-09-01 19:45:36 +0000
3+++ openlp/core/lib/mediamanageritem.py 2011-09-06 19:37:25 +0000
4@@ -485,7 +485,8 @@
5 """
6 pass
7
8- def generateSlideData(self, serviceItem, item=None, xmlVersion=False):
9+ def generateSlideData(self, serviceItem, item=None, xmlVersion=False,
10+ remote=False):
11 raise NotImplementedError(u'MediaManagerItem.generateSlideData needs '
12 u'to be defined by the plugin')
13
14@@ -539,12 +540,12 @@
15 else:
16 self.goLive()
17
18- def goLive(self, item_id=None):
19+ def goLive(self, item_id=None, remote=False):
20 log.debug(u'%s Live requested', self.plugin.name)
21 item = None
22 if item_id:
23 item = self.createItemFromId(item_id)
24- serviceItem = self.buildServiceItem(item)
25+ serviceItem = self.buildServiceItem(item, remote=remote)
26 if serviceItem:
27 if not item_id:
28 serviceItem.from_plugin = True
29@@ -574,8 +575,8 @@
30 for item in items:
31 self.addToService(item)
32
33- def addToService(self, item=None, replace=None):
34- serviceItem = self.buildServiceItem(item, True)
35+ def addToService(self, item=None, replace=None, remote=False):
36+ serviceItem = self.buildServiceItem(item, True, remote=remote)
37 if serviceItem:
38 serviceItem.from_plugin = False
39 self.plugin.serviceManager.addServiceItem(serviceItem,
40@@ -608,13 +609,13 @@
41 unicode(translate('OpenLP.MediaManagerItem',
42 'You must select a %s service item.')) % self.title)
43
44- def buildServiceItem(self, item=None, xmlVersion=False):
45+ def buildServiceItem(self, item=None, xmlVersion=False, remote=False):
46 """
47 Common method for generating a service item
48 """
49 serviceItem = ServiceItem(self.plugin)
50 serviceItem.add_icon(self.plugin.icon_path)
51- if self.generateSlideData(serviceItem, item, xmlVersion):
52+ if self.generateSlideData(serviceItem, item, xmlVersion, remote):
53 return serviceItem
54 else:
55 return None
56
57=== modified file 'openlp/core/ui/slidecontroller.py'
58--- openlp/core/ui/slidecontroller.py 2011-08-31 21:17:10 +0000
59+++ openlp/core/ui/slidecontroller.py 2011-09-06 19:37:25 +0000
60@@ -784,6 +784,8 @@
61 self.onBlankDisplay(True)
62 else:
63 Receiver.send_message(u'maindisplay_show')
64+ else:
65+ Receiver.send_message(u'maindisplay_hide', HideMode.Screen)
66
67 def onSlideBlank(self):
68 """
69
70=== modified file 'openlp/plugins/bibles/lib/mediaitem.py'
71--- openlp/plugins/bibles/lib/mediaitem.py 2011-09-02 19:04:07 +0000
72+++ openlp/plugins/bibles/lib/mediaitem.py 2011-09-06 19:37:25 +0000
73@@ -788,7 +788,8 @@
74 items.append(bible_verse)
75 return items
76
77- def generateSlideData(self, service_item, item=None, xmlVersion=False):
78+ def generateSlideData(self, service_item, item=None, xmlVersion=False,
79+ remote=False):
80 """
81 Generates and formats the slides for the service item as well as the
82 service item's title.
83
84=== modified file 'openlp/plugins/custom/lib/mediaitem.py'
85--- openlp/plugins/custom/lib/mediaitem.py 2011-09-02 19:04:07 +0000
86+++ openlp/plugins/custom/lib/mediaitem.py 2011-09-06 19:37:25 +0000
87@@ -222,7 +222,8 @@
88 def onFocus(self):
89 self.searchTextEdit.setFocus()
90
91- def generateSlideData(self, service_item, item=None, xmlVersion=False):
92+ def generateSlideData(self, service_item, item=None, xmlVersion=False,
93+ remote=False):
94 raw_footer = []
95 slide = None
96 theme = None
97
98=== modified file 'openlp/plugins/images/lib/mediaitem.py'
99--- openlp/plugins/images/lib/mediaitem.py 2011-08-31 07:49:57 +0000
100+++ openlp/plugins/images/lib/mediaitem.py 2011-09-06 19:37:25 +0000
101@@ -139,7 +139,8 @@
102 if not initialLoad:
103 self.plugin.formparent.finishedProgressBar()
104
105- def generateSlideData(self, service_item, item=None, xmlVersion=False):
106+ def generateSlideData(self, service_item, item=None, xmlVersion=False,
107+ remote=False):
108 background = QtGui.QColor(QtCore.QSettings().value(self.settingsSection
109 + u'/background color', QtCore.QVariant(u'#000000')))
110 if item:
111@@ -166,11 +167,12 @@
112 items.remove(item)
113 # We cannot continue, as all images do not exist.
114 if not items:
115- critical_error_message_box(
116- translate('ImagePlugin.MediaItem', 'Missing Image(s)'),
117- unicode(translate('ImagePlugin.MediaItem',
118- 'The following image(s) no longer exist: %s')) %
119- u'\n'.join(missing_items_filenames))
120+ if not remote:
121+ critical_error_message_box(
122+ translate('ImagePlugin.MediaItem', 'Missing Image(s)'),
123+ unicode(translate('ImagePlugin.MediaItem',
124+ 'The following image(s) no longer exist: %s')) %
125+ u'\n'.join(missing_items_filenames))
126 return False
127 # We have missing as well as existing images. We ask what to do.
128 elif missing_items and QtGui.QMessageBox.question(self,
129
130=== modified file 'openlp/plugins/media/lib/mediaitem.py'
131--- openlp/plugins/media/lib/mediaitem.py 2011-08-28 17:45:13 +0000
132+++ openlp/plugins/media/lib/mediaitem.py 2011-09-06 19:37:25 +0000
133@@ -129,18 +129,20 @@
134 'There was a problem replacing your background, '
135 'the media file "%s" no longer exists.')) % filename)
136
137- def generateSlideData(self, service_item, item=None, xmlVersion=False):
138+ def generateSlideData(self, service_item, item=None, xmlVersion=False,
139+ remote=False):
140 if item is None:
141 item = self.listView.currentItem()
142 if item is None:
143 return False
144 filename = unicode(item.data(QtCore.Qt.UserRole).toString())
145 if not os.path.exists(filename):
146- # File is no longer present
147- critical_error_message_box(
148- translate('MediaPlugin.MediaItem', 'Missing Media File'),
149- unicode(translate('MediaPlugin.MediaItem',
150- 'The file %s no longer exists.')) % filename)
151+ if not remote:
152+ # File is no longer present
153+ critical_error_message_box(
154+ translate('MediaPlugin.MediaItem', 'Missing Media File'),
155+ unicode(translate('MediaPlugin.MediaItem',
156+ 'The file %s no longer exists.')) % filename)
157 return False
158 self.mediaObject.stop()
159 self.mediaObject.clearQueue()
160
161=== modified file 'openlp/plugins/presentations/lib/mediaitem.py'
162--- openlp/plugins/presentations/lib/mediaitem.py 2011-08-28 17:45:13 +0000
163+++ openlp/plugins/presentations/lib/mediaitem.py 2011-09-06 19:37:25 +0000
164@@ -233,7 +233,8 @@
165 SettingsManager.set_list(self.settingsSection,
166 u'presentations', self.getFileList())
167
168- def generateSlideData(self, service_item, item=None, xmlVersion=False):
169+ def generateSlideData(self, service_item, item=None, xmlVersion=False,
170+ remote=False):
171 """
172 Load the relevant information for displaying the presentation
173 in the slidecontroller. In the case of powerpoints, an image
174@@ -275,12 +276,13 @@
175 return True
176 else:
177 # File is no longer present
178- critical_error_message_box(
179- translate('PresentationPlugin.MediaItem',
180- 'Missing Presentation'),
181- unicode(translate('PresentationPlugin.MediaItem',
182- 'The Presentation %s is incomplete,'
183- ' please reload.')) % filename)
184+ if not remote:
185+ critical_error_message_box(
186+ translate('PresentationPlugin.MediaItem',
187+ 'Missing Presentation'),
188+ unicode(translate('PresentationPlugin.MediaItem',
189+ 'The Presentation %s is incomplete,'
190+ ' please reload.')) % filename)
191 return False
192 else:
193 # File is no longer present
194
195=== modified file 'openlp/plugins/remotes/lib/httpserver.py'
196--- openlp/plugins/remotes/lib/httpserver.py 2011-07-27 18:12:54 +0000
197+++ openlp/plugins/remotes/lib/httpserver.py 2011-09-06 19:37:25 +0000
198@@ -528,7 +528,7 @@
199 id = json.loads(self.url_params[u'data'][0])[u'request'][u'id']
200 plugin = self.parent.plugin.pluginManager.get_plugin_by_name(type)
201 if plugin.status == PluginStatus.Active and plugin.mediaItem:
202- plugin.mediaItem.goLive(id)
203+ plugin.mediaItem.goLive(id, remote=True)
204
205 def add_to_service(self, type):
206 """
207@@ -538,7 +538,7 @@
208 plugin = self.parent.plugin.pluginManager.get_plugin_by_name(type)
209 if plugin.status == PluginStatus.Active and plugin.mediaItem:
210 item_id = plugin.mediaItem.createItemFromId(id)
211- plugin.mediaItem.addToService(item_id)
212+ plugin.mediaItem.addToService(item_id, remote=True)
213
214 def send_response(self, response):
215 http = u'HTTP/1.1 %s\r\n' % response.code
216
217=== modified file 'openlp/plugins/songs/lib/mediaitem.py'
218--- openlp/plugins/songs/lib/mediaitem.py 2011-09-02 19:04:07 +0000
219+++ openlp/plugins/songs/lib/mediaitem.py 2011-09-06 19:37:25 +0000
220@@ -411,7 +411,8 @@
221 self.plugin.manager.save_object(new_song)
222 self.onSongListLoad()
223
224- def generateSlideData(self, service_item, item=None, xmlVersion=False):
225+ def generateSlideData(self, service_item, item=None, xmlVersion=False,
226+ remote=False):
227 log.debug(u'generateSlideData (%s:%s)' % (service_item, item))
228 item_id = self._getIdOfItemToGenerate(item, self.remoteSong)
229 service_item.add_capability(ItemCapabilities.CanEdit)