Status update multiwindow/overlay

I think more information is in oder to dispel some of the confusion ...
This is a lot to read, don't bother if you care less about motivation and technical background.

As you know, We are breaking this project into two parts.
Part 1 is almost concluded, this is what you have seen in the video we posted, the technical foundation. This is not the actual feature. We launch apps from the notification bar for testing purposes! Work on Part 2 has begun, this will be the component making actual use of that capability. 

Our solution is written from scratch, this is not cornerstone. We believe Google should have no intention in vetoing it since it should in theory pass their compatibility test suite, plus apps can opt in for all we care.

We mind Androids inner rules and activity-management. Displaying a window as an overlay from a programming perspective is done with a regular intent flag. The flag that we added creates a different set of rules in Androids life-cycle management to ensure this doesn't mess up apps.
We start out with a basic version that will pause underlying apps (meaning we don't touch anything, this is Androids default) and maybe go from there to something that intercepts the pause call on high powered phones to let apps running - although this may not even be necessary.

In short, at best this will not break a single app in the entire Android eco system. At worst this will do the same kind of harm to an app that a smaller screen does. Android apps should be clever enough to deal with screenspace by now so this should not be an issue. Should we do notice this is an issue we will make the entire thing opt-in. From my own tests i have been able to run pretty much everything without problems, games, chat-apps, all good.

We are explicitly not going for an implementation that will let the user drag around stuff or scale it. We simply see no reason for it. Crazy implementations like that are too far fetched and hardly fit the surounding system, we plan to create something that will solve an obvious every-day user-interface related problem that will make immediate sense to everyone who sees and uses it.

Last but not least, many asked why Google vetoed Cyanogenmod adding Cornerstone. First, Cornerstone is an independend project, Cyanogenmod had nothing to do with it. It was a kang on their side. From what i have heard Conerstone had pretty severe bugs and it could have broken apps. Google feared that users could leave bad ratings in their Play store for app errors caused by their rom and prevented CM from merging it. They obviously had a reason.




As for Part 2. A couple of you have already guessed what this will turn into but we still think we can surprise you.
Shared publiclyView activity