8fccf021 |
1 | diff --git a/lib/awful/layout/suit/magnifier.lua.in b/lib/awful/layout/suit/magnifier.lua.in |
2 | index 2d4a526..74a2398 100644 |
3 | --- a/lib/awful/layout/suit/magnifier.lua.in |
4 | +++ b/lib/awful/layout/suit/magnifier.lua.in |
5 | @@ -34,6 +34,11 @@ function arrange(p) |
6 | fidx = 1 |
7 | end |
8 | |
9 | + -- If focused window is floating, value of focus will change. We want to |
10 | + -- save original value of focus and raise() it after seting geometry of |
11 | + -- other clients. |
12 | + local originalfocus = focus |
13 | + |
14 | -- If focused window is not tiled, take the first one which is tiled. |
15 | if client.floating.get(focus) then |
16 | focus = cls[1] |
17 | @@ -56,7 +61,6 @@ function arrange(p) |
18 | geometry.height = area.height |
19 | end |
20 | focus:geometry(geometry) |
21 | - focus:raise() |
22 | |
23 | if #cls > 1 then |
24 | geometry.x = area.x |
25 | @@ -87,6 +91,11 @@ function arrange(p) |
26 | geometry.y = geometry.y + geometry.height |
27 | end |
28 | end |
29 | + |
30 | + -- Raise primary tiled window and then the originally focused window. If |
31 | + -- there was no floating window it is the same window. |
32 | + focus:raise() |
33 | + originalfocus:raise() |
34 | end |
35 | |
36 | name = "magnifier" |