Merge lp:~mhr3/unity/fix-966417 into lp:unity
Status: | Merged |
---|---|
Approved by: | Gord Allott |
Approved revision: | no longer in the source branch. |
Merged at revision: | 2206 |
Proposed branch: | lp:~mhr3/unity/fix-966417 |
Merge into: | lp:unity |
Diff against target: |
97 lines (+64/-0) 3 files modified
plugins/unityshell/src/DashView.cpp (+24/-0) plugins/unityshell/src/DashView.h (+1/-0) tests/autopilot/autopilot/tests/test_home_lens.py (+39/-0) |
To merge this branch: | bzr merge lp:~mhr3/unity/fix-966417 |
Related bugs: |
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Gord Allott (community) | Approve | ||
Thomi Richards (community) | Needs Fixing | ||
Review via email: mp+100138@code.launchpad.net |
Commit message
Make sure applications can be started from the HomeLens as soon as we get results from apps lens
Description of the change
All the lenses are currently waiting for results before one can execute an item - this is to prevent issues where you quickly type for example "gedit" in the dash and since the results might not be available at the time when you press enter (but they will a couple of milliseconds later) we could launch incorrect item if we didn't wait.
Unfortunately this is a huge problem particularly in the home lens which aggregates results from multiple lenses, so even though you see gedit being in the result set, unity won't launch it, because it's waiting for the files lens to finish searching.
To circumvent the issue and still maintain some determinism, the home lens is now waiting for results from the apps lens before launching an item. (if we just waited for results from any lens, what could happen is that sometimes gedit would launch gedit while other times gedit would launch firefox with a tweet from someone mentioning gedit - a possible result from gwibber lens)
Added AP test for the issue.
Hi,
Please remove the following imports, as you don't need them:
67 +from subprocess import call emulators. bamf import Bamf
70 +from autopilot.
You don't need this:
80 + self.dash = Dash()
...as it's done already in the AutopilotTestCase. This means you also don't need to import the Dash.
You also don't need this:
93 + kb = Keyboard()
use self.keyboard instead - this means you don't need the Keyboard import.
Finally, I have two really small requests:
1) Please change the author name in the copyright header :)
2) Docstrings for tests should avoid words like 'should', in favour of stronger words like 'must'. How about something like: """Hitting enter must run an application even though the search has not finished yet."""
Apart from the issues above, nice test - thanks!
Cheers,