Flickable anchor margins changes when you push/pop a page
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Ubuntu UI Toolkit |
Fix Released
|
Critical
|
Tim Peeters | ||
ubuntu-ui-toolkit (Ubuntu) |
Fix Released
|
Undecided
|
Unassigned | ||
Vivid |
New
|
Undecided
|
Unassigned |
Bug Description
Situtation:
Define a flickable inside a page with some labels, buttons and any other components inside the flickable. Notice the anchor margins of the layout. Push a page and then pop it. Notice that the anchor margins have now changed.
You can find a sample qml project with all the code necessary in the attachment below.
Steps to reproduce:
1. Open the sample project in qtcreator
2. On running it, notice the gap between the rectangle and the tab header.
3. Press the button to push a page
4. In the new page, press the button to pop the page
5. Now notice that the gap between the rectangle and the tab header is non-existent.
It is almost like the first time you open the app, the rectangle is anchored to the tab header but when you pop it, it is now anchored to the top of the application instead of the tab header.
Update 1 (18th January 2014): While further testing this bug, I noticed that if you set flickable: null inside the page, then when you push and pop a page, the bug is no longer reproducible. However if you allow page to automatically detect the flickable or set it manually, then the bug appears again. One can infer that somehow the flickable property of the page is somehow tied to this issue.
Related branches
- Tim Peeters: Disapprove
- PS Jenkins bot: Needs Fixing (continuous-integration)
- Leo Arias: Pending (code review of the autopilot tests and helpers) requested
-
Diff: 1779 lines (+613/-512) (has conflicts)37 files modifieddebian/changelog (+0/-21)
modules/Ubuntu/Components/Header.qml (+24/-1)
modules/Ubuntu/Components/MainView.qml (+8/-0)
modules/Ubuntu/Components/Panel.qml (+31/-0)
modules/Ubuntu/Components/TabBar.qml (+24/-5)
modules/Ubuntu/Components/Tabs.qml (+6/-1)
modules/Ubuntu/Components/TextField.qml (+11/-10)
modules/Ubuntu/Components/TextInputPopover.qml (+1/-3)
modules/Ubuntu/Components/Themes/Ambiance/NewHeaderStyle.qml (+146/-0)
modules/Ubuntu/Components/Themes/Ambiance/TabBarStyle.qml (+5/-3)
modules/Ubuntu/Components/Themes/Ambiance/qmldir (+1/-0)
modules/Ubuntu/Components/plugin/bottombarvisibilitycommunicator.cpp (+75/-0)
modules/Ubuntu/Components/plugin/bottombarvisibilitycommunicator.h (+59/-0)
modules/Ubuntu/Components/plugin/inversemouseareatype.h (+4/-11)
modules/Ubuntu/Components/plugin/plugin.cpp (+3/-0)
modules/Ubuntu/Components/plugin/plugin.pro (+2/-0)
modules/Ubuntu/Components/plugin/quickutils.cpp (+1/-1)
modules/Ubuntu/Components/plugin/quickutils.h (+1/-1)
modules/Ubuntu/Test/Test.pro (+0/-1)
modules/Ubuntu/Test/plugin/plugin.pro (+0/-25)
modules/Ubuntu/Test/plugin/uctestcase.cpp (+0/-50)
modules/Ubuntu/Test/plugin/uctestcase.h (+0/-47)
tests/autopilot/ubuntuuitoolkit/emulators.py (+87/-20)
tests/autopilot/ubuntuuitoolkit/tests/test_emulators.py (+42/-32)
tests/resources/navigation/SimpleTabs.qml (+2/-0)
tests/resources/navigation/StackWithTabs.qml (+22/-32)
tests/resources/navigation/Tabs.qml (+8/-2)
tests/unit/plugin_dependency.pri (+0/-3)
tests/unit_x11/tst_components/tst_tabbar.qml (+7/-0)
tests/unit_x11/tst_inversemousearea/InverseMouseAreaClip.qml (+0/-73)
tests/unit_x11/tst_inversemousearea/InverseMouseAreaInFlickable.qml (+0/-52)
tests/unit_x11/tst_inversemousearea/InverseMouseAreaInPage.qml (+0/-46)
tests/unit_x11/tst_inversemousearea/InverseMouseAreaOnTop.qml (+6/-0)
tests/unit_x11/tst_inversemousearea/InverseMouseAreaOnTopNoAccept.qml (+6/-1)
tests/unit_x11/tst_inversemousearea/InverseMouseAreaParentClipped.qml (+0/-56)
tests/unit_x11/tst_inversemousearea/InverseMouseAreaTopmostItem.qml (+9/-10)
tests/unit_x11/tst_layouts/tst_layouts.cpp (+22/-5)
- Zsombor Egri: Approve
- PS Jenkins bot: Approve (continuous-integration)
-
Diff: 560 lines (+318/-58)10 files modifiedcomponents.api (+1/-0)
modules/Ubuntu/Components/Header.qml (+19/-2)
modules/Ubuntu/Components/MainView.qml (+9/-1)
modules/Ubuntu/Components/Page.qml (+1/-1)
modules/Ubuntu/Components/Themes/Ambiance/NewHeaderStyle.qml (+146/-0)
modules/Ubuntu/Components/Themes/Ambiance/qmldir (+1/-0)
tests/autopilot/ubuntuuitoolkit/emulators.py (+93/-20)
tests/autopilot/ubuntuuitoolkit/tests/test_emulators.py (+42/-32)
tests/resources/navigation/SimpleTabs.qml (+2/-0)
tests/resources/navigation/Tabs.qml (+4/-2)
Changed in ubuntu-ui-toolkit: | |
assignee: | nobody → Tim Peeters (tpeeters) |
Changed in ubuntu-ui-toolkit: | |
status: | New → Confirmed |
importance: | Undecided → High |
description: | updated |
Changed in ubuntu-ui-toolkit: | |
importance: | High → Critical |
Changed in ubuntu-ui-toolkit: | |
status: | Confirmed → In Progress |
Changed in ubuntu-ui-toolkit: | |
status: | Fix Committed → Fix Released |
We have a similar issue with gallery-app. We open a specific photo from the photos tab and when we return to the tab there is this gap between the header and the photos grid.
On the qml file attached we tried to reproduce the issue. When you click on a number you go to a new page and when you return the grid is not on the same position anymore. It is not the same behavior we have on gallery but maybe it could be related.