[clock app] Scrollable lists on scrollable pages are unintuitive
Affects | Status | Importance | Assigned to | Milestone | ||
---|---|---|---|---|---|---|
Ubuntu Clock App | Status tracked in Trunk | |||||
Trunk |
Fix Released
|
Medium
|
Nekhelesh Ramananthan | |||
Ubuntu UX |
Fix Released
|
Medium
|
Unassigned |
Bug Description
When you have more than a few World Clocks, timer presets, or stop watch laps the lists become scrollable. Having scrollable lists on scrollable pages seems unintuitive. I think a better behavior would be to have the list views extend and just scroll the page itself instead of having the list views' height being hardcoded at units.gu(21).
That would be pretty simple by doing:
=== modified file 'clock/
--- clock/ClockPage.qml 2013-09-09 17:06:20 +0000
+++ clock/ClockPage.qml 2013-09-18 23:50:15 +0000
@@ -182,8 +182,9 @@
+ interactive: false
- height: units.gu(21)
+ height: worldModel.count * units.gu(6)
The problem is that these lists are all contained in the AnimationContainer which has the seemingly arbitrary property "contentHeight: units.gu(87)" So if the page exceeds that height, things are cut off from the bottom.
Hardcodding arbitrary heights seems bad. I'm also not sure I understand the purpose of the page scrolling animation.
This also affects LP: #1226128. Hiding the tab header when scrolling should be as simple as removing the "flickable: null" property from the relevant pages, but if you do so the animated scroll makes the tabs inaccessible.
Changed in ubuntu-clock-app: | |
status: | Confirmed → Incomplete |
tags: | added: needs-design |
Changed in ubuntu-ux: | |
assignee: | nobody → Lina Pio (linapio) |
Changed in ubuntu-clock-app: | |
milestone: | final-1.0 → backlog |
Changed in ubuntu-clock-app: | |
milestone: | backlog → 1.4 |
Changed in ubuntu-clock-app: | |
milestone: | 1.4 → backlog |
summary: |
- Scrollable lists on scrollable pages are unintuitive + [clock app] Scrollable lists on scrollable pages are unintuitive |
Changed in ubuntu-ux: | |
assignee: | Lina Pio (linapio) → Giorgio Venturi (giorgio-venturi) |
Changed in ubuntu-ux: | |
status: | New → In Progress |
Changed in ubuntu-ux: | |
status: | Fix Committed → Won't Fix |
status: | Won't Fix → Fix Released |
importance: | Undecided → Medium |
Thanks for your bug report. As you correctly pointed out, the hardcoding of values is affecting the functionality of the clock app. This is something I need to address asap but haven't got to doing yet. There are several things which are being hardcoded such as,
1. The height of the animation counter. -> I tried using page.height to make it dynamic, but then it displays an error message regarding binding loops.
2. Height of the stopwatch, clock, timer and upcoming alarm list.
Instead of hardcoding they should dynamically adjust based on the phone dimensions.
To answer your question about the page scrolling animation, basically every page has two states: the first being the state where the clock is fully visible. In this state the listview is hidden. The second state is the state where the clock face is partially visible while the list view is shown prominently. We do not allow any intermediate view points for the flickable. The animations are there to provide a smooth transistion between these states.
A fix for this would be highly appreciated :)