Commit Graph

44276 Commits

Author SHA1 Message Date
Adam Powell
f849a5e16d Magic null-background filling for PhoneWindows
In the past it's been a recommended approach to avoiding overdraw for
apps to set their window background to null at runtime if their
content view fully covers their window surface. The problem with this
is the IME.

The IME can force a resize of the window at unexpected times and
unless an app has been configured to fit system windows and manually
cover the padded area that the IME window covers, the asynchronous
nature of the IME-show process can leave surface buffer garbage
visible to the user. In previous platform versions this wasn't an
issue since pre-renderthread we would always animate a crossfade from
the closed to open state. This animation was always a bit of a hack
since it could break the contract of requestLayout/invalidate on the
view hierarchy - it could result in a draw happening into the saved
"before" state of the crossfade before a pending layout.

Now that this has been cleaned up the buffer garbage is sometimes
visible.

To prevent this, PhoneWindow now detects the state of a null window
background and draws solid rects into the area not covered by a
window's content. Which color is determined by the window context's
theme, though this is not a public API available to apps.

Bug 17006497

Change-Id: I714439a1608c4ae135f3d9d49bb165330d9fbe9f
2014-09-14 15:44:11 -07:00
Eino-Ville Talvala
9503785393 Camera2: Clean up corner case error handling
- If a session is closed, and a new session is created immediately
afterwards, but then fails to be configured, the first session sees an
onUnconfigured call which it wasn't expecting, and throws an
exception on an internal thread, leading to app death.
Add a guard against this case.

- If the lower levels skip a frame (illegal per design), be slightly more
robust to that by accepting any successful result as the latest completed
frame, instead of just incrementing the completed frame count. This will
lead to missing results, but should allow shutdown, etc, to complete
cleanly.

- Convert TIMED_OUT error codes to CAMERA_ERROR CameraAccessExceptions.
This is a common error code returned by waitUntilIdle.

Also, improve debug logging to log a session ID with verbose logging,
and add a few verbose logs.

Bug: 16899526
Change-Id: I7a31f0a12effc2611e1f9c2408224ee82c37c912
2014-09-14 14:41:47 -07:00
Chet Haase
ad804f5560 am f9f4d316: Merge "set correct bounds in ActionBar based on visibility of ActionBarView" into lmp-dev
* commit 'f9f4d3161ed7be2365ba4f2b16d1c6571e725eb0':
  set correct bounds in ActionBar based on visibility of ActionBarView
2014-09-14 21:39:25 +00:00
Chet Haase
4605b2929e Merge "set correct bounds in ActionBar based on visibility of ActionBarView" into lmp-dev 2014-09-14 21:30:21 +00:00
Alan Viverette
56c4f5c139 am 84670eef: Merge "Reduce instructions required to obtain and recycle TypedArray" into lmp-dev
* commit '84670eef1f2d685efc98644914d2bb191d0e665c':
  Reduce instructions required to obtain and recycle TypedArray
2014-09-14 21:04:59 +00:00
John Spurlock
07d245ba89 am 1ddb7a6b: Merge "Saver: PowerManager call to set low power mode." into lmp-dev
* commit '1ddb7a6b406f23c3b549aa6a771cec61c1778f3e':
  Saver: PowerManager call to set low power mode.
2014-09-14 21:04:50 +00:00
Ramanan Rajeswaran
92b737c470 am 2e9ca0aa: Merge "Fix crash in TranserPipe." into lmp-dev
* commit '2e9ca0aa3de6f8e6e6691125497248dd6940c5f1':
  Fix crash in TranserPipe.
2014-09-14 21:04:27 +00:00
Chet Haase
ccd3da23c6 set correct bounds in ActionBar based on visibility of ActionBarView
ActionBarContainer was setting the bounds of its background assuming the
visibility of the ActionBarView. But that view becomes GONE when the
ActionBarContextView is visible, causing artifacts such as wrong shadows
when resized (as in custom configuration changes).

Issue #17280341 Quantum: drop shadow on CAB has wrong width after rotation on L, when configuration change is handled by the app

