diff --git a/src/calibre/gui2/device.py b/src/calibre/gui2/device.py index 378c585efb..0e18929d81 100644 --- a/src/calibre/gui2/device.py +++ b/src/calibre/gui2/device.py @@ -599,7 +599,10 @@ class Emailer(Thread): # {{{ # }}} -class DeviceGUI(object): +class DeviceMixin(object): + + def __init__(self): + self.db_book_uuid_cache = set() def dispatch_sync_event(self, dest, delete, specific): rows = self.library_view.selectionModel().selectedRows() diff --git a/src/calibre/gui2/ui.py b/src/calibre/gui2/ui.py index 29a09d6a1d..9ff30aa768 100644 --- a/src/calibre/gui2/ui.py +++ b/src/calibre/gui2/ui.py @@ -44,7 +44,7 @@ from calibre.gui2.dialogs.scheduler import Scheduler from calibre.gui2.update import CheckForUpdates from calibre.gui2.main_window import MainWindow from calibre.gui2.main_ui import Ui_MainWindow -from calibre.gui2.device import DeviceManager, DeviceMenu, DeviceGUI, Emailer +from calibre.gui2.device import DeviceManager, DeviceMenu, DeviceMixin, Emailer from calibre.gui2.jobs import JobManager, JobsDialog, JobsButton from calibre.gui2.dialogs.metadata_single import MetadataSingleDialog from calibre.gui2.dialogs.metadata_bulk import MetadataBulkDialog @@ -105,7 +105,7 @@ class SystemTrayIcon(QSystemTrayIcon): # {{{ # }}} -class Main(MainWindow, Ui_MainWindow, DeviceGUI, ToolbarMixin, +class Main(MainWindow, Ui_MainWindow, DeviceMixin, ToolbarMixin, TagBrowserMixin, CoverFlowMixin, LibraryViewMixin): 'The main GUI' @@ -228,6 +228,8 @@ class Main(MainWindow, Ui_MainWindow, DeviceGUI, ToolbarMixin, QObject.connect(self.advanced_search_button, SIGNAL('clicked(bool)'), self.do_advanced_search) + DeviceMixin.__init__(self) + ####################### Start spare job server ######################## QTimer.singleShot(1000, self.add_spare_server)