dont let you ignore requested positions for !normal windows

This commit is contained in:
Dana Jansens 2003-02-01 11:59:28 +00:00
parent 5d672875d4
commit d0c90fcc60
2 changed files with 7 additions and 3 deletions

View file

@ -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:

View file

@ -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()