Closed
Bug 827130
Opened 13 years ago
Closed 13 years ago
Feels like can't pan page if gesture starts as blocked overscroll
Categories
(Firefox OS Graveyard :: Gaia::Homescreen, defect)
Tracking
(blocking-b2g:tef+, blocking-basecamp:-, b2g18+ fixed, b2g18-v1.0.0 wontfix, b2g18-v1.0.1 fixed)
VERIFIED
FIXED
People
(Reporter: cjones, Assigned: crdlc)
References
Details
(Whiteboard: UX-P?)
Attachments
(1 file, 1 obsolete file)
|
188 bytes,
text/html
|
vingtetun
:
review+
lsblakk
:
approval-gaia-v1+
|
Details |
STR
(1) Pan to rightmost homescreen page
(2) Start quick pan gesture left (which won't move the current page because we go into overscroll)
(3) Switch finger direction and pan right
In step (3), it feels like the current page should start moving left, but instead
nothing happens. This is frustrating. (Finger has to move past where
the pan gesture started originally.)
bb? -> radar
Updated•13 years ago
|
| Assignee | ||
Comment 1•13 years ago
|
||
I know the problem, taking a look because it is very ugly in my honest opinion
Assignee: jones.chris.g → crdlc
Status: NEW → ASSIGNED
| Assignee | ||
Comment 2•13 years ago
|
||
Hi all,
I have a solution [1] but sometimes the previous page is not re-painted when we change the display value from 'none' to 'block'. Any suggestion from Chris or Vivien?
Thanks a lot
[1] https://github.com/crdlc/gaia/commit/f1b81ba2c722678f60c7e7ccadb733594245374b
Flags: needinfo?(21)
| Assignee | ||
Comment 3•13 years ago
|
||
For example, if we change the backgroundColor of the previous page it is always re-painted
Comment 4•13 years ago
|
||
Except forcing a repaint manually I'm not sure what else to do :/
Flags: needinfo?(21)
| Assignee | ||
Comment 5•13 years ago
|
||
By means of getBoundingClientRect() sometimes doesn't work but for example i checked changing the background property and it works fine
| Reporter | ||
Comment 6•13 years ago
|
||
Hi, see comment 2: it seems like we're not flushing properly when changing to block display. Any suggestions on how to debug?
| Assignee | ||
Comment 7•13 years ago
|
||
Yes, please take a look to this branch:
https://github.com/crdlc/gaia/tree/bug-827130-v2
or to this commit:
https://github.com/crdlc/gaia/commit/72b95811e3fb976397216e7ae98fe958a1e45359
STR:
* Both use cases in the last page always:
1) Swipe from left to right and it works fine, perfectly, the previous page is always painted.
2) Swipe from right to left and immediately left to right and sometimes the page is not painted. Works better if the gesture is slow but when the gesture is fast is more reproducible the bad behavior.
Thanks
I would have thought it unlikely we would have a bug related to flushing/invalidation that's not already reported on Web sites.
Is it possible we're just starving the homescreen's process so it's late in reflowing/painting the previously hidden page?
| Assignee | ||
Comment 10•13 years ago
|
||
Current state (sometimes doesn't paint):
http://www.youtube.com/watch?v=59YhQONzkKw
Adding .apps > div { background: yellow } (works)
http://www.youtube.com/watch?v=b4LqygtbGHo
Any clue? As I said, I am not sure if this behavior is due to gecko or not, but could be, same code with or without background different behaviors
| Assignee | ||
Comment 11•13 years ago
|
||
Chris, did you see these videos? thanks for your help!
Flags: needinfo?(21) → needinfo?(jones.chris.g)
| Reporter | ||
Comment 12•13 years ago
|
||
Are you 100% for sure the homescreen is updating the visibility correctly?
Flags: needinfo?(jones.chris.g)
| Assignee | ||
Comment 13•13 years ago
|
||
Vivien implemented it and I was reviewing with new logs and I am sure that we change the display property correctly. Here [1] we change the display prop for the current and previous pages. Although I am going to take a loog again. Thanks
[1] https://github.com/mozilla-b2g/gaia/blob/master/apps/homescreen/js/grid.js#L76
| Assignee | ||
Comment 14•13 years ago
|
||
I tested again and the logs say to me that we are setting the correct values for display prop
Do you know if this reproduces on a B2G desktop build?
| Assignee | ||
Comment 16•13 years ago
|
||
I have tested on B2G desktop build but here it works fine. The previous page is always painted. Thanks a lot
I'm not sure what the right way to proceed is. We could dump display lists for the homescreen process but it would be hard to match those up with the frames with the missing content. But I can't think of anything else. How easy is it to set MOZ_DUMP_PAINT_LIST=1 on the device?
| Assignee | ||
Comment 18•13 years ago
|
||
is MOZ_DUMP_PAINT_LIST=1 for me? thanks
| Assignee | ||
Comment 19•13 years ago
|
||
any update here?
| Assignee | ||
Comment 21•13 years ago
|
||
The patch to implement this bug is [1]. When do you say: 'I'll try to take a look at this', What do you mean? on gecko? Thanks a lot Timothy!
[1] https://github.com/crdlc/gaia/commit/72b95811e3fb976397216e7ae98fe958a1e45359
Comment 22•13 years ago
|
||
The file seems to have changed a fair bit since then. Is there an updated diff?
Comment 23•13 years ago
|
||
Nevermind, I got it applied.
| Assignee | ||
Comment 24•13 years ago
|
||
If you want I can rebase my branch, do you want? thanks
Comment 25•13 years ago
|
||
I've got it now, thanks.
| Assignee | ||
Comment 26•13 years ago
|
||
If somebody need the changes
* the branch:
https://github.com/crdlc/gaia/tree/bug-827130-v3
* commit:
https://github.com/crdlc/gaia/commit/71e95a1ce3bfc4fd4cc79b700a3891ba6d80fac4
| Reporter | ||
Comment 27•13 years ago
|
||
Bug 842218 seems like the symptom described here. It would be very interesting to know why the change here exacerbates the problem.
Depends on: 842218
| Assignee | ||
Comment 28•13 years ago
|
||
Attachment #716451 -
Flags: review?(21)
| Assignee | ||
Comment 29•13 years ago
|
||
This new style [1] does that all pages are always re-painted in panning
[1] https://github.com/mozilla-b2g/gaia/pull/8230/files#L1R16
| Assignee | ||
Updated•13 years ago
|
Attachment #716451 -
Flags: review?(21)
| Assignee | ||
Comment 30•13 years ago
|
||
This patch [1] solves this bug but we need to wait for landing this bug 842218 where the re-painting issue will be fixed.
Thanks
[1] https://github.com/crdlc/gaia/commit/897d55b0d65a46736ff4348e1403dcd3914d3ffb
| Assignee | ||
Updated•13 years ago
|
Attachment #716451 -
Attachment is obsolete: true
| Assignee | ||
Updated•13 years ago
|
Assignee: tnikkel → crdlc
| Assignee | ||
Comment 31•13 years ago
|
||
Attachment #717898 -
Flags: review?(21)
Attachment #717898 -
Flags: review?(21) → review+
| Assignee | ||
Comment 32•13 years ago
|
||
Status: ASSIGNED → RESOLVED
Closed: 13 years ago
Resolution: --- → FIXED
| Assignee | ||
Comment 33•13 years ago
|
||
Comment on attachment 717898 [details]
Patch v1
NOTE: Please see https://wiki.mozilla.org/Release_Management/B2G_Landing to better understand the B2G approval process and landings.
[Approval Request Comment]
Bug caused by (feature/regressing bug #):
User impact if declined: bad user experience when users try to go to previous page from last or go to next one from the first (evme)
Testing completed: yes
Risk to taking this patch (and alternatives if risky): close to null
String or UUID changes made by this patch:
Attachment #717898 -
Flags: approval-gaia-v1?
Updated•13 years ago
|
Updated•13 years ago
|
Attachment #717898 -
Flags: approval-gaia-v1? → approval-gaia-v1+
Comment 34•13 years ago
|
||
Commit c62a8f8 does not apply to v1-train. This means that there are merge
conflicts which need to be resolved. If there are dependencies that are not
approved for branch landing, or have yet to land on master, please let me know
If a manual merge is required, a good place to start might be:
cd gaia
git checkout v1-train
git cherry-pick -x <function determine_cherry_pick_master_number at 0x103a115f0> c62a8f8
<RESOLVE MERGE CONFLICTS>
| Assignee | ||
Comment 35•13 years ago
|
||
Comment 36•13 years ago
|
||
Requesting uplift to v1.0.1. This is one of the patches in the MWC build so plenty of eyes on it.
blocking-b2g: --- → tef?
Updated•13 years ago
|
Updated•13 years ago
|
blocking-b2g: tef? → tef+
Comment 37•13 years ago
|
||
Unfortunately, this has merge conflicts on v1.0.1 that I'm not 100% sure how to resolve.
cd gaia
git checkout v1.0.1
git cherry-pick -x 8848a0c8c1e19ac3cb414d9745b5f751886a433d
would be a good starting point to merging this.
| Assignee | ||
Comment 38•13 years ago
|
||
It depends on bug 842218, so if it isn't on v1.0.1, to uplift this one doesn't make sense
Comment 39•13 years ago
|
||
(In reply to John Ford [:jhford] from comment #37)
> Unfortunately, this has merge conflicts on v1.0.1 that I'm not 100% sure how
> to resolve.
>
> cd gaia
> git checkout v1.0.1
> git cherry-pick -x 8848a0c8c1e19ac3cb414d9745b5f751886a433d
>
> would be a good starting point to merging this.
I see bug 842218 is nominated as tef?, and as Cristian says it is a dependency, It should be tef+ in order this bug to be merged in v1.0.1
Comment 40•12 years ago
|
||
Verified Fixed on Unagi:
Unagi Build ID: 20130322070203
Kernel Date: Dec 5
Gecko: http://hg.mozilla.org/releases/mozilla-b2g18_v1_0_1/rev/4931ec89ebbe
Gaia: 85fd164691bb852f1cfaf82405df4380629ced6e
Status: RESOLVED → VERIFIED
Comment 41•12 years ago
|
||
bug 842218 is landed in v1.0.1 so it seems we could land this now in v1.0.1 too? Thanks!
Flags: needinfo?(crdlc)
| Assignee | ||
Comment 42•12 years ago
|
||
Yes, it could be land in v1.0.1 although there will be conflicts, one month and a half ago it was implemented :)
Flags: needinfo?(crdlc)
| Assignee | ||
Comment 44•12 years ago
|
||
Flags: needinfo?(crdlc)
You need to log in
before you can comment on or make changes to this bug.
Description
•