First step of improving app screen size compatibility mode. When
running in compat mode, an application's windows are scaled up on
the screen rather than being small with 1:1 pixels.
Currently we scale the application to fill the entire screen, so
don't use an even pixel scaling. Though this may have some
negative impact on the appearance (it looks okay to me), it has a
big benefit of allowing us to now treat these apps as normal
full-screens apps and do the normal transition animations as you
move in and out and around in them.
This introduces fun stuff in the input system to take care of
modifying pointer coordinates to account for the app window
surface scaling. The input dispatcher is told about the scale
that is being applied to each window and, when there is one,
adjusts pointer events appropriately as they are being sent
to the transport.
Also modified is CompatibilityInfo, which has been greatly
simplified to not be so insane and incomprehendible. It is
now simple -- when constructed it determines if the given app
is compatible with the current screen size and density, and
that is that.
There are new APIs on ActivityManagerService to put applications
that we would traditionally consider compatible with larger screens
in compatibility mode. This is the start of a facility to have
a UI affordance for a user to switch apps in and out of
compatibility.
To test switching of modes, there is a new variation of the "am"
command to do this: am screen-compat [on|off] [package]
This mode switching has the fundamentals of restarting activities
when it is changed, though the state still needs to be persisted
and the overall mode switch cleaned up.
For the few small apps I have tested, things mostly seem to be
working well. I know of one problem with the text selection
handles being drawn at the wrong position because at some point
the window offset is being scaled incorrectly. There are
probably other similar issues around the interaction between
two windows because the different window coordinate spaces are
done in a hacky way instead of being formally integrated into
the window manager layout process.
Change-Id: Ie038e3746b448135117bd860859d74e360938557
When we enter full screen, the inline video has been paused.
When we re-play in the inline mode, we don't need to paused the previous video,
which is the full screen one.
bug:4259109
Change-Id: I577edf43563116b0d1a9266d741e6a8aabbca779
We need this to allow MTP to access secondary external storage devices
This reverts commit 35a2ea2fbf156a503d1b0bc6ca7784e51e2462f4.
Conflicts:
data/etc/platform.xml
Change-Id: Iaf9cf120217e8417d328a51db0d82be6835b0ff0
Signed-off-by: Mike Lockwood <lockwood@android.com>
- MTP support for multiple storage units
- Add storage_id column to media database for MTP storage ID
- Add framework resource for defining mount points and user visible descriptions
for multiple volumes
- Clean up locking in MtpServer JNI code
Change-Id: I53d501fd4891ebe27408135fb598027e06b7e495
Signed-off-by: Mike Lockwood <lockwood@android.com>
Settable per network so you can have not timeout for some and some for others.
If you set the old NETWORK_RESTORE_DELAY_PROP_NAME system property
(android.telephony.apn-restore) it will override this value.
Change-Id: Icca706fdc74245dce679209116660e5dc4b05d23
We need this to allow MTP to access secondary external storage devices
This reverts commit 35a2ea2fbf156a503d1b0bc6ca7784e51e2462f4.
Conflicts:
data/etc/platform.xml
Change-Id: I0b139a0f3b369c1080831a5b3a48f5d9a330b1bb
Signed-off-by: Mike Lockwood <lockwood@android.com>
- MTP support for multiple storage units
- Add storage_id column to media database for MTP storage ID
- Add framework resource for defining mount points and user visible descriptions
for multiple volumes
- Clean up locking in MtpServer JNI code
Change-Id: Ide6d47bd9aa1698ed2a13d695613e03f2a9b29e3
Signed-off-by: Mike Lockwood <lockwood@android.com>
- Use Protocol for BASE of CMD's.
- Add synchronous connect methods.
- Back port sha1 c23971b3e4f92ac31996d4f9f32eef3cb4ef65fd from master
Change-Id: If0b3f6cbbb8d4268cad6ca19d26ab2ee42390d86
- Supports wakeup and renewal on dhcp
- Supports multiple controllers to use the state machine
simultaneously
- Optionally, a controller can request a notification prior
to DHCP request/renewal being sent
Change-Id: I3a9d7e6a02ff26be3a86ddca6964683ad3c28f93
Dependencymet sets the default dep-met value for the network. Should
be set to true unless you know what you're doing.
Change-Id: Ifa3765a97615f5333da07bce9defdb8600275129
* commit '46b59ef01be530a6bbe3f0e9a2bed27de9985f40':
Fix access point parsing: reset static link property after parsing static ip setting Fix removeConfiguredNetwork: add sleep between remove configured network and disable wifi
* commit 'bb55777be1a3231d187205dc378ca35b01e8bc65':
DO NOT MERGE : cherry pick of change Ieb7ae26b from master
DO NOT MERGE : cherry pick of change I0f9f2c65 from master