~jamespharaoh/ubuntu/precise/compiz/focus-follows-mouse

« back to all changes in this revision

Viewing changes to debian/patches/fix-832150.patch

  • Committer: Bazaar Package Importer
  • Author(s): Didier Roche
  • Date: 2011-10-06 17:57:36 UTC
  • Revision ID: james.westby@ubuntu.com-20111006175736-ra3xnpa8tyy3z7vn
Tags: 1:0.9.6+bzr20110929-0ubuntu4
* debian/control:
  - don't suggest nvidia-glx, it's part of the old initial packaging
    and probably a bad hint on non nvidia system (LP: #844218)
* Cherry-pick upstream patches:
  - Windows should not automatically be focused when opened if the focus
    is on another application (LP: #748840)
  - Launcher - If a spread contains minimised windows, when the spread
    exits, the minimised windows momentarily appear on the desktop
    before disappearing (LP: #863328)
  - reproducible stacking bug in compiz (LP: #869316)
  - Click-dragging a window that's stacked above a fullscreen window will
    cause it to go underneath the fullscreen window (LP: #869919)
  - sometimes the keyboard input doesn't go to the apparently focussed
    dialog (LP: #869967)
  - Opening mumble can cause it to be stacked above the dash if you
    open the dash at the same time (LP: #865863)
  - Sometimes configure events are missed and windows move slow as a result
    (LP: #866752)
  - Workaround ubuntu desktop unity. Mouse at the left side doesn't reveal
    launcher (LP: #832150)

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
=== modified file 'src/screen.cpp'
 
2
--- a/src/screen.cpp    2011-10-07 16:36:43 +0000
 
3
+++ b/src/screen.cpp    2011-10-10 09:20:29 +0000
 
4
@@ -2055,15 +2055,23 @@
 
5
     for (i = 0; i < SCREEN_EDGE_NUM; i++)
 
6
     {
 
7
        if (screenEdge[i].id)
 
8
-           XMoveResizeWindow (dpy, screenEdge[i].id,
 
9
-                              geometry[i].xw * screen->width () +
 
10
-                              geometry[i].x0,
 
11
-                              geometry[i].yh * screen->height () +
 
12
-                              geometry[i].y0,
 
13
-                              geometry[i].ww * screen->width () +
 
14
-                              geometry[i].w0,
 
15
-                              geometry[i].hh * screen->height () +
 
16
-                              geometry[i].h0);
 
17
+       {
 
18
+           XWindowChanges xwc;
 
19
+           unsigned int   valueMask = CWX | CWY | CWWidth | CWHeight | CWStackMode;
 
20
+
 
21
+           xwc.x = geometry[i].xw * screen->width () +
 
22
+                   geometry[i].x0;
 
23
+           xwc.y = geometry[i].yh * screen->height () +
 
24
+                   geometry[i].y0;
 
25
+           xwc.width = geometry[i].ww * screen->width () +
 
26
+                   geometry[i].w0;
 
27
+           xwc.height = geometry[i].hh * screen->height () +
 
28
+                   geometry[i].h0;
 
29
+
 
30
+           xwc.stack_mode = Above;
 
31
+
 
32
+           XConfigureWindow (dpy, screenEdge[i].id, valueMask, &xwc);
 
33
+       }
 
34
     }
 
35
 }
 
36
 
 
37
 
 
38
=== modified file 'src/window.cpp'
 
39
--- a/src/window.cpp    2011-10-07 16:36:43 +0000
 
40
+++ b/src/window.cpp    2011-10-10 09:20:29 +0000
 
41
@@ -3385,6 +3385,8 @@
 
42
 
 
43
     if (valueMask)
 
44
        XConfigureWindow (screen->dpy (), id, valueMask, xwc);
 
45
+
 
46
+    screen->priv->updateScreenEdges ();
 
47
 }
 
48
 
 
49
 bool
 
50