75ee9fcde4d9e1be3883eba6c8d193db4375b052 |
|
02-Sep-2014 |
Michael Wright <michaelwr@google.com> |
VirtualDisplay.Callbacks -> Callback Also, rename methods to be onPaused instead of onDisplayPaused, etc. Bug: 17008630 Change-Id: Id9ead22a42d36ac338309f0f021ba341ed991144
/frameworks/base/core/java/android/hardware/display/DisplayManager.java
|
6720be4e8c65e90d4453ddad5cef192bc3820038 |
|
30-Jul-2014 |
Michael Wright <michaelwr@google.com> |
Allow media projections to create public presentations. Change-Id: I3b6e0b54d658352942a38be6a24486bdfc179efd
/frameworks/base/core/java/android/hardware/display/DisplayManager.java
|
9469cdde2ce55051b18fdbd6bf80bc710517c358 |
|
29-Jul-2014 |
Michael Wright <michaelwr@google.com> |
Add paragraph tags to MediaProjection docs Change-Id: Ia881f9bcf3b93bd699f9ddf80d51ec7d0e74d2ed
/frameworks/base/core/java/android/hardware/display/DisplayManager.java
|
5438e4e173c756a24061da38bfe9142765c56f9d |
|
25-Jul-2014 |
Michael Wright <michaelwr@google.com> |
Add missing documentation for createVirtualDisplay Fix incorrect access modifier in Activity documentation. Change-Id: Id41da6ccbdfa8b53c89360c899f3a43aec899982
/frameworks/base/core/java/android/hardware/display/DisplayManager.java
|
c39d47a8e7c74bd539104b0efab898ef6fc43ddf |
|
09-Jul-2014 |
Michael Wright <michaelwr@google.com> |
Add MediaProjection APIs. The new MediaProjection infrastructure allows the system to hand out tokens granting the ability to capture the screen's contents, audio, etc. at a granular level. It's intended to be used both for screen casting, via the cast APIs, as well as screen sharing via third party applications. The screen sharing case is implemented, but all of audio capturing is still forthcoming. Change-Id: I4b24669bed7083e11413c10ed8d6b025f5375316
/frameworks/base/core/java/android/hardware/display/DisplayManager.java
|
92207df753c27b094e9e0ca80d41bc0d54dc6bd5 |
|
16-Apr-2014 |
Jeff Brown <jeffbrown@google.com> |
Add support for dynamically setting the virtual display surface. Previously, the surface that backs a virtual display had to be set at the time when the display was created. This change now makes it possible to set or remove the surface later. The virtual display is treated as if it were "off" while no surface is attached to it. Change-Id: Ib4fdbbb8b4ee79f0fb9ceb648f9bda4a8fa6a2ca
/frameworks/base/core/java/android/hardware/display/DisplayManager.java
|
d14c8c9039c0056e1f30ad5d410c8fde20d63df5 |
|
08-Jan-2014 |
Jeff Brown <jeffbrown@google.com> |
Add flag to force public virtual display to show own content. Change-Id: I1039f2ef3154169ec90411a4c7ba2c94629f72c4
/frameworks/base/core/java/android/hardware/display/DisplayManager.java
|
ce468a35b388ca46578934706b38dbae94941643 |
|
22-Nov-2013 |
Jeff Brown <jeffbrown@google.com> |
Stop wifi display discovery when no longer needed. Keep track of how many clients are requesting scans and scan continuously until all of them are gone then explicitly terminate the scan instead of letting it time out as before. Suspend wifi display scans while connecting or connected to a remote display. This is handled by both the display manager and media router since neither has complete information about what is happening. Much of this code will no longer be needed once wifi display support is integrated directly into the media router service. Ensure that we don't attempt to scan or connect to wifi displays while the wifi display feature is off. Infer when a connection attempt fails and unselect the wifi display route automatically so it doesn't appear to be connecting forever. Fix issues around correctly canceling and retrying connection attempts. Often we would cancel but not retry. Improved connection reliability somewhat. It seems that discovery must already be in progress in order for a connection attempt to succeed. Ensure QuickSettings uses exactly the same logic as the MediaRouteButton to determine when the remote display tile should be made visible. Bug: 11717053 Change-Id: I18afc977b0e8c26204b8c96adaa79f05225f7b6e
/frameworks/base/core/java/android/hardware/display/DisplayManager.java
|
af574183c274f51d04487a9c8355e9f34a1150f2 |
|
15-Nov-2013 |
Jeff Brown <jeffbrown@google.com> |
Disallow applications from initiating cast screen. Only allow the system ui and settings to connect to a remote display. To do this, we essentially hide the remote displays from applications by using the ROUTE_TYPE_REMOTE_DISPLAY then add permission checks around the operations that connect to them. As a bonus, this may actually save power on devices since applications that use MediaRouter will not longer be performing discover on remote display routes at all. Bug: 11257292 Change-Id: I9ea8c568df4df5a0f0cf3d0f11b39c87e2110795
/frameworks/base/core/java/android/hardware/display/DisplayManager.java
|
511cd35fcc0b8ab048f284a6af374de8ccc69865 |
|
24-Aug-2013 |
Jeff Brown <jeffbrown@google.com> |
Docs changes pursuant to API review feedback. Change-Id: I74c51791192f7fefad4e299d25c91438cbf6ab73
/frameworks/base/core/java/android/hardware/display/DisplayManager.java
|
1f3ecaae6303d5ee6c5ca8499262c9962f036365 |
|
04-May-2013 |
Chong Zhang <chz@google.com> |
wifi-display: add certification options When certification mode is enabled: - Pass wfd session info to wifi display settings - Allow sink to connect to source - Add interface in display manager for pausing/resuming session - Add interface in WifiP2pManager for setting lc, oc and starting autonomous GO Note that we're compliant regardless of certification mode, but some confusing options (eg. allowing incoming connection from sink) we want to hide when not being tested. Bug: 9371882 Change-Id: Icc7dcae4e046453796cfa03f5f197055fabf234b
/frameworks/base/core/java/android/hardware/display/DisplayManager.java
|
7d00affce6e25b22fd8fc135933b3bf6b547a0dc |
|
03-Aug-2013 |
Jeff Brown <jeffbrown@google.com> |
Support public virtual displays. Refactor the new private virtual display API to also support creating public virtual displays with various characteristics. This feature requires special permissions and is only intended for use by the system. Change-Id: I44dd19f37cf76ea6d6e313afe42f4a412bd96663
/frameworks/base/core/java/android/hardware/display/DisplayManager.java
|
48d0d1886731ff19ed3fb47a5997be5df0d1bba8 |
|
11-Jun-2013 |
Craig Mautner <cmautner@google.com> |
Add activity token to display system. First step in adding activity specific information to displays. Replace CompatibilityInfoHolder with DisplayAdjustmentsHolder that holds an activity token in addition to the CompatibilityInfo. Change-Id: Ie113cd8dd9c62e0b5311204e039a4829096bea68
/frameworks/base/core/java/android/hardware/display/DisplayManager.java
|
a506a6ec94863a35acca9feb165db76ddac3892c |
|
04-Jun-2013 |
Jeff Brown <jeffbrown@google.com> |
Add an API to allow for creating private virtual displays. This change enables applications to create a private virtual display that renders its content to a surface of its own creation. The display is private in the sense that only the application that owns the display is allowed to place windows upon it. Mirroring and blanking is also disabled for these displays. Bug: 9192512 Change-Id: I852ea07f0c7df1d244e354e3daca3a6960285ca0
/frameworks/base/core/java/android/hardware/display/DisplayManager.java
|
92130f6407dc51c58b3b941d28a6daf4e04b8d62 |
|
25-Oct-2012 |
Jeff Brown <jeffbrown@google.com> |
Add MediaRouter API to get presentation display. This new API makes it possible for an application to ask on which Display it should show a Presentation based on the currently selected media route. Also added a new API on DisplayManager to query displays that support a certain category of uses. Improved the documentation of the Presentation class to explain how to choose an appropriate Display for presentation. Bug: 7409073 Change-Id: Iab451215e570ae55f3718fc228303143c800fe51
/frameworks/base/core/java/android/hardware/display/DisplayManager.java
|
bc335457462a12434a9df6955de1dd693cdccac7 |
|
27-Sep-2012 |
Jeff Brown <jeffbrown@google.com> |
Allow applications to connect to known wifi displays. Bug: 7177920 Change-Id: I9d8406e1016988e2cd267dfa52d78a829f1b385e
/frameworks/base/core/java/android/hardware/display/DisplayManager.java
|
89d5546d7fd3a3bb19820c42e8b4527013dd6545 |
|
19-Sep-2012 |
Jeff Brown <jeffbrown@google.com> |
Add support for remembering Wifi display devices. Add a setting to globally disable Wifi display. Fixed a bug where the wifi display broadcast receiver was running on the wrong thread. Removed the wifi-display QuickSettings dialog, all functionality has been moved to Settings. Bug: 7178216 Bug: 7192799 Change-Id: I9796baac8245d664cf28fa147b9ed978d81d8ab9
/frameworks/base/core/java/android/hardware/display/DisplayManager.java
|
e08ae388d63c4db8f9d9a7ecd634f9a51f6e91b9 |
|
08-Sep-2012 |
Jeff Brown <jeffbrown@google.com> |
Add new wifi display discovery API. The API is quite simple. There are a few extra functions on DisplayManager to scan, connect and disconnect from wifi displays and get status, and a single protected broadcast sent when the status changes. Change-Id: Ic91dbab5ee818e790b27fa32e1a1e93788793be0
/frameworks/base/core/java/android/hardware/display/DisplayManager.java
|
a492c3a7b2c18426fd0cb4d017eacbc368195dc5 |
|
24-Aug-2012 |
Jeff Brown <jeffbrown@google.com> |
Initial draft of high-level multi-display APIs. This patch introduces the ability to create a Context that is bound to a Display. The context gets its configuration and metrics from that display and is able to provide a WindowManager that is bound to the display. To make it easier to use, we also add a new kind of Dialog called a Presentation. Presentation takes care of setting up the context as needed and watches for significant changes in the display configuration. If the display is removed, then the presentation simply dismisses itself. Change-Id: Idc54b4ec84b1ff91505cfb78910cf8cd09696d7d
/frameworks/base/core/java/android/hardware/display/DisplayManager.java
|
bd6e1500aedc5461e832f69e76341bff0e55fa2b |
|
28-Aug-2012 |
Jeff Brown <jeffbrown@google.com> |
Add initial multi-display support. Split the DisplayManager into two parts. One part is bound to a Context and takes care of Display compatibility and caching Display objects on behalf of the Context. The other part is global and takes care of communicating with the DisplayManagerService, handling callbacks, and caching DisplayInfo objects on behalf of the process. Implemented support for enumerating Displays and getting callbacks when displays are added, removed or changed. Elaborated the roles of DisplayManagerService, DisplayAdapter, and DisplayDevice. We now support having multiple display adapters registered, each of which can register multiple display devices and configure them dynamically. Added an OverlayDisplayAdapter which is used to simulate secondary displays by means of overlay windows. Different configurations of overlays can be selected using a new setting in the Developer Settings panel. The overlays can be repositioned and resized by the user for convenience. At the moment, all displays are mirrors of display 0 and no display transformations are applied. This will be improved in future patches. Refactored the way that the window manager creates its threads. The OverlayDisplayAdapter needs to be able to use hardware acceleration so it must share the same UI thread as the Keyguard and window manager policy. We now handle this explicitly as part of starting up the system server. This puts us in a better position to consider how we might want to share (or not share) Loopers among components. Overlay displays are disabled when in safe mode or in only-core mode to reduce the number of dependencies started in these modes. Change-Id: Ic2a661d5448dde01b095ab150697cb6791d69bb5
/frameworks/base/core/java/android/hardware/display/DisplayManager.java
|
b47bbc3d80badb94229bc4ce7a2d5006faa9ef15 |
|
23-Aug-2012 |
Craig Mautner <cmautner@google.com> |
Clean up displayId and layerStack usage. Make better use of Display object by saving it in DisplayContent. Only use layerStack when referring to Surfaces. Get displayId from default Display or default DisplayContent. Remove warnings. Fixes bug 7038151. Change-Id: Ie493f0f5e755dc9b91ee969ff561c2a098283ead
/frameworks/base/core/java/android/hardware/display/DisplayManager.java
|
98365d7663cbd82979a5700faf0050220b01084d |
|
20-Aug-2012 |
Jeff Brown <jeffbrown@google.com> |
Refactor for multi-display support. Split WindowManagerImpl into two parts, the WindowManager interface implementation remains where it is but the global communications with the window manager are now handled by the WindowManagerGlobal class. This change greatly simplifies the challenge of having separate WindowManager instances for each Context. Removed WindowManagerImpl.getDefault(). This represents the bulk of this change. Most of the usages of this method were either to perform global functions (now handled by WindowManagerGlobal) or to obtain the default display (now handled by DisplayManager). Explicitly associate each new window with a display and make the Display object available to the View hierarchy. Add stubs for some new display manager API features. Start to split apart the concepts of display id and layer stack. since they operate at different layers of abstraction. While it's true that each logical display uniquely corresponds to a surface flinger layer stack, it is not necessarily the case that they must use the same ids. Added Display.getLayerStack() and started using it in places where it was relatively easy to do. Change-Id: I29ed909114dec86807c4d3a5059c3fa0358bea61
/frameworks/base/core/java/android/hardware/display/DisplayManager.java
|
848c2dc93b6795e171f3dd6f64ea0be65e2762ca |
|
20-Aug-2012 |
Jeff Brown <jeffbrown@google.com> |
Stub out display manager service implementation. Reverting to the previous stub as the display adapter registration and the logical to physical mapping is not at all what we are going to need moving forward. Fixed up the service initialization order so that the display manager service has a context from the start. Change-Id: I717f2f1099c7a77180ef207c371ec8329258850a
/frameworks/base/core/java/android/hardware/display/DisplayManager.java
|
aa871b0ff0fb38112a1693e80e1146cecc5db21d |
|
26-Jul-2012 |
Jeff Brown <jeffbrown@google.com> |
Fix build. Change-Id: Ife2fd58447205407e41ce3d27e28a705b744bede
/frameworks/base/core/java/android/hardware/display/DisplayManager.java
|
fa25bf5382467b1018bd9af7f1cb30a23d7d59f7 |
|
24-Jul-2012 |
Jeff Brown <jeffbrown@google.com> |
Add display manager skeleton. The purpose of this change is to remove direct reliance on SurfaceFlinger for describing the size and characteristics of displays. This patch also starts to make a distinction between logical displays and physical display devices. Currently, the window manager owns the concept of a logical display whereas the new display manager owns the concept of a physical display device. Change-Id: I7e0761f83f033be6c06fd1041280c21500bcabc0
/frameworks/base/core/java/android/hardware/display/DisplayManager.java
|