Fixed bug #812289. Forced the mediaitem to get the QListWidgetItem from the list again.

Fixes: https://launchpad.net/bugs/812289
This commit is contained in:
Raoul Snyman 2011-09-22 22:07:31 +02:00
parent 764962002b
commit 77e4e376c6
2 changed files with 8 additions and 5 deletions

View File

@ -682,7 +682,7 @@ class EditSongForm(QtGui.QDialog, Ui_EditSongDialog):
text = unicode(self.songBookComboBox.currentText())
if item == 0 and text:
temp_song_book = text
self.mediaitem.song_maintenance_form.exec_()
self.mediaitem.songMaintenanceForm.exec_()
self.loadAuthors()
self.loadBooks()
self.loadTopics()

View File

@ -239,7 +239,7 @@ class SongMediaItem(MediaManagerItem):
+ u'%'),
Song.comments.like(u'%' + search_keywords.lower() + u'%')))
def onSongListLoad(self):
def onSongListLoad(self, item_id=None):
"""
Handle the exit from the edit dialog and trigger remote updates
of songs
@ -371,7 +371,7 @@ class SongMediaItem(MediaManagerItem):
self.editSongForm.loadSong(item_id, False)
self.editSongForm.exec_()
self.autoSelectId = -1
self.onSongListLoad()
self.onSongListLoad(item_id)
self.editItem = None
def onDeleteClick(self):
@ -428,8 +428,11 @@ class SongMediaItem(MediaManagerItem):
def generateSlideData(self, service_item, item=None, xmlVersion=False,
remote=False):
log.debug(u'generateSlideData (%s:%s)' % (service_item, item))
item_id = self._getIdOfItemToGenerate(item, self.remoteSong)
log.debug(u'generateSlideData: %s, %s, %s' % (service_item, item, self.remoteSong))
# The ``None`` below is a workaround for bug #812289 - I think that Qt
# deletes the item somewhere along the line because the user is taking
# so long to update their item (or something weird like that).
item_id = self._getIdOfItemToGenerate(None, self.remoteSong)
service_item.add_capability(ItemCapabilities.CanEdit)
service_item.add_capability(ItemCapabilities.CanPreview)
service_item.add_capability(ItemCapabilities.CanLoop)