Mir towards converged form factors

Registered by kevin gunn on 2014-04-22

This blueprint contains the features and efforts towards supporting converged form factors from smartphone, tablet & desktop

Previous work in Trusty/14.04 can be found here https://blueprints.launchpad.net/ubuntu/+spec/client-1410-mir-converged

Blueprint information

Status:
Not started
Approver:
kevin gunn
Priority:
Undefined
Drafter:
Mir development team
Direction:
Needs approval
Assignee:
Mir development team
Definition:
Approved
Series goal:
None
Implementation:
Unknown
Milestone target:
None

Related branches

Sprints

Whiteboard

Jun 17 2014 kgunn
doc capturing some discussion/decisions about shell-app orientation comms
https://docs.google.com/a/canonical.com/document/d/1SHd7LcJqc-e3bGhhRmNMjk0J1ZehX1E3harcJFdemGw/edit?disco=AAAAAJrjzEQ

May 30 2014 kgunn
wrt application management, there's an idea to utilize the ability to feed gfx mem usage to the shell in order for the shell to (if it wishes) generate a "kill score" for the oom management for those that are higher. adding a task here, but might consider making another bp for "shell features"

Apr 2014 notes
* still have a bug on mesa snapshot https://bugs.freedesktop.org/show_bug.cgi?id=74563

(?)

Work Items

Work items:
[robertcarr] make cursor a renderable: INPROGRESS
[robertcarr] add client side API for changing the cursor (fixed set): DONE
[robertcarr] add client side API for changing the cursor (arbitrary): TODO
add an internal client interface to report client gfx mem to the shell : TODO
[afrantzis] add interface for visibility: DONE
add interface for shell-apps communication of "orientation" (see whiteboard): DONE
improve hw integration test suite to include logging: TODO
improve hw integration test suite to run "quirks": TODO
[albaguirre] migrate powerd display state & policy into usc (leaving hw logic & control in powerd, just waiting on reciprocal powerd changes, mp for usc https://code.launchpad.net/~albaguirre/unity-system-compositor/screen-power-state-handling/+merge/213957): INPROGRESS
add nested server lifecycle listening, to allow "inernal clients" of nested servers to handle (https://bugs.launchpad.net/mir/+bug/1313832) : TODO
[kdub] enable hdmi for mir on android (https://bugs.launchpad.net/mir/+bug/1296538) : TODO
[alan-griffiths] better and proper update notifications for surfaces (done in surface, not harnessed by comp): DONE
[raof] Support Mir as a backend to Plymouth: TODO
[afrantzis] improve client API handling errors (we decided we still have err obj, but when passed into any call not checking if its an err obj that will crash): TODO
cleanly abstract out application logic from the session mediator: TODO
[brandontschaefer] SDL upstream: INPROGRESS

Work items for later:
VESA support (really only critical for desktop): TODO
adjust the protobuf compiler to the mir: TODO
[raof] opaquify client API: INPROGRESS
[afrantzis] iterate headless mir (e.g. dump render into sw fb) based on QA feedback which is currently that we need to remove reliance on video card for vsync, as this may run on canonistack which may not have video hw: INPROGRESS
Add pure C API to libmirplatformgraphics runtime backend (helps enable multi hetero GPUs): TODO
[raof] improve client API handling of threads (meaning make the client single threaded, but this is separate from the event handling thread, is this the same as ): INPROGRESS
[robert-ancell] GTK+ support: INPROGRESS
u-s-c needs to handle input dev opening with respect to multiseat support: TODO
Form-factor information status update for shell to consume: TODO
[vanvugt] Hetero DPI displays: INPROGRESS

Dependency tree

* Blueprints in grey have been implemented.

This blueprint contains Public information 
Everyone can see this information.