Multi-monitor - Add 'sticky edges deactivated for number of milliseconds after the user breaks the barrier' variable that works when the Launcher set to 'auto-hide' and sticky edges set to 'off'
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Ayatana Design |
Fix Released
|
Critical
|
John Lea | ||
Unity |
Fix Released
|
High
|
Marco Trevisan (Treviño) | ||
unity (Ubuntu) |
Fix Released
|
High
|
Marco Trevisan (Treviño) |
Bug Description
To reproduce:
1. Using a computer with two monitors, set the Launcher to 'auto-hide' and sticky edges to 'off'
2. Set the 'sticky edges deactivated for number of milliseconds after the user breaks the barrier' variable in CCSM to "1000ms"
3. Move the pointer over the boundary from the left screen to the right screen slowly, and then try to move it back again (within 1 second).
What currently happens: the pointer gets caught on the Launcher reveal edge resistance on the left edge of the right monitor
What should happen: There should be no resistance when the pointer comes back across the barrier because the barrier was already broken inside 1000ms when the pointer moved from the left monitor to the right monitor.
Also: set the value of the variable to 1000ms
-------
Add 'sticky edges deactivated for number of milliseconds after the user breaks the barrier' variable to CCSM. This variable would de-activate sticky edges for a set number of milliseconds every time after the user's pointer moves from one monitor to another.
In addition to the 1000ms barrier switch off timer, the barrier should also only be switched off for only one crossing e.g. so that if the user tries to correct an accidental crossing of the barrier they can do so with no resistance, but after correcting this accidental crossing the barrier is switched on even if 1000ms has not yet elapsed.
The idea behind this behaviour is to allow the user to course-correct after they have broken through the barrier the first time.
Related branches
- Unity Team: Pending requested
-
Diff: 169 lines (+78/-24)4 files modifiedlauncher/EdgeBarrierController.cpp (+2/-23)
launcher/EdgeBarrierController.h (+1/-1)
launcher/EdgeBarrierControllerPrivate.h (+56/-0)
tests/test_edge_barrier_controller.cpp (+19/-0)
- Brandon Schaefer (community): Approve
- PS Jenkins bot (community): Needs Fixing (continuous-integration)
-
Diff: 776 lines (+320/-117)9 files modifiedlauncher/EdgeBarrierController.cpp (+55/-48)
launcher/EdgeBarrierController.h (+10/-4)
launcher/EdgeBarrierControllerPrivate.h (+57/-0)
launcher/Launcher.cpp (+9/-7)
launcher/Launcher.h (+1/-1)
launcher/PointerBarrier.cpp (+1/-0)
launcher/PointerBarrier.h (+1/-0)
tests/test_edge_barrier_controller.cpp (+114/-41)
tests/test_launcher.cpp (+72/-16)
Changed in ayatana-design: | |
assignee: | nobody → John Lea (johnlea) |
importance: | Undecided → High |
Changed in unity: | |
importance: | Undecided → High |
Changed in unity (Ubuntu): | |
importance: | Undecided → High |
Changed in ayatana-design: | |
status: | New → Triaged |
Changed in unity: | |
status: | New → Triaged |
Changed in unity (Ubuntu): | |
status: | New → Triaged |
Changed in ayatana-design: | |
status: | Triaged → Fix Committed |
Changed in unity: | |
assignee: | nobody → Marco Trevisan (Treviño) (3v1n0) |
Changed in unity (Ubuntu): | |
assignee: | nobody → Marco Trevisan (Treviño) (3v1n0) |
tags: | added: udp |
summary: |
Multi-monitor - Add 'sticky edges deactivated for number of milliseconds after the user breaks the barrier' variable that works when the Launcher - to 'auto-hide' and sticky edges to 'off' + set to 'auto-hide' and sticky edges set to 'off' |
Changed in unity: | |
importance: | High → Critical |
Changed in unity (Ubuntu): | |
importance: | High → Critical |
Changed in ayatana-design: | |
importance: | High → Critical |
Changed in unity: | |
assignee: | Marco Trevisan (Treviño) (3v1n0) → Unity Maintainers (unity-maintainers-team) |
Changed in unity (Ubuntu): | |
assignee: | Marco Trevisan (Treviño) (3v1n0) → Unity Maintainers (unity-maintainers-team) |
Changed in unity: | |
assignee: | Unity Maintainers (unity-maintainers-team) → Brandon Schaefer (brandontschaefer) |
Changed in unity (Ubuntu): | |
assignee: | Unity Maintainers (unity-maintainers-team) → Brandon Schaefer (brandontschaefer) |
Changed in unity: | |
importance: | Critical → High |
status: | Triaged → In Progress |
Changed in unity (Ubuntu): | |
status: | Triaged → In Progress |
Changed in unity: | |
milestone: | none → 7.0.0 |
Changed in unity (Ubuntu): | |
importance: | Critical → High |
Changed in unity: | |
assignee: | Brandon Schaefer (brandontschaefer) → Marco Trevisan (Treviño) (3v1n0) |
Changed in unity (Ubuntu): | |
assignee: | Brandon Schaefer (brandontschaefer) → Marco Trevisan (Treviño) (3v1n0) |
Changed in unity: | |
status: | In Progress → Fix Committed |
Changed in unity (Ubuntu): | |
status: | In Progress → Fix Committed |
Changed in ayatana-design: | |
status: | Fix Committed → Fix Released |
Hmm this already exists...and its already set to 1000ms. In CCSM its under Unityshell -> Launcher -> Duration of Sticky Edge Release After Break.
So when I slowly move my mouse to break the barrier, I can keep going back and forth between the barrier with out a problem. (Though you are stating this is broken currently?)
I only see one change needed for this bug is the fact that once the edge is broken you can keep going back until the time limit has been reached. You would like it to have the barrier come back after one crossing.