Change-Id: I07e57f00e27b41d5370cb9440b35734a8ec10f3a
2014-09-14 13:53:10 -07:00
Alan Viverette
c6a65dfbff Merge "Reduce instructions required to obtain and recycle TypedArray" into lmp-dev 2014-09-14 20:04:38 +00:00
John Spurlock
7ca1161e30 Merge "Saver: PowerManager call to set low power mode." into lmp-dev 2014-09-14 19:36:13 +00:00
John Spurlock
8d4e6cb060 Saver: PowerManager call to set low power mode.
- Add an explicit power manager call to set the low power mode state,
  instead of trying manage everything around a single setting.
- When low-power mode is triggered by falling below the configured
  threshold, it does not update the setting.
- The "is-enabled" api returns setting || below configured trigger.
- Move the snooze management into the new api call.
- Callers (sysui + settings) updated to use the api instead of the
  setting.
- Handles the case where the level does an unpowered leap out of the
  low battery level. (Possible if powered in-between while the device
  is off)

Bug:17460535
Change-Id: Ic030504c9cad9868a7137abbe837b170da37852b
2014-09-14 14:07:23 -04:00
Xin Guan
5ec679a0fa Fix crash in TranserPipe.
Sometimes the pipe has been closed when it's thread tries to access

E AndroidRuntime: *** FATAL EXCEPTION IN SYSTEM PROCESS: TransferPipe
E AndroidRuntime: java.lang.NullPointerException: Attempt to invoke virtual method 'java.io.FileDescriptor android.os.ParcelFileDescriptor.getFileDescriptor()' on a null object reference
E AndroidRuntime: 	at com.android.internal.os.TransferPipe.run(TransferPipe.java:184)
E AndroidRuntime: 	at java.lang.Thread.run(Thread.java:818)

Change-Id: I0fcd4a3334b49972903f2cb0edb51323ba3f49e5
2014-09-14 09:34:40 -07:00
Robert Greenwalt
49f63fbed4 Report Network status to NetworkAgent.
Currently just valid/invalid based on NetworkMonitor findings.

Changed NetworkMonitor to start out in default state since starting in Offline causes
a spurious invalid report at creation time.

Added some logging.

bug:17395269
Change-Id: I9ae650b561834d8f8979033744d97df852e76df9
2014-09-14 07:43:10 -07:00
Yohei Yukawa
61de716475 am a22e2ab6: Merge "Minimize the number of default enabled IMEs part 2" into lmp-dev
* commit 'a22e2ab64c1629e8d8a60ce5e2ccc034714f1365':
  Minimize the number of default enabled IMEs part 2
2014-09-14 08:56:50 +00:00
Yohei Yukawa
c68f27625b Merge "Minimize the number of default enabled IMEs part 2" into lmp-dev 2014-09-14 07:48:27 +00:00
Yohei Yukawa
68c860bb29 Minimize the number of default enabled IMEs part 2
Previously the system tried to enable at least one auxiliary IME
even when the system is not ready.  However, this doesn't make
much sense because the user should be able to set up their phone
without auxiliary IMEs. Also, IMEs enabled before the system
becomes ready are kept to be enabled after the system becomes
ready. Thus, we should minimize the number of enabled IMEs
until the system becomes ready.

BUG: 17347871
Change-Id: Ife93d909fb8a24471c425c903e2b7048826e17a3
2014-09-14 13:47:33 +09:00
Alan Viverette
8b5b25b448 Reduce instructions required to obtain and recycle TypedArray
Eliminates several field and method accesses by making the TypedArray
pool local to a single Resources object. Removes an unnecessary
synchronization.

ReadXmlAttrs averaged 0.069 ms/op before, 0.064 ms/op after.

BUG: 17484798
Change-Id: If790a5ba6596b47a04f117c8912974798a592052
2014-09-13 19:30:11 -07:00
Tyler Gunn
6c8d6d74c0 resolved conflicts for merge of 66c16547 to lmp-sprout-dev
Also fixed issue in TelephonyManager.

Change-Id: I4dde45e638c2bcf32f8f929d34d0083966f6761f
2014-09-13 20:10:08 +00:00
Tyler Gunn
ead6ad8a38 Merge "Renaming Telecomm to Telecom." into lmp-dev 2014-09-13 17:32:49 +00:00
Yohei Yukawa
178066aec1 am acc0ce3e: Merge "Minimize the number of default enabled IMEs part 1" into lmp-dev
* commit 'acc0ce3e5adff3a6a14b58500567e8155d96cca8':
  Minimize the number of default enabled IMEs part 1
