Merge lp:~compiz-team/compiz/compiz.revert_3728 into lp:compiz/0.9.10

Proposed by Sam Spilsbury
Status: Merged
Approved by: Sam Spilsbury
Approved revision: 3735
Merged at revision: 3736
Proposed branch: lp:~compiz-team/compiz/compiz.revert_3728
Merge into: lp:compiz/0.9.10
Diff against target: 648 lines (+158/-179)
10 files modified
.bzrignore (+0/-1)
plugins/decor/src/decor.cpp (+38/-78)
plugins/decor/src/decor.h (+0/-6)
plugins/place/src/constrain-to-workarea/include/constrain-to-workarea.h (+6/-3)
plugins/place/src/constrain-to-workarea/src/constrain-to-workarea.cpp (+49/-25)
plugins/place/src/constrain-to-workarea/tests/constrain-to-workarea/src/test-place-constrain-to-workarea.cpp (+57/-4)
plugins/place/src/place.cpp (+8/-3)
src/window/extents/src/windowextents.cpp (+0/-10)
tests/manual/README.txt (+0/-9)
tests/manual/plugins/decor.txt (+0/-40)
To merge this branch: bzr merge lp:~compiz-team/compiz/compiz.revert_3728
Reviewer Review Type Date Requested Status
PS Jenkins bot (community) continuous-integration Approve
MC Return Abstain
Brandon Schaefer (community) Approve
Review via email: mp+167894@code.launchpad.net

Commit message

Revert revision 3278.

Description of the change

Revert revision 3278.

It isn't quite ready yet.

To post a comment you must log in.
Revision history for this message
PS Jenkins bot (ps-jenkins) wrote :
review: Approve (continuous-integration)
Revision history for this message
Brandon Schaefer (brandontschaefer) wrote :

Alright, reverting!

review: Approve
Revision history for this message
MC Return (mc-return) wrote :

What about Sam's "It isn't quite ready yet." comment ?

review: Needs Information
Revision history for this message
MC Return (mc-return) wrote :

Setting to "On Hold"/"WIP" until Sam has verified that this is ready...

Revision history for this message
Brandon Schaefer (brandontschaefer) wrote :

Hmm I thought he was talking about the branch that was r3278 was not ready, hence why he wanted to revert it?

Revision history for this message
MC Return (mc-return) wrote :

Ah yes, maybe you are right -> I am not sure though...

review: Abstain
Revision history for this message
Brandon Schaefer (brandontschaefer) wrote :

Haha, yeah now im not 100% sure either, soo ill just wait for Sam to come around and global approve it :)

Revision history for this message
MC Return (mc-return) wrote :

+1

Revision history for this message
PS Jenkins bot (ps-jenkins) wrote :
review: Needs Fixing (continuous-integration)
Revision history for this message
PS Jenkins bot (ps-jenkins) :
review: Approve (continuous-integration)
Revision history for this message
MC Return (mc-return) wrote :

Oh, the misunderstanding was on my side. Sorry... ;)

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== removed file '.bzrignore'
2--- .bzrignore 2013-05-26 06:01:34 +0000
3+++ .bzrignore 1970-01-01 00:00:00 +0000
4@@ -1,1 +0,0 @@
5-.bzr-repo
6
7=== modified file 'plugins/decor/src/decor.cpp'
8--- plugins/decor/src/decor.cpp 2013-05-20 15:26:11 +0000
9+++ plugins/decor/src/decor.cpp 2013-06-07 06:12:28 +0000
10@@ -1165,8 +1165,6 @@
11
12 xwc.x += w->serverGeometry ().x ();
13 xwc.y += w->serverGeometry ().y ();
14- xwc.width += w->serverGeometry ().width ();
15- xwc.height += w->serverGeometry ().height ();
16
17 w->configureXWindow (mask, &xwc);
18 screen->handleCompizEvent ("decor", "window_decorated", o);
19@@ -1511,68 +1509,38 @@
20
21 void
22 DecorWindow::moveDecoratedWindowBy (const CompPoint &movement,
23- const CompSize &sizeDelta,
24 bool instant)
25 {
26- /* movement and sizeDelta are the shift of the client window
27- * as a result of decoration from a theoretical neutral position,
28- * lastShift and lastSizeDelta are the last recorded shift
29- * and size-change. The true difference between two decorations
30- * is movement - lastShift, sizeDelta - sizeDelta */
31-
32- int dx = movement.x () - lastShift.x ();
33- int dy = movement.y () - lastShift.y ();
34- int dwidth = sizeDelta.width () - lastSizeDelta.height ();
35- int dheight = sizeDelta.height () - lastSizeDelta.height ();
36-
37- /* We don't apply these rules to override-redirect windows
38- * and we need to check that both the position and of the window
39- * would change as a result of decoration in order to move it
40- * (this is usually the case because as a window is decorated
41- * it will necessarily get bigger or smaller in order to fit
42- * inside its decoration) */
43- if (!window->overrideRedirect () &&
44- ((dx || dy) && (dwidth || dheight)))
45+ /* Need to actually move the window */
46+ if (window->placed () && !window->overrideRedirect () &&
47+ (movement.x () || movement.y ()))
48 {
49 XWindowChanges xwc;
50- unsigned int mask = CWX | CWY | CWWidth | CWHeight;
51+ unsigned int mask = CWX | CWY;
52
53 memset (&xwc, 0, sizeof (XWindowChanges));
54
55 /* Grab the geometry last sent to server at configureXWindow
56 * time and not here since serverGeometry may be updated by
57 * the time that we do call configureXWindow */
58- xwc.x = dx;
59- xwc.y = dy;
60- xwc.width = dwidth;
61- xwc.height = dheight;
62+ xwc.x = movement.x ();
63+ xwc.y = movement.y ();
64
65 /* Except if it's fullscreen, maximized or such */
66 if (window->state () & CompWindowStateFullscreenMask)
67- mask &= ~(CWX | CWY | CWWidth | CWHeight);
68+ mask &= ~(CWX | CWY);
69
70 if (window->state () & CompWindowStateMaximizedHorzMask)
71- mask &= ~(CWX | CWWidth);
72+ mask &= ~CWX;
73
74 if (window->state () & CompWindowStateMaximizedVertMask)
75- mask &= ~(CWY | CWHeight);
76+ mask &= ~CWY;
77
78 if (window->saveMask () & CWX)
79- window->saveWc ().x += xwc.x;
80+ window->saveWc ().x += movement.x ();
81
82 if (window->saveMask () & CWY)
83- window->saveWc ().y += xwc.y;
84-
85- if (window->saveMask () & CWWidth)
86- window->saveWc ().width += xwc.width;
87-
88- if (window->saveMask () & CWHeight)
89- window->saveWc ().height += xwc.height;
90-
91- /* If the window has not been placed, do not move it this time
92- * but record what we would have moved it by */
93- if (!window->placed ())
94- mask = 0;
95+ window->saveWc ().y += movement.y ();
96
97 if (mask)
98 {
99@@ -1590,15 +1558,6 @@
100 else
101 moveUpdate.start (boost::bind (decorOffsetMove, window, xwc, mask), 0);
102 }
103-
104- /* Even if the window has not yet been placed, we still
105- * need to store what we would have moved it by in order
106- * to put it in the right position. The place plugin will
107- * set a position that makes the most sense, but we need
108- * to know how much to move back by should the window
109- * become undecorated again */
110- lastShift = movement;
111- lastSizeDelta = sizeDelta;
112 }
113 }
114
115@@ -1609,9 +1568,9 @@
116 bool shadowOnly,
117 bool isSwitcher)
118 {
119- const bool frameOrUnmapReference = (w->frame () ||
120+ const bool visible = (w->frame () ||
121 w->hasUnmapReference ());
122- const bool realDecoration = frameOrUnmapReference && !shadowOnly;
123+ const bool realDecoration = visible && !shadowOnly;
124 const bool forceDecoration = isSwitcher;
125
126 return realDecoration || forceDecoration;
127@@ -1657,8 +1616,7 @@
128 DecorWindow::update (bool allowDecoration)
129 {
130 Decoration::Ptr old, decoration;
131- CompPoint movement;
132- CompSize sizeDelta;
133+ CompPoint oldShift, movement;
134
135 if (wd)
136 old = wd->decor;
137@@ -1692,9 +1650,13 @@
138 if (decoration == old)
139 return false;
140
141- /* Destroy the old WindowDecoration */
142+ /* Determine how much we moved the window for the old
143+ * decoration and save that, also destroy the old
144+ * WindowDecoration */
145 if (old)
146 {
147+ oldShift = cwe::shift (window->border (), window->sizeHints ().win_gravity);
148+
149 WindowDecoration::destroy (wd);
150 wd = NULL;
151 }
152@@ -1716,6 +1678,7 @@
153 else if (!window->hasUnmapReference ())
154 window->setWindowFrameExtents (&decoration->border,
155 &decoration->input);
156+
157 /* This window actually needs its decoration contents updated
158 * as it was actually visible */
159 if (decorate ||
160@@ -1732,11 +1695,7 @@
161 }
162
163 movement = cwe::shift (window->border (), window->sizeHints ().win_gravity);
164-
165- sizeDelta = CompSize (-(window->border ().left +
166- window->border ().right),
167- -(window->border ().top +
168- window->border ().bottom));
169+ movement -= oldShift;
170
171 window->updateWindowOutputExtents ();
172
173@@ -1765,6 +1724,8 @@
174 memset (&emptyExtents, 0, sizeof (CompWindowExtents));
175
176 window->setWindowFrameExtents (&emptyExtents, &emptyExtents);
177+
178+ movement -= oldShift;
179 }
180
181 /* We need to damage the current output extents
182@@ -1778,7 +1739,6 @@
183 }
184
185 moveDecoratedWindowBy (movement,
186- sizeDelta,
187 !allowDecoration);
188
189 return true;
190@@ -2320,20 +2280,6 @@
191 }
192
193 /*
194- * DecorWindow::place
195- *
196- * Update any windows just before placement
197- * so that placement algorithms will have the
198- * border size at place-time
199- */
200-bool
201-DecorWindow::place (CompPoint &pos)
202-{
203- update (true);
204- return window->place (pos);
205-}
206-
207-/*
208 * DecorWindow::windowNotify
209 *
210 * Window event notification handler. On various
211@@ -3011,6 +2957,9 @@
212 {
213 if (wd && wd->decor)
214 {
215+ CompPoint oldShift = compiz::window::extents::shift (window->border (), window->sizeHints ().win_gravity);
216+
217+
218 if ((window->state () & MAXIMIZE_STATE))
219 window->setWindowFrameExtents (&wd->decor->maxBorder,
220 &wd->decor->maxInput);
221@@ -3018,7 +2967,18 @@
222 window->setWindowFrameExtents (&wd->decor->border,
223 &wd->decor->input);
224
225- /* The shift will occurr in decorOffsetMove */
226+ /* Since we immediately update the frame extents, we must
227+ * also update the stored saved window geometry in order
228+ * to prevent the window from shifting back too far once
229+ * unmaximized */
230+
231+ CompPoint movement = compiz::window::extents::shift (window->border (), window->sizeHints ().win_gravity) - oldShift;
232+
233+ if (window->saveMask () & CWX)
234+ window->saveWc ().x += movement.x ();
235+
236+ if (window->saveMask () & CWY)
237+ window->saveWc ().y += movement.y ();
238
239 updateFrame ();
240 }
241
242=== modified file 'plugins/decor/src/decor.h'
243--- plugins/decor/src/decor.h 2013-04-17 23:41:09 +0000
244+++ plugins/decor/src/decor.h 2013-06-07 06:12:28 +0000
245@@ -293,8 +293,6 @@
246
247 bool damageRect (bool, const CompRect &);
248
249- bool place (CompPoint &pos);
250-
251 bool glDraw (const GLMatrix &, const GLWindowPaintAttrib &,
252 const CompRegion &, unsigned int);
253 void glDecorate (const GLMatrix &, const GLWindowPaintAttrib &,
254@@ -382,16 +380,12 @@
255
256 X11DecorPixmapRequestor mRequestor;
257
258- CompPoint lastShift;
259- CompSize lastSizeDelta;
260-
261 private:
262
263 bool bareDecorationOnly ();
264 Decoration::Ptr findRealDecoration ();
265 Decoration::Ptr findBareDecoration ();
266 void moveDecoratedWindowBy (const CompPoint &movement,
267- const CompSize &sizeDelta,
268 bool instant);
269 };
270
271
272=== modified file 'plugins/place/src/constrain-to-workarea/include/constrain-to-workarea.h'
273--- plugins/place/src/constrain-to-workarea/include/constrain-to-workarea.h 2013-04-17 23:41:09 +0000
274+++ plugins/place/src/constrain-to-workarea/include/constrain-to-workarea.h 2013-06-07 06:12:28 +0000
275@@ -45,7 +45,8 @@
276 CompPoint & constrainPositionToWorkArea (CompPoint &pos,
277 const compiz::window::Geometry &serverGeometry,
278 const CompWindowExtents &border,
279- const CompRect &workArea);
280+ const CompRect &workArea,
281+ bool staticGravity);
282
283
284 CompPoint getViewportRelativeCoordinates (const compiz::window::Geometry &geom,
285@@ -53,7 +54,8 @@
286
287 CompWindowExtents getWindowEdgePositions (const CompPoint &position,
288 const compiz::window::Geometry &geom,
289- const CompWindowExtents &border);
290+ const CompWindowExtents &border,
291+ unsigned int gravity);
292
293 void clampHorizontalEdgePositionsToWorkArea (CompWindowExtents &edgePositions,
294 const CompRect &workArea);
295@@ -62,7 +64,8 @@
296
297 void subtractBordersFromEdgePositions (CompWindowExtents &edgePositions,
298 const CompWindowExtents &border,
299- unsigned int legacyBorder);
300+ unsigned int legacyBorder,
301+ unsigned int gravity);
302
303 bool onlySizeChanged (unsigned int mask);
304 bool applyWidthChange (const CompWindowExtents &edgePositions,
305
306=== modified file 'plugins/place/src/constrain-to-workarea/src/constrain-to-workarea.cpp'
307--- plugins/place/src/constrain-to-workarea/src/constrain-to-workarea.cpp 2013-04-17 23:41:09 +0000
308+++ plugins/place/src/constrain-to-workarea/src/constrain-to-workarea.cpp 2013-06-07 06:12:28 +0000
309@@ -140,21 +140,35 @@
310
311 CompPoint &
312 cp::constrainPositionToWorkArea (CompPoint &pos,
313- const cw::Geometry &serverGeometry,
314- const CompWindowExtents &border,
315- const CompRect &workArea)
316+ const cw::Geometry &serverGeometry,
317+ const CompWindowExtents &border,
318+ const CompRect &workArea,
319+ bool staticGravity)
320 {
321 CompWindowExtents extents;
322 int delta;
323
324- extents.left = pos.x () - border.left;
325- extents.top = pos.y () - border.top;
326+ CompWindowExtents effectiveBorders = border;
327+
328+ /* Ignore borders in the StaticGravity case for placement
329+ * because the window intended to be placed as if it didn't
330+ * have them */
331+ if (staticGravity)
332+ {
333+ effectiveBorders.left = 0;
334+ effectiveBorders.right = 0;
335+ effectiveBorders.top = 0;
336+ effectiveBorders.bottom = 0;
337+ }
338+
339+ extents.left = pos.x () - effectiveBorders.left;
340+ extents.top = pos.y () - effectiveBorders.top;
341 extents.right = extents.left + serverGeometry.widthIncBorders () +
342- (border.left +
343- border.right);
344+ (effectiveBorders.left +
345+ effectiveBorders.right);
346 extents.bottom = extents.top + serverGeometry.heightIncBorders () +
347- (border.top +
348- border.bottom);
349+ (effectiveBorders.top +
350+ effectiveBorders.bottom);
351
352 delta = workArea.right () - extents.right;
353 if (delta < 0)
354@@ -172,8 +186,8 @@
355 if (delta > 0)
356 extents.top += delta;
357
358- pos.setX (extents.left + border.left);
359- pos.setY (extents.top + border.top);
360+ pos.setX (extents.left + effectiveBorders.left);
361+ pos.setY (extents.top + effectiveBorders.top);
362
363 return pos;
364 }
365@@ -199,18 +213,23 @@
366
367 CompWindowExtents cp::getWindowEdgePositions (const CompPoint &position,
368 const cw::Geometry &geom,
369- const CompWindowExtents &border)
370+ const CompWindowExtents &border,
371+ unsigned int gravity)
372 {
373 CompWindowExtents edgePositions;
374-
375- edgePositions.left = position.x () - border.left;
376+ CompWindowExtents effectiveBorder (border);
377+
378+ if (gravity & StaticGravity)
379+ effectiveBorder = CompWindowExtents (0, 0, 0, 0);
380+
381+ edgePositions.left = position.x () - effectiveBorder.left;
382 edgePositions.right = edgePositions.left +
383- geom.widthIncBorders () + (border.left +
384- border.right);
385- edgePositions.top = position.y () - border.top;
386+ geom.widthIncBorders () + (effectiveBorder.left +
387+ effectiveBorder.right);
388+ edgePositions.top = position.y () - effectiveBorder.top;
389 edgePositions.bottom = edgePositions.top +
390- geom.heightIncBorders () + (border.top +
391- border.bottom);
392+ geom.heightIncBorders () + (effectiveBorder.top +
393+ effectiveBorder.bottom);
394
395 return edgePositions;
396 }
397@@ -266,14 +285,19 @@
398
399 void cp::subtractBordersFromEdgePositions (CompWindowExtents &edgePositions,
400 const CompWindowExtents &border,
401- unsigned int legacyBorder)
402+ unsigned int legacyBorder,
403+ unsigned int gravity)
404 {
405 const unsigned int doubleBorder = 2 * legacyBorder;
406-
407- edgePositions.left += border.left;
408- edgePositions.right -= border.right + doubleBorder;
409- edgePositions.top += border.top;
410- edgePositions.bottom -= border.bottom + doubleBorder;
411+ CompWindowExtents effectiveBorder = border;
412+
413+ if (gravity & StaticGravity)
414+ effectiveBorder = CompWindowExtents (0, 0, 0, 0);
415+
416+ edgePositions.left += effectiveBorder.left;
417+ edgePositions.right -= effectiveBorder.right + doubleBorder;
418+ edgePositions.top += effectiveBorder.top;
419+ edgePositions.bottom -= effectiveBorder.bottom + doubleBorder;
420 }
421
422 bool cp::onlySizeChanged (unsigned int mask)
423
424=== modified file 'plugins/place/src/constrain-to-workarea/tests/constrain-to-workarea/src/test-place-constrain-to-workarea.cpp'
425--- plugins/place/src/constrain-to-workarea/tests/constrain-to-workarea/src/test-place-constrain-to-workarea.cpp 2013-04-17 23:41:09 +0000
426+++ plugins/place/src/constrain-to-workarea/tests/constrain-to-workarea/src/test-place-constrain-to-workarea.cpp 2013-06-07 06:12:28 +0000
427@@ -226,7 +226,7 @@
428 extents = WindowExtents (GetParam ());
429
430 CompPoint pos = InitialPosition (GetParam ());
431- pos = cp::constrainPositionToWorkArea (pos, g, extents, WArea);
432+ pos = cp::constrainPositionToWorkArea (pos, g, extents, WArea, false);
433
434 const CompPoint expectedAfterExtentsAdjustment = ExpectedPosition +
435 CompPoint (extents.left,
436@@ -235,6 +235,19 @@
437 EXPECT_EQ (expectedAfterExtentsAdjustment, pos);
438 }
439
440+TEST_P (PlaceConstrainPositionToWorkArea, PositionConstrainedStaticGravity)
441+{
442+ g = WindowGeometry (GetParam ());
443+ extents = WindowExtents (GetParam ());
444+
445+ CompPoint pos = InitialPosition (GetParam ());
446+ pos = cp::constrainPositionToWorkArea (pos, g, extents, WArea, true);
447+
448+ /* Do not adjust residual position for extents with windows
449+ * that have a static gravity */
450+ EXPECT_EQ (ExpectedPosition, pos);
451+}
452+
453 namespace
454 {
455 cwe::Extents PossibleExtents[] =
456@@ -284,7 +297,7 @@
457 CompPoint pos;
458 };
459
460-TEST_F (PlaceGetEdgePositions, GetEdgePositions)
461+TEST_F (PlaceGetEdgePositions, GetEdgePositionsNWGravity)
462 {
463 int left = geom.x () - border.left;
464 int right = left + (geom.widthIncBorders ()) +
465@@ -296,7 +309,25 @@
466 const cwe::Extents ExpectedExtents (left, right, top, bottom);
467 cwe::Extents actualExtents (cp::getWindowEdgePositions (pos,
468 geom,
469- border));
470+ border,
471+ NorthWestGravity));
472+
473+ EXPECT_EQ (ExpectedExtents, actualExtents);
474+}
475+
476+TEST_F (PlaceGetEdgePositions, GetEdgePositionsStaticGravity)
477+{
478+ /* Don't count borders in validation */
479+ int left = geom.x ();
480+ int right = left + (geom.widthIncBorders ());
481+ int top = geom.y ();
482+ int bottom = top + (geom.heightIncBorders ());
483+
484+ const cwe::Extents ExpectedExtents (left, right, top, bottom);
485+ cwe::Extents actualExtents (cp::getWindowEdgePositions (pos,
486+ geom,
487+ border,
488+ StaticGravity));
489
490 EXPECT_EQ (ExpectedExtents, actualExtents);
491 }
492@@ -496,7 +527,29 @@
493
494 cp::subtractBordersFromEdgePositions (modifiedEdgePositions,
495 borders,
496- legacyBorder);
497+ legacyBorder,
498+ NorthWestGravity);
499+
500+ EXPECT_EQ (expectedEdgePositions, modifiedEdgePositions);
501+}
502+
503+TEST (PlaceSubtractBordersFromEdgePositions, StaticGravityDefinition)
504+{
505+ const CompWindowExtents borders (1, 2, 3, 4);
506+ const CompWindowExtents edgePositions (100, 200, 100, 200);
507+ const unsigned int legacyBorder = 1;
508+
509+ CompWindowExtents expectedEdgePositions (edgePositions.left,
510+ edgePositions.right - (2 * legacyBorder),
511+ edgePositions.top,
512+ edgePositions.bottom - (2 * legacyBorder));
513+
514+ CompWindowExtents modifiedEdgePositions (edgePositions);
515+
516+ cp::subtractBordersFromEdgePositions (modifiedEdgePositions,
517+ borders,
518+ legacyBorder,
519+ StaticGravity);
520
521 EXPECT_EQ (expectedEdgePositions, modifiedEdgePositions);
522 }
523
524=== modified file 'plugins/place/src/place.cpp'
525--- plugins/place/src/place.cpp 2013-05-20 15:26:11 +0000
526+++ plugins/place/src/place.cpp 2013-06-07 06:12:28 +0000
527@@ -362,7 +362,8 @@
528
529 CompWindowExtents edgePositions = cp::getWindowEdgePositions (pos,
530 geom,
531- window->border ());
532+ window->border (),
533+ window->sizeHints ().win_gravity);
534
535 int output = screen->outputDeviceForGeometry (geom);
536 CompRect workArea = screen->getWorkareaForOutput (output);
537@@ -385,7 +386,8 @@
538 /* bring left/right/top/bottom to actual window coordinates */
539 cp::subtractBordersFromEdgePositions (edgePositions,
540 window->border (),
541- geom.border ());
542+ geom.border (),
543+ window->sizeHints ().win_gravity);
544
545 /* always validate position if the application changed only its size,
546 * as it might become partially offscreen because of that */
547@@ -1141,10 +1143,13 @@
548 PlaceWindow::constrainToWorkarea (const CompRect &workArea,
549 CompPoint &pos)
550 {
551+ bool staticGravity = window->sizeHints ().win_gravity & StaticGravity;
552+
553 pos = cp::constrainPositionToWorkArea (pos,
554 window->serverGeometry (),
555 window->border (),
556- workArea);
557+ workArea,
558+ staticGravity);
559
560 }
561
562
563=== modified file 'src/window/extents/src/windowextents.cpp'
564--- src/window/extents/src/windowextents.cpp 2013-04-17 23:41:09 +0000
565+++ src/window/extents/src/windowextents.cpp 2013-06-07 06:12:28 +0000
566@@ -35,11 +35,6 @@
567 CompPoint rv = CompPoint ();
568
569 switch (gravity) {
570- /* We treat StaticGravity like NorthWestGravity here
571- * as when decorating / undecorating the window we
572- * really do need to move it in order to handle
573- * any cases where it goes offscreen */
574- case StaticGravity:
575 case NorthGravity:
576 case NorthWestGravity:
577 case NorthEastGravity:
578@@ -55,11 +50,6 @@
579 }
580
581 switch (gravity) {
582- /* We treat StaticGravity like NorthWestGravity here
583- * as when decorating / undecorating the window we
584- * really do need to move it in order to handle
585- * any cases where it goes offscreen */
586- case StaticGravity:
587 case WestGravity:
588 case NorthWestGravity:
589 case SouthWestGravity:
590
591=== removed file 'tests/manual/README.txt'
592--- tests/manual/README.txt 2013-04-18 03:02:14 +0000
593+++ tests/manual/README.txt 1970-01-01 00:00:00 +0000
594@@ -1,9 +0,0 @@
595-Compiz Manual Tests
596-===================
597-
598-Avoid writing manual tests if you can. Acceptance tests that can be run
599-on an automatic basis are always preferred.
600-
601-If getting some part of the code would be too difficult or invasive, then
602-write a manual test in here so that we can remind ourselves to deploy test
603-frameworks for the code in quesiton.
604
605=== removed file 'tests/manual/plugins/decor.txt'
606--- tests/manual/plugins/decor.txt 2013-05-20 15:26:11 +0000
607+++ tests/manual/plugins/decor.txt 1970-01-01 00:00:00 +0000
608@@ -1,40 +0,0 @@
609-COMPIZ DECOR PLUGIN
610-===================
611-Sam Spilsbury <smspillaz@gmail.com>
612-
613-Static Gravity Handling - no decorations
614-----------------------------------------
615-Setup:
616-# Install guake
617-
618-Actions:
619-# Start and launch guake
620-
621-Expected Result:
622- Guake should sit flush with the panels and work area
623-
624-Static Gravity Handling - decorations
625--------------------------------------
626-Setup:
627-# Install friends-app
628-
629-Actions:
630-# Start and launch friends-app
631-
632-Expected Result:
633- The QML window should have its decorations visible and
634- be contained in the top left hand corner of the work area
635-
636-_NET_REQUEST_FRAME_EXTENTS handling
637------------------------------------
638-Setup:
639-# Install any sun-awt application - examples:
640- 1. netbeans
641- 2. ecplise
642-
643-Actions:
644-# Run the application
645-
646-Expected Result:
647- The application should not have its contents offset
648- by its decoration size

Subscribers

People subscribed via source and target branches

to all changes: