Closed
Bug 964997
Opened 12 years ago
Closed 12 years ago
homescreen is rendered incorrectly when try to scroll more with APZC is enabled
Categories
(Core :: Panning and Zooming, defect)
Tracking
()
People
(Reporter: sotaro, Assigned: kats)
References
Details
(Keywords: regression)
Attachments
(2 files)
437.55 KB,
video/mp4
|
Details | |
1.58 KB,
patch
|
botond
:
review+
|
Details | Diff | Splinter Review |
By the following STR, sometime homescreen is incorrectly rendered. It seems like try to scroll more right, even when the pane is right most pane.
STR
[1] In the homescreen, move to right most pane.
[2] In the right most pane, try to scroll more right. Touch the screen very quickly.
I confirmed the problem happened by recent master hamachi and v1.3 hamachi.
nexus-4 also happen the problem. But it was very hard to reproduce it.
Reporter | ||
Updated•12 years ago
|
blocking-b2g: --- → 1.3?
Reporter | ||
Comment 1•12 years ago
|
||
Reporter | ||
Comment 2•12 years ago
|
||
The problem does not happen when APZC is disabled.
Updated•12 years ago
|
Keywords: regression
Comment 4•12 years ago
|
||
Please review for APZC
blocking-b2g: 1.3? → 1.3+
Flags: needinfo?(bugmail.mozilla)
Comment 5•12 years ago
|
||
Preeti, even with "it is really hard to reproduce", we're considering this a 1.3 blocker?
Flags: needinfo?(praghunath)
Comment 6•12 years ago
|
||
(In reply to Milan Sreckovic [:milan] from comment #5)
> Preeti, even with "it is really hard to reproduce", we're considering this a
> 1.3 blocker?
Homescreen has a high quality bar for ship & can potentially can cause a part of the UI to be non-functional if the glitch persists (see the dupe). That was why we blocked on it.
Reporter | ||
Comment 7•12 years ago
|
||
>
> I confirmed the problem happened by recent master hamachi and v1.3 hamachi.
> nexus-4 also happen the problem. But it was very hard to reproduce it.
It was hard to reproduce only on nexus-4. On hamachi, it was easily reproducible.
Comment 8•12 years ago
|
||
Let's find the regression window and then take a look at what caused this.
Keywords: regressionwindow-wanted
Comment 9•12 years ago
|
||
(In reply to Milan Sreckovic [:milan] from comment #8)
> Let's find the regression window and then take a look at what caused this.
We already confirmed this - it was caused by enabling of APZC. comment 2 indicates this doesn't reproduce with APZC disabled.
Keywords: regressionwindow-wanted
Comment 10•12 years ago
|
||
(In reply to Jason Smith [:jsmith] from comment #9)
> (In reply to Milan Sreckovic [:milan] from comment #8)
> > Let's find the regression window and then take a look at what caused this.
>
> We already confirmed this - it was caused by enabling of APZC. comment 2
> indicates this doesn't reproduce with APZC disabled.
I didn't want to make the assumption that comment meant "this never worked with APZC on", and wanted to explore the "this stopped working with APZC on" possibility. But if we know this never worked with APZC on, or at least have a good reason to believe it to be so, you're right, we don't need the regression range.
Comment 11•12 years ago
|
||
Sotaro - Can you clarify comment 2? Did you confirm this doesn't reproduce with APZC disabled?
Flags: needinfo?(sotaro.ikeda.g)
Reporter | ||
Comment 12•12 years ago
|
||
(In reply to Jason Smith [:jsmith] from comment #11)
> Sotaro - Can you clarify comment 2? Did you confirm this doesn't reproduce
> with APZC disabled?
I confirmed it with botond. I will confirm it again.
Flags: needinfo?(sotaro.ikeda.g)
Assignee | ||
Comment 13•12 years ago
|
||
I can reproduce this, but I'm unsure that bug 965077 is a duplicate of this. Based on the video there I think this bug might be showing up there, but there are other bugs as well that actually cause the lockup.
I can look into this but I don't think it's as critical as it's made out to be (re comment 6) because I don't think fixing this will fix the dupe. I'd rather see this one taken off the "must get done now" list and put the dupe on that list instead.
Flags: needinfo?(bugmail.mozilla)
Reporter | ||
Comment 14•12 years ago
|
||
(In reply to Sotaro Ikeda [:sotaro] from comment #12)
> (In reply to Jason Smith [:jsmith] from comment #11)
> > Sotaro - Can you clarify comment 2? Did you confirm this doesn't reproduce
> > with APZC disabled?
>
> I confirmed it with botond. I will confirm it again.
I re-confirmed that when the APZC is disabled, the problem does not happen by using today's master hamachi. And the problem happen when the APZC is enabled.
Comment 15•12 years ago
|
||
(In reply to Jason Smith [:jsmith] from comment #11)
> Sotaro - Can you clarify comment 2? Did you confirm this doesn't reproduce
> with APZC disabled?
I don't want to put words into Milan's mouth, but my interpretation of comment #8 and comment #10 is: perhaps on an older build it was working even with APZC on, and now it's not, and if so it would be nice to know when it stopped working (with APZC on).
Assignee | ||
Comment 16•12 years ago
|
||
I debugged this a little bit. It seems like when we're on the homescreen, the scrollable rect is 560 pixels wide, whereas the screen is only 320 pixels wide (but the homescreen scrolling isn't done with APZC, presumably some homescreen code is taking the touch events and dealing with them). When we fling past a certain velocity, our displayport width becomes 1.5x of the composition bounds, which in this case is 1.5 * 320 = 480 pixels. And because 480 is less than scrollable rect of 560 pixels, the displayport can also shift to the right by up to 80 pixels. When this happens, the left part of the screen is not painted.
When our velocity drops, the displayport width expands to 3.0x of the composition bounds, which is 3.0 * 320 = 960. Because this is wider than the scrollable rect, it just gets clamped down to the entire scrollable rect and the x coordinate is always 0, so this never happens.
The root problem here I believe is that the scrollable rect is being reported as 560 pixels rather than 320 pixels. This wider scrollable rect allows the APZC displayport to shift during flinging.
Assignee | ||
Comment 17•12 years ago
|
||
This would probably have started manifesting with bug 907179 because that's when the displayport width multiplier changed to allow this.
Assignee | ||
Comment 18•12 years ago
|
||
... and the 560 width seems to be coming from https://github.com/mozilla-b2g/gaia/blob/master/apps/homescreen/style/dock.css#L12
Changing that to 100% fixes the problem, but obviously makes the dock look squished.
Component: Panning and Zooming → Gaia::Homescreen
Product: Core → Firefox OS
Assignee | ||
Comment 19•12 years ago
|
||
Actually this might be better fixed in the APZ code since the homescreen body already has overflow:hidden set on it. I will try that.
Assignee | ||
Comment 20•12 years ago
|
||
Assignee | ||
Updated•12 years ago
|
Attachment #8368011 -
Attachment description: 1-fling-41e6745 → Patch
Attachment #8368011 -
Attachment is patch: true
Attachment #8368011 -
Flags: review?(botond)
Assignee | ||
Comment 21•12 years ago
|
||
Moving it back to APZ. Sorry for the churn.
Assignee: nobody → bugmail.mozilla
Component: Gaia::Homescreen → Panning and Zooming
Product: Firefox OS → Core
Version: unspecified → 28 Branch
Comment 22•12 years ago
|
||
Comment on attachment 8368011 [details] [diff] [review]
Patch
Review of attachment 8368011 [details] [diff] [review]:
-----------------------------------------------------------------
Looks good. I think we can actually set Axis::mVelocity to 0 if we're overflow:hidden, but we can leave that for a follow-up. (In particular, it doesn't hurt to wait until bug 965871 is fixed before messing around with Axis::mVelocity.)
Attachment #8368011 -
Flags: review?(botond) → review+
Assignee | ||
Comment 23•12 years ago
|
||
Assignee | ||
Updated•12 years ago
|
status-firefox28:
--- → affected
status-firefox29:
--- → affected
Assignee | ||
Updated•12 years ago
|
status-b2g-v1.3:
--- → affected
status-b2g-v1.4:
--- → affected
Comment 24•12 years ago
|
||
(In reply to Botond Ballo [:botond] from comment #15)
> (In reply to Jason Smith [:jsmith] from comment #11)
> > Sotaro - Can you clarify comment 2? Did you confirm this doesn't reproduce
> > with APZC disabled?
>
> I don't want to put words into Milan's mouth, but my interpretation of
> comment #8 and comment #10 is: perhaps on an older build it was working even
> with APZC on, and now it's not, and if so it would be nice to know when it
> stopped working (with APZC on).
Right, and it looks like it probably was around Jan 9-10 that it happened. Doesn't matter at this point, looks like we have a fix.
Comment 25•12 years ago
|
||
Status: NEW → RESOLVED
Closed: 12 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla29
Comment 26•12 years ago
|
||
status-firefox27:
--- → wontfix
Flags: needinfo?(praghunath)
You need to log in
before you can comment on or make changes to this bug.
Description
•