Created by Brandon Schaefer on 2016-02-26 and last modified on 2016-02-26
Get this branch:
bzr branch lp:~mir-team/mir/lazy-cookie-secret-creation
Members of Mir development team can upload to this branch. Log in for directions.

Branch merges

Related bugs

Related blueprints

Branch information

Mir development team

Recent revisions

3348. By Brandon Schaefer on 2016-02-26

* Fix throw

3347. By Brandon Schaefer on 2016-02-26

* Enable the regession tests

3346. By Brandon Schaefer on 2016-02-26

* Delay making the secret if no one wants one right away

3345. By Kevin DuBois on 2016-02-26

playground: spruce up the NBS example program. It previously was just rapidly fading from white to grey. Improve it so its a circle that's expanding and contracting.

Approved by mir-ci-bot, Alan Griffiths, Cemil Azizoglu.

3344. By Alan Griffiths on 2016-02-26

Random cmake tidy-up.

Approved by Alexandros Frantzis, mir-ci-bot.

3343. By Chris Halse Rogers on 2016-02-26

New, extensible, display and enumeration API.

Hide all the structs behind the API so we can extend them with all the extra information - scale, form factor, etc - that QtMir would like to have.

This currently does not have any form of configuration setting interface, as that's not
needed for QtMir's immediate needs.

Approved by mir-ci-bot, Alexandros Frantzis, Alan Griffiths, Andreas Pokorny, Kevin DuBois, Cemil Azizoglu.

3342. By Alan Griffiths on 2016-02-26

Workaround lp:1413474 "-fsanitize=thread fails to link; needs -ltsan". Fixes: https://bugs.launchpad.net/bugs/1413474.

Approved by mir-ci-bot, Chris Halse Rogers, Daniel van Vugt, Cemil Azizoglu.

3341. By Kevin DuBois on 2016-02-26

client: add a mir_surface_spec_set_buffer_stream() and mir_surface_spec_set_presentation_chain() function that's capable of arranging both MirBufferStreams and MirPresentationChains within the MirSurface.

This solves:
1) How to create a MirSurface with the NBS stuff at its start
2) How MirPresentationChains can scale in X/Y directions (similar to how MirBufferStreams scale)
3) How to mix and match MirPresentationChains with MirBufferStreams in one multi-stream MirSurface, if the user wishes.
4) What the display-size of a MirPresentationChains with multiple physically-sized buffers will be.
5) Allows for one PresentationChain to be displayed in different MirSurfaces, with flexibility in their scaling.

I had to think a bit about how we define our sizes to get to this point, but I think its coherent:

MirSurface sizes are set by the shell. When the shell decides to resize the client it sends the mir surface resize event. The size of their component contents (stream/chain) are something left up to the client, with sensible defaults. If the client has deviated from the default, it must manage the resize event and rearrange its composition and streams to fit within the size given to it by the server/shell.

MirPresentationChains display size are set by the client when they're associated with a MirSurface. The physical sizes are plainly the size of the MirBuffer. MirPresentationChains don't intrinsically have sizes in-and-of-themselves, as they're really just a bunch of buffers.

MirBufferStreams let the mir code manage their own physical and virtual sizes. The physical and displayed sizes largely change together by action of the server (legacy behavior), but setting scale and resize events can cause persistent or temporary differences between the two.

Approved by Andreas Pokorny, Chris Halse Rogers, mir-ci-bot, Cemil Azizoglu, PS Jenkins bot.

3340. By Daniel van Vugt on 2016-02-26

Add regression tests for the evil /dev/random hangs and crashes
we see when starting a Mir server (LP: #1536662 and LP: #1541188)
. Fixes: https://bugs.launchpad.net/bugs/1536662, https://bugs.launchpad.net/bugs/1541188.

Approved by Chris Halse Rogers, mir-ci-bot, Kevin DuBois, Cemil Azizoglu.

3339. By Alan Griffiths on 2016-02-25


Approved by Kevin DuBois, mir-ci-bot, Cemil Azizoglu.

Branch metadata

Branch format:
Branch format 7
Repository format:
Bazaar repository format 2a (needs bzr 1.16 or later)
Stacked on:
This branch contains Public information 
Everyone can see this information.