Merge lp:~alan-griffiths/miral/fix-1705973 into lp:miral
- fix-1705973
- Merge into trunk
Status: | Merged | ||||
---|---|---|---|---|---|
Approved by: | Alan Griffiths | ||||
Approved revision: | 569 | ||||
Merged at revision: | 570 | ||||
Proposed branch: | lp:~alan-griffiths/miral/fix-1705973 | ||||
Merge into: | lp:miral | ||||
Diff against target: |
44 lines (+8/-2) 2 files modified
miral-shell/floating_window_manager.cpp (+7/-2) miral-shell/floating_window_manager.h (+1/-0) |
||||
To merge this branch: | bzr merge lp:~alan-griffiths/miral/fix-1705973 | ||||
Related bugs: |
|
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Mir CI Bot | continuous-integration | Approve | |
Gerry Boland (community) | Approve | ||
Review via email: mp+327965@code.launchpad.net |
Commit message
[miral-shell] Don't allow splashscreen to be occluded
Description of the change
Mir CI Bot (mir-ci-bot) wrote : | # |
Mir CI Bot (mir-ci-bot) wrote : | # |
PASSED: Continuous integration, rev:567
https:/
Executed test runs:
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:/
Click here to trigger a rebuild:
https:/
Gerry Boland (gerboland) wrote : | # |
Hmm, this does help, but also exposes some timing problem
I was testing this with
miral-shell&; sleep 0.2; mir_demo_
Before this patch, yes the spinnytriangle is always on top. With this patch, there is a flicker where the triangle starts before the splash seems to, so there's a flicker.
Most likely a different issue tho
Gerry Boland (gerboland) wrote : | # |
Explaining better:
Before this patch, yes the spinnytriangle is always on top of the splash. With this patch, there is a flicker where the triangle starts before the splash seems to, and then z order changes rapidly when the splash appears on top
Alan Griffiths (alan-griffiths) wrote : | # |
> Explaining better:
> Before this patch, yes the spinnytriangle is always on top of the splash. With
> this patch, there is a flicker where the triangle starts before the splash
> seems to, and then z order changes rapidly when the splash appears on top
I don't see that here (yet).
But there is a potential race when adjusting the z-order and the triangle could potentially paint its few frames before the spinner is (re)placed over it.
Can we file that as a separate bug? I think we need new Mir APIs to control the Z-order directly (or "layers") to avoid it completely.
Gerry Boland (gerboland) wrote : | # |
Yep, ok as separate bug.
Mir CI Bot (mir-ci-bot) wrote : | # |
FAILED: Autolanding.
More details in the following jenkins job:
https:/
Executed test runs:
FAILURE: https:/
None: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
Mir CI Bot (mir-ci-bot) wrote : | # |
PASSED: Continuous integration, rev:568
https:/
Executed test runs:
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:/
Click here to trigger a rebuild:
https:/
Mir CI Bot (mir-ci-bot) wrote : | # |
FAILED: Autolanding.
More details in the following jenkins job:
https:/
Executed test runs:
FAILURE: https:/
None: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
Mir CI Bot (mir-ci-bot) wrote : | # |
FAILED: Autolanding.
More details in the following jenkins job:
https:/
Executed test runs:
FAILURE: https:/
None: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
Mir CI Bot (mir-ci-bot) wrote : | # |
PASSED: Continuous integration, rev:569
https:/
Executed test runs:
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:/
Click here to trigger a rebuild:
https:/
- 569. By Alan Griffiths
-
merge :parent & resolve trivial conflict (again)
Preview Diff
1 | === modified file 'miral-shell/floating_window_manager.cpp' | |||
2 | --- miral-shell/floating_window_manager.cpp 2017-07-26 10:44:19 +0000 | |||
3 | +++ miral-shell/floating_window_manager.cpp 2017-07-28 13:43:38 +0000 | |||
4 | @@ -312,6 +312,7 @@ | |||
5 | 312 | decoration_provider->create_titlebar_for(window_info.window()); | 312 | decoration_provider->create_titlebar_for(window_info.window()); |
6 | 313 | 313 | ||
7 | 314 | CanonicalWindowManagerPolicy::handle_window_ready(window_info); | 314 | CanonicalWindowManagerPolicy::handle_window_ready(window_info); |
8 | 315 | keep_spinner_on_top(); | ||
9 | 315 | } | 316 | } |
10 | 316 | 317 | ||
11 | 317 | void FloatingWindowManagerPolicy::advise_focus_lost(WindowInfo const& info) | 318 | void FloatingWindowManagerPolicy::advise_focus_lost(WindowInfo const& info) |
12 | @@ -326,14 +327,18 @@ | |||
13 | 326 | CanonicalWindowManagerPolicy::advise_focus_gained(info); | 327 | CanonicalWindowManagerPolicy::advise_focus_gained(info); |
14 | 327 | 328 | ||
15 | 328 | decoration_provider->paint_titlebar_for(info, 0xFF); | 329 | decoration_provider->paint_titlebar_for(info, 0xFF); |
16 | 330 | keep_spinner_on_top(); | ||
17 | 331 | } | ||
18 | 329 | 332 | ||
19 | 333 | void FloatingWindowManagerPolicy::keep_spinner_on_top() | ||
20 | 334 | { | ||
21 | 330 | // Frig to force the spinner to the top | 335 | // Frig to force the spinner to the top |
22 | 331 | if (auto const spinner_session = spinner.session()) | 336 | if (auto const spinner_session = spinner.session()) |
23 | 332 | { | 337 | { |
24 | 333 | auto const& spinner_info = tools.info_for(spinner_session); | 338 | auto const& spinner_info = tools.info_for(spinner_session); |
25 | 334 | 339 | ||
28 | 335 | if (spinner_info.windows().size() > 0) | 340 | for (auto const& window : spinner_info.windows()) |
29 | 336 | tools.raise_tree(spinner_info.windows()[0]); | 341 | tools.raise_tree(window); |
30 | 337 | } | 342 | } |
31 | 338 | } | 343 | } |
32 | 339 | 344 | ||
33 | 340 | 345 | ||
34 | === modified file 'miral-shell/floating_window_manager.h' | |||
35 | --- miral-shell/floating_window_manager.h 2017-07-26 10:44:19 +0000 | |||
36 | +++ miral-shell/floating_window_manager.h 2017-07-28 13:43:38 +0000 | |||
37 | @@ -140,6 +140,7 @@ | |||
38 | 140 | 140 | ||
39 | 141 | void apply_workspace_hidden_to(miral::Window const& window); | 141 | void apply_workspace_hidden_to(miral::Window const& window); |
40 | 142 | 142 | ||
41 | 143 | void keep_spinner_on_top(); | ||
42 | 143 | }; | 144 | }; |
43 | 144 | 145 | ||
44 | 145 | #endif //MIRAL_SHELL_FLOATING_WINDOW_MANAGER_H | 146 | #endif //MIRAL_SHELL_FLOATING_WINDOW_MANAGER_H |
PASSED: Continuous integration, rev:566 /mir-jenkins. ubuntu. com/job/ miral-ci/ 47/ /mir-jenkins. ubuntu. com/job/ build-miral/ 72 /mir-jenkins. ubuntu. com/job/ build-0- fetch/4979 /mir-jenkins. ubuntu. com/job/ build-1- sourcepkg/ release= artful/ 4968 /mir-jenkins. ubuntu. com/job/ build-1- sourcepkg/ release= xenial/ 4968 /mir-jenkins. ubuntu. com/job/ build-1- sourcepkg/ release= zesty/4968 /mir-jenkins. ubuntu. com/job/ build-2- binpkg- miral/arch= amd64,release= artful/ 76 /mir-jenkins. ubuntu. com/job/ build-2- binpkg- miral/arch= amd64,release= artful/ 76/artifact/ output/ *zip*/output. zip /mir-jenkins. ubuntu. com/job/ build-2- binpkg- miral/arch= amd64,release= xenial/ 76 /mir-jenkins. ubuntu. com/job/ build-2- binpkg- miral/arch= amd64,release= xenial/ 76/artifact/ output/ *zip*/output. zip /mir-jenkins. ubuntu. com/job/ build-2- binpkg- miral/arch= amd64,release= zesty/76 /mir-jenkins. ubuntu. com/job/ build-2- binpkg- miral/arch= amd64,release= zesty/76/ artifact/ output/ *zip*/output. zip /mir-jenkins. ubuntu. com/job/ build-2- binpkg- miral/arch= i386,release= artful/ 76 /mir-jenkins. ubuntu. com/job/ build-2- binpkg- miral/arch= i386,release= artful/ 76/artifact/ output/ *zip*/output. zip /mir-jenkins. ubuntu. com/job/ build-2- binpkg- miral/arch= i386,release= xenial/ 76 /mir-jenkins. ubuntu. com/job/ build-2- binpkg- miral/arch= i386,release= xenial/ 76/artifact/ output/ *zip*/output. zip /mir-jenkins. ubuntu. com/job/ build-2- binpkg- miral/arch= i386,release= zesty/76 /mir-jenkins. ubuntu. com/job/ build-2- binpkg- miral/arch= i386,release= zesty/76/ artifact/ output/ *zip*/output. zip
https:/
Executed test runs:
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:/
Click here to trigger a rebuild: /mir-jenkins. ubuntu. com/job/ miral-ci/ 47/rebuild
https:/