From 67d612926c6bfde0440251f92eb8654d86dc78cb Mon Sep 17 00:00:00 2001 From: Damien Elmes Date: Thu, 11 Feb 2021 10:12:03 +1000 Subject: [PATCH] Revert "experiment with using right click for AND/OR/NOT" This reverts commit 9048a1ff3c86728d835e874e597238eaf0e7d208 and manually comments out the setSelectionMode() call. Switching back to the old behaviour until issues can be worked through. https://forums.ankiweb.net/t/anki-2-1-41-beta/7305/24 --- qt/aqt/sidebar.py | 19 +++++-------------- 1 file changed, 5 insertions(+), 14 deletions(-) diff --git a/qt/aqt/sidebar.py b/qt/aqt/sidebar.py index 331019f8d..2cc02f16a 100644 --- a/qt/aqt/sidebar.py +++ b/qt/aqt/sidebar.py @@ -291,7 +291,8 @@ class SidebarTreeView(QTreeView): self.col = self.mw.col self.current_search: Optional[str] = None - self.setContextMenuPolicy(Qt.PreventContextMenu) + self.setContextMenuPolicy(Qt.CustomContextMenu) + self.customContextMenuRequested.connect(self.onContextMenu) # type: ignore self.context_menus: Dict[SidebarItemType, Sequence[Tuple[str, Callable]]] = { SidebarItemType.DECK: ( (tr(TR.ACTIONS_RENAME), self.rename_deck), @@ -316,8 +317,8 @@ class SidebarTreeView(QTreeView): self.setIndentation(15) self.setAutoExpandDelay(600) # pylint: disable=no-member - mode = QAbstractItemView.SelectionMode.ExtendedSelection # type: ignore - self.setSelectionMode(mode) + # mode = QAbstractItemView.SelectionMode.ExtendedSelection # type: ignore + # self.setSelectionMode(mode) self.setDragDropMode(QAbstractItemView.InternalMove) self.setDragDropOverwriteMode(False) @@ -433,13 +434,7 @@ class SidebarTreeView(QTreeView): def mouseReleaseEvent(self, event: QMouseEvent) -> None: super().mouseReleaseEvent(event) if event.button() == Qt.LeftButton: - if not self._keyboard_modified_pressed(): - self._on_click_current() - elif event.button() == Qt.RightButton: - if self._keyboard_modified_pressed(): - self._on_click_current() - else: - self.onContextMenu(event.pos()) + self._on_click_current() def keyPressEvent(self, event: QKeyEvent) -> None: if event.key() in (Qt.Key_Return, Qt.Key_Enter): @@ -447,10 +442,6 @@ class SidebarTreeView(QTreeView): else: super().keyPressEvent(event) - def _keyboard_modified_pressed(self) -> bool: - mods = self.mw.app.keyboardModifiers() - return bool(mods & (Qt.ShiftModifier | Qt.AltModifier | Qt.ControlModifier)) - ########### def handle_drag_drop(self, sources: List[SidebarItem], target: SidebarItem) -> bool: