After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 637829 - Corruption when using the calendar
Corruption when using the calendar
Status: RESOLVED FIXED
Product: gnome-shell
Classification: Core
Component: general
unspecified
Other Linux
: Normal normal
: ---
Assigned To: gnome-shell-maint
gnome-shell-maint
Depends on:
Blocks:
 
 
Reported: 2010-12-22 19:58 UTC by drago01
Modified: 2011-01-04 16:21 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
calendar: Use AlignConstraint center the popup (1.44 KB, patch)
2010-12-22 20:00 UTC, drago01
needs-work Details | Review
calendar: Use AlignConstraint center the popup (2.09 KB, patch)
2011-01-04 09:14 UTC, drago01
committed Details | Review

Description drago01 2010-12-22 19:58:18 UTC
Clicking around in the calendar results into:

(mutter:12238): Clutter-WARNING **: The actor 'calendarPopup' is currently inside an allocation cycle; calling clutter_actor_queue_relayout() is not recommended

(mutter:12238): Clutter-WARNING **: The actor 'ShellGenericContainer' is currently inside an allocation cycle; calling clutter_actor_queue_relayout() is not recommended

(mutter:12238): Clutter-WARNING **: The actor 'ClutterGroup' is currently inside an allocation cycle; calling clutter_actor_queue_relayout() is not recommended

and leads to similar corruption as reported in bug 637498 .
Comment 1 drago01 2010-12-22 20:00:57 UTC
Created attachment 176896 [details] [review]
calendar: Use AlignConstraint center the popup

This fixes warnings like:

(mutter:12238): Clutter-WARNING **: The actor 'calendarPopup' is
currently inside an allocation cycle; calling clutter_actor_queue_relayout()
is not recommended

which result into a corrupted display.
Comment 2 Owen Taylor 2011-01-03 23:11:28 UTC
Review of attachment 176896 [details] [review]:

If you remove centerPopup and the remaining call to it, you'll find this doesn't work.
Comment 3 drago01 2011-01-04 09:14:41 UTC
Created attachment 177463 [details] [review]
calendar: Use AlignConstraint center the popup

This fixes warnings like:

(mutter:12238): Clutter-WARNING **: The actor 'calendarPopup' is
currently inside an allocation cycle; calling clutter_actor_queue_relayout()
is not recommended

which result into a corrupted display.

---

Constraint was applyied to the wrong actor, and the factor was wrong too.

Fixed both and removed centerPopup
Comment 4 Owen Taylor 2011-01-04 15:26:18 UTC
Review of attachment 177463 [details] [review]:

One comment, otherwise OK to commit.

(And remove the part of the commit message about corrupted display)

::: js/ui/panel.js
@@ +1018,3 @@
     _init: function() {
         let panelActor = Main.panel.actor;
+        let alignConstraint = new Clutter.AlignConstraint({ source: panelActor, factor: 0.5 });

I think you should add an explicit

 align_axis: Clutter.AlignAxis.X_AXIS

since aligning along the X axis isn't in any way more fundamental - it's just what the default happens to be. (And break things onto multiple lines)