2014-09-13 10:47:59 +00:00
Yohei Yukawa
c0b8cb8910 Merge "Minimize the number of default enabled IMEs part 1" into lmp-dev 2014-09-13 10:33:50 +00:00
Tyler Gunn
ef9f6f957d Renaming Telecomm to Telecom.
- Changing package from android.telecomm to android.telecom
- Changing package from com.android.telecomm to
com.android.server.telecomm.
- Renaming TelecommManager to TelecomManager.

Bug: 17364651
Change-Id: I192cb5d189f55db012ea72ee82ccc5aedbc21638
2014-09-12 22:16:17 -07:00
Dianne Hackborn
2e98f3bc6e am f9d92bab: Merge "Work on issue #17477510: Time change notifications sent too often" into lmp-dev
* commit 'f9d92bab128fb72cfd98f49fbf2d7df7de4abec7':
  Work on issue #17477510: Time change notifications sent too often
2014-09-13 01:03:12 +00:00
Jeff Brown
3b817e38f3 am ce0a756f: Merge "Add support for dozing after screen off." into lmp-dev
* commit 'ce0a756fd13cf9feea1409b75534b260b187398e':
  Add support for dozing after screen off.
2014-09-13 01:03:07 +00:00
Dianne Hackborn
e4f20c925e Merge "Work on issue #17477510: Time change notifications sent too often" into lmp-dev 2014-09-13 00:56:58 +00:00
Adam Powell
c30ea3d69e am dd9488c1: Merge "Provide a public API for View#computeFitSystemWindows" into lmp-dev
* commit 'dd9488c13f16699d190e399324c18b557b6a5b38':
  Provide a public API for View#computeFitSystemWindows
2014-09-13 00:35:40 +00:00
Eric Laurent
b81400d9f0 am a7f44594: Merge "SoundTrigger: fix KeyphraseRecognitionEvent parceling" into lmp-dev
* commit 'a7f44594b56d5b4341dfeb074c9518e480de7e4c':
  SoundTrigger: fix KeyphraseRecognitionEvent parceling
2014-09-13 00:35:36 +00:00
Jeff Brown
2175e9c366 Add support for dozing after screen off.
On some devices, we want the screen off transition to complete before
we start dozing.  Added a new config.xml attribute config_dozeAfterScreenOff
to configure this behavior.

Defer starting dreams until the display is ready.

Fixed some minor issues in the system UI doze service when setting the
display state.

Bug: 16187655
Change-Id: Ib1bc60de5457166f4b4880732db5df989dda67a4
2014-09-12 17:31:54 -07:00
Adam Powell
2642357b82 Merge "Provide a public API for View#computeFitSystemWindows" into lmp-dev 2014-09-13 00:22:29 +00:00
Eric Laurent
76466c7be3 Merge "SoundTrigger: fix KeyphraseRecognitionEvent parceling" into lmp-dev 2014-09-13 00:21:48 +00:00
Dianne Hackborn
a7d0d55771 Work on issue #17477510: Time change notifications sent too often
This gets rid of the spam from the battery history, by not creating
an event unless the wall clock time has changed by more than
+/- 500ms.

We'll do the remaining work in MR1.

Change-Id: I8d1cc41b5504261033d3b0ccdcf9e7cf70df9d04
2014-09-12 17:15:52 -07:00
Paul Jensen
e913394593 am 28b89f98: Allow libcore to perform necessary actions upon net config changes.
* commit '28b89f9869008ff0853419007734dad24937f578':
  Allow libcore to perform necessary actions upon net config changes.
2014-09-13 00:08:27 +00:00
Amith Yamasani
57801c13d4 am 13c4e5ad: Merge "Rename and repurpose feature MANAGED_PROFILES to MANAGED_USERS" into lmp-dev
* commit '13c4e5ad86bcf61e12d5f928ba36bc0db2dd75bf':
  Rename and repurpose feature MANAGED_PROFILES to MANAGED_USERS
2014-09-13 00:08:23 +00:00
Paul Jensen
e401d17d3f Allow libcore to perform necessary actions upon net config changes.
Delegate to libcore the responsibility of performing the necessary
actions upon a network configuration change, such as a DNS
configuration change.  In the L-release, these responsibilities
now include flushing the HTTP connection pools to prevent connections
on lingering networks getting pulled from the pool inadvertently to
satisfy requests that should be going over the new network.  All such
responsibilities can now be controlled and delegated by libcore's
new NetworkEventDispatcher, designed for this purpose.

