April 29th, 2013, 07:05 PM
Join Date: Mar 2011
Device(s): Nexus 5
Carrier: Not Provided
Thanked 56 Times in 42 Posts
Followed youtube comments
Paranoid AndroidApr 26, 2013 (edited) - Public
Part 1/2: This is just a technical demo - don't get up
Yes we are working on our interpretation of multi-windowing/overlay. It will be very different from what you know and expect.
The video shows a first draft, do not make up your mind just yet, you haven't seen 10% of it
For testing purposes we launch it via notification - apps opting in and out. The approach is clean, it's an extension to Android API, apps can be started like that by providing a simple window flag, Intent.FLAG_ACTIVITY_MULTI_WINDOW.
You know multi-window is hard to get right. Cornerstone failed and was buggy. Cyanogen got their asses kicked by Google for merging it. Samsung wrote a half assed implementation that works with a hand full of s-apps and breaks the rest. Its still tough and we don't assume that we can cover everything, but it's looking alright - no bad fallouts until now.
Everyone knows this is a highly wanted feature, people pooped their pants for hardcoded mms pop-ups for christs sake. they are buying Samsung plastic phones for whacky s-multiwindow.
We think these implementations suck and we want to get it right this time. If what we have in mind will pan out, minds will be blown. If not we can still do the configurable notification enhancement thing - that's cheapo plan B.
Part 2/2 will hopefully be a demo of a first plan A draft - multi windows put to good use so to say, fingers crossed.
Paranoid AndroidYesterday 5:36 PM - Public
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.
Last edited by OhSeven; April 29th, 2013 at 07:10 PM.