GNOME Bugzilla – Bug 758350
MapView not refreshing properly leaving bits of popovers around
Last modified: 2018-03-26 13:03:11 UTC
it doesn't go away
Created attachment 315902 [details] screenshot
Thanks! Yeah, I was able to reproduce this for a long time. But is not related to the current position bubble, more like the map view is not refreshing when the bubble disappears. Same happens for map bubbles, layers selection bubble and search results bubble, where clicking the map is not enough to make the bubble disappear, but you need to pan or zoom it in/out. I'm still looking at it.
Ok, so calling queue_redraw in the view right when we have popovers visible and stuck fixes the problem.
(In reply to Damián Nohales from comment #3) > Ok, so calling queue_redraw in the view right when we have popovers visible > and stuck fixes the problem. (o/ Now the problem becomes, is this an libchamplain/clutter/clutter-gtk or gtk+ problem or are we doing something wrong? Because it seems like this started happening sometime, but without changes to our code.
(In reply to Jonas Danielsson from comment #4) > Now the problem becomes, is this an libchamplain/clutter/clutter-gtk or gtk+ > problem or are we doing something wrong? > > Because it seems like this started happening sometime, but without changes > to our code. I made a little Champlain based program outside of GNOME Maps with a popover in the header bar and a button inside the map view (using an overlay), I can bug the popover there and also the button (when I try to hide it, it doesn't hide until I pan, zoom or manually call queue_redraw). I tried to do the same but with a simple Clutter actor with only a background color but couldn't bug the Gtk+ controls. So not sure, I'm still looking at it. If we are sure that this wasn't happening before we should at least bisect these components.
(In reply to Damián Nohales from comment #5) > (In reply to Jonas Danielsson from comment #4) > > Now the problem becomes, is this an libchamplain/clutter/clutter-gtk or gtk+ > > problem or are we doing something wrong? > > > > Because it seems like this started happening sometime, but without changes > > to our code. > > I made a little Champlain based program outside of GNOME Maps with a popover > in the header bar and a button inside the map view (using an overlay), I can > bug the popover there and also the button (when I try to hide it, it doesn't > hide until I pan, zoom or manually call queue_redraw). > > I tried to do the same but with a simple Clutter actor with only a > background color but couldn't bug the Gtk+ controls. > > So not sure, I'm still looking at it. If we are sure that this wasn't > happening before we should at least bisect these components. Thanks for looking in to this! So maybe a first step would be to bisect champlain? Try a version some time ago and see if it is still there?
Since my latest rawhide update and reboot, I can no longer reproduce this. I don't know if that's bad or good :P
Created attachment 320392 [details] Cast of mapbubble graphics bug
Created attachment 320393 [details] Cast of mapbubble graphics bug
Comment from GTK+ maintainer: 9:41 PM <•Company> jonasdn: [it's] your bug 9:42 PM <•Company> jonasdn: it's called "someone is using clutter-gtk" 9:43 PM <•Company> jonasdn: and it could be anything, gtk, clutter, clutter-gtk or something else entirely :/
Forcing the x11 backend of clutter-gtk seem to help, maybe. But then can we manage wayland?
Created attachment 320752 [details] [review] application: Prefer X11 and Wayland backends over GDK This seems to play better with clutter-gtk and makes a bug where bits of popovers where left on map dissapear.
Does this work for you Andreas?
Attachment 320752 [details] pushed as 7e5678d - application: Prefer X11 and Wayland backends over GDK
When I build commit 7e5678d and run on Arch Linux / GNOME 3.18.2 I get the following error when I try to run it: (gnome-maps:8833): Clutter-ERROR **: Unsupported Clutter backend: 'x11,wayland,*' Trace/breakpoint trap (core dumped)
Gatlin, are you using jhbuild? Did you try jhbuild build gnome-maps to rebuild all the dependencies of gnome-maps? It's working fine for me with an up-to-date build of the modules.
(In reply to Gatlin Johnson from comment #15) > When I build commit 7e5678d and run on Arch Linux / GNOME 3.18.2 I get the > following error when I try to run it: > > (gnome-maps:8833): Clutter-ERROR **: Unsupported Clutter backend: > 'x11,wayland,*' > Trace/breakpoint trap (core dumped) hmm, yeah, this is since Clutter 1.26... Which has not been released. I didn't realize it was that recent. We might want to make Maps depend on that version in configure.ac to make this more clear.
(In reply to Jonas Danielsson from comment #17) > (In reply to Gatlin Johnson from comment #15) > > When I build commit 7e5678d and run on Arch Linux / GNOME 3.18.2 I get the > > following error when I try to run it: > > > > (gnome-maps:8833): Clutter-ERROR **: Unsupported Clutter backend: > > 'x11,wayland,*' > > Trace/breakpoint trap (core dumped) > > hmm, yeah, this is since Clutter 1.26... Which has not been released. I > didn't realize it was that recent. We might want to make Maps depend on that > version in configure.ac to make this more clear. To clarify, what is new is writing the backend order as a comma-separated string. We could re-write this to avoid depending on a that recent clutter. Would be some logic like: if (Clutter.check_windowing_backend('x11')) Clutter.set_windowing_backend('x11'); else if (Clutter.check...
*** Bug 763179 has been marked as a duplicate of this bug. ***
Reopening since this fix breaks wayland.
-- 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/gnome-maps/issues/31.