App refocuses after it's swiped away during startup
Bug #1212637 reported by
Michał Sawicz
This bug affects 1 person
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Ubuntu UX |
Fix Released
|
Undecided
|
Vesa Rautiainen | ||
unity8 (Ubuntu) |
Fix Released
|
Medium
|
Michael Zanetti |
Bug Description
Steps to reproduce:
* start an app
* swipe it away from the left as soon as it shows up
Expected results:
* dash remains in focus
Current results:
* the launched app swipes in after startup
We need to have a notion of "expecting" an app, and cancel that expectation when you swipe it away. Some kind of focus stealing prevention needs to be put in place.
Desired solution:
From interaction point of view this feel quite straigthforward.
- if application opened by the user and dismissed by swipe from left -> application should not open and steal focus from dash.
- Application opened by some other mean than from dash. Application opens normally.
Related branches
lp:~unity-team/unity8/mirCompositor
- Gerry Boland (community): Approve
- PS Jenkins bot (community): Needs Fixing (continuous-integration)
- Michael Zanetti (community): Approve (c++ code review)
- Michael Terry: Approve (debian-packaging)
- Vesa Rautiainen (community): Approve (design)
-
Diff: 6483 lines (+3413/-1522)52 files modifieddebian/changelog (+14/-0)
debian/control (+1/-2)
plugins/Utils/CMakeLists.txt (+1/-0)
plugins/Utils/easingcurve.cpp (+5/-1)
plugins/Utils/plugin.cpp (+2/-0)
plugins/Utils/windowkeysfilter.cpp (+57/-0)
plugins/Utils/windowkeysfilter.h (+51/-0)
qml/Components/Dialogs.qml (+217/-0)
qml/Components/DraggingArea.qml (+4/-0)
qml/Components/InputMethod.qml (+79/-0)
qml/Components/PageHeader.qml (+3/-1)
qml/Dash/Apps/RunningApplicationTile.qml (+45/-37)
qml/Dash/DashContent.qml (+4/-0)
qml/Launcher/Launcher.qml (+1/-1)
qml/Panel/Indicators.qml (+3/-0)
qml/Shell.qml (+171/-393)
qml/Stages/Animations/BaseSurfaceAnimation.qml (+93/-0)
qml/Stages/Animations/DarkenAndFadeInAnimation.qml (+48/-0)
qml/Stages/Animations/SwipeFromBottomAnimation.qml (+48/-0)
qml/Stages/Animations/SwipeUpAnimation.qml (+49/-0)
qml/Stages/PhoneStage.qml (+173/-265)
qml/Stages/SidestageHandle.qml (+0/-22)
qml/Stages/Splash.qml (+68/-0)
qml/Stages/SpreadDelegate.qml (+193/-29)
qml/Stages/StageWithSideStage.qml (+0/-413)
qml/Stages/SurfaceContainer.qml (+123/-0)
qml/Stages/SwitchingApplicationImage.qml (+0/-81)
qml/Stages/TabletStage.qml (+568/-0)
qml/Stages/TransformedSpreadDelegate.qml (+36/-30)
qml/Stages/TransformedTabletSpreadDelegate.qml (+369/-0)
src/CMakeLists.txt (+0/-3)
src/main.cpp (+14/-89)
tests/mocks/Unity/Application/Application.qmltypes (+0/-2)
tests/mocks/Unity/Application/ApplicationDBusAdaptor.cpp (+75/-0)
tests/mocks/Unity/Application/ApplicationDBusAdaptor.h (+43/-0)
tests/mocks/Unity/Application/ApplicationInfo.cpp (+71/-23)
tests/mocks/Unity/Application/ApplicationInfo.h (+22/-9)
tests/mocks/Unity/Application/ApplicationManager.cpp (+60/-31)
tests/mocks/Unity/Application/ApplicationManager.h (+15/-9)
tests/mocks/Unity/Application/CMakeLists.txt (+6/-2)
tests/mocks/Unity/Application/MirSurfaceItem.cpp (+172/-0)
tests/mocks/Unity/Application/MirSurfaceItem.h (+121/-0)
tests/mocks/Unity/Application/SurfaceManager.cpp (+73/-0)
tests/mocks/Unity/Application/SurfaceManager.h (+54/-0)
tests/mocks/Unity/Application/VirtualKeyboard.cpp (+55/-0)
tests/mocks/Unity/Application/VirtualKeyboard.h (+35/-0)
tests/mocks/Unity/Application/plugin.cpp (+16/-9)
tests/qmltests/Dash/Apps/tst_RunningApplicationsGrid.qml (+23/-2)
tests/qmltests/Launcher/tst_Launcher.qml (+11/-2)
tests/qmltests/Panel/tst_ActiveCallHint.qml (+1/-0)
tests/qmltests/Stages/tst_PhoneStage.qml (+9/-56)
tests/qmltests/tst_Shell.qml (+111/-10)
Changed in ubuntu-ux: | |
assignee: | nobody → Vesa Rautiainen (vesar) |
description: | updated |
Changed in ubuntu-ux: | |
status: | New → Fix Committed |
Changed in unity8: | |
assignee: | nobody → Gerry Boland (gerboland) |
milestone: | none → ubuntu-13.10 |
Changed in unity8 (Ubuntu): | |
status: | New → Confirmed |
Changed in unity8 (Ubuntu): | |
status: | Confirmed → Triaged |
importance: | Undecided → Medium |
Changed in unity8: | |
assignee: | Gerry Boland (gerboland) → Michael Zanetti (mzanetti) |
status: | Triaged → In Progress |
Changed in unity8 (Ubuntu): | |
status: | Triaged → Fix Released |
Changed in unity8: | |
status: | In Progress → Fix Released |
Changed in ubuntu-ux: | |
status: | Fix Committed → Fix Released |
Changed in unity8 (Ubuntu): | |
assignee: | nobody → Michael Zanetti (mzanetti) |
no longer affects: | unity8 |
To post a comment you must log in.
Adding ubuntu-ux for design input.
This is tricky with apps launched by means other than the shell, when the shell might not be able to "expect" the newly launched app. A activity timeout could be part of a solution.