From 6610099c2604c13a7f4d10e7409b6cba0056cafe Mon Sep 17 00:00:00 2001 From: Jiri Kalvoda <jirikalvoda@kam.mff.cuni.cz> Date: Sat, 27 Aug 2022 18:24:59 +0200 Subject: [PATCH] Qt: Fixes in container moves --- woman/qt.py | 20 ++++++++------------ 1 file changed, 8 insertions(+), 12 deletions(-) diff --git a/woman/qt.py b/woman/qt.py index 1e8695b..147f29b 100755 --- a/woman/qt.py +++ b/woman/qt.py @@ -644,22 +644,22 @@ def qt_main(): shared.i3_cmd(f"move workspace to output {output}") def move(self, target, swap=False, before=False, expand=False, new_container=None): - for f in self._tree.floating_nodes: - f.move_to_workspace(target.workspace_widget.master, target.workspace_widget.slave) if (w := self.root_i3_tree_widget()) is not None: w.move(target, swap=swap, before=before, expand=expand, new_container=new_container) + for f in self._tree.floating_nodes: + f.move_to_workspace(target.workspace_widget.master, target.workspace_widget.slave) def move_to_workspace(self, master, slave, expand=False): - for f in self._tree.floating_nodes: - f.move_to_workspace(master, slave) if (w := self.root_i3_tree_widget()) is not None: w.move_to_workspace(master, slave, expand=expand) + for f in self._tree.floating_nodes: + f.move_to_workspace(master, slave) def quit_windows(self, *arg, **kvarg): - for f in self._tree.floating_nodes: - f.quit_windows(*arg, **kvarg) if self._tree.root_node is not None: self._tree.root_node.quit_windows(*arg, **kvarg) + for f in self._tree.floating_nodes: + f.quit_windows(*arg, **kvarg) def clicked(self, pos, buttons): if buttons == Qt.RightButton: @@ -673,6 +673,7 @@ def qt_main(): def root_i3_tree_widget(self): r = self._tree.root_node + if isinstance(r, I3WindowNodeWidget): return r if r is None: return None if len(r.nodes) == 1: return r.nodes[0] @@ -691,12 +692,7 @@ def qt_main(): m_win.cmd_msg_clean() button = s.press_event_buttons try: - if isinstance(s, WorkspaceWidget): - for f in s._tree.floating_nodes: - f.move_to_workspace(self.master, self.slave) - s.move_to_workspace(self.master, self.slave, expand = button == Qt.RightButton) - else: - s.move_to_workspace(self.master, self.slave, expand=button == Qt.RightButton) + s.move_to_workspace(self.master, self.slave, expand=button == Qt.RightButton) m_win.load_i3_tree() except I3CmdException as e: m_win.cmd_msg(e.error, QColor(255, 100, 100)) -- GitLab