bug:17314604
Change-Id: Ic796aea9d9a1f6ecb787fbdb38b3b7f5d991829b
2014-09-12 23:59:55 +00:00
Adam Powell
d72068b38e Provide a public API for View#computeFitSystemWindows
The current hidden API is necessary to perform correct inset behavior
for support libraries like appcompat. Provide a public method
consistent with the new WindowInsets APIs.

Bug 17411097

Change-Id: I71a63eea0238b94cae6b5c6f1721d5567560ba81
2014-09-12 16:51:28 -07:00
Amith Yamasani
d7fcca9511 Merge "Rename and repurpose feature MANAGED_PROFILES to MANAGED_USERS" into lmp-dev 2014-09-12 23:50:40 +00:00
Amith Yamasani
1d653272a2 Rename and repurpose feature MANAGED_PROFILES to MANAGED_USERS
Bug: 17392243
Change-Id: I5ff0e70eeeeba264c96eaa2a17a6bd3669576c96
2014-09-12 16:45:33 -07:00
George Mount
a6e6c3d4dc am 87483e5e: Merge "Made Transitions act only the views that they target." into lmp-dev
* commit '87483e5ea1e08467172d82f8707f8f2470107507':
  Made Transitions act only the views that they target.
2014-09-12 23:30:55 +00:00
George Mount
4d527888ac Merge "Made Transitions act only the views that they target." into lmp-dev 2014-09-12 23:19:15 +00:00
George Mount
5030c7f6f1 Made Transitions act only the views that they target.
Bug 17465989
Bug 17452585

Change-Id: I2f921e98f68df3d549a370179c0a4488d56923ad
2014-09-12 16:15:44 -07:00
George Mount
f0a68a241e am 17506bdb: Merge "Allow Path Animations to support overshooting." into lmp-dev
* commit '17506bdb89a323a31e27cbff24fec4c819a71582':
  Allow Path Animations to support overshooting.
2014-09-12 22:58:53 +00:00
Dianne Hackborn
6126395bde am a561b237: Merge "Allow throwing UnsupportedOperationException across Binder." into lmp-dev
* commit 'a561b2377fd1f8749a30fe19d6df5e3d8afc3292':
  Allow throwing UnsupportedOperationException across Binder.
2014-09-12 22:50:08 +00:00
George Mount
64ec46dbb0 Merge "Allow Path Animations to support overshooting." into lmp-dev 2014-09-12 22:48:28 +00:00
George Mount
bc68f5adc2 Allow Path Animations to support overshooting.
Bug 17458698

Change-Id: I7a29fc8932a28121d7db8b3bf695d91a55ef059b
2014-09-12 15:46:02 -07:00
Eric Laurent
75b433f737 SoundTrigger: fix KeyphraseRecognitionEvent parceling
Always include the Audioformat in the parcel if not
null.

Bug: 17489186.
Change-Id: I8bea031942b55078e5637959d5bf70961d134733
2014-09-12 15:45:47 -07:00
Dianne Hackborn
8190b79d37 Merge "Allow throwing UnsupportedOperationException across Binder." into lmp-dev 2014-09-12 22:35:48 +00:00
George Mount
b694e08054 Fix exit transitions hiding views permanently.
Bug 17480692

When a view was hidden prior to the transition completion,
the hidden views were being removed from the list and thus
weren't being reset to visible properly.

Change-Id: If778540156432eb19039fcec18d023d06e9c1b2a
2014-09-12 15:13:14 -07:00
George Mount
0253d58b9f am 9032c757: Merge "Fixed: getDecor() NullPointeExceptions." into lmp-dev
* commit '9032c75779ea43428b84cd959cc62a219f4d2612':
  Fixed: getDecor() NullPointeExceptions.
2014-09-12 22:13:11 +00:00
George Mount
e0947064af Merge "Fixed: getDecor() NullPointeExceptions." into lmp-dev 2014-09-12 22:02:37 +00:00
Yin-Chia Yeh
449121ec9e am e3505a3d: Merge "Camera2: add toString for TonemapCurve" into lmp-dev
* commit 'e3505a3d5e8968eaad68fd12717696f17e9414f9':
  Camera2: add toString for TonemapCurve
2014-09-12 22:00:48 +00:00