summaryrefslogtreecommitdiff
path: root/floating-group.lisp
diff options
context:
space:
mode:
authorJoram Schrijver <i@joram.io>2017-02-05 15:07:24 +0100
committerJoram Schrijver <i@joram.io>2017-02-05 15:12:32 +0100
commit5e5dddb353fbeab2884aa9d326d10bc29f0a1586 (patch)
treea733c1a60dfe9756841a953f71920656e405ac6f /floating-group.lisp
parent82859b20ab5456d1961b0b971e5f4b78bfc2378c (diff)
Use GROUP-FOCUS-WINDOW to focus floating windows
This allows focusing behavior to properly be managed by the group the window is in. This introduces one possible change in behavior: The floating group's GROUP-FOCUS-WINDOW method now always raises the window. I am not sure this actually changes anything user-visible.
Diffstat (limited to 'floating-group.lisp')
-rw-r--r--floating-group.lisp10
1 files changed, 5 insertions, 5 deletions
diff --git a/floating-group.lisp b/floating-group.lisp
index c1983e2..ade2e47 100644
--- a/floating-group.lisp
+++ b/floating-group.lisp
@@ -134,7 +134,7 @@
(declare (ignore group))
(change-class window 'float-window)
(float-window-align window)
- (focus-window window)))
+ (group-focus-window group window)))
(defmethod group-add-window ((group float-group) window &key &allow-other-keys)
(add-float-window group window))
(defmethod group-add-window (group (window float-window) &key &allow-other-keys)
@@ -142,7 +142,7 @@
(defun &float-focus-next (group)
(if (group-windows group)
- (focus-window (first (group-windows group)))
+ (group-focus-window group (first (group-windows group)))
(no-focus group nil)))
(defmethod group-delete-window ((group float-group) (window float-window))
@@ -177,7 +177,7 @@
(defmethod group-raise-request ((group float-group) window type)
(declare (ignore type))
- (focus-window window))
+ (group-focus-window group window))
(defmethod group-lost-focus ((group float-group))
(&float-focus-next group))
@@ -186,7 +186,7 @@
)
(defmethod group-focus-window ((group float-group) window)
- (focus-window window nil))
+ (focus-window window))
(defmethod group-root-exposure ((group float-group))
)
@@ -212,7 +212,7 @@
(initial-width (xlib:drawable-width (window-parent window)))
(initial-height (xlib:drawable-height (window-parent window))))
(when (member *mouse-focus-policy* '(:click :sloppy))
- (focus-window window))
+ (group-focus-window group window))
;; When in border
(multiple-value-bind (relx rely same-screen-p child state-mask)