Merge lp:~dandrader/qtmir/appRestart-lp1527737 into lp:qtmir
| Status: | Superseded |
|---|---|
| Proposed branch: | lp:~dandrader/qtmir/appRestart-lp1527737 |
| Merge into: | lp:qtmir |
| Prerequisite: | lp:~dandrader/qtmir/removeUselessClass |
| Diff against target: |
809 lines (+375/-68) 16 files modified
CMakeLists.txt (+1/-1) debian/control (+2/-2) src/modules/Unity/Application/application.cpp (+16/-0) src/modules/Unity/Application/application.h (+3/-0) src/modules/Unity/Application/application_manager.cpp (+112/-49) src/modules/Unity/Application/application_manager.h (+2/-1) src/modules/Unity/Application/taskcontroller.h (+4/-0) src/modules/Unity/Application/upstart/taskcontroller.cpp (+8/-0) src/modules/Unity/Application/upstart/taskcontroller.h (+2/-0) src/platforms/mirserver/mirserver.cpp (+8/-1) src/platforms/mirserver/mirserver.h (+3/-1) src/platforms/mirserver/mirwindowmanager.cpp (+20/-10) src/platforms/mirserver/mirwindowmanager.h (+7/-2) tests/framework/mock_task_controller.h (+1/-0) tests/mirserver/WindowManager/window_manager.cpp (+1/-1) tests/modules/ApplicationManager/application_manager_test.cpp (+185/-0) |
| To merge this branch: | bzr merge lp:~dandrader/qtmir/appRestart-lp1527737 |
| Related bugs: |
| Reviewer | Review Type | Date Requested | Status |
|---|---|---|---|
| Michał Sawicz | Needs Fixing on 2016-01-27 | ||
| PS Jenkins bot | continuous-integration | Needs Fixing on 2016-01-13 | |
| Unity8 CI Bot | continuous-integration | Needs Fixing on 2016-01-13 | |
| Gerry Boland | 2016-01-05 | Approve on 2016-01-08 | |
|
Review via email:
|
|||
This proposal has been superseded by a proposal from 2016-02-01.
Commit Message
Handle case where TaskController requests an application that is already closing
Happens when you quickly close an application and then tap on its icon in the dash
Description of the Change
* Are there any related MPs required for this MP to build/function as expected? Please list.
Not strictly needed but I haven't tried without it:
https:/
* Did you perform an exploratory manual test run of your code change and any related functionality?
Yes, on phone and desktop.
* If you changed the packaging (debian), did you subscribe the ubuntu-unity team to this MP?
Not applicable.
| PS Jenkins bot (ps-jenkins) wrote : | # |
FAILED: Continuous integration, rev:437
http://
Executed test runs:
SUCCESS: http://
SUCCESS: http://
deb: http://
SUCCESS: http://
FAILURE: http://
FAILURE: http://
FAILURE: http://
Click here to trigger a rebuild:
http://
| Gerry Boland (gerboland) wrote : | # |
=== modified file 'src/modules/
+ // We interpret this as a focus request for a suspended app.
+ // Shell will have this app resumed if it complies with the focus request
QObject:
- manager, &ApplicationMan
+ manager, &ApplicationMan
The original purpose of the resumeRequested signal from UAL was to tell AppMan to un-suspend a suspended app, since AppMan used to manage that. But since UAL does suspend/resume now itself, this signal is worthless. Suspect we should remove completely.
Does not the focusRequested signal always get fired if url-dispatcher wants to focus an app? In which case, is this interpretation even necessary? If we can, I think we should remove it.
+ << "ApplicationMan
+ " a new instance of an application that is still closing. Queuing its start.";
we should investigate how to launch new instance immediately, instead of waiting for the closing one to quit. I'd be worried if the closing app crashes during close, as it won't be considered closed until apport has completed collecting the crash dump, causing the new instance a long delay. Not for this MP, but perhaps a TODO?
Also nitpick: could you line up the qCDebug strings, in both spots in this method?
+ // TaskController doesn't give us any PID so we have no way of telling apart two instances
+ // of an application.
we should get that fixed. UAL must have way of dealing with multiple instances of the same App, and distinguishing them. If not, we'll need to add it.
+1 on the header for the test. We should do that from now on.
+ // DeferredDelete is special: likes to be called out specifically or it won't come out
weird?? Event loop blocked somehow?
Nice work
| PS Jenkins bot (ps-jenkins) wrote : | # |
FAILED: Continuous integration, rev:438
http://
Executed test runs:
SUCCESS: http://
SUCCESS: http://
deb: http://
SUCCESS: http://
FAILURE: http://
FAILURE: http://
FAILURE: http://
Click here to trigger a rebuild:
http://
| PS Jenkins bot (ps-jenkins) wrote : | # |
FAILED: Continuous integration, rev:440
http://
Executed test runs:
SUCCESS: http://
SUCCESS: http://
deb: http://
SUCCESS: http://
FAILURE: http://
FAILURE: http://
FAILURE: http://
Click here to trigger a rebuild:
http://
| Daniel d'Andrada (dandrader) wrote : | # |
On 07/01/2016 14:39, Gerry Boland wrote:
> Review: Needs Fixing
>
> === modified file 'src/modules/
> + // We interpret this as a focus request for a suspended app.
> + // Shell will have this app resumed if it complies with the focus request
> QObject:
> - manager, &ApplicationMan
> + manager, &ApplicationMan
>
>
> The original purpose of the resumeRequested signal from UAL was to tell AppMan to un-suspend a suspended app, since AppMan used to manage that. But since UAL does suspend/resume now itself, this signal is worthless. Suspect we should remove completely.
>
> Does not the focusRequested signal always get fired if url-dispatcher wants to focus an app? In which case, is this interpretation even necessary? If we can, I think we should remove it.
When you tap on a suspended app in the dash you immediately get a
appStarting followed by a resumeRequest. If you don't respond to it (ie,
resume&focus the app), ages later you get a focusRequested.
So if I remove resumeRequested I would have to interpret appStarting for
a already running application as a focus request, which actually
wouldn't be wrong.
Btw, I find it odd that ubuntu_app_launch work that way, always sending
an appStarting signal even though the app is already running, but that's
the way it is...
> + << "ApplicationMan
> + " a new instance of an application that is still closing. Queuing its start.";
> we should investigate how to launch new instance immediately, instead of waiting for the closing one to quit. I'd be worried if the closing app crashes during close, as it won't be considered closed until apport has completed collecting the crash dump, causing the new instance a long delay. Not for this MP, but perhaps a TODO?
Agreed. The delay is noticeable. Added the TODO comment.
>
> Also nitpick: could you line up the qCDebug strings, in both spots in this method?
Wrapped the qCDebug boilerplate in a macro.
>
>
> + // TaskController doesn't give us any PID so we have no way of telling apart two instances
> + // of an application.
> we should get that fixed. UAL must have way of dealing with multiple instances of the same App, and distinguishing them. If not, we'll need to add it.
As far as I understand it ubuntu-app-launch (and the upstart service?)
have the concept that you can have only one running instance of an
application (like a service, that you start/stop using upstart).
This sounds like a bigger architectural change, out of scope for this MP.
> + // DeferredDelete is special: likes to be called out specifically or it won't come out
> weird?? Event loop blocked somehow?
>
QObject:
in a special way in QCoreApplication etc, unlike any other QEvent.
There's code in there specifically for leaving it out of forced event
processing (like sendPostedEvents) unless you explicitly ask for that
particular event type.
| Gerry Boland (gerboland) wrote : | # |
> On 07/01/2016 14:39, Gerry Boland wrote:
> > Review: Needs Fixing
> >
> > === modified file 'src/modules/
> > + // We interpret this as a focus request for a suspended app.
> > + // Shell will have this app resumed if it complies with the focus
> request
> > QObject:
> > - manager, &ApplicationMan
> > + manager, &ApplicationMan
> >
> >
> > The original purpose of the resumeRequested signal from UAL was to tell
> AppMan to un-suspend a suspended app, since AppMan used to manage that. But
> since UAL does suspend/resume now itself, this signal is worthless. Suspect we
> should remove completely.
> >
> > Does not the focusRequested signal always get fired if url-dispatcher wants
> to focus an app? In which case, is this interpretation even necessary? If we
> can, I think we should remove it.
>
> When you tap on a suspended app in the dash you immediately get a
> appStarting followed by a resumeRequest. If you don't respond to it (ie,
> resume&focus the app), ages later you get a focusRequested.
>
> So if I remove resumeRequested I would have to interpret appStarting for
> a already running application as a focus request, which actually
> wouldn't be wrong.
>
> Btw, I find it odd that ubuntu_app_launch work that way, always sending
> an appStarting signal even though the app is already running, but that's
> the way it is...
Fair enough. This will do for now.
>
> >
> >
> > + // TaskController doesn't give us any PID so we have no way of telling
> apart two instances
> > + // of an application.
> > we should get that fixed. UAL must have way of dealing with multiple
> instances of the same App, and distinguishing them. If not, we'll need to add
> it.
>
> As far as I understand it ubuntu-app-launch (and the upstart service?)
> have the concept that you can have only one running instance of an
> application (like a service, that you start/stop using upstart).
>
> This sounds like a bigger architectural change, out of scope for this MP.
Oh of course. Was just observation.
> > + // DeferredDelete is special: likes to be called out specifically or it
> won't come out
> > weird?? Event loop blocked somehow?
> >
>
> QObject:
> in a special way in QCoreApplication etc, unlike any other QEvent.
> There's code in there specifically for leaving it out of forced event
> processing (like sendPostedEvents) unless you explicitly ask for that
> particular event type.
Interesting, I didn't know that.
| Gerry Boland (gerboland) wrote : | # |
Just ran UITK AP tests to ensure sanity, no issues found. Happy to approve
| Michał Sawicz (saviq) wrote : | # |
QA found a problem with this and I can confirm on devel-proposed/
Trying to follow steps from Victor [1] I got into a state where unity8 rejects the camera app:
qtmir.applications: ApplicationMana
qtmir.mir: SessionAuthoriz
qtmir.applications: ApplicationMana
ApplicationManager REJECTED connection from app with pid 22192 as it was not launched by upstart, and no desktop_file_hint is specified
qtmir.applications: ApplicationMana
qtmir.applications: ApplicationMana
Victor can confirm the same happened to him with camera and settings apps.
[1] https:/
| Daniel d'Andrada (dandrader) wrote : | # |
On 12/01/2016 14:39, Michał Sawicz wrote:
> Review: Needs Fixing
>
> QA found a problem with this and I can confirm on devel-proposed/
>
> Trying to follow steps from Victor [1] I got into a state where unity8 rejects the camera app:
>
> qtmir.applications: ApplicationMana
> qtmir.mir: SessionAuthoriz
> qtmir.applications: ApplicationMana
> ApplicationManager REJECTED connection from app with pid 22192 as it was not launched by upstart, and no desktop_file_hint is specified
> qtmir.applications: ApplicationMana
> qtmir.applications: ApplicationMana
>
> Victor can confirm the same happened to him with camera and settings apps.
>
> [1] https:/
I followed the steps below:
"""
* Open messaging app.
* Slide up to create a new message.
* Tap on the camera icon.
* In content hub tap on the camera app.
* Take a photo in the camera app.
* Tap on the big tick. Returned to the messaging app with the image in
the text window.
* Swipe in from the right to reveal the spread.
* Open spread.
* Switch to the camera app.
Expected result:
* Camera app should display the live view.
Actual result:
* Camera app shows a black screen
"""
A second after switching to camera-app it goes away.
Log shows that camera-app quit (closed itself). Which is expected as it
was summoned by the content hub as a helper and was no longer needed.
Different from the log you got.
In this situation there's nothing unity8 can do. If the app closes
itself shortly after it's focused, I don't think unity8 should go and
restart it.
| Daniel d'Andrada (dandrader) wrote : | # |
Furthermore, in this "messaging -> content-hub -> camera-app" use case, unity8 is *not* asking camera-app to close itself, unlike the use case of the bug report which is what this MP is fixing.
From unity8's point of view, camera-app is simply quitting on its own accord.
| Daniel d'Andrada (dandrader) wrote : | # |
it probably shouldn't even be in the spread in the first place, like if it were a surface from a prompt helper session.
| Michał Sawicz (saviq) wrote : | # |
Then you didn't get the issue I described. There are no reliable steps to reproduce, but after I followed those steps (and camera crashed due to bug #1524131, I couldn't start camera at all after it closed. The above messages were printed in unity8's log, not how it says that camera was not started by upstart and that's why it's rejected. But camera was, in fact, started by upstart, from the apps scope. Victor reported this same problem with settings app, so unrelated to content hub. I've not seen it happen without this change.
| Unity8 CI Bot (unity8-ci-bot) wrote : | # |
FAILED: Continuous integration, rev:440
https:/
Executed test runs:
Click here to trigger a rebuild:
https:/
| Daniel d'Andrada (dandrader) wrote : | # |
I just can't reproduce it. I'm stuck. Added the handling of a special case though, where upstart would send a bogus signal.
Could you please install the latest version of this patch + lp:~dandrader/qtubuntu/offscreenSurface-lp1527737 and then send me the log of this failure? Ah, and not just the last few lines!
| Unity8 CI Bot (unity8-ci-bot) wrote : | # |
FAILED: Continuous integration, rev:441
https:/
Executed test runs:
Click here to trigger a rebuild:
https:/
| PS Jenkins bot (ps-jenkins) wrote : | # |
FAILED: Continuous integration, rev:441
http://
Executed test runs:
FAILURE: http://
FAILURE: http://
FAILURE: http://
FAILURE: http://
FAILURE: http://
FAILURE: http://
Click here to trigger a rebuild:
http://
- 435. By Nick Dedekind on 2016-01-22
-
Fixed issue where stopping the session while suspending was causing app close to stall. Fixes: #1536133
- 436. By CI Train Bot Account on 2016-01-22
-
Releasing 0.4.7+16.
04.20160122- 0ubuntu1
- 437. By Brandon Schaefer on 2016-01-27
-
Changes for mir 0.19.
- 438. By CI Train Bot Account on 2016-01-27
-
Releasing 0.4.7+16.
04.20160127. 1-0ubuntu1 - 439. By Nick Dedekind on 2016-02-08
-
Added fix and test for closing app during the StoppedResumable state. Fixes: #1541388
Approved by: Michael Zanetti - 440. By CI Train Bot Account on 2016-02-08
-
Releasing 0.4.7+16.
04.20160208- 0ubuntu1 - 441. By Nick Dedekind on 2016-02-12
-
Moved test framework into a static library for quicker recompilation.
Approved by: Gerry Boland - 442. By Daniel d'Andrada on 2016-02-12
-
Remove the useless TaskController
It was just forwarding calls between ApplicationManager and ApplicationCron
troller.
Had no logic of its own.ApplicationCron
troller was then renamed to TaskController as the latter has a better API and it also keeps ApplicationManager code more or less untouched. Tests have been improved a bit by better emulating TaskController behavior
Approved by: Nick Dedekind - 443. By Daniel d'Andrada on 2016-02-12
-
Let shell decide the initial surface size Fixes: #1532974
Approved by: Nick Dedekind - 444. By Daniel d'Andrada on 2016-02-12
-
Surface Size Hints
Approved by: Lukáš Tinkl - 445. By Albert Astals Cid on 2016-02-12
-
Reset start time if the timestamp travels to the past
Fixes: #1524488
Approved by: Nick Dedekind - 446. By Albert Astals Cid on 2016-02-12
-
Provide branch prediction information to the if in compressTimestamp
Approved by: Gerry Boland - 447. By Michał Sawicz on 2016-02-12
-
Use QStandardPaths to determine QML cache location
Also use temporary XDG_CACHE_HOME in ApplicationMana
gerTests so we don't pollute user's $HOME
Approved by: Unity8 CI Bot, Albert Astals Cid - 448. By Daniel d'Andrada on 2016-02-12
-
Update mir version requirement
Approved by: Nick Dedekind - 449. By Michał Sawicz on 2016-02-12
-
Bump unity-api dependencies
Approved by: Michael Terry - 450. By CI Train Bot Account on 2016-02-12
-
Releasing 0.4.7+16.
04.20160212- 0ubuntu1 - 451. By Alan Griffiths on 2016-02-19
-
Mir 0.20 Release
Approved by: Cemil Azizoglu - 452. By CI Train Bot Account on 2016-02-19
-
Releasing 0.4.7+16.
04.20160219- 0ubuntu1 - 453. By Gerry Boland on 2016-03-10
-
Allow Mir remove command line arguments it understands, before letting Qt process them.
Approved by: Daniel d'Andrada - 454. By Alan Griffiths on 2016-03-10
-
Copy the Window Management work-in-progress from Mir examples.
Approved by: Gerry Boland - 455. By Michael Zanetti on 2016-03-10
-
Add a dedicated property for the inputMethodSurface
When we're hot-plugging screens, the OSK ui might only be created after surfaceCreated() is emitted and we miss that signal. Fixes: #1545286
Approved by: Daniel d'Andrada - 456. By Gerry Boland on 2016-03-10
-
Screen: only enable orientation sensor for internal display.
It's not great, but works around orientation sensor not working after device unplug from monitor. I believe this is because QtUbuntu-Sensors and Platform-api are not dealing properly with multiple accessors of the sensors. Instead only the last accessor gets correct state, and the earlier ones get nothing. Fixes: #1545286
Approved by: Unity8 CI Bot, Michael Zanetti - 457. By Daniel d'Andrada on 2016-03-10
-
Ensure QmlEngine doesn't delete our MirSurfaces
Approved by: Gerry Boland, Unity8 CI Bot - 458. By Gerry Boland on 2016-03-10
-
Ensure ScreenWindow geometry correctly set and used after moving Screen
NB: this will conflict with lp:~unity-team/qtmir/set-display-config, from which this is a cherry-pick Fixes: #1545286
Approved by: Gerry Boland, Unity8 CI Bot - 459. By Michael Terry on 2016-03-10
-
Fix some mocks to use more realistic code paths.
Specifically, MockApplication
Controller: :doAppIdHasProc essId() was returning -1 if the appId was unknown. But that function returns a bool, so the -1 got translated into a true value. So that mocked method returned true for appIds that hadn't been registered yet. In order to fix that, I decided to rewrite doAppIdHasProcessId to call primaryPidForAppId so that it could be overridden easier in tests. And adjusted the affected tests to all set an ON_CALL(
primaryPidForAp pId). (Because otherwise the test has no way to influence the pid used for children -- why do we actually fork off a while(true) process?)
There are several other fixes here for pieces of the mocks that I found were missing while exploring solutions for the above problem:
- I'm actually not 100% clear on why this started being called, but MockSession::name() couldn't create a default value for QString and the gtest framework was bailing when it was called. So I added a default.
- Similarly, if ApplicationMana
ger::authorizeS ession( ) tries to examine an app's commandline, gtest will abort because MockProcInfo: :command_ line() doesn't have a mock return value. So I added a default. - And if authorizeSession() lasted long enough to see that the Application object already existed, it deleted the desktop reader object it had made. But the test mocks always returned the same object, so this caused a segfault. I retooled the ApplicationManager tests to return a new object each time DesktopFileRead
erFactory: :createInstance was called.
Approved by: Gerry Boland, Unity8 CI Bot - 460. By Alberto Aguirre on 2016-03-10
-
Hook MirOpenGLContex
t::doneCurrent to Screen::doneCurrent Actually unbind the opengl/egl context when requested.
Approved by: Gerry Boland - 461. By Michał Sawicz on 2016-03-10
-
Drop dummy autopkgtest
It doesn't make sense after all - DEP-8 tests are meant to test packages as-installed, not rebuild them from scratch. This meant that new Mir releases got blocked on this, because old qtmir was trying to build against new Mir, which usually fails, as needs adaptation for API changes.
Approved by: Gerry Boland - 462. By CI Train Bot Account on 2016-03-10
-
Releasing 0.4.7+16.
04.20160310. 1-0ubuntu1 - 463. By Nick Dedekind on 2016-03-22
-
Added setStage for sidestage redesign and removed ExecFlags
Approved by: Daniel d'Andrada - 464. By Michał Sawicz on 2016-03-22
-
Add support for low shell chrome. Fixes: #1535397
Approved by: Gerry Boland - 465. By Michał Sawicz on 2016-03-22
-
Support for switching keyboard layouts Fixes: #1491340, #1524400
Approved by: Michael Terry - 466. By CI Train Bot Account on 2016-03-22
-
Releasing 0.4.8+16.
04.20160322. 1-0ubuntu1 - 467. By Daniel van Vugt on 2016-03-29
-
Don't use preferred_
mode_index. Some devices like TVs don't provide a
preferred mode, so preferred_mode_index may be out of range (a clumsy
way to represent 'none'). Instead use the resolution of the current display mode, which should always be in range.Fixes LP: #1560497 Fixes: #1560497
Approved by: Gerry Boland - 468. By CI Train Bot Account on 2016-03-29
-
Releasing 0.4.8+16.
04.20160329. 1-0ubuntu1 - 469. By Michał Sawicz on 2016-03-30
-
Drop leftover Xs-Testsuite header
Approved by: Unity8 CI Bot, Gerry Boland - 470. By CI Train Bot Account on 2016-03-30
-
Releasing 0.4.8+16.
04.20160330- 0ubuntu1 - 471. By Daniel d'Andrada on 2016-04-13
-
Logging of Qt's OpenGL debug messages now must be enabled via CMake option
Approved by: Gerry Boland - 472. By Daniel d'Andrada on 2016-04-13
-
Application: improve debug logging
Minimize boilerplate in logging code, as well as standardise its format.
Approved by: Gerry Boland - 473. By Daniel d'Andrada on 2016-04-13
-
Remove application screenshot provider
It's no longer needed now that QML provides a "item-snapshot" feature.
Besides, it has no purpose in a surface-based window management.
Approved by: Lukáš Tinkl, Gerry Boland - 474. By Daniel d'Andrada on 2016-04-13
-
MirSurface: replace keymapLayout and keymapVariant with keymap
That's easier for unity8 to use, leads to declarative code.
Approved by: Lukáš Tinkl - 475. By Daniel d'Andrada on 2016-04-13
-
Surface-based window management
- Session is no longer exported to QML. It's now an internal qtmir concept.
Approved by: Gerry Boland - 476. By Michał Sawicz on 2016-04-13
-
Inline -gles packaging.
Approved by: Gerry Boland - 477. By CI Train Bot Account on 2016-04-13
-
Releasing 0.4.8+16.
04.20160413- 0ubuntu1 - 478. By Alberto Aguirre on 2016-04-26
-
Mir 0.22 compatibility
Approved by: Cemil Azizoglu, Kevin DuBois, Brandon Schaefer - 479. By CI Train Bot Account on 2016-04-26
-
Releasing 0.4.8+16.
04.20160426- 0ubuntu1 - 480. By Michael Terry on 2016-04-28
-
Use latest UbuntuAppLaunch API which supports libertine apps.
Approved by: Nick Dedekind - 481. By Lukáš Tinkl on 2016-04-28
-
Regression fix: restore window title handling Fixes: #1563522
Approved by: Nick Dedekind - 482. By CI Train Bot Account on 2016-04-28
-
Releasing 0.4.8+16.
04.20160428- 0ubuntu1 - 483. By Gerry Boland on 2016-04-29
-
Enhance ScreenController & the DisplayConfigur
ationPolicy to implement dynamic grid units. - Rename ScreenController to ScreenModel, as it just reflects current screen state, does not offer means to configure it
- ScreenController can update state of existing Screens, based on Mir DisplayConfiguration changes.
- Expand Screen to include scale & form factor properties, with getter/notifier in NativeInterface. This enables the dynamic grid units in the shell
- Add a Unity.Screens qml module to give QML better information about connected screens, and allow basic reconfiguring.
- Implement a basic display configuration policy to set suitable scale and form factor on an external display (needed for dynamic grid units) Fixes: #1573532
Approved by: Unity8 CI Bot, Daniel d'Andrada - 484. By CI Train Bot Account on 2016-04-29
-
Releasing 0.4.8+16.
04.20160429. 1-0ubuntu1 - 485. By Daniel d'Andrada on 2016-05-11
-
Session: Add a blank surface to the public list if it already has child prompt surfaces
A prompt session may come in too early, before its parent session got a chance
to draw its surface's first frame.Normally that wouldn't be a problem and we could withhold that parent surface until
it's finally drawn to. But unfortunately the application process might be blocked,
unable to draw anything, until its child prompt session gets dismissed.Because of that we have no option but to expose this blank surface to shell so that
it can display it along with the prompt surface on top of it, so that the user can
interact with it right away and finally unblock the application. Fixes: #1578665
Approved by: Unity8 CI Bot - 486. By CI Train Bot Account on 2016-05-11
-
Releasing 0.4.8+16.
04.20160511- 0ubuntu1 - 487. By Daniel d'Andrada on 2016-05-18
-
Fix ProxySurfaceLis
tModel: :countChanged signal
Approved by: Unity8 CI Bot - 488. By Daniel d'Andrada on 2016-05-18
-
Move prompt surfaces from MirSurface to Application and emit firstChanged signal
- 489. By CI Train Bot Account on 2016-05-18
-
Releasing 0.4.8+16.
04.20160518. 1-0ubuntu1 - 490. By Gerry Boland on 2016-05-20
-
UAL can throw on creating Application if invalid appId, catch instead of aborting Fixes: #1578258
Approved by: Unity8 CI Bot, Michael Terry - 491. By Daniel d'Andrada on 2016-05-20
-
Application: Don't respawn if closed while still starting up
+ refactoring of Application:
:onSessionState Changed to explicitly cover every single internal state on session stopping. Fixes: #1575577
Approved by: Gerry Boland, Unity8 CI Bot, Michael Terry - 492. By Alan Griffiths on 2016-05-20
-
Reduce coupling to MirServer - it has been misused as a context object.
Approved by: Alan Griffiths, Unity8 CI Bot, Daniel d'Andrada - 493. By Michał Sawicz on 2016-05-20
-
Centralize logging categories
The header part is already centralized. Make the cpp the same.
Moves all logging category symbols to the mirserver lib.
Enables mirserver to use logging categories that were previously declared in the Unity.Application module.
Approved by: Unity8 CI Bot, Michael Terry - 494. By Daniel d'Andrada on 2016-05-20
-
Also interpret the cursor names used by Mir client API Fixes: #1447839
Approved by: Unity8 CI Bot, Michał Sawicz - 495. By Timo Jyrinki on 2016-05-20
-
Use FindQt5Platform
Support to find platform support, other methods not available on Qt 5.6 anymore. Fixes: #1554404
Approved by: Gerry Boland - 496. By CI Train Bot Account on 2016-05-20
-
Releasing 0.4.8+16.
10.20160520. 1-0ubuntu1 - 497. By Daniel d'Andrada on 2016-05-25
-
Bump unity-api versions
Approved by: Lukáš Tinkl - 498. By Alan Griffiths on 2016-05-25
-
Drop the (unused) prototype Window Management code
Approved by: Gerry Boland, Unity8 CI Bot - 499. By Daniel d'Andrada on 2016-05-25
-
Fix mir::scene::Surface focus attribute updates
Approved by: Unity8 CI Bot - 500. By Albert Astals Cid on 2016-05-25
-
Enable workaround_
brokenFBOReadBa ck on various chipsets Gives for impressive improvements in QSGDefaultDista
nceFieldGlyphCa che::storeGlyph s
impressive = 788ms -> 6msCopied from qtubuntu
Fixes: #1581123
Approved by: Gerry Boland, Unity8 CI Bot - 501. By Alan Griffiths on 2016-05-25
-
Remove workaround for lp:1502200
Approved by: Unity8 CI Bot, Daniel d'Andrada - 502. By CI Train Bot Account on 2016-05-25
-
Releasing 0.4.8+16.
10.20160525. 2-0ubuntu1 - 503. By Kevin DuBois on 2016-06-02
-
rebuild for mir 0.23
- 504. By CI Train Bot Account on 2016-06-02
-
Releasing 0.4.8+16.
10.20160602- 0ubuntu1 - 505. By Michael Zanetti on 2016-06-14
-
Adding ApplicationInfo
::surfaceCount property - 506. By Albert Astals Cid on 2016-06-14
-
Add support for compiler sanitizers via ECM
- 507. By Albert Astals Cid on 2016-06-14
-
Compile with -fsanitize=
undefined - 508. By Albert Astals Cid on 2016-06-14
-
Fix leak in ScreensModelTest (LP: #1585502)
- 509. By Albert Astals Cid on 2016-06-14
-
Fix leak in SessionManager test (LP: #1585498)
- 510. By Albert Astals Cid on 2016-06-14
-
Remove unused m_sessions member
- 511. By Albert Astals Cid on 2016-06-14
-
Add missing breaks
- 512. By Albert Astals Cid on 2016-06-14
-
Initialize m_lastX and m_lastY
- 513. By Albert Astals Cid on 2016-06-14
-
Initialize m_sessionId
- 514. By Albert Astals Cid on 2016-06-14
-
Give the locker a name
- 515. By Albert Astals Cid on 2016-06-14
-
Fix memory leak in QtEventFeederTest (LP: #1585503)
- 516. By Albert Astals Cid on 2016-06-14
-
Fix leaks in application_
manager_ test (LP: #1585501) - 517. By Daniel d'Andrada on 2016-06-14
-
Improve Session debug logging
- 518. By Daniel d'Andrada on 2016-06-14
-
MirSurfaceListM
odel: prepending a surface always causes firstChanged() emission - 519. By Gerry Boland on 2016-06-14
-
Release temporary GL context ASAP, fixes QtMir on X11. Add some hotpath branching hints (LP: #1588921)
- 520. By CI Train Bot Account on 2016-06-14
-
Releasing 0.4.8+16.
10.20160614- 0ubuntu1 - 521. By Daniel d'Andrada on 2016-06-22
-
Handle case where TaskController requests an application that is already closing
Happens when you quickly close an application and then tap on its icon in the dash
- 522. By Daniel d'Andrada on 2016-06-22
-
Optimize code
- 523. By Daniel d'Andrada on 2016-06-28
-
Fix bad rebase on top of latest trunk
Code was still using the old, deprecated signal.
Unmerged revisions
- 523. By Daniel d'Andrada on 2016-06-28
-
Fix bad rebase on top of latest trunk
Code was still using the old, deprecated signal.
- 522. By Daniel d'Andrada on 2016-06-22
-
Optimize code
- 521. By Daniel d'Andrada on 2016-06-22
-
Handle case where TaskController requests an application that is already closing
Happens when you quickly close an application and then tap on its icon in the dash

FAILED: Continuous integration, rev:436 jenkins. qa.ubuntu. com/job/ qtmir-ci/ 628/ jenkins. qa.ubuntu. com/job/ qtmir-vivid- amd64-ci/ 322 jenkins. qa.ubuntu. com/job/ qtmir-vivid- armhf-ci/ 324 jenkins. qa.ubuntu. com/job/ qtmir-vivid- armhf-ci/ 324/artifact/ work/output/ *zip*/output. zip jenkins. qa.ubuntu. com/job/ qtmir-vivid- i386-ci/ 204 jenkins. qa.ubuntu. com/job/ qtmir-wily- amd64-ci/ 359/console jenkins. qa.ubuntu. com/job/ qtmir-wily- armhf-ci/ 361/console jenkins. qa.ubuntu. com/job/ qtmir-wily- i386-ci/ 204/console
http://
Executed test runs:
SUCCESS: http://
SUCCESS: http://
deb: http://
SUCCESS: http://
FAILURE: http://
FAILURE: http://
FAILURE: http://
Click here to trigger a rebuild: s-jenkins. ubuntu- ci:8080/ job/qtmir- ci/628/ rebuild
http://