~townsend/compiz/fix-auto-vp-switch-0.9.10

« back to all changes in this revision

Viewing changes to debian/changelog

  • Committer: Tarmac
  • Author(s): Automatic PS uploader
  • Date: 2013-08-22 09:21:21 UTC
  • mfrom: (3781.1.1 compiz)
  • Revision ID: tarmac-20130822092121-sf9fcf652yss4pz3
Releasing 1:0.9.10+13.10.20130822-0ubuntu1 (revision 3781 from lp:compiz/0.9.10).

Approved by PS Jenkins bot.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
compiz (1:0.9.10-0ubuntu1) UNRELEASED; urgency=low
 
1
compiz (1:0.9.10+13.10.20130822-0ubuntu1) saucy; urgency=low
2
2
 
3
3
  [ Sam Spilsbury ]
4
4
  * Bump version to 0.9.10
9
9
      on we run it from Xsession.d
10
10
  * Automatic snapshot from revision 3644
11
11
 
12
 
 -- Sam Spilsbury <smspillaz@interpol>  Thu, 25 Apr 2013 11:13:32 +0800
 
12
  [ Iven Hsu ]
 
13
  * Opacify: Only dim the windows above the active window.(LP:
 
14
    #1189374). (LP: #1189374)
 
15
  * KWD: Fix compile errors with KDE 4.11. The KWin developers made
 
16
    kdecorationbridge.h private. See:
 
17
    http://lists.freedesktop.org/archives/compiz/2013-March/003479.html
 
18
    (LP: #1193792). (LP: #1193792)
 
19
 
 
20
  [ Nikolay Martynov ]
 
21
  * When static switcher is enabled and has an option to show
 
22
    application icon turned on the icons are expected to be ~1/3 of a
 
23
    thumbnail (48px). Instead they are displayed in 512px size and
 
24
    completely cover everything. This change addresses this issue. See
 
25
    LP #1173914. (LP: #1173914, #1186426)
 
26
 
 
27
  [ BryanFRitt ]
 
28
  * Fixed the non-working Annotate 'Clear' Button. Moved this option's
 
29
    CCSM position upwards to keep the button shortcuts together. (LP:
 
30
    #1202907). (LP: #1202907)
 
31
 
 
32
  [ Mehrdad Afshari ]
 
33
  * Added "move window to previous monitor" feature to compiz Put
 
34
    plugin. (LP: #1178581)
 
35
 
 
36
  [ Hu Kang ]
 
37
  * gtk-window-decorator: destroy action menu when any of the (close,
 
38
    min, max) buttons on the title bar is pressed. (LP: #1101648)
 
39
  * Remove redundant src/logmessage/include/core/logmessage.h (LP:
 
40
    #1067246). (LP: #1067246)
 
41
 
 
42
  [ Steve Langasek ]
 
43
  * Fix for bug #763148 (with added test cases): when the desktop is
 
44
    resized, windows should stay on their original workspace. (LP:
 
45
    #763148)
 
46
 
 
47
  [ Brandon Schaefer ]
 
48
  * Unrevert 3728, fix failing tests. Change the behaviour of
 
49
    undecorating windows. Previously when a window was undecorated, we
 
50
    would shift it back to an appropriate position according to its
 
51
    gravity member. That behaviour was problematic because in the
 
52
    StaticGravity case the window has to just stay in the same place.
 
53
    But then if you had a window with StaticGravity which then did get a
 
54
    decoration and later removed it, it would be placed as though it was
 
55
    decorated and appear to be in the wrong place. The correct behaviour
 
56
    is to place all windows as though they have decorations, and then
 
57
    when decorations are removed, to move the window back to the corner
 
58
    as indicated in its gravity and then expand its size to cover the
 
59
    obscured regions no longer hidden because the decorations went away.
 
60
    (LP: #1165343).   1. Completely remove decorOffsetMove and other
 
61
    related code from      decor.cpp. Put the logic to handle the
 
62
    window->input () - window->border ()      placement offset inside of
 
63
    setWindowFrameExtents instead. Now the window      will always be
 
64
    offset from its original non-decorated position to the new
 
65
         decorated position, rather than having to guess between
 
66
    decoration sizes.   2. Make saveGeometry and restoreGeometry work
 
67
    relative to window->border ()      as opposed to including it in the
 
68
    saved geometry. It is possible that the      border size might
 
69
    change during maximization, as such, we don't want to      save the
 
70
    position with the border before maximizing. Instead save the
 
71
    position      as if it were never decorated so that when the window
 
72
    is restored it can be      restored to its original position and
 
73
    then adjusted for its new border size.   3. Fix a few typoes in the
 
74
    tests.   4. Moved some commonly used matchers into compiz::testing
 
75
      5. Make COMPIZ_PLUGIN_DIR accept multiple directories and look in
 
76
    each one      of them for the plugin   6. Set COMPIZ_PLUGIN_DIR
 
77
    appropriately for each plugin that we wish to load      on startup
 
78
    so that we load locally built plugins as opposed to installed
 
79
         ones.   7. Uncomment compiz_discover_tests for the acceptance
 
80
    tests. Now they are      run by default. (LP: #1195522). (LP:
 
81
    #1195522, #1165343)
 
82
  * If we receive a stateNotifyChange, we check if we are in a max
 
83
    state. If so, overwrite the xwc with either X | W, or Y | H
 
84
    depending on the semi max state with the orig position before we
 
85
    went into a semi max state. This way when we leave any sort of max
 
86
    state the orig position is restored. If the window is being grabbed
 
87
    we do not overwrite the position, which it gets its own value at
 
88
    that point (instead of the orig pos). (LP: #892012)
 
89
 
 
90
  [ Marco Trevisan (Treviño) ]
 
91
  * OpenGL Screen: Ignore the MSAA configs during initialization This
 
92
    fixes a crash with new MESA drivers and high monitor resolutions
 
93
    caused by the fact that we're accidentally using some MSAA configs
 
94
    with some drivers in Mesa 9.0. Taking in account the values of
 
95
    GLX_SAMPLES and GLX_SAMPLE_BUFFERS fixes the issue. See mesa bug
 
96
    https://bugs.freedesktop.org/show_bug.cgi?id=61182. (LP: #1174495)
 
97
  * OpenGLES Screen: Ignore the MSAA configs during initialization.
 
98
  * GLScreen: break the iteration as soon as we've found a valid egl
 
99
    config.
 
100
 
 
101
  [ Michail Bitzes ]
 
102
  * Plugin wizard ported to OpenGL|ES. Use GLVertexBuffer. Enable
 
103
    building for GLES. Enable architectures armel and armhf. (LP:
 
104
    #1196003). (LP: #1196003)
 
105
 
 
106
  [ Chris Townsend ]
 
107
  * Fixed issue where minimizing an unredirect full screen window would
 
108
    repaint the full screen window after minimizing it even though it
 
109
    isn't really there. . (LP: #1053895)
 
110
 
 
111
  [ Sami Jaktholm ]
 
112
  * *Grid code: Prevent center and corner gridded windows from jumping
 
113
    viewports. (Thanks and credits for this go to Sami Jaktholm) Prevent
 
114
    top and bottom gridded windows from jumping viewports by making
 
115
    those semi-maximize horizontally. As those are actually semi-
 
116
    maximized horizontally, we will treat them as such and let core
 
117
    handle the restoring, just like we already do for vertically semi-
 
118
    maximized grid windows (left/right). Now "Strg+Super+Down" will
 
119
    restore top and bottom gridded windows correctly as well. Also
 
120
    multiple gridding to top, bottom, left or right will not overwrite
 
121
    the stored original size anymore. Restore windows also when
 
122
    workspace switcher (expo) is active. (Thanks and credits for this go
 
123
    to Sami Jaktholm) Allow cycling for all gridded windows if
 
124
    explicitly specified by the user in CCSM. Forbid cycling through
 
125
    different sizes for corner and center-gridded windows also per
 
126
    default, now fully fixing bug #878820 and following the design
 
127
    specification by Ayatana Design there, making behaviour consistent.
 
128
    Introduced 3 new bools: horzMaximizedGridPosition,
 
129
    vertMaximizedGridPosition, anyMaximizedGridPosition Used these bools
 
130
    inside the if condition checks. Simplified complicated if condition
 
131
    by removing redundant additional size check. Cleanup all around.
 
132
    *Grid xml: Added cycle_sizes bool option, which allows the user to
 
133
    choose the prefered behaviour (fixed versus flexible sizes on
 
134
    multiple presses on the same grid keyboard shortcut). Default of
 
135
    this option is off, cycling disabled as specified by design. Added
 
136
    punctuation where missing and removed it where usually is none.
 
137
    Fixed typos, improved description and titles. *Expo code: Tell grid
 
138
    when viewport change is in progress. (Thanks and credits for this go
 
139
    to Sami Jaktholm) (fixes: LP: #878820, LP: #879218, LP: #882754 and
 
140
    LP: #1082001, partially fixes: #1116538, #1164332). (LP: #882754,
 
141
    #878820, #1164332, #1082001, #879218, #1116538)
 
142
  * Grid: Check that composite and opengl ABIs are COMPIZ_COMPOSITE_ABI
 
143
    and COMPIZ_OPENGL_ABI instead of CORE_ABIVERSION. (LP: #1181461)
 
144
  * Fade: Fix a typo that causes fade to constantly damage windows with
 
145
    a modified saturation. (LP: #1159054)
 
146
  * Grid: Fix window misplacement if a window is restored but the size
 
147
    doesn't change. - Set isGridResized to false before configuring the
 
148
    window in GridScreen::restoreWindow. If the restored geometry is the
 
149
    same as current geometry, configureXWindow will trigger moveNotify
 
150
    instead of resizeNotify. As isGridResized is still true,
 
151
    GridWindow::moveNotify blocks the restoration movement and the
 
152
    pointer detaches from the decoration. - Don't use pointerBufs when
 
153
    calculating position of the restored window with snapback windows
 
154
    disabled. The window will be positioned a bit too high (or low) and
 
155
    the pointer detaches from decoration if the movement was actually
 
156
    tracked. This was a workaround for the first point and can be safely
 
157
    removed. (LP: #1115344)
 
158
  * Fix memory leaks in titleinfo plugin. (LP: #1101569, #1101454)
 
159
  * Expo plugin: 1) Always fetch the dndButton action in dndFini. The
 
160
    action given to dndFini might be a key or edge binding action if
 
161
    expo was terminated during window DnD. We shouldn't set their state
 
162
    to CompAction::StateInitButton or the bindings break. 2) Pass NULL
 
163
    action to termExpo if invoked from handleEvent Previously we passed
 
164
    the action of expoKey to termExpo which in turn passed it to
 
165
    dndFini. DndFini changed the action state to
 
166
    CompAction::StateInitButton that broke the keybinding. Now that
 
167
    dndFini fetches the dndButton action itself, there's no need to
 
168
    fetch it in handleEvent too as dndFini is the only one using the
 
169
    action. (LP: #1131106)
 
170
  * Expo: Cast denominators of integer divisions to floats before
 
171
    performing a matrix translation to viewports with the results.
 
172
    Otherwise rounding errors in cases the results are not an integers
 
173
    cause the viewports to be painted offscreen. (LP: #438580)
 
174
  * Port dbus introspection to compiz 0.9. - move xml creation to a
 
175
    separate class (IntrospectionResponse) for easier memory management
 
176
    (allocate buffer and writer in ctor, free in dtor). - move
 
177
    duplicated response sending code to a separate method that takes
 
178
    IntrospectionResponse and sends the resulting xml. - Refactor
 
179
    handle*IntrospectMessage to work with compiz 0.9 interfaces. This
 
180
    also fixes the broken list method which was a result of logic error.
 
181
    The code to invoke list handler was never reached. This fixes most
 
182
    of the issues noted in bug 749084. (LP: #749084)
 
183
  * Bias the current viewport in addWindowSizeChanges. If window is
 
184
    visible in the current viewport, use that viewport when calculating
 
185
    geometries in addWindowSizeChanges. Otherwise the current method is
 
186
    used. This way visible windows are maximized in the current
 
187
    viewport. However, offscreen windows won't jump back to the active
 
188
    viewport if window maximizes by itself or addWindowSizeChanges is
 
189
    called for some other reason. (LP: #776435)
 
190
  * Expo: Recompute glow quads if a desktop window is resized. (LP:
 
191
    #1090713). (LP: #1090713)
 
192
  * Decor: Use maximized border extents only if window is fully
 
193
    maximized. The decorator draws a normal border around semi-maximized
 
194
    windows. When maximized border extents were used for semi-maximized
 
195
    windows, compiz didn't reserve any space for the border in its
 
196
    geometry calculations. At least following problems are a result of
 
197
    this behavior: - Semi-maximized windows have 1px borders drawn on
 
198
    adjacent workspaces (LP: #986051). - Grid placed window overlaps the
 
199
    adjacent viewport (LP: #898870). (LP: #986051, #898870)
 
200
 
 
201
  [ gebner@2b7e.org ]
 
202
  * Adding a uniform to a GLVertexBuffer that uses AutoProgram causes
 
203
    compiz to segfault. Example: gWindow->addShaders("cms", "",
 
204
    fragment_shader); gWindow->vertexBuffer()->addUniform("cms_lut",
 
205
    unit); // segfault happens later in PrivateVertexBuffer::render The
 
206
    patch modifies PrivateVertexBuffer::render to set the uniform on the
 
207
    generated AutoProgram instead of the provided program, which in this
 
208
    case is NULL, causing a segfault. (LP: #1162598). (LP: #1162598)
 
209
 
 
210
  [ MC Return ]
 
211
  * Cube-addon (Cube Reflection and Deformation): If the user disables
 
212
    "Draw top face"/"Draw bottom face" we do not want to draw anything
 
213
    (LP: #1162484). The original, non-deformed caps will only work for
 
214
    the non-deformed cube, so we can just use the original function in
 
215
    that case. We need to clear the texture if no texture files are
 
216
    specified in "Image files", otherwise the old texture would still be
 
217
    drawn, even if all image files are removed (LP: #1162711). Now we
 
218
    will default back and use the cube cap colors and opacities defined
 
219
    in the "Desktop Cube" plugin (if "Draw top/bottom face" are enabled
 
220
    only, see above). This way the user can choose between (for
 
221
    top/bottom): 1. Do not draw a cube cap face at all ("Draw top/bottom
 
222
    face" option disabled) 2. Use color and opacity specified in
 
223
    "Desktop Cube" (empty images list) 3. Use a texture for the cap
 
224
    (image is in the list, which is default) Removed redundant mCurrent
 
225
    = mCurrent % mFiles.size (); calculation, this has already been
 
226
    done: cap->mCurrent = (cap->mCurrent + change + count) % count;
 
227
    count and change both need to be != 0 for mCurrent to change. Fixed
 
228
    indentation, removed redundant brackets and newlines, declaration
 
229
    and assignment of local variables in one line, if possible, minor
 
230
    cleanup. (LP: #1162484, LP: #1162711). (LP: #1162484, #1162711)
 
231
  * Stack (Window) Switcher (currently excluded from compilation): Fixed
 
232
    window title drawn although "Show Window Title" is disabled. (LP:
 
233
    #1070782). (LP: #1070782)
 
234
  * *Grid code: Prevent center and corner gridded windows from jumping
 
235
    viewports. (Thanks and credits for this go to Sami Jaktholm) Prevent
 
236
    top and bottom gridded windows from jumping viewports by making
 
237
    those semi-maximize horizontally. As those are actually semi-
 
238
    maximized horizontally, we will treat them as such and let core
 
239
    handle the restoring, just like we already do for vertically semi-
 
240
    maximized grid windows (left/right). Now "Strg+Super+Down" will
 
241
    restore top and bottom gridded windows correctly as well. Also
 
242
    multiple gridding to top, bottom, left or right will not overwrite
 
243
    the stored original size anymore. Restore windows also when
 
244
    workspace switcher (expo) is active. (Thanks and credits for this go
 
245
    to Sami Jaktholm) Allow cycling for all gridded windows if
 
246
    explicitly specified by the user in CCSM. Forbid cycling through
 
247
    different sizes for corner and center-gridded windows also per
 
248
    default, now fully fixing bug #878820 and following the design
 
249
    specification by Ayatana Design there, making behaviour consistent.
 
250
    Introduced 3 new bools: horzMaximizedGridPosition,
 
251
    vertMaximizedGridPosition, anyMaximizedGridPosition Used these bools
 
252
    inside the if condition checks. Simplified complicated if condition
 
253
    by removing redundant additional size check. Cleanup all around.
 
254
    *Grid xml: Added cycle_sizes bool option, which allows the user to
 
255
    choose the prefered behaviour (fixed versus flexible sizes on
 
256
    multiple presses on the same grid keyboard shortcut). Default of
 
257
    this option is off, cycling disabled as specified by design. Added
 
258
    punctuation where missing and removed it where usually is none.
 
259
    Fixed typos, improved description and titles. *Expo code: Tell grid
 
260
    when viewport change is in progress. (Thanks and credits for this go
 
261
    to Sami Jaktholm) (fixes: LP: #878820, LP: #879218, LP: #882754 and
 
262
    LP: #1082001, partially fixes: #1116538, #1164332). (LP: #882754,
 
263
    #878820, #1164332, #1082001, #879218, #1116538)
 
264
  * *Resizeinfo, xml changes: Added option for bold/normal font, default
 
265
    is still bold. Added option to change the font size (10-14), default
 
266
    is still 12 pixel. Enhanced and corrected a few tooltips.
 
267
    *Resizeinfo, code changes: Choose between PANGO_WEIGHT_BOLD and
 
268
    PANGO_WEIGHT_NORMAL. Use individual font size specified by the user
 
269
    in CCSM. Fixed computation of wrong damageRegion, it was
 
270
    additionally adding the window size, making it way too large.
 
271
    Removed useless declaration of int width and height. Declaration and
 
272
    assignment of local variables in one line, if possible. Minor
 
273
    indentation fixes. (LP: #1166195, LP: #1166196 and LP: #1166245).
 
274
    (LP: #1166195, #1166196, #1166245)
 
275
  * *Move xml: Implemented options to configure: "Snapoff Distance"
 
276
    "Snapback Semimaximized Windows" and "Snapback Distance" Improved a
 
277
    few tooltips. *Move code: Replaced SNAP_BACK and SNAP_OFF hardcoded
 
278
    constants and made those configurable. Implemented a strategy to
 
279
    snap off horizontally maximized windows by dragging them along the x
 
280
    axis. Implemented snapping back of horizontally maximized windows
 
281
    and fixed the snapping for vertically maximized windows (wrong
 
282
    cursor calculation). Fixed a few wrong calculations in the if
 
283
    condition checks responsible for snapping off and back. Merged if
 
284
    condition checks. Just compute various local variables if we do not
 
285
    return false. Removed redundant brackets, fixed indentation and
 
286
    improved readability. (LP: #1165198, LP: #1167933). (LP: #1167208,
 
287
    #1167933, #1165198)
 
288
  * Freewins xml: Fixed False->false and True->true typos. Credits and
 
289
    thanks for finding cause and fix go to raveit65 ! (LP: #1163606).
 
290
    (LP: #1163606)
 
291
  * Screenshot code cleanup: Used standard bool for mGrab. Merged a few
 
292
    if condition checks. Declaration and assignment of local variables
 
293
    in one line. Removed redundant brackets. Added and removed newlines
 
294
    to improve readability. Added a missing break (just a style issue).
 
295
    Fixed indentation. C++ style for comments.
 
296
  * *Move xml: Slightly improved long description of the move plugin.
 
297
    Implemented option to change the key move increment size. Removed
 
298
    <precision> settings as they just work for floats. *Move code:
 
299
    Removed hardcoded KEY_MOVE_INC variable. Introduced int
 
300
    moveIncrement to not have to execute optionGetKeyMoveInc () to get
 
301
    the value twice. (LP: #1167933, part 2). (LP: #1167933)
 
302
  * Shift Switcher code cleanup: Merged a few if-if condition checks.
 
303
    Declaration and assignment of local variables in one line. Removed
 
304
    redundant brackets. Added and removed newlines to improve
 
305
    readability. Fixed indentation.
 
306
  * Composite code cleanup: Merged a few if-if condition checks.
 
307
    Declaration and assignment of local variables in one line. Removed
 
308
    redundant brackets. Added and removed newlines to improve
 
309
    readability. Fixed indentation.
 
310
  * *Grid code: Simplified bool GridScreen::restoreWindow (...): If Grid
 
311
    has not touched the window we return false and let core do the dirty
 
312
    work. (Thanks go to Sam Spilsbury for suggesting this solution.)
 
313
    *Grid xml: Improved the CCSM Grid put_restore_key tooltip. (LP:
 
314
    #1116538). (LP: #1116538)
 
315
  * *Cube Gears: Added glDepthMask (GL_TRUE); and glDepthFunc (GL_LESS);
 
316
    to void GearsScreen::cubePaintInside (...) to fix the culling on
 
317
    multimonitor systems (green gear was always rendered in front). Also
 
318
    fixed indentation and removed some redundant newlines. (LP:
 
319
    #1168919). (LP: #1168919)
 
320
  * *Showmouse code cleanup: Assignment and declaration of local
 
321
    variables in one line. Removed redundant brackets. Fixed
 
322
    indentation. Removed and added newlines for better readability.
 
323
    *Showmouse code changes: Removed these redundant gl calls: glEnable
 
324
    (GL_TEXTURE_2D); glDisable (GL_TEXTURE_2D); (partially fixes LP:
 
325
    #1051290 and LP: #1051295). (LP: #1051290, #1051295)
 
326
  * *Workspacenames: New Feature: Implemented option to adjust vertical
 
327
    offset for top and bottom of screen workspacename placement. Set the
 
328
    default offset to 50 pixel. Cleanup: Added brackets to for loop. Use
 
329
    prefix increments. Indentation fixes. Added and removed newlines for
 
330
    better readability. Added comment. Removed TEXT_BORDER constant.
 
331
    Improved tooltips. (LP: #1172063). (LP: #1172063)
 
332
  * *Screenshot, xml: Better plugin summary. Added option to disable the
 
333
    drawing of the screenshot selection indicator. Added options to
 
334
    change color and opacity of the outline and the inside of the
 
335
    rectangle indicator, default colors have not been changed. Other
 
336
    minor improvements. *Screenshot, code: Introduced the new variable
 
337
    bool selectionSizeChanged, which is true if the size of the
 
338
    selection has changed. We just want to draw the screenshot selection
 
339
    box, if we are grabbed, the size has changed and the CCSM option to
 
340
    draw it is enabled. Do not render anything if indicator is disabled.
 
341
    Indicator colors are now configurable. Increased indicator box
 
342
    outline line width to 2.0. Only damage the full screen once, if the
 
343
    grab gets terminated, during grab just damage the region painted,
 
344
    which is the screenshot selection box (LP: #1172234). *SCreenshot,
 
345
    cleanup: Minor cleanup in the rendering code. Removed redundant
 
346
    #ifndef USE_GLES compiler option, GLES can cope with enabling and
 
347
    disabling GL_BLEND. Use prefix- instead of postfix increments.
 
348
    Declaration and assignment of local variables in one line. Reduced
 
349
    the scope of the variables x1, y1, x2 and y2. Replaced magic number
 
350
    65535.0f with const float MaxUShortFloat = std::numeric_limits
 
351
    <unsigned short>::max ();. Indentation fixes. C++ style for
 
352
    comments, added comments. (LP: #1169353, LP: #1172234). (LP:
 
353
    #1169353, #1172234)
 
354
  * Shift Switcher code cleanup: Use prefix instead of postfix increment
 
355
    and decrement. Declaration and assignment of local variables in one
 
356
    line. Merged if statements. Added brackets to for loops. Fixed
 
357
    indentation. Added and removed newlines for better readability.
 
358
    Added comment.
 
359
  * Cube Addon .xml cleanup: Better plugin description. Uppercase
 
360
    titles. Improved tooltips and names.
 
361
  * Animation code cleanup: Use prefix- instead of postfix- in- and
 
362
    decrements. Removed redundant brackets. Added and removed newlines
 
363
    where appropriate. Fixed indentation.
 
364
  * Grid, code cleanup: Merged if statements. Replaced magic number
 
365
    65535.0f with const float MaxUShortFloat = std::numeric_limits
 
366
    <unsigned short>::max ();. Use prefix- instead of postfix-increment.
 
367
    Removed redundant (float) casts. Removed redundant brackets. Added
 
368
    and removed newlines to improve readability. Minor indentation
 
369
    fixes.
 
370
  * Workspacenames .xml cleanup: Better description of the plugin's
 
371
    functionality. Improved tooltips.
 
372
  * Cube .xml cleanup: Better plugin description. Uppercase titles.
 
373
    Improved tooltips.
 
374
  * Shift Switcher .xml cleanup: Better description of the plugin's
 
375
    function. Fixed load before "bs" plugin typo -> it is the obs
 
376
    plugin. Created a "Switcher Mode" tab and moved Flip/Cover mode
 
377
    settings there. Created a subgroup for mouse-specific settings.
 
378
    Better tooltips with enhanced descriptions. Improved titles. Fixes
 
379
    all around (typos, etc.).
 
380
  * Refactor screenshot code to make it clearer and also to allow us to
 
381
    take screenshots in glPaintOutput as opposed to paint (). Taking
 
382
    screenshots in paint () was probably correct pre-GLES, but isn't
 
383
    really correct now - we want to be able to read off of the currently
 
384
    bound scratch framebuffer where we last painted the frame. Reading
 
385
    off the frontbuffer is an imprecise operation because the contents
 
386
    of both buffers are really undefined after a swap. In the case where
 
387
    we are not painting to a scratch framebuffer object, we'll just end
 
388
    up reading from the backbuffer anyways, which would be correct to do
 
389
    mid-frame. Also added the new static const GLenums
 
390
    DRAW_FRAMEBUFFER_BINDING and READ_FRAMEBUFFER_BINDING to opengl.h.
 
391
    (LP: #771875). (LP: #771875)
 
392
  * shift.h: Minor indentation fixes (mostly replaced tabs with spaces).
 
393
  * Show Desktop .xml cleanup: Improved plugin description. Renamed
 
394
    "Misc. Options" tab to "General" Improved tooltips.
 
395
  * Stack Window Switcher (stackswitch): Declaration and assignment of
 
396
    local variables in one line. Merged if condition checks. Use prefix
 
397
    de- and increments. Removed redundant brackets. Fixed indentation.
 
398
    Note: stackswitch is still excluded from compilation, because it has
 
399
    not been ported to the new GLES-compatible modern post-r3320 Compiz
 
400
    codebase yet, so this cannot really be tested at the moment (except
 
401
    in Compiz pre-r3320). Nevertheless this MP is needed to reduce the
 
402
    diff size for the GLES port of this plugin, which will follow soon.
 
403
  * Ring Switcher .xml cleanup: Better description of the "Ring
 
404
    Switcher". Uppercase for titles. More precise names for the tabs.
 
405
    Improved tooltip wording and descriptions. Changed the order of
 
406
    options in "General Options" tab: "Ring Windows" and "Overlay Icon"
 
407
    options are now on top. No settings have been changed.
 
408
  * *Shift Window Switcher, new features: Implemented new option to
 
409
    adjust the vertical offset of the text placement and fixed vertical
 
410
    placement calculation for top and bottom positions. The default
 
411
    offset is 50 pixels now. Removed hardcoded and redundant float
 
412
    border. Use 256x256 pixels resolution for icon textures, instead of
 
413
    96x96. Minor indentation fixes. (LP: #1173684). (LP: #1173684)
 
414
  * Opacity, Brightness and Saturation (obs) .xml cleanup: Better plugin
 
415
    description. Improved setting names and tooltips.
 
416
  * Opacity, Brightness and Saturation (obs) code cleanup: Replaced
 
417
    #define MODIFIER_COUNT 3 with const unsigned short MODIFIER_COUNT =
 
418
    3; (the variable MODIFIER_COUNT is needed in obs.h and obs.cpp). Use
 
419
    prefix instead of postfix increment. Merged if condition checks.
 
420
    Declaration and assignment of local variables in one line. Removed
 
421
    redundant brackets. Added and removed newlines if appropriate.
 
422
    Indentation fixes.
 
423
  * Improved and optimized ABI logic checks consistently for all
 
424
    plugins. (LP: #1178228). (LP: #1178228)
 
425
  * *Grid, code changes and fixes: Fixed segfault in Compiz when
 
426
    unchecking "Snap windows back to original size". This option now
 
427
    fully works and will snap back windows to current size, if they are
 
428
    dragged off via mouse. Fixed segfault in Compiz when unchecking
 
429
    "Snapoff Maximized/Semi-maximized Windows" - this option is now
 
430
    removed as this setting is configurable via "Move" plugin already.
 
431
    The snapoff threshold global setting is now configurable instead of
 
432
    hardcoded. Fixed broken cursor y-coordinate calculation. Fixed
 
433
    window placement cursor calculation for non-original-size-restored
 
434
    windows. Make sure grid-maximizing will never overwrite the windows'
 
435
    original size. Removed useless code until someone can convince me
 
436
    that we need it (LP: #1020857). This fixes the weird positioning
 
437
    (50, 50) when restoring mouse-grid-maximized windows via keyboard.
 
438
    Added missing ABI checks of OpenGL and Composite. *Grid, xml changes
 
439
    and fixes: Put Corners/Edges setting into own tab. New tab named
 
440
    "Resize Actions". Removed hardcoded SNAPOFF_THRESHOLD and made it
 
441
    configurable. Improved tooltips. Re-applied the quilt patch to the
 
442
    changed grid.xml.in. Changed the put_restore_key to
 
443
    "Ctrl+Super+Down" to fix restoring of grid-maximized windows for
 
444
    Ubuntu as well. (LP: #1172641) *Grid, minor code cleanup: Removed
 
445
    redundant (int) casts. Improved readability for the if condition
 
446
    checks. Added and removed newlines, if appropriate. Added comments.
 
447
    Indentation fixes. (LP: #745159, LP: #1020857, LP: #1172641). (LP:
 
448
    #1020857, #745159, #1172641)
 
449
  * Resize, minor code cleanup: Declaration and assignment of local
 
450
    variables in one line. Added and removed newlines, if appropriate.
 
451
    Removed redundant brackets. Indentation fixes.
 
452
  * Wobbly Windows, code cleanup: Declaration and assignment of local
 
453
    variables in one line. Merged if statements. Removed redundant
 
454
    brackets. Added missing break. Removed and added newlines for better
 
455
    readability. Fixed indentation.
 
456
  * Ring, Shift and Stack Window Switcher: Increased the non-power-of-2
 
457
    icon texture resolution from 96x96 to 512x512 pixels, in the case of
 
458
    the ring switcher from 64 to 512. Static Switcher: Replaced #define
 
459
    of MAX_ICON_SIZE with type-safe extern const unsigned short and set
 
460
    the icon resolution to 512 as well. Compiztoolbox: Increased the
 
461
    non-power-of-2 icon texture resolution const unsigned short
 
462
    ICON_SIZE from 48 to 512 and const unsigned int MAX_ICON_SIZE from
 
463
    256 to 512 as well. Changed the type of MAX_ICON_SIZE from const
 
464
    unsigned int to const unsigned short. Scale: Increased the non-
 
465
    power-of-2 icon texture resolution from 96x96 to 512x512 pixels. KDE
 
466
    Compatibility: Increased the icon texture resolution from 256x256 to
 
467
    512x512 pixels. (LP: #1173914). (LP: #1173914)
 
468
  * Removed redundant Expo configuration changes from ubuntu-
 
469
    config.patch: The reflection scale change, because reflection is
 
470
    disabled by default anyway. The inactive viewport saturation change
 
471
    from 100.0% to 40.0%, because this option does not work (and never
 
472
    did AFAICR), but if it finally gets fixed Expo's look would
 
473
    dramatically change. (LP: #1178965). (LP: #1178965)
 
474
  * Expo plugin: Fixed inactive viewports saturation setting being
 
475
    ignored. Let's "fade to grey"... :) (LP: #1179183). (LP: #1179183)
 
476
  * compizconfig/*, libdecoration/*: Use prefix instead of postfix de-
 
477
    and increments.
 
478
  * *Ring Switcher, new feature: Implemented "Vertical Offset" option
 
479
    with a default of 50 pixels. This allows the CCSM user to easily and
 
480
    exactly configure where the window title text should be displayed.
 
481
    Ring Switcher, cleanup: Simplified
 
482
    RingWindow::compareRingWindowDepth (...). Bail out of functions
 
483
    ASAP, do not initialize anything you do not need, if you exit
 
484
    anyway. Merged if condition checks. Declaration and assignment of
 
485
    local variables in one line. Removed redundant brackets. Added and
 
486
    removed newlines, if appropriate. Fixed indentation. (LP: #1173684).
 
487
    (LP: #1173684)
 
488
  * gtk/*, include/*, kde/*: Use prefix instead of postfix de- and
 
489
    increments.
 
490
  * Scale Addons code cleanup: Always bail out of functions ASAP, do not
 
491
    calculate unnecessary stuff before. Merged if-condition checks.
 
492
    Declaration and assignment of local variables in one line. Reduced
 
493
    the scope of some variables. Use pre- instead of postfix in- and
 
494
    decrements. Added and removed newlines where appropriate. Added
 
495
    brackets to foreach macro loops and removed them otherwise (if
 
496
    redundant). Fixed indentation. Note: This plugin has a huge chunk of
 
497
    code, which has been commented out. (apparantly/according to the
 
498
    comment, because it does not work) I was very cautious in
 
499
    refactoring this part of the code, as it currently is excluded from
 
500
    compilation and thus cannot be tested. TODO: Test, repair and
 
501
    integrate this code (or remove it if it is redundant). TODO: Fix
 
502
    half-broken "Exit Scale On Pull". TODO: Fix the scale-will-only-
 
503
    terminate-if-initiate_key-is-defined bug.
 
504
  * *EZoom (Enhanced Zoom Desktop) code cleanup: Optimized ABI check.
 
505
    Use prefix- instead of postfix-increment. Assignment and declaration
 
506
    of local variables in one line. Merged if statements. Removed
 
507
    redundant brackets. Fixed indentation. Added and removed newlines to
 
508
    improve readability. *EZoom (Enhanced Zoom Desktop) code changes:
 
509
    Replaced #define WIDTH (x2 - x1) with int width = x2 - x1; and
 
510
    #define HEIGHT (y2 - y1) with int height = y2 - y1; Replaced WIDTHOK
 
511
    and HEIGHTOK macros with local variables: WIDTHOK and HEIGHTOK just
 
512
    need to be calculated once and can then be used for all cases in
 
513
    void EZoomScreen::ensureVisibilityArea (...). static_cast <float>
 
514
    for int denominators in divisions. Removed these redundant gl calls:
 
515
    glEnable (GL_TEXTURE_2D); glDisable (GL_TEXTURE_2D); Zoom Box fixes:
 
516
    Enabled GL_BLEND for the zoom box to fix transparency issues. Made
 
517
    outline and fill color and transparency of the zoom box
 
518
    configurable. Outline width is 2.0 for the zoom box as well now.
 
519
    (same like for grid preview and screenshot selector outlines) Fixed
 
520
    zoom box damage handling. Minor restructuring in zoom box rendering
 
521
    code. Minor ezoom.xml.in cleanup and enhancements. Load after
 
522
    mousepoll. (fixes LP: #1171665, partially fixes LP: #1051290 and LP:
 
523
    #1051295). (LP: #1171665, #1051290, #1051295)
 
524
  * Wall: Fixed broken wall edge flipping functions: "Edge Flip Pointer"
 
525
    "Edge Flip Move" Removed void WallScreen::updateScreenEdgeRegions ()
 
526
    completely. This function not needed hereat all, no other plugin
 
527
    needs to re-define the screen edge regions by itself - just core
 
528
    should do that. The screen edge region updating also confused the
 
529
    edge flipping functionality. case ConfigureNotify: just breaks out
 
530
    now Added missing default: case and a break (just a style issue).
 
531
    Minor cleanup in bool WallScreen::initiateFlip (...). One
 
532
    declaration per line. Note: "Edge Flip DnD" still seems to be
 
533
    broken, but will be fixed in a follow-up proposal. (LP: #771448, LP:
 
534
    #858845). (LP: #771448, #858845)
 
535
  * Wallpaper .xml.in cleanup: Better plugin description. Improved
 
536
    option names. Better wording of tooltips. Removed redundant
 
537
    newlines. Wallpaper code cleanup: Use prefix instead of postfix
 
538
    increments. Declaration and assignment of variables in one line.
 
539
    Added some newlines to improve readability. Removed redundant
 
540
    brackets. Fixed indentation.
 
541
  * EZoom plugin, code improvements: Bail out of functions ASAP, do not
 
542
    calculate stuff you might not need. Replaced: if (zoom_level == 1.0f
 
543
    && zooms.at (out).newZoom == 1.0f) with: if (zoom_level == zooms.at
 
544
    (out).newZoom) because we always want to get out of here if the
 
545
    target level is the same as current zoom level, not only in the case
 
546
    both are 1.0f. EZoom plugin, code cleanup: Assignment and
 
547
    declaration of variables in one line, if possible. Added and removed
 
548
    some newlines. Merged if condition checks. Indentation fixes.
 
549
  * Mousepoll code cleanup: Removed the unused variables
 
550
    MP_OPTION_MOUSE_POLL_INTERVAL and MP_OPTION_NUM. Declaration and
 
551
    assignment of variables in one line. Added and removed newlines.
 
552
    Removed redundant brackets. Fixed indentation.
 
553
  * Annotate plugin, code cleanup: Use prefix instead of postfix
 
554
    increment. Declaration and assignment of local variables in one
 
555
    line. Removed redundant brackets. Added and removed newlines if
 
556
    appropriate. Fixed indentation. Annotate plugin, fixes: Use
 
557
    GL_LINE_LOOP to draw the rectangle outline as glRecti is not
 
558
    supported on GLES. Simplified the coordinate calculation as the
 
559
    offset is not really needed here.
 
560
  * Titleinfo, minor code cleanup: Declaration and assignment of local
 
561
    variables in one line. Removed redundant brackets. Added and removed
 
562
    newlines. Fixed indentation.
 
563
  * Text plugin code cleanup: Do not declare variables you do not need
 
564
    if you return anyway. Use prefix instead of postfix increments.
 
565
    Merged if condition checks. Declaration and assignment of variables
 
566
    in one line. Added and removed newlines. Removed redundant brackets.
 
567
    Fixed indentation.
 
568
  * ccp code cleanup: Declare variables if you need them, do not declare
 
569
    them if you return. Declare CCSSettingValue *val; outside the
 
570
    foreach loop. Use prefix instead of postfix increments. Merged if
 
571
    condition checks. Declaration and assignment of variables in one
 
572
    line. Removed redundant brackets. Added and removed newlines. Fixed
 
573
    indentation.
 
574
  * Commands, minor code cleanup: Declaration and assignment of
 
575
    variables in one line. Return ASAP. Added and removed newlines.
 
576
    Fixed indentation.
 
577
  * Cube code cleanup: Replaced 0xffff with GLfloat MaxUShortFloat =
 
578
    static_cast <GLfloat> (std::numeric_limits <unsigned short>::max
 
579
    ());. Use prefix instead of postfix de- and increments. Declaration
 
580
    and assignment of variables in one line. Declare variables shortly
 
581
    before you need them. Merged if condition checks. Added missing
 
582
    breaks (just a style issue). Added and removed brackets. Added and
 
583
    removed newlines. Fixed indentation.
 
584
  * action.cpp and actions.cpp code cleanup: Use pre- instead of postfix
 
585
    increment. Declaration and assignment of variables in one line.
 
586
    Merged if condition checks. Removed redundant brackets. Added and
 
587
    removed newlines. Fixed indentation.
 
588
  * Rotate Cube code cleanup: Simplified a few calculations of this
 
589
    type: (360.0 / (x * 2.0)) == 180 / x Declaration and assignment of
 
590
    variables in one line. Use pre- instead of postfix de- and
 
591
    increments. Merged if condition checks. Added and removed newlines
 
592
    and brackets. Fixed indentation. Added TODO comments.
 
593
  * Fade plugin, minor code cleanup: Declaration and assignment of local
 
594
    variables in one line. Merged if condition checks. Use pre- instead
 
595
    of postfix de- and increments. Removed redundant brackets. Added and
 
596
    removed newlines. Fixed indentation.
 
597
  * Opacify code cleanup: Declaration of local variables outside of
 
598
    loops. Calculate activeOpacity and targetOpacity just once, not for
 
599
    each window. Use prefix instead of postfix increments. Merged if
 
600
    condition checks. Declaration and assignment of local variables in
 
601
    one line. Added and removed newlines. Removed redundant brackets.
 
602
    Fixed indentation. Opacify, functionality fix: Improved the toggling
 
603
    logic by setting isToggle in the constructor according to the
 
604
    startup setting, then calling setFunctions (isToggle);,which then
 
605
    calls screen->handleEventSetEnabled (os, os->isToggle); to fix
 
606
    Opacify ignoring the "Toggle Opacify on by default" setting. (LP:
 
607
    #787814). (LP: #787814)
 
608
  * Widget, minor code cleanup: Declaration and assignment of local
 
609
    variables in one line. Merged if condition checks. Added and removed
 
610
    newlines. Added default case to switch (just a style issue). Removed
 
611
    redundant brackets. Fixed indentation.
 
612
  * window.cpp code cleanup: Declare variables outside of loops. Reduced
 
613
    the scope of variables. Do not assign values to variables if those
 
614
    values are not used. Always bail out of functions ASAP, do not
 
615
    calculate stuff you might not need. Use pre- instead of postfix de-
 
616
    and increments. Declaration and assignment of variables in one line.
 
617
    Merged if condition checks. Added and removed brackets. Added and
 
618
    removed newlines. Fixed indentation. Added TODOs (removal of magic
 
619
    numbers).
 
620
  * Fix for cube.cpp, regression r3720 - Inner sides of cube invisible
 
621
    now. Wrong variable type was accidentially used, cullInv is of type
 
622
    int, not bool. (LP: #1183852). (LP: #1184852, #1183852)
 
623
  * src/output*.cpp cleanup: Return ASAP, do not calculate stuff you do
 
624
    not need. Declaration and assignment of variables in one line.
 
625
    Declare local variables outside of loops. Use prefix instead of
 
626
    postfix increment. Added and removed newlines. Fixed indentation.
 
627
  * Expo, code cleanup: Declaration of local variables outside of loops.
 
628
    Use prefix instead of postfix increments. Declaration and assignment
 
629
    of local variables in one line, if possible. Reduced the scope of
 
630
    some variables. Removed redundant brackets. Used static_cast <>
 
631
    (type) instead of (type) cast. Added and removed newlines if
 
632
    appropriate. Fixed indentation. Added TODOs. Expo, speed
 
633
    improvements: Do not calculate screen->vpSize ().width () and
 
634
    screen->vpSize ().height () multiple times, instead save them in the
 
635
    unsigned ints vpCountHorz and vpCountVert and use those variables
 
636
    instead. Speed up the curve calculations by using additional
 
637
    variables to save results to not have to re-calculate those all the
 
638
    time. The new variables introduced are degToRad, screenWidth,
 
639
    screenWidthSquared, curveDistSquaredPlusQuarter,
 
640
    pOne2MinusCurveDist, v0Squared and v2Squared. Also introduced const
 
641
    float halfGapX = gapX / 2.0 and used this variable in the
 
642
    calculations of curveDistance and curveRadius. Simplified
 
643
    calculations of this type: (M_PI / 180.0f) * curveAngle / 2.0, which
 
644
    is equal to: (M_PI / 360.0f) * curveAngle Do not call
 
645
    optionGetGroundSize (); twice, instead save the value in the float
 
646
    groundSize and use that variable in the following calculations.
 
647
    Removed the creation of the redundant bool hide, which is just used
 
648
    once in an if-condition check. It does not help to have this bool.
 
649
    Try to avoid redundant GL_BLEND state changes, they are expensive -
 
650
    only enable GL_BLEND if it is disabled and just disable it, if it
 
651
    was disabled before, otherwise do nothing. Try to avoid redundant GL
 
652
    filter changes - just query the filter state if the mipmap option in
 
653
    CCSM is enabled. Also just set back the filter to the previous state
 
654
    if we actually changed it, otherwise do nothing. -5.5f * 2 = -11.0f.
 
655
    No need to calculate M_PI / 180.0f 720 times: Calculate this value
 
656
    once instead and save it in the const float mpi, use mpi in the
 
657
    following looped calculations. Use const int scw in the same loop
 
658
    instead of calling screen->width () 360 times. glow.cpp: Massively
 
659
    increased calculation speed of the glow texture: No need for any
 
660
    macros here -> removed them and replaced them with local variables.
 
661
    Precalculate values, store them in local variables and use those in
 
662
    the following calculations (new variables are the ints winRealX,
 
663
    winRealY, winRealWidth, winRealHeight, halfWinRealWidth,
 
664
    halfWinRealHeight, xPlusHalfWidth, yPlusHalfHeight, xPlusGlowOff,
 
665
    yPlusGlowOff, xMinusGlowOff, yMinusGlowOff and the float glowPart).
 
666
    Used w->geometry ().widthIncBorders () and w->geometry
 
667
    ().heightIncBorders () to determine winRealWidth and winRealHeight.
 
668
    Expo, fixes: Do not force "One wall per output" on the user, if his
 
669
    displays use different resolutions. "One big wall" makes a lot of
 
670
    sense for many multi-screen configs, where not all of the screens
 
671
    have exactly the same resolution, so if the user explicitely chooses
 
672
    this mode, Compiz should respect the user's choice. (LP: #1009592).
 
673
    (LP: #1009592)
 
674
  * Compiz, redundant and outdated files cleanup: Removed outdated NEWS
 
675
    files. Removed outdated AUTHORS and ChangeLog files. Removed
 
676
    plugins/freewins/COPYING - we do not need another copy of the GPL v2
 
677
    here. Removed another copy of the GPL v2 from plugins/workarounds.
 
678
    This will reduce package sizes, download time and bring some order
 
679
    to chaos.
 
680
  * Expo, .xml.in fixes: Better description of the plugin. Improved and
 
681
    fixed tooltips. Moved the "Curve Strength" option closer to
 
682
    "Deformation". Refreshed the quilt patch for Ubuntu: There is no
 
683
    need to set the default distance to 0.005 as this setting has no
 
684
    effect without deformation. Set default multi-screen mode to "One
 
685
    wall per output" for Ubuntu, because "One big wall" works now for
 
686
    all display configurations and could potentially change the
 
687
    appearance for Ubuntu users. (LP: #1074487). (LP: #1074487)
 
688
  * Added contribute directory. Added QtCreatorConfig.xml, a
 
689
    configuration file for Qt Creator, which adjusts Qt Creator's C++
 
690
    indentation style to be the same that is used in the Compiz project
 
691
    (X11, mixed spaces and tabs).
 
692
  * Mousepoll: Fixed mousepoll version mismatch. (COMPIZ_MOUSEPOLL_ABI
 
693
    was missing) (LP: #1195659). (LP: #1195659)
 
694
  * Expo: Simplified the GL filter handling.
 
695
  * Fixed broken text in all plugins (missing COMPIZ_TEXT_ABI). (LP:
 
696
    #1196493). (LP: #1196493)
 
697
  * CCSM: Fixed vertical alignment of the text on the stylized keys.
 
698
    (Shift, Super, Ctrl, Alt) (LP: #1196345). (LP: #1196345)
 
699
  * Thumbnail, cleanup: Merged if condition checks. Declaration of
 
700
    variables when they are needed (C++ style). Removed redundant
 
701
    brackets. Removed useless "/* Could someone please explain how this
 
702
    works */" comment. Removed extern const unsigned short
 
703
    TEXT_DISTANCE, because this variable does not exist anymore (value
 
704
    is configurable already). Changed if (something > 0.0) to if
 
705
    (something), 10 times. Changed pointedWin = 0; to pointedWin =
 
706
    NULL;. Used centerX () and centerY () abstractions from
 
707
    compiz::window::Geometry to determine the icon center coordinates.
 
708
    Added and removed newlines, if appropriate. Fixed indentation.
 
709
    Thumbnail, code speedup: Return ASAP, do not calculate stuff you
 
710
    might not need. No need for WIN_W (w) and WIN_H (w) macros, removed
 
711
    those and replaced them with the local variables int winWidth, int
 
712
    winHeight, int dockWidth and int dockHeight. No need for WIN_X (w)
 
713
    and WIN_Y (w) macros, replaced those with int dockX and int dockY.
 
714
    Introduced int tHeight = thumb.height;, int tWidth = thumb.width;,
 
715
    int halfTWidth = tWidth / 2; and int halfTHeight = tHeight / 2; and
 
716
    used those variables in the following calculations. Use
 
717
    igMidPoint[0] and igMidPoint[1] as arguments in the screen-
 
718
    >outputDeviceForPoint (arg1, arg2) function, instead of re-
 
719
    calculating the arguments again. Thumbnail, GL speedup: Introduced
 
720
    GLfloat wxPlusWidth = wx + width;, GLfloat wyPlusHeight = wy +
 
721
    height;, GLfloat wxPlusWPlusOff = wxPlusWidth + off;, GLfloat
 
722
    wyPlusHPlusOff = wyPlusHeight + off;, GLfloat wxMinusOff = wx - off;
 
723
    and GLfloat wyMinusOff = wy - off; and used those coordinates in the
 
724
    vertexData arrays. No need to re- calculate those values multiple
 
725
    times. Just query optionGetShowDelay () once and use int showDelay
 
726
    later. We just enable blending if it is currently disabled and
 
727
    disable blending only, if it was disabled before.
 
728
  * src/session.cpp cleanup: Declaration and assignment of local
 
729
    variables in one line. (this *should* fix bug #1101405) Use pre-
 
730
    instead of postfix increments. Added and removed newlines. Added
 
731
    missing break (just a style issue). Fixed indentation. (LP:
 
732
    #1101405). (LP: #1101405)
 
733
  * Firepaint, code cleanup: Declare variables outside of loops.
 
734
    Declaration and assignment of local variables in one line. Use pre-
 
735
    instead of postfix increment. Removed redundant newlines. Removed
 
736
    redundant casts. (from (float) optionGetFireColor) Removed redundant
 
737
    brackets. Added missing break (style issue only). Added comment and
 
738
    TODO. Fixed indentation. Firepaint, speedup: We just enable GL_BLEND
 
739
    if it is disabled and we just disable GL_BLEND if it was disabled
 
740
    before. Introduced the GLfloats xMinusW, xPlusW, yMinusH and yPlusH
 
741
    to store calculated coordinates instead of recalculating them
 
742
    multiple times. Introduced float fireLife = optionGetFireLife ();,
 
743
    float fireWidth = optionGetFireSize ();, float fireHeight =
 
744
    fireWidth * 1.5f; and bool mystFire = optionGetFireMystical (); and
 
745
    used those variables inside the loop. Firepaint, .xml.in cleanup:
 
746
    Firepaint now has 2 tabs, 'General' and 'Particle Settings'. The
 
747
    name of this plugin is Firepaint, <short> should not contain the
 
748
    description. Better description of the plugin. Uppercase option
 
749
    titles. Punctuation for tooltips. Improved tooltips. Firepaint,
 
750
    fixes: Initialize all class member variables in the ParticleSystem::
 
751
    ParticleSystem () ctor (LP: #1101512, LP: #1101580). (LP: #1101512,
 
752
    #1101580)
 
753
  * img* plugins code cleanup: Always bail out of function ASAP, do not
 
754
    calculate stuff you might not need. Declare variables outside of
 
755
    loops so they won't be re-declared in each loop. Use prefix instead
 
756
    of postfix increments. Declaration and assignment of variables in
 
757
    one line. Merged if condition checks. Added and removed brackets.
 
758
    Added and removed newlines, if appropriate. Minor code structure
 
759
    improvements, declare variables when you need them, not much
 
760
    earlier. Fixed indentation.
 
761
  * Text, speed improvements: Introduced const float halfPi = PI / 2.0f;
 
762
    and const float triHalfPi = halfPi * 3; and used those to draw the
 
763
    rounded background. Introduced GLfloat xPlusWidth = x + width; and
 
764
    GLfloat yMinusHeight = y - height; and used those coordinates for
 
765
    the vertexData array. Text, cleanup: Declaration of local variables
 
766
    outside of loops. Fixed indentation.
 
767
  * cube.cpp, code cleanup: #include "privates.h", not <privates.h>.
 
768
    Merged if condition checks. Declaration of variables, where you need
 
769
    them to improve the code structure and readability. Use C++ standard
 
770
    bool for topDir, bottomDir, allCaps and mCapsPainted[output] (bool
 
771
    true/false instead Bool TRUE/FALSE). Initialize all of the class
 
772
    member variables in the constructor. Replaced if (priv->mSky.size ()
 
773
    > 0) with if (!priv->mSky.empty ()). Removed redundant brackets.
 
774
    Fixed indentation. Added TODO. cube.cpp, code speedup: Do not call
 
775
    optionGetInactiveOpacity () twice, instead save the value as float
 
776
    inactiveOpacity and use this variable in the following calculation.
 
777
    Introduced the variables float halfHsize = hsize / 2.0; and float
 
778
    tsSize = 360.0f / size; and used those in following calculations to
 
779
    not have to recalculate those values multiple times. Do not
 
780
    calculate M_PI / sides and 2 * M_PI / sides multiple times in loops,
 
781
    instead save those values in the GLfloats mps and tmps and use those
 
782
    values inside the loops. Use GLdouble mDist2 = 0.5 / mDistance; in
 
783
    the GLdouble clipPlane* arrays, instead of recalculating this value
 
784
    multiple times. Use GLfloat oneMinusFStepX = 1.0f - fStepX; and
 
785
    GLfloat oneMinusFStepY = 1.0f - fStepY; instead of calculating those
 
786
    values multiple times. Use float outputWidth = outputPtr->width ();
 
787
    and float outputHeight = outputPtr->height (); instead of calling
 
788
    the functions multiple times. Introduced the GLfloat normInvert =
 
789
    0.5f * invert; and used this variable instead of recalculating this
 
790
    value multiple times. Introduced the GLfloats mSkyWidth and
 
791
    mSkyHeight and used those in the following loops instead of calling
 
792
    mSkySize.width () and mSkySize.height () multiple times. Try to
 
793
    avoid redundant GL_BLEND state changes, because OpenGL will blindly
 
794
    change the global state, no matter what it currently is set to and
 
795
    that state change is expensive. So we query and save the actual
 
796
    blending state in the variable GLboolean glBlendEnabled =
 
797
    glIsEnabled (GL_BLEND); and just enable it if it isn't already and
 
798
    just disable it, if it was disabled before. (LP: #1101422, LP:
 
799
    #1195977) cube.cpp, other fixes: Return false in function
 
800
    PrivateCubeScreen::updateGeometry (int, int) if sides should ever be
 
801
    0, which should never happen, but should make Coverity happy. (LP:
 
802
    #1101541) Initialize all class member variables in the
 
803
    PrivateCubeScreen:: PrivateCubeScreen (CompScreen *) constructor.
 
804
    (mTc, mNOutput, mOutput, mOutputMask, mCleared, mCapsPainted) (LP:
 
805
    #1101575). (LP: #1195977, #1101541, #1101422, #1101575)
 
806
  * plugins/ezoom/src/ezoom.cpp: Also initialize xtrans and ytrans in
 
807
    the ctors. Just just enable blending if it is disabled and just
 
808
    disable it if it was disabled before. Introduced the variables
 
809
    oWidth, oHeight, halfOWidth and halfOHeight to speed up following
 
810
    calculations. Return ASAP, do not calculate possibly redundant
 
811
    stuff. Declaration and assignment of local variables in one line.
 
812
    Improved readability. Added and removed newlines. Minor indentation
 
813
    fixes. plugins/ezoom/ezoom.xml.in: Removed redundant whitespaces
 
814
    from a tooltip. (LP: #1101572). (LP: #1101572)
 
815
 
 
816
  [ Hu Kang stevenhooke11@gmail.com ]
 
817
  * workarounds.cpp: Fix typo in call to XShapeSelectInput. (LP:
 
818
    #1167284). (LP: #1167284)
 
819
  * Use XIDefineCursor rather than XDefineCursor. compiz should show a
 
820
    busy cursor during the application startup stage. the corresponding
 
821
    code is in scr/screen.cpp:
 
822
    cps::StartupSequenceImpl::updateStateFeedback () the patch changes
 
823
    all XDefineCursor to XIDefineCursor (see XInput2 extension) (LP:
 
824
    #1179155). (LP: #1179155)
 
825
 
 
826
  [ Łukasz 'sil2100' Zemczak ]
 
827
  * Qt is stupid since it uses the stupid X11 protocol - let's not set
 
828
    all the attributes (especially override_redirect) every time, only
 
829
    in cases when it's actually needed (LP: #1141079). (LP: #1141079)
 
830
 
 
831
  [ Andrea Azzarone ]
 
832
  * Satisfy matchers on getProperty as soon as they are set. The order
 
833
    of evaluation for matchers in Google Mock appears to be undefined -
 
834
    this means that we can't rely on the first argument being matched
 
835
    first and the second argument being matched afterwards. In turn,
 
836
    this means that any GValue may be passed to a GValueMatch which, by
 
837
    a design flaw, is unable to handle any values of a type it does not
 
838
    expect (at least not without an API change). It will silently pass
 
839
    the incorrect type to g_type_get_* which causes internal assertion
 
840
    failures. At the moment we're just interleaving the calls to
 
841
    getProperty and get_property - that way the expectations are
 
842
    satisfied and go away as soon as they're set. This in turn means
 
843
    that Google Mock only has to traverse one matcher rather than
 
844
    multiple matchers. (LP: #1187468). (LP: #1187468)
 
845
  * Extends invisible borders to the title bar too. (LP: #717444). (LP:
 
846
    #717444)
 
847
  * Disable grid/put_maximize_key on ubuntu.
 
848
  * Port to new gmock. Disable some faling tests because of weird leaks.
 
849
    (LP: #1185265)
 
850
  * Update window geo only on new decoration size only if mapped. (LP:
 
851
    #1198000). (LP: #1198000)
 
852
  * Disable show_desktop_key by default on ubuntu. Will provide the same
 
853
    option under the unityshell panel. (LP: #1204664)
 
854
  * Use Glib::RefPtr<Glib::Source> in glib_integration_test and compiz
 
855
    core too. After the fix of bug
 
856
    https://bugzilla.gnome.org/show_bug.cgi?id=561885
 
857
    Glib::Source::~Source is called when both Source::unreference() and
 
858
    SourceCallbackData::destroy_notify_callback() are called. (LP:
 
859
    #1214459)
 
860
 
 
861
  [ Sam Spilsbury ]
 
862
  * Also take into account the gravity requirements when validating
 
863
    reposition requests. Get most of that code under test too. (LP:
 
864
    #1159324). (LP: #1159324)
 
865
  * Install compizconfig backends to the correct libdir (LP: #1163611).
 
866
    (LP: #1163611)
 
867
  * Don't timeout after 3000ms when asking compiz for a startup message.
 
868
    It can sometimes take longer in the valgrind case. Also timeouts are
 
869
    bad design for tests. (LP: #1169170). (LP: #1169170)
 
870
  * Check for USE_GCONF if USE_GSETTINGS is unavailable when
 
871
    instantiating different types of settings objects. (LP: #1169172).
 
872
    (LP: #1169172)
 
873
  * Link in CMAKE_THREAD_LIBS_INIT through GTEST_BOTH_LIBRARIES so it
 
874
    gets included in everything. Remove redundant links. Require
 
875
    FindThreads.cmake. (LP: #1171364). (LP: #1171364)
 
876
  * Explicitly check if the smart pointers are null rather than
 
877
    converting implicitly to bool as boost 1.53 now marks the bool
 
878
    operator as explicit (LP: #1172601). (LP: #1172601)
 
879
  * Rewrite screen size change tests. 1. Rename the overly-terse
 
880
    variables names to variables names that have some significance 2.
 
881
    Split the giant three-test structure into multiple tests each with
 
882
    only one assert 3. Remove a lot of redundant calculation 4. Remove
 
883
    magic numbers peppered throughout the code. Use constants and
 
884
    express asserts as relationships between those constants. 5.
 
885
    Refactor some of the more common test-advancement code (such as
 
886
    changing the screen size) into the test fixture as common methods.
 
887
    (LP: #1167983). (LP: #1167983)
 
888
  * Refactor screenshot code to make it clearer and also to allow us to
 
889
    take screenshots in glPaintOutput as opposed to paint (). Taking
 
890
    screenshots in paint () was probably correct pre-GLES, but isn't
 
891
    really correct now - we want to be able to read off of the currently
 
892
    bound scratch framebuffer where we last painted the frame. Reading
 
893
    off the frontbuffer is an imprecise operation because the contents
 
894
    of both buffers are really undefined after a swap. In the case where
 
895
    we are not painting to a scratch framebuffer object, we'll just end
 
896
    up reading from the backbuffer anyways, which would be correct to do
 
897
    mid-frame. Also added the new static const GLenums
 
898
    DRAW_FRAMEBUFFER_BINDING and READ_FRAMEBUFFER_BINDING to opengl.h.
 
899
    (LP: #771875). (LP: #771875)
 
900
  * Set libcompizconfig_libdir before the modules get a chance to see
 
901
    it. (LP: #1173799). (LP: #1173799)
 
902
  * Try to launch tests on another server if there's tests running in
 
903
    parallel. Provide our own compiz_xorg_gtest_main and subclass
 
904
    xorg::testing::Environment to try and launch tests on another
 
905
    display if there's tests running on one already. This isn't by any
 
906
    means perfect - there are still race conditions surrounding
 
907
    XOpenDisplay and parallel test runs but it makes a more smaller time
 
908
    gap for conditions such as:  1. Client has a server grab on the
 
909
    display we're checking     and won't let go.  2. Two servers get
 
910
    launched on one port and one set of tests     interfere with the
 
911
    other. It also means that we're now unable to configure the display
 
912
    port, log file and config file on the command line. But we weren't
 
913
    using that anyways. Finally, the logs now point to
 
914
    /tmp/Compiz.Xorg.GTest.displaynum.log (LP: #1178514). (LP: #1178514)
 
915
  * Fix some files not installing: 1. gsettings schemas never get added
 
916
    to the install_manifest list because we use install (CODE) so we
 
917
    need to add a custom uninstall target for those, and also need to
 
918
    recompile on uninstall too 2. Run the gtk-update-icon-cache stage
 
919
    during install for ccsm and also add icon-theme.cache to the
 
920
    uninstall target (LP: #1168475). (LP: #1168475)
 
921
  * Wall: Fixed broken wall edge flipping functions: "Edge Flip Pointer"
 
922
    "Edge Flip Move" Removed void WallScreen::updateScreenEdgeRegions ()
 
923
    completely. This function not needed hereat all, no other plugin
 
924
    needs to re-define the screen edge regions by itself - just core
 
925
    should do that. The screen edge region updating also confused the
 
926
    edge flipping functionality. case ConfigureNotify: just breaks out
 
927
    now Added missing default: case and a break (just a style issue).
 
928
    Minor cleanup in bool WallScreen::initiateFlip (...). One
 
929
    declaration per line. Note: "Edge Flip DnD" still seems to be
 
930
    broken, but will be fixed in a follow-up proposal. (LP: #771448, LP:
 
931
    #858845). (LP: #771448, #858845)
 
932
  * Add a small compiz_autopilot_acceptance_tests binary based on gtest.
 
933
    This will find autopilot and run a predefined list of tests, wrapped
 
934
    up in the familiar google test format. The predefined list is
 
935
    basically a bunch of tests which effectively interact with the
 
936
    window manager. (LP: #1170013). (LP: #1170013)
 
937
  * Change the behaviour of undecorating windows. Previously when a
 
938
    window was undecorated, we would shift it back to an appropriate
 
939
    position according to its gravity member. That behaviour was
 
940
    problematic because in the StaticGravity case the window has to just
 
941
    stay in the same place. But then if you had a window with
 
942
    StaticGravity which then did get a decoration and later removed it,
 
943
    it would be placed as though it was decorated and appear to be in
 
944
    the wrong place. The correct behaviour is to place all windows as
 
945
    though they have decorations, and then when decorations are removed,
 
946
    to move the window back to the corner as indicated in its gravity
 
947
    and then expand its size to cover the obscured regions no longer
 
948
    hidden because the decorations went away. (LP: #1165343). (LP:
 
949
    #1165343)
 
950
  * Added some new hooks to PluginClassHandler to allow a VTable to
 
951
    specify if loaded. PluginClassHandler::get () was designed to simply
 
952
    instantiate an instance of that class for the core structure, but it
 
953
    did this without checking if the plugin was loaded. Added some new
 
954
    methods to PluginClassHandler exposed by LoadedPluginClassBridge and
 
955
    only accessible by those who implement PluginKey to specify globally
 
956
    whether or not a plugin is actually loaded, so that
 
957
    PluginClassHandler can return accordingly. Integration and unit
 
958
    tests added as appropriate (LP: #1169620) (LP: #1101026). (LP:
 
959
    #1101026, #1169620)
 
960
  * Satisfy matchers on getProperty as soon as they are set. The order
 
961
    of evaluation for matchers in Google Mock appears to be undefined -
 
962
    this means that we can't rely on the first argument being matched
 
963
    first and the second argument being matched afterwards. In turn,
 
964
    this means that any GValue may be passed to a GValueMatch which, by
 
965
    a design flaw, is unable to handle any values of a type it does not
 
966
    expect (at least not without an API change). It will silently pass
 
967
    the incorrect type to g_type_get_* which causes internal assertion
 
968
    failures. At the moment we're just interleaving the calls to
 
969
    getProperty and get_property - that way the expectations are
 
970
    satisfied and go away as soon as they're set. This in turn means
 
971
    that Google Mock only has to traverse one matcher rather than
 
972
    multiple matchers. (LP: #1187468). (LP: #1187468)
 
973
  * Revert revision 3278.
 
974
  * Immediately update the window matrices and regions if the number of
 
975
    textures changed. (LP: #1189369). (LP: #1189369)
 
976
  * Provide a basic decor plugin acceptance test suite. This change
 
977
    provides a simple acceptance test suite for the decor plugin. It
 
978
    creates a fake window decorator (cdt::FakeDecorator) and allows
 
979
    users to create fake decorations (eg cdt::FakePixmapDecoration)
 
980
    which can be serialized as decoration properties and set on windows
 
981
    under xorg-gtest. It also launches compiz with the opengl, composite
 
982
    and decor plugins loaded and runs some basic tests. Among them:
 
983
    BaseDecorAcceptance. Startup: Basic canary "can we start compiz with
 
984
    these plugins" test
 
985
    FakeDecoratorSessionOwnerNameSetOnSelectionOwner: Create a fake
 
986
    decorator, ensure that libdecoration sets our session name "fake" on
 
987
    the selection owner FakeDecoratorReceiveClientMessage: Create fake
 
988
    decorator, ensure that libdecoration posts a client message to the
 
989
    root window announcing that the new decorator exists.
 
990
    DecorationSupportsWindowType: Create a fake decorator, announce
 
991
    support for the WINDOW type decorations and ensure that the correct
 
992
    atom is set on the session owner window.
 
993
    DecorationSupportsPixmapType: Create a fake decorator, announce
 
994
    support for the PIXMAP type decorations and ensure that the correct
 
995
    atom is set on the session owner window.
 
996
    DecorFakeDecoratorAcceptance. WindowDefaultFallbackNoExtents: By
 
997
    default, newly created windows should recieve a fallback decoration
 
998
    but they should not have any frame extents.
 
999
    DecorWithPixmapDefaultsAcceptance. These tests create a default
 
1000
    pixmap decoration to use in the hypothetical situation that the
 
1001
    window decorator hasn't yet generated a decoration for this window.
 
1002
    FallbackRecieveInputFrameNotify: Verify that we get a
 
1003
    _COMPIZ_WINDOW_DECOR_INPUT_FRAME property set on the client when it
 
1004
    is created and mapped (eg, an input frame window was annonuced to be
 
1005
    created) FallbackHasInputFrameInParent: Verify that a second window
 
1006
    exists in the frame window after this message was recieved.
 
1007
    FallbackNormalWindowExtentOnDecoration: Verify that
 
1008
    _NET_FRAME_EXTENTS is set to the default window extents for the
 
1009
    default decoration when the window was mapped.
 
1010
    FallbackNormalWindowInputOnFrame: Verify that the input window
 
1011
    matches the extents set. PixmapDecoratedWindowAcceptance. These
 
1012
    tests create a new window and an associated unique decoration for
 
1013
    that window. MaximizeBorderExtentsOnMaximize: Maximize the window
 
1014
    and ensure that the correct border extents are used.
 
1015
    MaximizeBorderExtentsOnVertMaximize: Vertically maximize the window
 
1016
    and ensure that the correct border extents are used.
 
1017
    MaximizeBorderExtentsOnHorzMaximize: Horizontally maximize the
 
1018
    window and ensure that the correct border extents are used.
 
1019
    MaximizeFrameWindowSizeEqOutputSize: Maximie the window and ensure
 
1020
    that the frame window exactly equals the output size.
 
1021
    VertMaximizeFrameWindowSizeEqOutputYHeight: Maximize the window and
 
1022
    ensure that the frame window's Y and Height values are consistent
 
1023
    with the output size. HorzMaximizeFrameWindowSizeEqOutputXWidth:
 
1024
    Ditto horizontal maximization.
 
1025
    DISABLED_VertMaximizeFrameWindowSizeSameXWidth: Maximize the window
 
1026
    vertically and ensure that the frame window's border-relative X
 
1027
    position and width does not change. This test is disabled, as the
 
1028
    behavior in compiz is currently broken, (but it means that we can
 
1029
    fix it later and enable the test).
 
1030
    DISABLED_HorzMaximizeFrameWindowSizeSameYHeight Maximize the window
 
1031
    horizontally and ensure that the frame window's border-relative Y
 
1032
    position and height does not change. This test is disabled, as the
 
1033
    behavior in compiz is currently broken, (but it means that we can
 
1034
    fix it later and enable the test). (LP: #1188900). (LP: #1188900)
 
1035
  * Only mark for no further instantiations once we've finished
 
1036
    destructing the plugin (LP: #1193596). (LP: #1193596)
 
1037
  * Add more acceptance tests for the decor plugin.
 
1038
    PixmapDecoratedWindowAcceptance. UndecoratedWindowExpandToOrigSize
 
1039
    Test that upon undecoration, the window has exactly the same
 
1040
    geometry as it did before decoration.
 
1041
    DISABLED_UndecorateStaticGravityWindow Tests that for windows with a
 
1042
    static gravity, the window has exactly the same geometry as it did
 
1043
    before decoration. Disabled, as core is currently not moving the
 
1044
    window with the static gravity back to where it started.
 
1045
    AdjustmentExtents/PixmapDecorationAdjustment.
 
1046
    AdjustRestoredWindowBorderMovesClient/P Test that changing the
 
1047
    border extents causes the client window's absolute geometry to
 
1048
    change. DISABLED_AdjustRestoredWindowBorderShrinkClient/P Tests that
 
1049
    changing the border extents causes the client window's absolute
 
1050
    geometry to shrink by the amount of border. Disabled, as the current
 
1051
    behavior is to expand the frame window as opposed to shrinking the
 
1052
    client (but this will be changed).
 
1053
    DISABLED_ClientExpandsAsBorderShrinks/P Tests that as the border
 
1054
    shrinks away, the client expands back to its original size.
 
1055
    Disabled, as the current behavior is to expand the frame window as
 
1056
    opposed to shrinking the client (but this will be changed).
 
1057
    DISABLED_ClientExpandsAsBorderShrinksWhilstMaximized/P Tests that
 
1058
    even if the client is maximized, if the restored border shrinks away
 
1059
    it demaximizes back to the same position while also accounting for
 
1060
    any change in the restored window border size. Disabled, as the
 
1061
    current behavior is to expand the frame window as opposed to
 
1062
    shrinking the client (but this will be changed).
 
1063
    DISABLED_ClientExpandsAsBorderShrinksWhilstUndecorated/P Tests that
 
1064
    even when the client is not permitted to be decorated because the
 
1065
    decoration hint was removed, when it is redecorated it will be moved
 
1066
    to the correct position taking into account any changes in its
 
1067
    border size. Disabled, as the current behavior is to expand the
 
1068
    frame window as opposed to shrinking the client (but this will be
 
1069
    changed). DISABLED_AdjustRestoredWindowInputNoMoveClient/P Tests
 
1070
    that adjusting the input extents (as independent from the border
 
1071
    extents) of the client does not cause the client to move. Disabled,
 
1072
    as this behavior appears to be broken in core. Move the
 
1073
    "GetImmediateParent" function into the compiz::testing namespace so
 
1074
    that it can be used by other tests. (LP: #1188900)
 
1075
  * Unrevert 3728, fix failing tests. Change the behaviour of
 
1076
    undecorating windows. Previously when a window was undecorated, we
 
1077
    would shift it back to an appropriate position according to its
 
1078
    gravity member. That behaviour was problematic because in the
 
1079
    StaticGravity case the window has to just stay in the same place.
 
1080
    But then if you had a window with StaticGravity which then did get a
 
1081
    decoration and later removed it, it would be placed as though it was
 
1082
    decorated and appear to be in the wrong place. The correct behaviour
 
1083
    is to place all windows as though they have decorations, and then
 
1084
    when decorations are removed, to move the window back to the corner
 
1085
    as indicated in its gravity and then expand its size to cover the
 
1086
    obscured regions no longer hidden because the decorations went away.
 
1087
    (LP: #1165343).   1. Completely remove decorOffsetMove and other
 
1088
    related code from      decor.cpp. Put the logic to handle the
 
1089
    window->input () - window->border ()      placement offset inside of
 
1090
    setWindowFrameExtents instead. Now the window      will always be
 
1091
    offset from its original non-decorated position to the new
 
1092
         decorated position, rather than having to guess between
 
1093
    decoration sizes.   2. Make saveGeometry and restoreGeometry work
 
1094
    relative to window->border ()      as opposed to including it in the
 
1095
    saved geometry. It is possible that the      border size might
 
1096
    change during maximization, as such, we don't want to      save the
 
1097
    position with the border before maximizing. Instead save the
 
1098
    position      as if it were never decorated so that when the window
 
1099
    is restored it can be      restored to its original position and
 
1100
    then adjusted for its new border size.   3. Fix a few typoes in the
 
1101
    tests.   4. Moved some commonly used matchers into compiz::testing
 
1102
      5. Make COMPIZ_PLUGIN_DIR accept multiple directories and look in
 
1103
    each one      of them for the plugin   6. Set COMPIZ_PLUGIN_DIR
 
1104
    appropriately for each plugin that we wish to load      on startup
 
1105
    so that we load locally built plugins as opposed to installed
 
1106
         ones.   7. Uncomment compiz_discover_tests for the acceptance
 
1107
    tests. Now they are      run by default. (LP: #1195522). (LP:
 
1108
    #1195522, #1165343)
 
1109
  * Add a simple script for making releases.
 
1110
  * Port to new gmock. Disable some faling tests because of weird leaks.
 
1111
    (LP: #1185265)
 
1112
  * Don't add the frame to the toplevel stack if it hasn't been created
 
1113
    yet. In the event that a window is unreparented or destroyed, we
 
1114
    usually need to add its frame window to the toplevel window stack
 
1115
    until the time at which we recieve a DestroyNotify for it, as there
 
1116
    may be incoming ConfigureNotify events puporting to stack other
 
1117
    windows relative to that frame. However, this does not apply in the
 
1118
    case where we have not yet received a CreateNotify for the frame
 
1119
    window. In that case, it is not possible for any stacking requests
 
1120
    to be made relative to this window, so it does not need to be added
 
1121
    immediately. Instead, we can add it at the time that we recieve a
 
1122
    CreateNotify for it as a regular override redirect window until the
 
1123
    time that it is later destroyed. (LP: #1171314). (LP: #1171314)
 
1124
  * Remove redundant src/logmessage/include/core/logmessage.h (LP:
 
1125
    #1067246). (LP: #1067246)
 
1126
  * Adjust acceptance tests for the fix to LP: #1198000 1. Always set
 
1127
    frame extents before updating the frame 2. Added
 
1128
    COMPIZ_NO_CONFIGURE_BUFFER_LOCKS so that we don't have to deal with
 
1129
    the delayed configure requests logic in the tests where it does not
 
1130
    help 3. Split restoredDecorationSize in to
 
1131
    restoredDecorationBorderSize and restoredDecorationInputSize so that
 
1132
    we can measure the size of the decoration both in terms of its
 
1133
    visible and invisible border 4. Wait for the default decoration
 
1134
    properly 5. Capture the initial geometry of the window with and
 
1135
    without decorations when the window gets its first decoration. Use
 
1136
    these values to calculate the size changes in the window from then
 
1137
    on instead of its creation values 6. Just flag when the window was
 
1138
    first decorated in setWindowFrameExtents rather than checking if it
 
1139
    is mapped. We only want to not resize the window once. (LP:
 
1140
    #1198000)
 
1141
  * Release version 0.9.10.0
 
1142
  * Bump VERSION to 0.9.10.2
 
1143
 
 
1144
  [ Ubuntu daily release ]
 
1145
  * Automatic snapshot from revision 3781
 
1146
 
 
1147
 -- Ubuntu daily release <ps-jenkins@lists.canonical.com>  Thu, 22 Aug 2013 06:58:07 +0000
13
1148
 
14
1149
compiz (1:0.9.9~daily13.04.18.1~13.04-0ubuntu4) saucy; urgency=low
15
1150