Description of problem: Cura has a lot of repaint issues on Fedora 24, lots of gtk errors on console and the widget sizes get messed up. I was wondering if the new version of GNOME shell would cause something, but the same happens also with WindowMaker (ha, blast from the past!). Version-Release number of selected component (if applicable): cura-15.04.4-3.fc24.noarch How reproducible: always Steps to Reproduce: 1. open cura 2. see console and how the viewport has issues when you resize window Additional info: Console shows a lot of these: (cura:6018): Gtk-WARNING **: Allocating size to wxPizza 0x55f955e03710 without calling gtk_widget_get_preferred_width/height(). How does the code know the size to allocate? (cura:6018): Gtk-WARNING **: Allocating size to wxPizza 0x55f955e03870 without calling gtk_widget_get_preferred_width/height(). How does the code know the size to allocate? (cura:6018): Gtk-WARNING **: Allocating size to wxPizza 0x55f956f45440 without calling gtk_widget_get_preferred_width/height(). How does the code know the size to allocate? (cura:6018): Gtk-WARNING **: Allocating size to GtkNotebook 0x55f955718510 without calling gtk_widget_get_preferred_width/height(). How does the code know the size to allocate? (cura:6018): Gtk-WARNING **: Allocating size to wxPizza 0x55f956f45860 without calling gtk_widget_get_preferred_width/height(). How does the code know the size to allocate? (cura:6018): Gtk-WARNING **: Allocating size to GtkLabel 0x55f956a1cae0 without calling gtk_widget_get_preferred_width/height(). How does the code know the size to allocate? (cura:6018): Gtk-WARNING **: Allocating size to GtkSeparator 0x55f956a870f0 without calling gtk_widget_get_preferred_width/height(). How does the code know the size to allocate? (cura:6018): Gtk-WARNING **: Allocating size to wxPizza 0x55f956f45b20 without calling gtk_widget_get_preferred_width/height(). How does the code know the size to allocate?
Created attachment 1143250 [details] screenshot
Does this happen with cura-lulzbot as well?
See this (from Eclipse) for a possible way of fixing this: http://git.eclipse.org/c/platform/eclipse.platform.swt.git/commit/?id=0cc28848a42b0c7116a7152ca9afae53c20146ef
Might this be a wxPython bug? Because cura does not use gtk_widget_size_allocate directly. Does this happen with other wxPython apps, such as Pronterface?
It is a wxPython issue. Happens with cura-lulzbot, as well as "grass70" (a geospatial tool I found via repoquery that also uses wxPython) - same widget size allocation issues and redraw problems there as well. Cura-lulzbot had a bonus coredump on startup by the way. but that might be another bug. The issue actually does happen also when installing wxPython-docs and running any of the examples, for example: python /usr/share/doc/wxPython-docs/samples/pydocview/PyDocViewDemo.py You have to keep resizing the window to get it to repaint the contents correctly.
Are you using Wayland or X?
Actually looks to be a wxGTK3 issue. It looks like spot submitted a fix already. Can you check this build whether this build resolves the issue? It looks much better on Rawhide. http://koji.fedoraproject.org/koji/buildinfo?buildID=751028
Yeah the above build seems to solve the problem! Sweet!
wxGTK3-3.0.2-19.fc24 has been submitted as an update to Fedora 24. https://bodhi.fedoraproject.org/updates/FEDORA-2016-fd1cffe48b
wxGTK3-3.0.2-19.fc24 has been pushed to the Fedora 24 testing repository. If problems still persist, please make note of it in this bug report. See https://fedoraproject.org/wiki/QA:Updates_Testing for instructions on how to install test updates. You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2016-fd1cffe48b
wxGTK3-3.0.2-19.fc24 has been pushed to the Fedora 24 stable repository. If problems still persist, please make note of it in this bug report.
After updating to F24, I get lots of such issues with wxPython-3.0.2.0-10.fc24.x86_64 in GRASS GIS (upstream report https://trac.osgeo.org/grass/ticket/3117, they suggested to report here) # at startup of a wx window: tons of these warnings (main.py:6274): Gtk-CRITICAL **: gtk_box_gadget_distribute: assertion 'size >= 0' failed in GtkCheckButton ... # when doing window resize: tons of these warnings (main.py:6274): Gtk-WARNING **: Allocating size to wxPizza 0x558b2ed9d9a0 without calling gtk_widget_get_preferred_width/height(). How does the code know the size to allocate? This pollutes the terminal a lot...
Probably open a new bug against wxPython and I'll take a look at it.. This particular issue is believed to be resolved.