mirror of
https://github.com/kovidgoyal/calibre.git
synced 2025-07-09 03:04:10 -04:00
Add an option in Preferences->Look & feel to disable the new 'drag and drop to merge books feature'
This commit is contained in:
parent
551417a0e7
commit
60bae7ce02
@ -168,6 +168,7 @@ def create_defs():
|
|||||||
defs['book_details_narrow_comments_layout'] = 'float'
|
defs['book_details_narrow_comments_layout'] = 'float'
|
||||||
defs['book_list_split'] = False
|
defs['book_list_split'] = False
|
||||||
defs['wrap_toolbar_text'] = False
|
defs['wrap_toolbar_text'] = False
|
||||||
|
defs['dnd_merge'] = True
|
||||||
|
|
||||||
|
|
||||||
create_defs()
|
create_defs()
|
||||||
|
@ -201,6 +201,10 @@ def mouseMoveEvent(base_class, self, event):
|
|||||||
self.drag_start_pos = None
|
self.drag_start_pos = None
|
||||||
|
|
||||||
|
|
||||||
|
def dnd_merge_ok(md):
|
||||||
|
return md.hasFormat('application/calibre+from_library') and gprefs['dnd_merge']
|
||||||
|
|
||||||
|
|
||||||
def dragEnterEvent(self, event):
|
def dragEnterEvent(self, event):
|
||||||
if int(event.possibleActions() & Qt.CopyAction) + \
|
if int(event.possibleActions() & Qt.CopyAction) + \
|
||||||
int(event.possibleActions() & Qt.MoveAction) == 0:
|
int(event.possibleActions() & Qt.MoveAction) == 0:
|
||||||
@ -208,13 +212,13 @@ def dragEnterEvent(self, event):
|
|||||||
paths = self.paths_from_event(event)
|
paths = self.paths_from_event(event)
|
||||||
md = event.mimeData()
|
md = event.mimeData()
|
||||||
|
|
||||||
if paths or md.hasFormat('application/calibre+from_library'):
|
if paths or dnd_merge_ok(md):
|
||||||
event.acceptProposedAction()
|
event.acceptProposedAction()
|
||||||
|
|
||||||
|
|
||||||
def dropEvent(self, event):
|
def dropEvent(self, event):
|
||||||
md = event.mimeData()
|
md = event.mimeData()
|
||||||
if md.hasFormat('application/calibre+from_library'):
|
if dnd_merge_ok(md):
|
||||||
ids = set(map(int, bytes(md.data('application/calibre+from_library')).decode('utf-8').split(' ')))
|
ids = set(map(int, bytes(md.data('application/calibre+from_library')).decode('utf-8').split(' ')))
|
||||||
row = self.indexAt(event.pos()).row()
|
row = self.indexAt(event.pos()).row()
|
||||||
if row > -1 and ids:
|
if row > -1 and ids:
|
||||||
|
@ -394,6 +394,7 @@ class ConfigWidget(ConfigWidgetBase, Ui_Form):
|
|||||||
self.opt_hidpi.setVisible(False), self.label_hidpi.setVisible(False)
|
self.opt_hidpi.setVisible(False), self.label_hidpi.setVisible(False)
|
||||||
r('ui_style', gprefs, restart_required=True, choices=[(_('System default'), 'system'), (_('calibre style'), 'calibre')])
|
r('ui_style', gprefs, restart_required=True, choices=[(_('System default'), 'system'), (_('calibre style'), 'calibre')])
|
||||||
r('book_list_tooltips', gprefs)
|
r('book_list_tooltips', gprefs)
|
||||||
|
r('dnd_merge', gprefs)
|
||||||
r('wrap_toolbar_text', gprefs, restart_required=True)
|
r('wrap_toolbar_text', gprefs, restart_required=True)
|
||||||
r('show_layout_buttons', gprefs, restart_required=True)
|
r('show_layout_buttons', gprefs, restart_required=True)
|
||||||
r('row_numbers_in_book_list', gprefs)
|
r('row_numbers_in_book_list', gprefs)
|
||||||
|
@ -28,6 +28,16 @@
|
|||||||
<string>&Main interface</string>
|
<string>&Main interface</string>
|
||||||
</attribute>
|
</attribute>
|
||||||
<layout class="QGridLayout" name="gridLayout_9">
|
<layout class="QGridLayout" name="gridLayout_9">
|
||||||
|
<item row="0" column="0">
|
||||||
|
<widget class="QLabel" name="label_widget_style">
|
||||||
|
<property name="text">
|
||||||
|
<string>User interface style (&needs restart):</string>
|
||||||
|
</property>
|
||||||
|
<property name="buddy">
|
||||||
|
<cstring>opt_ui_style</cstring>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
<item row="2" column="0">
|
<item row="2" column="0">
|
||||||
<widget class="QLabel" name="label_17">
|
<widget class="QLabel" name="label_17">
|
||||||
<property name="text">
|
<property name="text">
|
||||||
@ -140,7 +150,7 @@
|
|||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="12" column="0">
|
<item row="13" column="0">
|
||||||
<spacer name="verticalSpacer_3">
|
<spacer name="verticalSpacer_3">
|
||||||
<property name="orientation">
|
<property name="orientation">
|
||||||
<enum>Qt::Vertical</enum>
|
<enum>Qt::Vertical</enum>
|
||||||
@ -218,16 +228,6 @@
|
|||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="0" column="0">
|
|
||||||
<widget class="QLabel" name="label_widget_style">
|
|
||||||
<property name="text">
|
|
||||||
<string>User interface style (&needs restart):</string>
|
|
||||||
</property>
|
|
||||||
<property name="buddy">
|
|
||||||
<cstring>opt_ui_style</cstring>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
<item row="5" column="1">
|
<item row="5" column="1">
|
||||||
<widget class="QCheckBox" name="opt_disable_animations">
|
<widget class="QCheckBox" name="opt_disable_animations">
|
||||||
<property name="toolTip">
|
<property name="toolTip">
|
||||||
@ -284,6 +284,13 @@
|
|||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
|
<item row="12" column="0">
|
||||||
|
<widget class="QCheckBox" name="opt_dnd_merge">
|
||||||
|
<property name="text">
|
||||||
|
<string>Allow using &drag and drop to merge books</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
</layout>
|
</layout>
|
||||||
</widget>
|
</widget>
|
||||||
<widget class="QWidget" name="cover_grid_tab">
|
<widget class="QWidget" name="cover_grid_tab">
|
||||||
|
Loading…
x
Reference in New Issue
Block a user