GNOME Bugzilla – Bug 791281
Backport size allocation optimization from master to 3.22
Last modified: 2018-05-02 19:33:24 UTC
Created attachment 365056 [details] Test case Gtk 3.22 queue a size allocation if you change the text color with css which make things a lot slower (see test case) This issue if fixed in master by commit https://git.gnome.org/browse/gtk+/commit/?id=9bc7581f1c0
Created attachment 365057 [details] [review] Proposed patch Original rebased commit
Created attachment 365058 [details] [review] Backport of original commit Backport original commit to 3.22
Created attachment 365059 [details] [review] Squashed original commit + backport This one is meant for merge the other patch are to make things easier to review
Commit 492469a94af35c2b102bcf7f07046ef2d09b2b3d is crashing Builder when opening a document.
+ Trace 238258
Thread 1 (Thread 0x7f305b040b00 (LWP 24045))
Created attachment 365555 [details] [review] Proposed pacth
Created attachment 365557 [details] [review] Proposed patch to tix segfault
Review of attachment 365557 [details] [review]: Looks good to me.
Can verify that the patch fixes the segfault.
Created attachment 365585 [details] [review] Patch for master We should also apply this to master
Review of attachment 365585 [details] [review]: Pushed to master
For the record, this was reverted in gtk-3-22 due to reports of missing invalidations: https://git.gnome.org/browse/gtk+/commit/?h=gtk-3-22&id=32332b3a035d7b5781b6b9eb0f13778ecda3942b
Given that it was reverted, let's reopen this issue for further investigation.
I wouldn't be surprised if there is quite a bit of random code that isn't doing gtk_widget_queue_draw() in custom size_allocate handlers. In fact this is probably an issue I've run into with Dazzle. So in that case, Dazzle is certainly to blame.
> <xjuan> so about bug 791281, do you know if the regression was in gtk or was it in dazzle? I don't think it was Dazzle, because even after some tweaks on my side, I was still seeing regressions.
-- GitLab Migration Automatic Message -- This bug has been migrated to GNOME's GitLab instance and has been closed from further activity. You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.gnome.org/GNOME/gtk/issues/988.