Merge lp://staging/~lukas-kde/unity8/preventScrollThruShellElements into lp://staging/unity8
- preventScrollThruShellElements
- Merge into trunk
Status: | Merged | ||||
---|---|---|---|---|---|
Approved by: | Daniel d'Andrada | ||||
Approved revision: | 2450 | ||||
Merged at revision: | 2505 | ||||
Proposed branch: | lp://staging/~lukas-kde/unity8/preventScrollThruShellElements | ||||
Merge into: | lp://staging/unity8 | ||||
Prerequisite: | lp://staging/~mzanetti/unity8/alerting-pips | ||||
Diff against target: |
243 lines (+91/-6) 6 files modified
qml/Launcher/LauncherPanel.qml (+3/-1) qml/Panel/IndicatorsMenu.qml (+3/-1) qml/Stages/DesktopSpread.qml (+2/-0) tests/qmltests/Launcher/tst_Launcher.qml (+23/-3) tests/qmltests/Panel/tst_IndicatorsMenu.qml (+29/-1) tests/qmltests/Stages/tst_DesktopStage.qml (+31/-0) |
||||
To merge this branch: | bzr merge lp://staging/~lukas-kde/unity8/preventScrollThruShellElements | ||||
Related bugs: |
|
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Unity8 CI Bot | continuous-integration | Approve | |
Daniel d'Andrada (community) | Approve | ||
Review via email:
|
Commit message
Prevent mouse wheel events from going through shell elements
Description of the change
Prevent mouse wheel events from going through shell elements
With launcher and expanded indicators
Fixes lp:1536268
![](/+icing/build/overlay/assets/skins/sam/images/close.gif)
Unity8 CI Bot (unity8-ci-bot) wrote : | # |
![](/+icing/build/overlay/assets/skins/sam/images/close.gif)
Daniel d'Andrada (dandrader) wrote : | # |
Works fine.
Would be great if you could update copyright headers of:
qml/Launcher/
qml/Panel/
tests/qmltests/
tests/qmltests/
![](/+icing/build/overlay/assets/skins/sam/images/close.gif)
Daniel d'Andrada (dandrader) wrote : | # |
Both in tst_IndicatorsM
If some other test starts using wheelSignalSpy (as it's an asset free for any test function to use) it would leave it in a dirty state for the next.
![](/+icing/build/overlay/assets/skins/sam/images/close.gif)
Daniel d'Andrada (dandrader) wrote : | # |
Please also include a fix for that:
https:/
- 2445. By Lukáš Tinkl
-
update (c)
- 2446. By Lukáš Tinkl
-
clear signal spies in cleanup()
![](/+icing/build/overlay/assets/skins/sam/images/close.gif)
Unity8 CI Bot (unity8-ci-bot) wrote : | # |
FAILED: Continuous integration, rev:2445
https:/
Executed test runs:
FAILURE: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
Click here to trigger a rebuild:
https:/
![](/+icing/build/overlay/assets/skins/sam/images/close.gif)
Unity8 CI Bot (unity8-ci-bot) wrote : | # |
FAILED: Continuous integration, rev:2446
https:/
Executed test runs:
FAILURE: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
Click here to trigger a rebuild:
https:/
- 2447. By Lukáš Tinkl
-
prevent the wheel also from going thru the desktop spread
![](/+icing/build/overlay/assets/skins/sam/images/close.gif)
Lukáš Tinkl (lukas-kde) wrote : | # |
> Works fine.
>
> Would be great if you could update copyright headers of:
> qml/Launcher/
> qml/Panel/
> tests/qmltests/
> tests/qmltests/
Copyright years updated
![](/+icing/build/overlay/assets/skins/sam/images/close.gif)
Lukáš Tinkl (lukas-kde) wrote : | # |
> Both in tst_IndicatorsM
> wheelSignalSpy in the cleanup() function.
>
> If some other test starts using wheelSignalSpy (as it's an asset free for any
> test function to use) it would leave it in a dirty state for the next.
OK, done
![](/+icing/build/overlay/assets/skins/sam/images/close.gif)
Lukáš Tinkl (lukas-kde) wrote : | # |
> Please also include a fix for that:
> https:/
Fixed (with a test as well)
![](/+icing/build/overlay/assets/skins/sam/images/close.gif)
Unity8 CI Bot (unity8-ci-bot) wrote : | # |
FAILED: Continuous integration, rev:2447
https:/
Executed test runs:
FAILURE: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
Click here to trigger a rebuild:
https:/
- 2448. By Lukáš Tinkl
-
cleanup unneded stuff with the MouseArea
![](/+icing/build/overlay/assets/skins/sam/images/close.gif)
Daniel d'Andrada (dandrader) wrote : | # |
Just noticed that right mouse button clicks go through the spread as well. Man, so many holes in those mouse event eaters...
I would vote for creating a MouseEater component and using it throughout unity8. Would save us for making the same mistakes over and over again.
The MouseEater must eat all buttons, wheel events and hover events.
I know that your bug and MP is just about scroll wheel events, but it would be a good opportunity to plug all holes once and for all. So I'm coll if we do this in a later MP.
![](/+icing/build/overlay/assets/skins/sam/images/close.gif)
Unity8 CI Bot (unity8-ci-bot) wrote : | # |
FAILED: Continuous integration, rev:2448
https:/
Executed test runs:
FAILURE: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
Click here to trigger a rebuild:
https:/
- 2449. By Lukáš Tinkl
-
also prevent non-left mouse clicks
![](/+icing/build/overlay/assets/skins/sam/images/close.gif)
Daniel d'Andrada (dandrader) wrote : | # |
Well, since you decided to get started on right-click leakage here as well then please plug that hole in the indicators panel. It does leak right-clicks.
![](/+icing/build/overlay/assets/skins/sam/images/close.gif)
Unity8 CI Bot (unity8-ci-bot) wrote : | # |
FAILED: Continuous integration, rev:2449
https:/
Executed test runs:
FAILURE: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
Click here to trigger a rebuild:
https:/
- 2450. By Lukáš Tinkl
-
plug even more holes
![](/+icing/build/overlay/assets/skins/sam/images/close.gif)
Lukáš Tinkl (lukas-kde) wrote : | # |
Alright, hopefully all the shell mouse event leaks plugged
![](/+icing/build/overlay/assets/skins/sam/images/close.gif)
Unity8 CI Bot (unity8-ci-bot) wrote : | # |
FAILED: Continuous integration, rev:2450
https:/
Executed test runs:
FAILURE: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
Click here to trigger a rebuild:
https:/
![](/+icing/build/overlay/assets/skins/sam/images/close.gif)
Daniel d'Andrada (dandrader) wrote : | # |
* Did you perform an exploratory manual test run of the code change and any related functionality?
Yes
* Did CI run pass? If not, please explain why.
No due to missing dependencies from the prerequisite. Modified tests passed locally though.
![](/+icing/build/overlay/assets/skins/sam/images/close.gif)
Unity8 CI Bot (unity8-ci-bot) wrote : | # |
PASSED: Continuous integration, rev:2450
https:/
Executed test runs:
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
Click here to trigger a rebuild:
https:/
- 2451. By Lukáš Tinkl
-
merge trunk
![](/+icing/build/overlay/assets/skins/sam/images/close.gif)
Michael Zanetti (mzanetti) wrote : | # |
> Just noticed that right mouse button clicks go through the spread as well.
> Man, so many holes in those mouse event eaters...
>
> I would vote for creating a MouseEater component and using it throughout
> unity8. Would save us for making the same mistakes over and over again.
>
> The MouseEater must eat all buttons, wheel events and hover events.
>
> I know that your bug and MP is just about scroll wheel events, but it would be
> a good opportunity to plug all holes once and for all. So I'm coll if we do
> this in a later MP.
+1 on this.
Something like:
MouseEater.qml
MouseArea {
property bool eatsLeftClick: true
property bool eatsRightClick: true
property bool eatsScrolling: true
onPressed: if (eatsLeftClick) mouse.accepted = true
onScroll: if (eatsScrolling) scroll.accepted = true
}
FAILED: Continuous integration, rev:2444 /unity8- jenkins. ubuntu. com/job/ lp-unity8- ci/1464/ /unity8- jenkins. ubuntu. com/job/ build/1953/ console /unity8- jenkins. ubuntu. com/job/ build-0- fetch/1979 /unity8- jenkins. ubuntu. com/job/ build-1- sourcepkg/ release= vivid+overlay/ 1913 /unity8- jenkins. ubuntu. com/job/ build-1- sourcepkg/ release= xenial+ overlay/ 1913 /unity8- jenkins. ubuntu. com/job/ build-1- sourcepkg/ release= yakkety/ 1913 /unity8- jenkins. ubuntu. com/job/ build-2- binpkg/ arch=amd64, release= vivid+overlay/ 1904/console /unity8- jenkins. ubuntu. com/job/ build-2- binpkg/ arch=amd64, release= xenial+ overlay/ 1904/console /unity8- jenkins. ubuntu. com/job/ build-2- binpkg/ arch=amd64, release= yakkety/ 1904/console /unity8- jenkins. ubuntu. com/job/ build-2- binpkg/ arch=armhf, release= vivid+overlay/ 1904/console /unity8- jenkins. ubuntu. com/job/ build-2- binpkg/ arch=armhf, release= xenial+ overlay/ 1904/console /unity8- jenkins. ubuntu. com/job/ build-2- binpkg/ arch=armhf, release= yakkety/ 1904/console /unity8- jenkins. ubuntu. com/job/ build-2- binpkg/ arch=i386, release= vivid+overlay/ 1904/console /unity8- jenkins. ubuntu. com/job/ build-2- binpkg/ arch=i386, release= xenial+ overlay/ 1904/console /unity8- jenkins. ubuntu. com/job/ build-2- binpkg/ arch=i386, release= yakkety/ 1904/console
https:/
Executed test runs:
FAILURE: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
Click here to trigger a rebuild: /unity8- jenkins. ubuntu. com/job/ lp-unity8- ci/1464/ rebuild
https:/