Location: lg@xxxxxxxxxxxxxx http://arch.xwem.org/2005/
Revision: xwem--main--2.2--patch-37
Archive: lg@xxxxxxxxxxxxxx
Creator: Zajcev Evgeny <lg@xxxxxxxx>
Date: Wed Nov 16 00:39:30 MSK 2005
Standard-date: 2005-11-15 21:39:30 GMT
Modified-files: lisp/xwem-clients.el lisp/xwem-launcher.el
New-patches: lg@xxxxxxxxxxxxxx/xwem--main--2.2--patch-37
Summary: Tiny fixes
Keywords: launcher, window, managing
* lisp/xwem-clients.el (xwem-client-change-manage-type): [fix] Change
manage spec always, even if managing type is the same.
* lisp/xwem-launcher.el (xwem-execute-program-other-win): [fix] Use dummy
type for `xwem-execute-program-expecting' to avoid unwishable window
mapping.
* added files
{arch}/xwem/xwem--main/xwem--main--2.2/lg@xxxxxxxxxxxxxx/patch-log/patch-37
* modified files
--- orig/lisp/xwem-clients.el
+++ mod/lisp/xwem-clients.el
@@ -2118,35 +2118,34 @@
;;;###xwem-autoload
(defun xwem-client-change-manage-type (cl manage-spec)
"Change CL's manage type to type specified in MANAGE-SPEC."
- (unless (eq (xwem-cl-manage-type cl) (car manage-spec))
- (let ((state (xwem-cl-state cl))
- (selp (xwem-cl-selected-p cl)))
-
- ;; If client's window was having always on top rank - unset it
- (xwem-misc-unset-always-on-top (xwem-cl-xwin cl))
-
- ;; Reparent client to root window. The reparenting leaves unchanged the
- ;; absolute coordinates (with respect to the root window) of the
- ;; upper-left outer corner.
- (let ((tpnt (car (XTranslateCoordinates (xwem-dpy) (xwem-cl-xwin cl)
- (xwem-rootwin) 0 0))))
- (XReparentWindow (xwem-dpy) (xwem-cl-xwin cl)
- (xwem-rootwin) (X-Point-x tpnt) (X-Point-y tpnt)))
- (XUnmapWindow (xwem-dpy) (xwem-cl-xwin cl))
-
- (xwem-method-on-type-change cl manage-spec)
-
- ;; Set match spec, update plist
- (setf (xwem-cl-manage-spec cl) manage-spec)
- (xwem-cl-apply-plist cl (cadr manage-spec))
-
- (xwem-manage cl)
-
- ;; Keep CL's state
- (when (eq state 'active)
- (xwem-activate cl))
- (when selp
- (xwem-select-client cl)))))
+ (let ((state (xwem-cl-state cl))
+ (selp (xwem-cl-selected-p cl)))
+
+ ;; If client's window was having always on top rank - unset it
+ (xwem-misc-unset-always-on-top (xwem-cl-xwin cl))
+
+ ;; Reparent client to root window. The reparenting leaves unchanged the
+ ;; absolute coordinates (with respect to the root window) of the
+ ;; upper-left outer corner.
+ (let ((tpnt (car (XTranslateCoordinates (xwem-dpy) (xwem-cl-xwin cl)
+ (xwem-rootwin) 0 0))))
+ (XReparentWindow (xwem-dpy) (xwem-cl-xwin cl)
+ (xwem-rootwin) (X-Point-x tpnt) (X-Point-y tpnt)))
+ (XUnmapWindow (xwem-dpy) (xwem-cl-xwin cl))
+
+ (xwem-method-on-type-change cl manage-spec)
+
+ ;; Set match spec, update plist
+ (setf (xwem-cl-manage-spec cl) manage-spec)
+ (xwem-cl-apply-plist cl (cadr manage-spec))
+
+ (xwem-manage cl)
+
+ ;; Keep CL's state
+ (when (eq state 'active)
+ (xwem-activate cl))
+ (when selp
+ (xwem-select-client cl))))
;;;; --- Frontends to methods ---
--- orig/lisp/xwem-launcher.el
+++ mod/lisp/xwem-launcher.el
@@ -396,7 +396,7 @@
If SELECT-P is non-nil - select newly created client.
Return newly created client."
(let ((own (xwem-window-other 1))
- (cl (xwem-execute-program-expecting cmd 'default)))
+ (cl (xwem-execute-program-expecting cmd 'dummy)))
(when (xwem-cl-alive-p cl)
(when (xwem-win-only-one-p own)
(let ((xwem-win-split-hook nil)) ; Omit split hooks
|