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 757149 - white screen if I pan too fast
white screen if I pan too fast
Status: RESOLVED FIXED
Product: libchamplain
Classification: Core
Component: General
0.12.x
Other Linux
: Normal normal
: ---
Assigned To: gnome-maps-maint
gnome-maps-maint
: 758196 (view as bug list)
Depends on:
Blocks:
 
 
Reported: 2015-10-26 17:34 UTC by Hussam Al-Tayeb
Modified: 2015-11-17 17:46 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
view: Stop emission of ClutterZoomAction::gesture-cancelled (1.96 KB, patch)
2015-10-31 16:40 UTC, Carlos Garnacho
reviewed Details | Review

Description Hussam Al-Tayeb 2015-10-26 17:34:04 UTC
This is a rather weird issue. if I pan very fast, the gnome-maps map area goes white and is not fixed until I restart gnome-maps.
This only happens if the gnome-maps window is not maximized. If I maximize gnome-maps, this bug does not happen (which is a workaround).
How can I tell what is happening?
Thank you.
Comment 1 Hussam Al-Tayeb 2015-10-26 17:38:13 UTC
Ok, it happened at maximized window now...
Comment 2 Jonas Danielsson 2015-10-27 06:42:32 UTC
Hi! Thanks for filing this bug! This sounds really weird :) I have not seen it and have not managed to reproduce it.

Would it be possible for you to record a screencast of it? ctrl-alt-shift-r to start and stop.

Zoom-in/zoom-out does not help when this happen? Does it happen on some specific zoom level?
Comment 3 Hussam Al-Tayeb 2015-10-27 07:33:15 UTC
Hi and thank you for replying.
https://www.dropbox.com/s/rzics9nrz4c74ze/Screencast%20from%2010-27-2015%2009%3A24%3A35%20AM.webm?dl=0

Please let me know if it doesn't open and I can try uploading elsewhere.

It happens at any zoom level. In the meantime, I can safely pan using the keyboard arrows.
Comment 4 Hussam Al-Tayeb 2015-10-27 07:41:45 UTC
Is there any way I can get output from the terminal such as an error message? It is not printing anything when this happens.

Zooming in and out doesn't fix it. I have to restart the app to do so.
Comment 5 Hussam Al-Tayeb 2015-10-28 09:28:47 UTC
same breakage in launcher-gtk in libchamplain so changing product.
Comment 6 Hussam Al-Tayeb 2015-10-28 09:33:40 UTC
I think downgrading to libchamplain 0.12.10 fixes this.
Comment 7 Jonas Danielsson 2015-10-28 09:50:47 UTC
Awesome job! Thanks!

Would it be possible for you to run git bisect to get the exact commit that causes this?

Jonas
Comment 8 Hussam Al-Tayeb 2015-10-28 10:10:45 UTC
Yes, doing so now. I'll post results once done.
Comment 9 Hussam Al-Tayeb 2015-10-28 10:23:07 UTC
ddc5f2087b0a02c2e33c1939e9d310e37eb46f33 is the first bad commit
commit ddc5f2087b0a02c2e33c1939e9d310e37eb46f33
Author: Carlos Garnacho <carlosg@gnome.org>
Date:   Sat Jun 6 20:20:03 2015 +0200

    view: Implement pinch/zoom gesture
    
    Set up a ClutterZoomAction listening for 2-finger touch gestures,
    and make it take control over over the view position/zoom level.
    
    Zooming in/out isn't too smooth yet, because we're constrained
    to discrete zoom levels (it does animate between these though),
    this is enough at least for the expected interaction.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=709606

:040000 040000 89d2a83b7679914197ba4924d25cc45799b17a16 14d373f622ccbf03e4a7e113722b6e93921225ee M	champlain
Comment 10 Jonas Danielsson 2015-10-28 10:24:01 UTC
Awesome! Thanks, let's try to ping Carlos about this.
Comment 11 Carlos Garnacho 2015-10-31 16:40:44 UTC
Created attachment 314551 [details] [review]
view: Stop emission of ClutterZoomAction::gesture-cancelled

We successfully override ::gesture-begin and ::zoom in order to
replace the default "zoom the actor" behavior of ClutterZoomAction,
however ClutterZoomAction::gesture-cancel implementation has the side
effect of attempting to restore the actor translation and scale to the
original position, which is undesirable here.

This fixes the ChamplainView going blank, as it tries to "restore" a
0 scale, because we didn't give it an opportunity to fetch the actor
one on ClutterZoomAction::gesture-begin.
Comment 12 Carlos Garnacho 2015-10-31 16:44:48 UTC
FWIW, I found a way to reproduce quickly, drag the map with the left button and quickly click the right button while kinetic scrolling is still in effect.
Comment 13 Hussam Al-Tayeb 2015-10-31 17:08:53 UTC
(In reply to Carlos Garnacho from comment #12)
> FWIW, I found a way to reproduce quickly, drag the map with the left button
> and quickly click the right button while kinetic scrolling is still in
> effect.

Hi. I just tried your patch and it does indeed fix the problem. Thank you very much.
Comment 14 Hussam Al-Tayeb 2015-11-16 09:07:08 UTC
Hi again. No problems so far with the patch. No visible regressions but I don't have any touch devices (only mouse/keyboard). Perhaps someone else can test and possibly commit the fix to git if no problems show up?
Comment 15 Carlos Garnacho 2015-11-16 09:46:57 UTC
FWIW I did my part of the testing on touchscreens :), although I was awaiting on Jonas/Jiří to comment on it before pushing.
Comment 16 Jonas Danielsson 2015-11-16 10:15:36 UTC
Review of attachment 314551 [details] [review]:

Looks good to me.

Jiří, is this on your radar?
Comment 17 Jonas Danielsson 2015-11-16 21:51:12 UTC
*** Bug 758196 has been marked as a duplicate of this bug. ***
Comment 18 Jiri Techet 2015-11-16 22:45:05 UTC
Uh, I somehow didn't receive email notification about this bug - will check the patch tomorrow.
Comment 19 Jiri Techet 2015-11-16 23:08:06 UTC
Thanks Carlos for the patch it looks good to me and I've just pushed it to master. Sorry for the long delay - something strange must have happened as I didn't receive a single email notification about this bug...

I'll probably make a new libchamplain release soon as this issue is quite unpleasant and easy to trigger. But I'll wait if there's something regarding this

https://bugzilla.gnome.org/show_bug.cgi?id=758197

that needs to be fixed on the libchamplain side.
Comment 20 Jonas Danielsson 2015-11-17 11:46:35 UTC
(In reply to Jiri Techet from comment #19)
> Thanks Carlos for the patch it looks good to me and I've just pushed it to
> master. Sorry for the long delay - something strange must have happened as I
> didn't receive a single email notification about this bug...

This might be because it started as a Maps bug?
Comment 21 Jiri Techet 2015-11-17 17:46:55 UTC
(In reply to Jonas Danielsson from comment #20)
> (In reply to Jiri Techet from comment #19)
> > Thanks Carlos for the patch it looks good to me and I've just pushed it to
> > master. Sorry for the long delay - something strange must have happened as I
> > didn't receive a single email notification about this bug...
> 
> This might be because it started as a Maps bug?

Well, in the past I used to receive the notifications when the bug was changed from Maps. But something might have changed.