Closed
Bug 1302150
Opened 8 years ago
Closed 8 years ago
Dynamic toolbar doesn't reappear after scrolling to bottom of long page
Categories
(Firefox for Android Graveyard :: Toolbar, defect, P2)
Tracking
(firefox48 wontfix, firefox49 wontfix, fennec+, firefox50 wontfix, firefox51 wontfix, firefox52 wontfix, firefox53 wontfix, firefox54 wontfix, firefox55 verified)
People
(Reporter: kats, Assigned: rbarker)
References
Details
(Keywords: regression)
Attachments
(1 file)
It looks like with the C++ APZ the NativePanZoomController code never invokes PanZoomTarget.panZoomStopped(), so the code at [1] is never getting run.
[1] http://searchfox.org/mozilla-central/rev/591354c5e5521cf845bf6b6ef44e8b3b0aeda17d/mobile/android/base/java/org/mozilla/gecko/BrowserApp.java#1567
Updated•8 years ago
|
tracking-fennec: --- → ?
Reporter | ||
Updated•8 years ago
|
status-firefox52:
--- → affected
Assignee: nobody → rbarker
tracking-fennec: ? → +
Reporter | ||
Updated•8 years ago
|
Updated•8 years ago
|
Is this something we're thinking of getting to, or should we stop tracking it?
Flags: needinfo?(snorp)
Reporter | ||
Comment 2•8 years ago
|
||
Presumably this won't get fixed until bug 1335895 is done.
Depends on: dynamic-toolbar-3
Flags: needinfo?(snorp)
Comment 3•8 years ago
|
||
Too late for a fix for 53, as we are in the last week of the 53 beta cycle.
Reporter | ||
Updated•8 years ago
|
Comment hidden (mozreview-request) |
Reporter | ||
Comment 5•8 years ago
|
||
mozreview-review |
Comment on attachment 8864340 [details]
Bug 1302150 - Ensure the dynamic toolbar becomes visible when end of page is reached
https://reviewboard.mozilla.org/r/135982/#review139168
Mostly a rubber stamp since it's pretty hard to follow all the different code paths and conditions. Nothing looked obviously wrong.
Attachment #8864340 -
Flags: review?(bugmail) → review+
Reporter | ||
Comment 6•8 years ago
|
||
mozreview-review-reply |
Comment on attachment 8864340 [details]
Bug 1302150 - Ensure the dynamic toolbar becomes visible when end of page is reached
https://reviewboard.mozilla.org/r/135982/#review139168
That said, do you have any plans to write automated tests for the core dynamic toolbar code? I think it would be worthwhile, because it's getting to the point where there are so many different scenarios to deal with that fixing one could easily regress another. Having automated test coverage for scenarios that are fixed to prevent them from regressing would be very valuable.
Assignee | ||
Comment 7•8 years ago
|
||
(In reply to Kartikaya Gupta (email:kats@mozilla.com) from comment #6)
> Comment on attachment 8864340 [details]
> Bug 1302150 - Ensure the dynamic toolbar becomes visible when end of page is
> reached
>
> https://reviewboard.mozilla.org/r/135982/#review139168
>
> That said, do you have any plans to write automated tests for the core
> dynamic toolbar code? I think it would be worthwhile, because it's getting
> to the point where there are so many different scenarios to deal with that
> fixing one could easily regress another. Having automated test coverage for
> scenarios that are fixed to prevent them from regressing would be very
> valuable.
snorp and I are discussing the best approach to take.
Assignee | ||
Comment 8•8 years ago
|
||
After further testing I found some issues with dragging and animating the toolbar at the bottom of the page at the same time. Since this patch hasn't landed yet, I figured it would be better to post a new version that fixes the issues rather than create a new bug and post the fixes there. Kats do you have an opinion on this?
Flags: needinfo?(bugmail)
Comment hidden (mozreview-request) |
Comment hidden (mozreview-request) |
Reporter | ||
Comment 12•8 years ago
|
||
mozreview-review |
Comment on attachment 8864340 [details]
Bug 1302150 - Ensure the dynamic toolbar becomes visible when end of page is reached
https://reviewboard.mozilla.org/r/135982/#review140550
Attachment #8864340 -
Flags: review+ → review?(bugmail)
Reporter | ||
Comment 13•8 years ago
|
||
mozreview-review |
Comment on attachment 8864340 [details]
Bug 1302150 - Ensure the dynamic toolbar becomes visible when end of page is reached
https://reviewboard.mozilla.org/r/135982/#review140552
Attachment #8864340 -
Flags: review?(bugmail)
Reporter | ||
Comment 14•8 years ago
|
||
Flag me for review when the patch is ready.
Assignee | ||
Updated•8 years ago
|
Attachment #8864340 -
Flags: review?(bugmail)
Reporter | ||
Comment 15•8 years ago
|
||
mozreview-review |
Comment on attachment 8864340 [details]
Bug 1302150 - Ensure the dynamic toolbar becomes visible when end of page is reached
https://reviewboard.mozilla.org/r/135982/#review141076
This is largely a rubberstamp, it's really hard to wrap my head around the different states so I have no idea if this is doing the right thing or not.
::: gfx/layers/apz/src/AndroidDynamicToolbarAnimator.h:159
(Diff revision 3)
> void TranslateTouchEvent(MultiTouchInput& aTouchEvent);
> ScreenIntCoord GetFixedLayerMarginsBottom();
> void NotifyControllerSnapshotFailed();
> void CheckForResetOnNextMove(ScreenIntCoord aCurrentTouch);
> + // Returns true if the page scroll offset is near the bottom.
> + bool ScrollOffsetNearBottom();
Make this function const if you can.
::: gfx/layers/apz/src/AndroidDynamicToolbarAnimator.h:160
(Diff revision 3)
> + // Returns true if toolbar is completely visible or completely hidden.
> + bool ToolbarInTransition();
The comment here seems to say the opposite of what I would expect the function to do based on its name. And the implementation seems to match the name, so the comment is wrong? Also, make the function const if you can.
::: gfx/layers/apz/src/AndroidDynamicToolbarAnimator.cpp:1009
(Diff revision 3)
> MOZ_ASSERT(APZThreadUtils::IsControllerThread());
> - // The toolbar will only hide if dragging up so ignore positive deltas from dragging down.
> - if (delta >= 0) {
> + // if the page is too small then the toolbar can not be hidden
> + if ((float)mControllerSurfaceHeight >= (mControllerFrameMetrics.mPageRect.YMost() * SHRINK_FACTOR)) {
> + // If the toolbar is partial hidden, show it.
> + if ((mControllerToolbarHeight != mControllerMaxToolbarHeight) && !mPinnedFlags) {
> + StartCompositorAnimation(MOVE_TOOLBAR_DOWN, eImmediate, mControllerToolbarHeight, /* wait for page resize */ true);
This function has side effects! Totally not obvious from the name or the documentation.
Attachment #8864340 -
Flags: review?(bugmail) → review+
Assignee | ||
Comment 16•8 years ago
|
||
mozreview-review-reply |
Comment on attachment 8864340 [details]
Bug 1302150 - Ensure the dynamic toolbar becomes visible when end of page is reached
https://reviewboard.mozilla.org/r/135982/#review141076
> The comment here seems to say the opposite of what I would expect the function to do based on its name. And the implementation seems to match the name, so the comment is wrong? Also, make the function const if you can.
Yeah, the function was orignally ToolbarNotInTransition() which led to the double negative !ToolbarNotInTransition() so I removed the Not but forgot to update the comment.
> This function has side effects! Totally not obvious from the name or the documentation.
I renamed it PageTooSmallEnsureToolbarVisible(). Originally it only tested for the page being too small but since every place it returned true, I was making it visible, it seemed easier to roll it into the test function.
Comment hidden (mozreview-request) |
Comment 18•8 years ago
|
||
Pushed by rbarker@mozilla.com:
https://hg.mozilla.org/integration/mozilla-inbound/rev/06c11db07536
Ensure the dynamic toolbar becomes visible when end of page is reached r=kats
Comment 19•8 years ago
|
||
bugherder |
Status: NEW → RESOLVED
Closed: 8 years ago
status-firefox55:
--- → fixed
Resolution: --- → FIXED
Target Milestone: --- → Firefox 55
Updated•8 years ago
|
status-firefox54:
--- → wontfix
Comment 20•7 years ago
|
||
Verified as fixed on latest Nightly 55.0a1 (2017-6-12). The dynamic toolbar appears when you get to the bottom of the page.
Devices:
-Prestigio Grace X5 (Android 4.4.2)
-LG G4 (Android 5.1)
-Nexus 5 (Android 6.0.1)
-Huawei MediaPad M2 (Android 5.1.1)
Status: RESOLVED → VERIFIED
Updated•4 years ago
|
Product: Firefox for Android → Firefox for Android Graveyard
You need to log in
before you can comment on or make changes to this bug.
Description
•