add escape hatch for new clicking behaviour, in case it causes problems

This commit is contained in:
Damien Elmes 2021-02-09 19:29:59 +10:00
parent 9ce4b21935
commit 678756c3e9
2 changed files with 11 additions and 4 deletions

View file

@ -668,6 +668,9 @@ create table if not exists profiles
def set_recording_driver(self, driver: RecordingDriver) -> None: def set_recording_driver(self, driver: RecordingDriver) -> None:
self.profile["recordingDriver"] = driver.value self.profile["recordingDriver"] = driver.value
def sidebar_left_click_modifiers(self) -> bool:
return self.profile.get("sidebarLeftClick", False)
###################################################################### ######################################################################
def apply_profile_options(self) -> None: def apply_profile_options(self) -> None:

View file

@ -316,9 +316,10 @@ class SidebarTreeView(QTreeView):
self.setHeaderHidden(True) self.setHeaderHidden(True)
self.setIndentation(15) self.setIndentation(15)
self.setAutoExpandDelay(600) self.setAutoExpandDelay(600)
# pylint: disable=no-member if not self.mw.pm.sidebar_left_click_modifiers():
mode = QAbstractItemView.SelectionMode.ExtendedSelection # type: ignore # pylint: disable=no-member
self.setSelectionMode(mode) mode = QAbstractItemView.SelectionMode.ExtendedSelection # type: ignore
self.setSelectionMode(mode)
self.setDragDropMode(QAbstractItemView.InternalMove) self.setDragDropMode(QAbstractItemView.InternalMove)
self.setDragDropOverwriteMode(False) self.setDragDropOverwriteMode(False)
@ -434,7 +435,10 @@ class SidebarTreeView(QTreeView):
def mouseReleaseEvent(self, event: QMouseEvent) -> None: def mouseReleaseEvent(self, event: QMouseEvent) -> None:
super().mouseReleaseEvent(event) super().mouseReleaseEvent(event)
if event.button() == Qt.LeftButton: if event.button() == Qt.LeftButton:
if not self._keyboard_modified_pressed(): if (
not self._keyboard_modified_pressed()
or self.mw.pm.sidebar_left_click_modifiers()
):
self._on_click_current() self._on_click_current()
elif event.button() == Qt.RightButton: elif event.button() == Qt.RightButton:
if self._keyboard_modified_pressed(): if self._keyboard_modified_pressed():