Merge from trunk

This commit is contained in:
Charles Haley 2012-07-02 17:47:18 +02:00
commit ab16d1c0a8
3 changed files with 33 additions and 11 deletions

View File

@ -828,7 +828,15 @@ class ITUNES(DriverBase):
if DEBUG: if DEBUG:
logger().info("ITUNES.get_file(): exporting '%s'" % path) logger().info("ITUNES.get_file(): exporting '%s'" % path)
outfile.write(open(self.cached_books[path]['lib_book'].location().path).read()) try:
outfile.write(open(self.cached_books[path]['lib_book'].location().path).read())
except:
# Clean up
logger().info(" unable to extract books from iDevices")
logger().info(" deleting empty ", outfile.name)
outfile.close()
os.remove(outfile.name)
raise UserFeedback("Unable to extract books from iDevices", details=None, level=UserFeedback.WARN)
def open(self, connected_device, library_uuid): def open(self, connected_device, library_uuid):
''' '''

View File

@ -120,7 +120,6 @@ class USER_DEFINED(USBMS):
self.plugin_needs_delayed_initialization = False self.plugin_needs_delayed_initialization = False
def windows_sort_drives(self, drives): def windows_sort_drives(self, drives):
if len(drives) < 2: return drives if len(drives) < 2: return drives
e = self.settings().extra_customization e = self.settings().extra_customization
if not e[self.OPT_SWAP_MAIN_AND_CARD]: if not e[self.OPT_SWAP_MAIN_AND_CARD]:
@ -143,4 +142,18 @@ class USER_DEFINED(USBMS):
drives[1] = t drives[1] = t
return tuple(drives) return tuple(drives)
def osx_sort_names(self, names):
if len(names) < 2: return names
e = self.settings().extra_customization
if not e[self.OPT_SWAP_MAIN_AND_CARD]:
return names
main = names.get('main', None)
card = names.get('carda', None)
if main is not None and card is not None:
names['main'] = card
names['carda'] = main
return names

View File

@ -165,17 +165,18 @@ class MultiCompleteComboBox(EnComboBox):
def showPopup(self): def showPopup(self):
c = self.le._completer c = self.le._completer
v = unicode(c.currentCompletion()) v = c.currentCompletion()
c.setCompletionPrefix('') c.setCompletionPrefix('')
c.complete() c.complete()
if c.model().rowCount() < tweaks['completion_change_to_ascii_sorting']: cs = c.caseSensitivity()
i = 0; i = 0
while c.setCurrentRow(i): while c.setCurrentRow(i):
cr = unicode(c.currentIndex().data().toString()) cr = c.currentIndex().data().toString()
if cr.startswith(v): if cr.startsWith(v, cs):
c.popup().setCurrentIndex(c.currentIndex()) c.popup().setCurrentIndex(c.currentIndex())
break return
i += 1 i += 1
c.setCurrentRow(0)
def update_items_cache(self, complete_items): def update_items_cache(self, complete_items):
self.lineEdit().update_items_cache(complete_items) self.lineEdit().update_items_cache(complete_items)