After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 104591 - EWMH: programmatic toggling of maximization states is wrong
EWMH: programmatic toggling of maximization states is wrong
Status: RESOLVED FIXED
Product: Sawfish
Classification: Deprecated
Component: Window Manager
pre-1.3.x
Other other
: Normal normal
: 3.0.x
Assigned To: sawfish-maint
sawfish QA Team
Depends on:
Blocks:
 
 
Reported: 2003-01-28 07:24 UTC by uwe
Modified: 2011-06-18 07:24 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description uwe 2003-01-28 07:24:43 UTC
When window is maximized in vertical directon only and a program wants to 
maximize it to horizontal direction only with one request it sends a 
request that toggles both vertical and horizontal maximization (vertical 
shall toggle on->off, horizontal - off->on).  Howere sawfish handles this 
situation incorrectly.  The window will go to the normal state. 
 
The problematic code is in lisp/sawfish/wm/state/wm-spec.jl: 
 
  (define (client-message-handler w type data) 
    (let ((handled t)) 
      (case type 
 
        ;;; ... 
 
	((_NET_WM_STATE) 
	 (when (windowp w) 
	   (let ((mode (cond ((eql (aref data 0) _NET_WM_STATE_REMOVE) 
'remove) 
			     ((eql (aref data 0) _NET_WM_STATE_ADD) 'add) 
			     ((eql (aref data 0) _NET_WM_STATE_TOGGLE) 
'toggle))) 
		 (atom1 (x-atom-name (aref data 1))) 
		 (atom2 (x-atom-name (aref data 2)))) 
	     (when (or (and (eq atom1 '_NET_WM_STATE_MAXIMIZED_VERT) 
			    (eq atom2 '_NET_WM_STATE_MAXIMIZED_HORZ)) 
		       (and (eq atom2 '_NET_WM_STATE_MAXIMIZED_VERT) 
			    (eq atom1 '_NET_WM_STATE_MAXIMIZED_HORZ))) 
	       (setq atom1 '_NET_WM_STATE_MAXIMIZED) 
	       (setq atom2 nil)) 
	     (when atom1 
	       (call-state-fun w atom1 mode)) 
	     (when atom2 
	       (call-state-fun w atom2 mode))))) 
 
The assumption that toggling both maximizations is the same as toggling 
full maximization is wrong.
Comment 1 Christopher Roy Bratusek 2010-10-13 15:13:18 UTC
-> 3.0
Comment 2 Christopher Roy Bratusek 2011-06-18 07:24:25 UTC
Closing. New report at our new BugTracker:

http://sawfish.tuxfamily.org/flyspray/index.php?do=details&task_id=9&project=1This problem has been fixed in the development version. The fix will be available in the next major software release. Thank you for your bug report.