From d0c90fcc6019e5fe97c0ef048fa07e4b34e2497c Mon Sep 17 00:00:00 2001 From: Dana Jansens Date: Sat, 1 Feb 2003 11:59:28 +0000 Subject: [PATCH] dont let you ignore requested positions for !normal windows --- scripts/historyplacement.py | 3 ++- scripts/windowplacement.py | 7 +++++-- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/scripts/historyplacement.py b/scripts/historyplacement.py index 8386e581..b39043cc 100644 --- a/scripts/historyplacement.py +++ b/scripts/historyplacement.py @@ -104,7 +104,8 @@ def _find(screen, state): def place(data): global _data if data.client: - if not windowplacement.ignore_requested_positions: + if not (windowplacement.ignore_requested_positions and + data.client.normal()): if data.client.positionRequested(): return state = _create_state(data) try: diff --git a/scripts/windowplacement.py b/scripts/windowplacement.py index 0fe29fcc..d01fe71b 100644 --- a/scripts/windowplacement.py +++ b/scripts/windowplacement.py @@ -13,6 +13,9 @@ # ignore_requested_positions - When true, the placement algorithm will ### ### attempt to place windows even when they ### ### request a position (like XMMS). ### +### Note this only applies to normal windows, ### +### not to special cases like desktops and ### +### docks. ### ignore_requested_positions = 0 ### ### ### ############################################################################## @@ -26,7 +29,7 @@ _rand = random.Random() def random(data): """Place windows randomly around the screen.""" if not data.client: return - if not ignore_requested_positions: + if not (ignore_requested_positions and data.client.normal()): if data.client.positionRequested(): return client_area = data.client.area() frame_size = data.client.frame.size() @@ -46,7 +49,7 @@ _cascade_y = 0 def cascade(data): """Place windows in a cascading order from top-left to bottom-right.""" if not data.client: return - if not ignore_requested_positions: + if not (ignore_requested_positions and data.client.normal()): if data.client.positionRequested(): return client_area = data.client.area() frame_size = data.client.frame.size() -- 2.39.2