Merge lp:~townsend/unity/fix-keynav-scroll into lp:unity

Proposed by Christopher Townsend
Status: Merged
Approved by: Stephen M. Webb
Approved revision: no longer in the source branch.
Merged at revision: 3490
Proposed branch: lp:~townsend/unity/fix-keynav-scroll
Merge into: lp:unity
Diff against target: 12 lines (+1/-1)
1 file modified
launcher/Launcher.cpp (+1/-1)
To merge this branch: bzr merge lp:~townsend/unity/fix-keynav-scroll
Reviewer Review Type Date Requested Status
PS Jenkins bot (community) continuous-integration Approve
Stephen M. Webb (community) Approve
Review via email: mp+184102@code.launchpad.net

Commit message

Fixes issue where entering keynav mode may make the BFB icon scroll off the top of the Launcher.

Description of the change

= Issue =
If there are many icons in the Launcher leading to the concertina effect and entering keynav mode, a condition may occur where the BFB icon may scroll off the top of the Launcher (see bug #1068166). This issue has recently led to AP test failures and actually causing the AP test run to get stuck (see bug #1219636).

= Fix =
When setting the hover, do not set the _enter_y variable if in KeyNav Mode. This variable is used to determine if the Launcher should scroll when hover is set.

= Test =
Running autopilot run --verbose unity.tests.test_quicklist.QuicklistActionTests.test_right_click_opens_quicklist_if_already_open unity.tests.launcher.test_keynav.LauncherKeyNavTests.test_launcher_keynav_cancel_on_quicklist_activate is sufficient to test this.

To post a comment you must log in.
Revision history for this message
Stephen M. Webb (bregma) wrote :

Funny how one little change can have such big results.

review: Approve
Revision history for this message
PS Jenkins bot (ps-jenkins) wrote :
review: Approve (continuous-integration)

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'launcher/Launcher.cpp'
2--- launcher/Launcher.cpp 2013-08-28 16:14:20 +0000
3+++ launcher/Launcher.cpp 2013-09-05 13:16:49 +0000
4@@ -1496,7 +1496,7 @@
5
6 _hovered = hovered;
7
8- if (_hovered)
9+ if (!IsInKeyNavMode() && _hovered)
10 {
11 _enter_y = (int) _mouse_position.y;
12 TimeUtil::SetTimeStruct(&_times[TIME_ENTER], &_times[TIME_LEAVE], ANIM_DURATION);