Merge lp:~compiz-team/compiz/bump-compiz-to-0.9.11.1 into lp:compiz/0.9.11
- bump-compiz-to-0.9.11.1
- Merge into 0.9.11
Proposed by
Christopher Townsend
Status: | Superseded |
---|---|
Proposed branch: | lp:~compiz-team/compiz/bump-compiz-to-0.9.11.1 |
Merge into: | lp:compiz/0.9.11 |
Diff against target: |
512 lines (+216/-24) 16 files modified
NEWS (+89/-0) VERSION (+1/-1) compizconfig/gsettings/src/gsettings.c (+9/-3) compizconfig/integration/gnome/gsettings/src/ccs_gnome_integration_gsettings_integrated_setting.c (+0/-2) debian/changelog (+32/-0) plugins/place/src/place.cpp (+2/-0) plugins/place/src/screen-size-change/include/screen-size-change.h (+2/-0) plugins/place/src/screen-size-change/src/screen-size-change.cpp (+6/-3) plugins/place/src/screen-size-change/tests/screen-size-change/src/test-place-screen-size-change.cpp (+7/-0) plugins/resize/src/logic/include/resize-logic.h (+3/-0) plugins/resize/src/logic/src/resize-logic.cpp (+20/-5) scripts/release.py (+14/-4) src/event.cpp (+2/-0) src/screen.cpp (+2/-3) src/window.cpp (+26/-3) src/window/extents/src/windowextents.cpp (+1/-0) |
To merge this branch: | bzr merge lp:~compiz-team/compiz/bump-compiz-to-0.9.11.1 |
Related bugs: |
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Compiz Maintainers | Pending | ||
Review via email:
|
Commit message
Bump version to 0.9.11.1.
Description of the change
Bump version to 0.9.11.1.
To post a comment you must log in.
Unmerged revisions
Preview Diff
[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1 | === modified file 'NEWS' | |||
2 | --- NEWS 2013-07-22 06:34:49 +0000 | |||
3 | +++ NEWS 2014-06-30 20:48:27 +0000 | |||
4 | @@ -1,3 +1,92 @@ | |||
5 | 1 | Release 0.9.11 (2014-6-30 Christopher Townsend <christopher.townsend@canonical.com>) | ||
6 | 2 | ============================================================================= | ||
7 | 3 | |||
8 | 4 | Bugs Fixed (https://launchpad.net/compiz/+milestone/0.9.11) | ||
9 | 5 | |||
10 | 6 | 1019139 - [regression] Horizontally resizing a vertically maximized | ||
11 | 7 | terminal is now very slow, unresponsive. | ||
12 | 8 | 1019923 - Stuck in scale mode, can't get out without killing compiz | ||
13 | 9 | 1027868 - Changing "Composite > Detect Refresh Rate" is ignored initially | ||
14 | 10 | 1031710 - Multi-Monitor. Workspace switcher on monitor 2 is drawn under | ||
15 | 11 | launcher | ||
16 | 12 | 1055166 - compiz crashed with SIGSEGV in memmove() from | ||
17 | 13 | drisw_update_tex_buffer() from dri_set_tex_buffer2() from | ||
18 | 14 | operator() from compiz::opengl::bindTexImageGLX() from ... from | ||
19 | 15 | unity::UnityWindow::DrawWindowDecoration | ||
20 | 16 | 1063617 - 1:0.9.8+bzr3319-0ubuntu1 regression: keeps setting gsettings | ||
21 | 17 | keys to wrong values | ||
22 | 18 | 1087090 - [raring][regression] Window management - Maximized windows | ||
23 | 19 | aren't fullscreen in the workspace switcher | ||
24 | 20 | 1092323 - Window management - Switching to windows placed on two work | ||
25 | 21 | spaces causes the workspace to switch | ||
26 | 22 | 1104236 - [regression] Unity show desktop fade out makes them invisible in | ||
27 | 23 | spread. | ||
28 | 24 | 1171342 - mouse scroll wheel not working in gedit & System Monitor | ||
29 | 25 | 1171878 - Adding/Removing an external monitor causes maximized windows to | ||
30 | 26 | move to another workspace | ||
31 | 27 | 1176898 - Grid: Snap animation uses wrong window | ||
32 | 28 | 1184159 - [saucy] scrolling with a touchpad is jerky with bindings set in | ||
33 | 29 | compiz for Desktop-based Viewport Switching | ||
34 | 30 | 1191853 - gtk-window-decorator crashed with SIGSEGV in | ||
35 | 31 | wnck_window_get_actions() | ||
36 | 32 | 1192028 - Compiz refresh rate resets to 50 Hz automatically w/ Nvidia | ||
37 | 33 | proprietary driver | ||
38 | 34 | 1200829 - Regression: Enabling typical bindings in "Desktop-based | ||
39 | 35 | Viewport Switching" breaks scrollwheel scrolling in some windows | ||
40 | 36 | with a usb mouse on a laptop | ||
41 | 37 | 1204307 - Regression: The size of all windows grows by the size of the | ||
42 | 38 | decoration each time Compiz gets restarted | ||
43 | 39 | 1217286 - Regression r3751: Restarting Compiz changes size and position of | ||
44 | 40 | windows | ||
45 | 41 | 1228352 - [regression] Alt-Tab for all viewports will not switch viewports | ||
46 | 42 | when selecting a window on another viewport | ||
47 | 43 | 1228507 - Cannot move certain windows via the top half of the titlebar in | ||
48 | 44 | Ubuntu 13.10 | ||
49 | 45 | 1236899 - [regression] Ctrl+Alt+KP_0 should minimize a window | ||
50 | 46 | 1238111 - Compiz causes Motif window shrunk | ||
51 | 47 | 1240957 - Scrolling behaviour and window focus has changed and is | ||
52 | 48 | inconsistent | ||
53 | 49 | 1244754 - [regression] compiz freezes when dragging a window to the top | ||
54 | 50 | bar after being semi-maximized | ||
55 | 51 | 1251777 - [regression] Semi-maximizing and then restoring the window does | ||
56 | 52 | not return it to it's original place using Ctrl-Super-Left/Right | ||
57 | 53 | 1277487 - Create Unity Settings Daemon so can remain on old GNOME Settings | ||
58 | 54 | Daemon version | ||
59 | 55 | 1280377 - Resizing vertically a window in normal mode doesn't vertically | ||
60 | 56 | maximize it correctly | ||
61 | 57 | 1280616 - When launcher is in autohide mode the launcher icons are not | ||
62 | 58 | clickable | ||
63 | 59 | 1281370 - Unity should use "Normal" resize mode by default | ||
64 | 60 | 1282304 - Bottom-edge window placement doesn't take decoration height into | ||
65 | 61 | consideration | ||
66 | 62 | 1282305 - Repeatedly undecorating and redecorating a window shrinks it | ||
67 | 63 | vertically | ||
68 | 64 | 1287472 - compiz unnecessarily shrinks new windows | ||
69 | 65 | 1288953 - fix kde4-window-decorator build | ||
70 | 66 | 1289820 - 'Move to Another Workspace' causes window to disappear | ||
71 | 67 | 1292220 - ccsm crashed with UnboundLocalError in AskUser(): local variable | ||
72 | 68 | 'msg_dict' referenced before assignment | ||
73 | 69 | 1294341 - Some of the input fields are blank in CompizConfig Settings | ||
74 | 70 | Manager | ||
75 | 71 | 1303068 - Regression: rev 3847 No focus on Desktop possible if a window is | ||
76 | 72 | open | ||
77 | 73 | 1303462 - [Regression] Window titlebars placed behind panel | ||
78 | 74 | 1304531 - Removing an external monitor will move a maximized window to the | ||
79 | 75 | current workspace | ||
80 | 76 | 1304877 - Functions assigned to extra mouse buttons in compiz do not work | ||
81 | 77 | anymore. | ||
82 | 78 | 1305586 - Lock screen is unusable when some windows have a keyboard/mouse | ||
83 | 79 | grab | ||
84 | 80 | 1311303 - Compiz mouse functions mapped to horizontal scrolling buttons do | ||
85 | 81 | not work | ||
86 | 82 | 1311788 - compiz lower window:<Alt>Button5 stops working | ||
87 | 83 | 347390 - Compiz can't resize a window vertically AND horizontally with | ||
88 | 84 | keyboard. | ||
89 | 85 | 890747 - Keyboard shortcut - Ctrl Alt Del doesn't do what most people | ||
90 | 86 | typing it would expect | ||
91 | 87 | 992697 - Window management - 'Ctrl-Alt-Numpad 4' and 'Ctrl-Alt-Numpad 6' | ||
92 | 88 | window placement shortcuts are broken | ||
93 | 89 | |||
94 | 1 | Release 0.9.10.0 (2013-7-21 Sam Spilsbury <smspillaz@gmail.com>) | 90 | Release 0.9.10.0 (2013-7-21 Sam Spilsbury <smspillaz@gmail.com>) |
95 | 2 | ================================================================ | 91 | ================================================================ |
96 | 3 | 92 | ||
97 | 4 | 93 | ||
98 | === modified file 'VERSION' | |||
99 | --- VERSION 2013-07-23 02:01:11 +0000 | |||
100 | +++ VERSION 2014-06-30 20:48:27 +0000 | |||
101 | @@ -1,1 +1,1 @@ | |||
103 | 1 | 0.9.11 | 1 | 0.9.11.1 |
104 | 2 | 2 | ||
105 | === modified file 'compizconfig/gsettings/src/gsettings.c' | |||
106 | --- compizconfig/gsettings/src/gsettings.c 2013-02-20 14:05:36 +0000 | |||
107 | +++ compizconfig/gsettings/src/gsettings.c 2014-06-30 20:48:27 +0000 | |||
108 | @@ -423,13 +423,19 @@ | |||
109 | 423 | static void | 423 | static void |
110 | 424 | updateSetting (CCSBackend *backend, CCSContext *context, CCSPlugin *plugin, CCSSetting *setting) | 424 | updateSetting (CCSBackend *backend, CCSContext *context, CCSPlugin *plugin, CCSSetting *setting) |
111 | 425 | { | 425 | { |
112 | 426 | Bool status; | ||
113 | 426 | CCSIntegratedSetting *integrated = ccsGSettingsBackendGetIntegratedSetting (backend, setting); | 427 | CCSIntegratedSetting *integrated = ccsGSettingsBackendGetIntegratedSetting (backend, setting); |
114 | 427 | 428 | ||
117 | 428 | ccsBackendReadInit (backend, context); | 429 | if (ccsGetIntegrationEnabled (context) && |
118 | 429 | if (!readOption (backend, setting)) | 430 | integrated) |
119 | 430 | { | 431 | { |
120 | 432 | status = readIntegratedOption (backend, setting, integrated); | ||
121 | 433 | } | ||
122 | 434 | else | ||
123 | 435 | status = readOption (backend, setting); | ||
124 | 436 | |||
125 | 437 | if (!status) | ||
126 | 431 | ccsResetToDefault (setting, TRUE); | 438 | ccsResetToDefault (setting, TRUE); |
127 | 432 | } | ||
128 | 433 | 439 | ||
129 | 434 | if (ccsGetIntegrationEnabled (context) && | 440 | if (ccsGetIntegrationEnabled (context) && |
130 | 435 | integrated) | 441 | integrated) |
131 | 436 | 442 | ||
132 | === modified file 'compizconfig/integration/gnome/gsettings/src/ccs_gnome_integration_gsettings_integrated_setting.c' | |||
133 | --- compizconfig/integration/gnome/gsettings/src/ccs_gnome_integration_gsettings_integrated_setting.c 2014-03-04 20:00:28 +0000 | |||
134 | +++ compizconfig/integration/gnome/gsettings/src/ccs_gnome_integration_gsettings_integrated_setting.c 2014-06-30 20:48:27 +0000 | |||
135 | @@ -244,8 +244,6 @@ | |||
136 | 244 | /* g_settings_set_value consumes the reference */ | 244 | /* g_settings_set_value consumes the reference */ |
137 | 245 | if (newVariant) | 245 | if (newVariant) |
138 | 246 | ccsGSettingsWrapperSetValue (priv->wrapper, gsettingsTranslatedName, newVariant); | 246 | ccsGSettingsWrapperSetValue (priv->wrapper, gsettingsTranslatedName, newVariant); |
139 | 247 | else | ||
140 | 248 | ccsGSettingsWrapperResetKey (priv->wrapper, gsettingsTranslatedName); | ||
141 | 249 | 247 | ||
142 | 250 | g_variant_unref (variant); | 248 | g_variant_unref (variant); |
143 | 251 | free (gsettingsTranslatedName); | 249 | free (gsettingsTranslatedName); |
144 | 252 | 250 | ||
145 | === modified file 'debian/changelog' | |||
146 | --- debian/changelog 2014-04-23 14:56:06 +0000 | |||
147 | +++ debian/changelog 2014-06-30 20:48:27 +0000 | |||
148 | @@ -1,3 +1,35 @@ | |||
149 | 1 | compiz (1:0.9.11.1-0ubuntu1) UNRELEASED; urgency=medium | ||
150 | 2 | |||
151 | 3 | * Bump version to 0.9.11.1. | ||
152 | 4 | |||
153 | 5 | -- Chris Townsend <christopher.townsend@canonical.com> Mon, 30 Jun 2014 16:41:37 -0400 | ||
154 | 6 | |||
155 | 7 | compiz (1:0.9.11+14.04.20140423-0ubuntu2) UNRELEASED; urgency=medium | ||
156 | 8 | |||
157 | 9 | [ Chris Townsend ] | ||
158 | 10 | * Fix issue where window decorations would be placed under the Panel | ||
159 | 11 | when opening a new window from an already open window. This is due | ||
160 | 12 | to the already open window being taller or just as tall without be | ||
161 | 13 | maximized than the workspace. (LP: #1303462) | ||
162 | 14 | * Only constrain the non-modifier scrolling to the vertical scrolling | ||
163 | 15 | buttons - buttons 4 & 5. (LP: #1311303) | ||
164 | 16 | * Fix issue where maximized windows would get moved to different | ||
165 | 17 | workspaces when disconnecting/connecting an external monitor. | ||
166 | 18 | Windows should stay in the same workspace they are in when the | ||
167 | 19 | monitor event occurs. (LP: #1304531) | ||
168 | 20 | * Fix issue where horizontal and vertical keyboard resizing could not | ||
169 | 21 | happen at the same time. (LP: #347390) | ||
170 | 22 | |||
171 | 23 | [ Marco Trevisan (TreviƱo) ] | ||
172 | 24 | * Event: set the screen grabbed also when we get a NotifyWhileGrabbed | ||
173 | 25 | Focus{In,Out} event (LP: #1305586) | ||
174 | 26 | |||
175 | 27 | [ Lukas Vacek ] | ||
176 | 28 | * Fix issue where custom keyboard shortcuts would get reset to | ||
177 | 29 | defaults when rebooting or restarting Compiz. (LP: #1063617) | ||
178 | 30 | |||
179 | 31 | -- Chris Townsend <christopher.townsend@canonical.com> Wed, 11 Jun 2014 10:26:04 -0400 | ||
180 | 32 | |||
181 | 1 | compiz (1:0.9.11+14.04.20140423-0ubuntu1) trusty; urgency=low | 33 | compiz (1:0.9.11+14.04.20140423-0ubuntu1) trusty; urgency=low |
182 | 2 | 34 | ||
183 | 3 | [ Ryan Tandy ] | 35 | [ Ryan Tandy ] |
184 | 4 | 36 | ||
185 | === modified file 'plugins/place/src/place.cpp' | |||
186 | --- plugins/place/src/place.cpp 2013-07-22 17:19:59 +0000 | |||
187 | +++ plugins/place/src/place.cpp 2014-06-30 20:48:27 +0000 | |||
188 | @@ -123,6 +123,8 @@ | |||
189 | 123 | state |= compiz::place::WindowAbove; | 123 | state |= compiz::place::WindowAbove; |
190 | 124 | if (window->state () & CompWindowStateBelowMask) | 124 | if (window->state () & CompWindowStateBelowMask) |
191 | 125 | state |= compiz::place::WindowBelow; | 125 | state |= compiz::place::WindowBelow; |
192 | 126 | if (window->state () & CompWindowStateMaximizedVertMask || window->state () & CompWindowStateMaximizedHorzMask) | ||
193 | 127 | state |= compiz::place::WindowMaximized; | ||
194 | 126 | 128 | ||
195 | 127 | return state; | 129 | return state; |
196 | 128 | } | 130 | } |
197 | 129 | 131 | ||
198 | === modified file 'plugins/place/src/screen-size-change/include/screen-size-change.h' | |||
199 | --- plugins/place/src/screen-size-change/include/screen-size-change.h 2012-01-20 06:27:10 +0000 | |||
200 | +++ plugins/place/src/screen-size-change/include/screen-size-change.h 2014-06-30 20:48:27 +0000 | |||
201 | @@ -36,6 +36,7 @@ | |||
202 | 36 | { | 36 | { |
203 | 37 | namespace place | 37 | namespace place |
204 | 38 | { | 38 | { |
205 | 39 | const unsigned int WindowMaximized = 1 << 2; | ||
206 | 39 | 40 | ||
207 | 40 | class ScreenSizeChangeObject | 41 | class ScreenSizeChangeObject |
208 | 41 | { | 42 | { |
209 | @@ -50,6 +51,7 @@ | |||
210 | 50 | virtual const CompPoint & getViewport () const = 0; | 51 | virtual const CompPoint & getViewport () const = 0; |
211 | 51 | virtual const CompRect & getWorkarea (const compiz::window::Geometry &g) const = 0; | 52 | virtual const CompRect & getWorkarea (const compiz::window::Geometry &g) const = 0; |
212 | 52 | virtual const compiz::window::extents::Extents & getExtents () const = 0; | 53 | virtual const compiz::window::extents::Extents & getExtents () const = 0; |
213 | 54 | virtual unsigned int getState () const = 0; | ||
214 | 53 | 55 | ||
215 | 54 | compiz::window::Geometry adjustForSize (const CompSize &oldSize, | 56 | compiz::window::Geometry adjustForSize (const CompSize &oldSize, |
216 | 55 | const CompSize &newSize); | 57 | const CompSize &newSize); |
217 | 56 | 58 | ||
218 | === modified file 'plugins/place/src/screen-size-change/src/screen-size-change.cpp' | |||
219 | --- plugins/place/src/screen-size-change/src/screen-size-change.cpp 2013-04-07 08:45:50 +0000 | |||
220 | +++ plugins/place/src/screen-size-change/src/screen-size-change.cpp 2014-06-30 20:48:27 +0000 | |||
221 | @@ -39,7 +39,7 @@ | |||
222 | 39 | { | 39 | { |
223 | 40 | int vpX, vpY; | 40 | int vpX, vpY; |
224 | 41 | compiz::window::Geometry g, vpRelRect; | 41 | compiz::window::Geometry g, vpRelRect; |
226 | 42 | int pivotX, pivotY; | 42 | int pivotX, pivotY, pivotWidth, pivotHeight; |
227 | 43 | 43 | ||
228 | 44 | g = getGeometry (); | 44 | g = getGeometry (); |
229 | 45 | compiz::window::Geometry og (g); | 45 | compiz::window::Geometry og (g); |
230 | @@ -50,10 +50,13 @@ | |||
231 | 50 | /* FIXME: Should use saved geometry for maximized / fullscreen windows */ | 50 | /* FIXME: Should use saved geometry for maximized / fullscreen windows */ |
232 | 51 | 51 | ||
233 | 52 | /* calculate target vp x, y index for window's pivot point */ | 52 | /* calculate target vp x, y index for window's pivot point */ |
235 | 53 | vpX = pivotX / oldSize.width (); | 53 | pivotWidth = (getState () & compiz::place::WindowMaximized) ? newSize.width () : oldSize.width (); |
236 | 54 | pivotHeight = (getState () & compiz::place::WindowMaximized) ? newSize.height () : oldSize.height (); | ||
237 | 55 | |||
238 | 56 | vpX = pivotX / pivotWidth; | ||
239 | 54 | if (pivotX < 0) | 57 | if (pivotX < 0) |
240 | 55 | vpX -= 1; | 58 | vpX -= 1; |
242 | 56 | vpY = pivotY / oldSize.height (); | 59 | vpY = pivotY / pivotHeight; |
243 | 57 | if (pivotY < 0) | 60 | if (pivotY < 0) |
244 | 58 | vpY -= 1; | 61 | vpY -= 1; |
245 | 59 | 62 | ||
246 | 60 | 63 | ||
247 | === modified file 'plugins/place/src/screen-size-change/tests/screen-size-change/src/test-place-screen-size-change.cpp' | |||
248 | --- plugins/place/src/screen-size-change/tests/screen-size-change/src/test-place-screen-size-change.cpp 2013-04-16 04:24:22 +0000 | |||
249 | +++ plugins/place/src/screen-size-change/tests/screen-size-change/src/test-place-screen-size-change.cpp 2014-06-30 20:48:27 +0000 | |||
250 | @@ -62,6 +62,7 @@ | |||
251 | 62 | const CompPoint & getViewport () const; | 62 | const CompPoint & getViewport () const; |
252 | 63 | const CompRect & getWorkarea (const cw::Geometry &g) const; | 63 | const CompRect & getWorkarea (const cw::Geometry &g) const; |
253 | 64 | const cw::extents::Extents & getExtents () const; | 64 | const cw::extents::Extents & getExtents () const; |
254 | 65 | unsigned int getState () const; | ||
255 | 65 | 66 | ||
256 | 66 | void setVp (const CompPoint &); | 67 | void setVp (const CompPoint &); |
257 | 67 | void setWorkArea (const CompRect &); | 68 | void setWorkArea (const CompRect &); |
258 | @@ -214,6 +215,12 @@ | |||
259 | 214 | return mCurrentExtents; | 215 | return mCurrentExtents; |
260 | 215 | } | 216 | } |
261 | 216 | 217 | ||
262 | 218 | unsigned int | ||
263 | 219 | StubScreenSizeChangeObject::getState () const | ||
264 | 220 | { | ||
265 | 221 | return 0; | ||
266 | 222 | } | ||
267 | 223 | |||
268 | 217 | void | 224 | void |
269 | 218 | StubScreenSizeChangeObject::setVp (const CompPoint &p) | 225 | StubScreenSizeChangeObject::setVp (const CompPoint &p) |
270 | 219 | { | 226 | { |
271 | 220 | 227 | ||
272 | === modified file 'plugins/resize/src/logic/include/resize-logic.h' | |||
273 | --- plugins/resize/src/logic/include/resize-logic.h 2012-08-15 21:36:40 +0000 | |||
274 | +++ plugins/resize/src/logic/include/resize-logic.h 2014-06-30 20:48:27 +0000 | |||
275 | @@ -176,6 +176,9 @@ | |||
276 | 176 | unsigned int output, | 176 | unsigned int output, |
277 | 177 | int &op, | 177 | int &op, |
278 | 178 | int &wap); | 178 | int &wap); |
279 | 179 | |||
280 | 180 | unsigned int lastMaskX; | ||
281 | 181 | unsigned int lastMaskY; | ||
282 | 179 | }; | 182 | }; |
283 | 180 | 183 | ||
284 | 181 | #endif /* RESIZELOGIC_H */ | 184 | #endif /* RESIZELOGIC_H */ |
285 | 182 | 185 | ||
286 | === modified file 'plugins/resize/src/logic/src/resize-logic.cpp' | |||
287 | --- plugins/resize/src/logic/src/resize-logic.cpp 2014-03-11 18:35:18 +0000 | |||
288 | +++ plugins/resize/src/logic/src/resize-logic.cpp 2014-06-30 20:48:27 +0000 | |||
289 | @@ -65,7 +65,9 @@ | |||
290 | 65 | offWorkAreaConstrained (true), | 65 | offWorkAreaConstrained (true), |
291 | 66 | options (NULL), | 66 | options (NULL), |
292 | 67 | cScreen (NULL), | 67 | cScreen (NULL), |
294 | 68 | gScreen (NULL) | 68 | gScreen (NULL), |
295 | 69 | lastMaskX (0), | ||
296 | 70 | lastMaskY (0) | ||
297 | 69 | { | 71 | { |
298 | 70 | rKeys[0].name = "Left"; | 72 | rKeys[0].name = "Left"; |
299 | 71 | rKeys[0].dx = -1; | 73 | rKeys[0].dx = -1; |
300 | @@ -411,6 +413,19 @@ | |||
301 | 411 | 413 | ||
302 | 412 | mask = rKeys[i].resizeMask; | 414 | mask = rKeys[i].resizeMask; |
303 | 413 | 415 | ||
304 | 416 | if ((mask & ResizeLeftMask || mask & ResizeRightMask) && (mask != lastMaskX)) | ||
305 | 417 | { | ||
306 | 418 | pointerDx *= -1; | ||
307 | 419 | |||
308 | 420 | lastMaskX = mask; | ||
309 | 421 | } | ||
310 | 422 | if ((mask & ResizeUpMask || mask & ResizeDownMask) && (mask != lastMaskY)) | ||
311 | 423 | { | ||
312 | 424 | pointerDy *= -1; | ||
313 | 425 | |||
314 | 426 | lastMaskY = mask; | ||
315 | 427 | } | ||
316 | 428 | |||
317 | 414 | mScreen->updateGrab (grabIndex, cursor[i]); | 429 | mScreen->updateGrab (grabIndex, cursor[i]); |
318 | 415 | } | 430 | } |
319 | 416 | break; | 431 | break; |
320 | @@ -439,14 +454,14 @@ | |||
321 | 439 | accumulatePointerMotion (xRoot, yRoot); | 454 | accumulatePointerMotion (xRoot, yRoot); |
322 | 440 | } | 455 | } |
323 | 441 | 456 | ||
325 | 442 | if (mask & ResizeLeftMask) | 457 | if (mask & ResizeLeftMask || lastMaskX & ResizeLeftMask) |
326 | 443 | wi -= pointerDx; | 458 | wi -= pointerDx; |
328 | 444 | else if (mask & ResizeRightMask) | 459 | else if (mask & ResizeRightMask || lastMaskX & ResizeRightMask) |
329 | 445 | wi += pointerDx; | 460 | wi += pointerDx; |
330 | 446 | 461 | ||
332 | 447 | if (mask & ResizeUpMask) | 462 | if (mask & ResizeUpMask || lastMaskY & ResizeUpMask) |
333 | 448 | he -= pointerDy; | 463 | he -= pointerDy; |
335 | 449 | else if (mask & ResizeDownMask) | 464 | else if (mask & ResizeDownMask || lastMaskY & ResizeDownMask) |
336 | 450 | he += pointerDy; | 465 | he += pointerDy; |
337 | 451 | 466 | ||
338 | 452 | if (w->state () & CompWindowStateMaximizedVertMask) | 467 | if (w->state () & CompWindowStateMaximizedVertMask) |
339 | 453 | 468 | ||
340 | === modified file 'scripts/release.py' | |||
341 | --- scripts/release.py 2013-07-07 19:17:59 +0000 | |||
342 | +++ scripts/release.py 2014-06-30 20:48:27 +0000 | |||
343 | @@ -26,11 +26,11 @@ | |||
344 | 26 | import datetime | 26 | import datetime |
345 | 27 | 27 | ||
346 | 28 | def usage (): | 28 | def usage (): |
348 | 29 | print ("release.py VERSION") | 29 | print ("release.py VERSION [SINCE]") |
349 | 30 | print ("Make a release and bump version to VERSION") | 30 | print ("Make a release and bump version to VERSION") |
350 | 31 | sys.exit (1) | 31 | sys.exit (1) |
351 | 32 | 32 | ||
353 | 33 | if len(sys.argv) != 2: | 33 | if len(sys.argv) < 2: |
354 | 34 | usage () | 34 | usage () |
355 | 35 | 35 | ||
356 | 36 | if not "release.py" in os.listdir ("."): | 36 | if not "release.py" in os.listdir ("."): |
357 | @@ -56,13 +56,23 @@ | |||
358 | 56 | 56 | ||
359 | 57 | most_recent_revision = 0 | 57 | most_recent_revision = 0 |
360 | 58 | 58 | ||
362 | 59 | # Find the last tagged revision | 59 | since = None |
363 | 60 | |||
364 | 61 | if len (sys.argv) == 3: | ||
365 | 62 | since = sys.argv[2]; | ||
366 | 63 | |||
367 | 64 | # Find the last tagged revision or the specified tag | ||
368 | 60 | for tag, revid in tags: | 65 | for tag, revid in tags: |
369 | 61 | try: | 66 | try: |
370 | 62 | revision = compiz_branch.revision_id_to_dotted_revno (revid)[0] | 67 | revision = compiz_branch.revision_id_to_dotted_revno (revid)[0] |
371 | 63 | 68 | ||
373 | 64 | if int (revision) > most_recent_revision: | 69 | if since != None: |
374 | 70 | if tag == since: | ||
375 | 71 | most_recent_revision = revision | ||
376 | 72 | |||
377 | 73 | elif int (revision) > most_recent_revision: | ||
378 | 65 | most_recent_revision = revision | 74 | most_recent_revision = revision |
379 | 75 | |||
380 | 66 | except (errors.NoSuchRevision, | 76 | except (errors.NoSuchRevision, |
381 | 67 | errors.GhostRevisionsHaveNoRevno, | 77 | errors.GhostRevisionsHaveNoRevno, |
382 | 68 | errors.UnsupportedOperation): | 78 | errors.UnsupportedOperation): |
383 | 69 | 79 | ||
384 | === modified file 'src/event.cpp' | |||
385 | --- src/event.cpp 2014-04-16 12:35:24 +0000 | |||
386 | +++ src/event.cpp 2014-06-30 20:48:27 +0000 | |||
387 | @@ -2333,6 +2333,8 @@ | |||
388 | 2333 | case FocusOut: | 2333 | case FocusOut: |
389 | 2334 | if (event->xfocus.mode == NotifyUngrab) | 2334 | if (event->xfocus.mode == NotifyUngrab) |
390 | 2335 | privateScreen.eventManager.ungrabNotified (); | 2335 | privateScreen.eventManager.ungrabNotified (); |
391 | 2336 | else if (event->xfocus.mode == NotifyWhileGrabbed) | ||
392 | 2337 | privateScreen.eventManager.grabNotified (); | ||
393 | 2336 | break; | 2338 | break; |
394 | 2337 | case EnterNotify: | 2339 | case EnterNotify: |
395 | 2338 | if (event->xcrossing.root == privateScreen.rootWindow()) | 2340 | if (event->xcrossing.root == privateScreen.rootWindow()) |
396 | 2339 | 2341 | ||
397 | === modified file 'src/screen.cpp' | |||
398 | --- src/screen.cpp 2014-04-16 12:35:24 +0000 | |||
399 | +++ src/screen.cpp 2014-06-30 20:48:27 +0000 | |||
400 | @@ -3421,12 +3421,11 @@ | |||
401 | 3421 | if (ignore & ~modHandler->ignoredModMask ()) | 3421 | if (ignore & ~modHandler->ignoredModMask ()) |
402 | 3422 | continue; | 3422 | continue; |
403 | 3423 | 3423 | ||
405 | 3424 | /* Do not allow binding of the scroll wheel for windows other than the desktop | 3424 | /* Do not allow binding of vertical scrolling for windows other than the desktop |
406 | 3425 | * unless there is a modifier defined */ | 3425 | * unless there is a modifier defined */ |
407 | 3426 | if (window && | 3426 | if (window && |
408 | 3427 | !(window->type () & CompWindowTypeDesktopMask) && | 3427 | !(window->type () & CompWindowTypeDesktopMask) && |
411 | 3428 | bind.button > 3 && | 3428 | (bind.button == Button4 || bind.button == Button5) && |
410 | 3429 | bind.button < 8 && | ||
412 | 3430 | !mods) | 3429 | !mods) |
413 | 3431 | continue; | 3430 | continue; |
414 | 3432 | 3431 | ||
415 | 3433 | 3432 | ||
416 | === modified file 'src/window.cpp' | |||
417 | --- src/window.cpp 2014-04-09 15:52:47 +0000 | |||
418 | +++ src/window.cpp 2014-06-30 20:48:27 +0000 | |||
419 | @@ -3553,11 +3553,20 @@ | |||
420 | 3553 | int mask = 0; | 3553 | int mask = 0; |
421 | 3554 | CompPoint viewport; | 3554 | CompPoint viewport; |
422 | 3555 | 3555 | ||
424 | 3556 | if (old.intersects (CompRect (0, 0, screen->width (), screen->height ()))) | 3556 | if (old.intersects (CompRect (0, 0, screen->width (), screen->height ())) && |
425 | 3557 | !(state & CompWindowStateMaximizedHorzMask || state & CompWindowStateMaximizedVertMask)) | ||
426 | 3557 | viewport = screen->vp (); | 3558 | viewport = screen->vp (); |
427 | 3559 | else if ((state & CompWindowStateMaximizedHorzMask || state & CompWindowStateMaximizedVertMask) && | ||
428 | 3560 | window->moved ()) | ||
429 | 3561 | viewport = initialViewport; | ||
430 | 3558 | else | 3562 | else |
431 | 3559 | screen->viewportForGeometry (old, viewport); | 3563 | screen->viewportForGeometry (old, viewport); |
432 | 3560 | 3564 | ||
433 | 3565 | if (viewport.x () > screen->vpSize ().width () - 1) | ||
434 | 3566 | viewport.setX (screen->vpSize ().width () - 1); | ||
435 | 3567 | if (viewport.y () > screen->vpSize ().height () - 1) | ||
436 | 3568 | viewport.setY (screen->vpSize ().height () - 1); | ||
437 | 3569 | |||
438 | 3561 | int x = (viewport.x () - screen->vp ().x ()) * screen->width (); | 3570 | int x = (viewport.x () - screen->vp ().x ()) * screen->width (); |
439 | 3562 | int y = (viewport.y () - screen->vp ().y ()) * screen->height (); | 3571 | int y = (viewport.y () - screen->vp ().y ()) * screen->height (); |
440 | 3563 | 3572 | ||
441 | @@ -4021,6 +4030,8 @@ | |||
442 | 4021 | 4030 | ||
443 | 4022 | if (placed) | 4031 | if (placed) |
444 | 4023 | priv->placed = true; | 4032 | priv->placed = true; |
445 | 4033 | |||
446 | 4034 | priv->initialViewport = defaultViewport (); | ||
447 | 4024 | } | 4035 | } |
448 | 4025 | 4036 | ||
449 | 4026 | bool | 4037 | bool |
450 | @@ -4674,6 +4685,8 @@ | |||
451 | 4674 | if (overrideRedirect ()) | 4685 | if (overrideRedirect ()) |
452 | 4675 | return; | 4686 | return; |
453 | 4676 | 4687 | ||
454 | 4688 | priv->initialViewport = screen->vp (); | ||
455 | 4689 | |||
456 | 4677 | state = constrainWindowState (state, priv->actions); | 4690 | state = constrainWindowState (state, priv->actions); |
457 | 4678 | 4691 | ||
458 | 4679 | state &= MAXIMIZE_STATE; | 4692 | state &= MAXIMIZE_STATE; |
459 | @@ -5637,8 +5650,8 @@ | |||
460 | 5637 | 5650 | ||
461 | 5638 | if (!(priv->type & CompWindowTypeDesktopMask)) | 5651 | if (!(priv->type & CompWindowTypeDesktopMask)) |
462 | 5639 | { | 5652 | { |
465 | 5640 | /* Ungrab Buttons 4-7 for scrolling if the window is not the desktop window */ | 5653 | /* Ungrab Buttons 4 & 5 for vertical scrolling if the window is not the desktop window */ |
466 | 5641 | for (int i = 4; i <= 7; i++) | 5654 | for (int i = Button4; i <= Button5; ++i) |
467 | 5642 | XUngrabButton (screen->dpy (), i, AnyModifier, frame); | 5655 | XUngrabButton (screen->dpy (), i, AnyModifier, frame); |
468 | 5643 | } | 5656 | } |
469 | 5644 | } | 5657 | } |
470 | @@ -5832,6 +5845,10 @@ | |||
471 | 5832 | xwc.y = serverGeometry ().y () + wy; | 5845 | xwc.y = serverGeometry ().y () + wy; |
472 | 5833 | 5846 | ||
473 | 5834 | configureXWindow (valueMask, &xwc); | 5847 | configureXWindow (valueMask, &xwc); |
474 | 5848 | |||
475 | 5849 | if ((state () & CompWindowStateMaximizedHorzMask || state () & CompWindowStateMaximizedVertMask) && | ||
476 | 5850 | (defaultViewport () == screen->vp ())) | ||
477 | 5851 | priv->initialViewport = screen->vp (); | ||
478 | 5835 | } | 5852 | } |
479 | 5836 | } | 5853 | } |
480 | 5837 | 5854 | ||
481 | @@ -6664,6 +6681,9 @@ | |||
482 | 6664 | 6681 | ||
483 | 6665 | if (xwc.x < workarea.x ()) | 6682 | if (xwc.x < workarea.x ()) |
484 | 6666 | xwc.x = workarea.x () + movement.x (); | 6683 | xwc.x = workarea.x () + movement.x (); |
485 | 6684 | |||
486 | 6685 | if (xwc.x - boffset.x () < workarea.x ()) | ||
487 | 6686 | xwc.x += boffset.x (); | ||
488 | 6667 | } | 6687 | } |
489 | 6668 | 6688 | ||
490 | 6669 | if (xwc.y + xwc.height > workarea.y2 ()) | 6689 | if (xwc.y + xwc.height > workarea.y2 ()) |
491 | @@ -6672,6 +6692,9 @@ | |||
492 | 6672 | 6692 | ||
493 | 6673 | if (xwc.y < workarea.y ()) | 6693 | if (xwc.y < workarea.y ()) |
494 | 6674 | xwc.y = workarea.y () + movement.y (); | 6694 | xwc.y = workarea.y () + movement.y (); |
495 | 6695 | |||
496 | 6696 | if (xwc.y - boffset.y () < workarea.y ()) | ||
497 | 6697 | xwc.y += boffset.y (); | ||
498 | 6675 | } | 6698 | } |
499 | 6676 | 6699 | ||
500 | 6677 | if (priv->actions & CompWindowActionResizeMask) | 6700 | if (priv->actions & CompWindowActionResizeMask) |
501 | 6678 | 6701 | ||
502 | === modified file 'src/window/extents/src/windowextents.cpp' | |||
503 | --- src/window/extents/src/windowextents.cpp 2014-03-10 12:53:17 +0000 | |||
504 | +++ src/window/extents/src/windowextents.cpp 2014-06-30 20:48:27 +0000 | |||
505 | @@ -43,6 +43,7 @@ | |||
506 | 43 | case NorthGravity: | 43 | case NorthGravity: |
507 | 44 | case NorthWestGravity: | 44 | case NorthWestGravity: |
508 | 45 | case NorthEastGravity: | 45 | case NorthEastGravity: |
509 | 46 | case CenterGravity: | ||
510 | 46 | rv.setY (extents.top); | 47 | rv.setY (extents.top); |
511 | 47 | break; | 48 | break; |
512 | 48 | case SouthGravity: | 49 | case SouthGravity: |