Commit Graph

34426 Commits

Author SHA1 Message Date
Jeff Sharkey
8e656df092 Merge "Add extras to AFD, send orientation metadata." into klp-dev 2013-10-15 00:00:20 +00:00
Martijn Coenen
7d91cc97d7 Merge "NFC card emulation API docs." into klp-dev 2013-10-14 23:30:21 +00:00
Jeff Sharkey
c1c8f3f97d Add extras to AFD, send orientation metadata.
AssetFileDescriptor augments a ParcelFileDescriptor with details
about how it should be interpreted, so extend it to support a Bundle
of extras.  Then use these extras to share thumbnail orientation
metadata.

The raw image data of EXIF thumbnails matches the orientation of
the enclosing image, but the thumbnail data doesn't repeat the EXIF
flags.  This meant that receivers of openDocumentThumbnail() would
get an image that needed to be transformed, but without enough
context to actually transform it.

Instead of transforming and recompressing the image on the fly on
the provider side, send a transformation hint that the receiver
side can interpret.

Bug: 11205688
Change-Id: Ibc5a7ad002377a55e6ffcb5ac5c8829841002e06
2013-10-14 15:28:19 -07:00
Adam Lesinski
cf18b47ed4 Wrap measurement optimization in targetSdk check
A measurement optimization has exposed some apps that are relying
on incidental layout requests to have themselves update. With the
optimization enabled, these apps break.

Apps targetted at older versions of Android should not
break due to this optimization.

bug:11192311
Change-Id: Id5fc7f83ec2cb1541d3d0d16f951cd57c0afaccd
2013-10-14 13:32:02 -07:00
Martijn Coenen
35bf628852 NFC card emulation API docs.
Bug: 10550319
Change-Id: I3023639d728aa76af89d15e0491b86c7c641648e
2013-10-14 20:58:53 +02:00
John Spurlock
774e8ad883 Merge "Implement new SYSTEM_UI_FLAG_IMMERSIVE_STICKY." into klp-dev 2013-10-14 17:21:33 +00:00
John Spurlock
f1a36648ca Implement new SYSTEM_UI_FLAG_IMMERSIVE_STICKY.
Migrate transient bar mode to IMMERSIVE_STICKY, and
introduce new behavior for IMMERSIVE: namely the
opaque bars are revealed by clearing the flags on swipe.

Remove low-profile optimization that confuses api demos
and other apps using low-profile as a signal.

TransientNavigationConfirmation renamed to
ImmersiveModeConfirmation, and its associated resources,
since the confirmation is now shown when the nav bar is
shown in either of the two immersive modes.

Remove unused Toast.makeBar and associated hidden framework
bits now that the confirmation uses a cling instead.

Bug:11062108
Change-Id: Iae49d31973940b9bee9f5b1827756db5eaa76aa3
2013-10-14 13:11:21 -04:00
Victoria Lease
edbab7b582 Merge "no layout = no visibility" into klp-dev 2013-10-14 17:08:10 +00:00
Adam Powell
5db566f16a Fix updating fast scroll state for data set changes
Only looking for old/new count changes is incomplete with the current
state of things. The observer's onChanged method will update this in
some cases, stomping the different values needed to trigger a fast
scroller update. Also update the fast scroller if the data change flag
is set.

Also fix the positioning of the legacy text overlay.

Bug 11188512

Change-Id: I35b3915ce49f8494c6d82f6be6d6df7169deddd7
2013-10-13 18:49:15 -07:00
Dianne Hackborn
021d243d6d Fix issue #11199654: Action bar enter animation skips frames when cleared by the system
We have become too aggressive about not allowing windows to draw while windw
animations are running, basically not allowing any drawing in any window when
there is any window animation.  So if you did a relayout while the status bars
were being animated, your window would stop drawing until that status bar
animation was complete.

This change relaxes those rules in two ways:

- A particular window will only be told to stop updating when *it* is
  currently involved in a window animation.  So animations in status bars
  will not stop app windows from update, and vice versa.

- If a window receives input events while it is in the "do not update"
  state, we will immediately terminate that state and start allowing it to
  draw.  If the user is actually interacting with a window, we don't want
  to wait to show feedback.

Change-Id: I72574eec048aee53115b46a78686cf27f42c42f7
2013-10-13 15:56:29 -07:00
Aravind Akella
45ca531e77 Merge "Adding stepcounter & stepdetector feature strings." into klp-dev 2013-10-13 22:48:03 +00:00
Victoria Lease
b9b77aecf2 no layout = no visibility
This fixes an Editor crash when the associated TextView's Layout
is null.

Bug: 11165608
Change-Id: I061c0db6eef95bf39a7696ad6e6f919bd22bfb11
2013-10-13 15:12:52 -07:00
Adam Powell
85e5ed639d Merge "Account for translationY when targeting the fast scroller via touch" into klp-dev 2013-10-13 21:26:35 +00:00
Adam Powell
d827389684 Account for translationY when targeting the fast scroller via touch
Bug 11188512

Change-Id: Ia8e0088760a18d5862bbe1b904610abd908a190e
2013-10-13 13:35:27 -07:00
Daniel Sandler
e00ab01977 Merge "Easter egg cleanups." into klp-dev 2013-10-13 19:29:30 +00:00
Daniel Sandler
70966ec922 Easter egg cleanups.
Bug: 11171189
Bug: 10240151
Change-Id: Id5a8904bdf6c16302e09f2b48392f99c280a8179
2013-10-13 15:20:52 -04:00
Svetoslav Ganov
65d7b8d0db Merge "The list of active print jobs in print service retunring wrong result." into klp-dev 2013-10-13 19:10:12 +00:00
Eino-Ville Talvala
d38b1302b7 Merge "DO NOT MERGE: Hide new camera API." into klp-dev 2013-10-13 01:50:30 +00:00
Aravind Akella
068b0c05fe Adding stepcounter & stepdetector feature strings.
Change-Id: Ic8cc95612f776db7cb1d1c13a228d5cd8ed64f56
2013-10-12 18:47:00 -07:00
Svetoslav Ganov
d91cb3ea61 The list of active print jobs in print service retunring wrong result.
1. The getActivePrintJobs() method in print service is designed to return
   the active print job i.e. ones scheduled to be processed by the print
   service. Now the correct list is returned.

2. The listeners for observing the state of print jobs may be called even
   after being unregistered. Ex: state change occurs and we schedule a
   message on the app's main thread to make the notificaion. Now the app
   unregisretes the callback and on the next loop the notification message
   is handled.

bug:11200258

Change-Id: I4a497b5c9a7287a22023cafe41ce966d14300ca6
2013-10-12 16:09:29 -07:00
Svetoslav Ganov
7d7888d1c7 Printed document size not persisted.
We persist ongoing print jobs so they can be restarted if the device
dies. The data size of the printed document was not persisted to disc.

bug:11199352

Change-Id: I53ef1ee285aa4808917dd6a5c7335226aba1ef0a
2013-10-12 13:18:16 -07:00
Svetoslav Ganov
9b6d3a153f Fail only scheduled print jobs, i.e. handed to a service, if the service is disabled.
When a print service is disabled we assume all print jobs for it failed as we have
no way to know what happens to them. However we are also failing created print jobs,
i.e. ones not given to the service. Such jobs are in process of construction and
the print dialog is up. We should not fail such jobs as the dialog can still modify
their state and potentially select a print from a different service. Therefore, we
leave them alone and they will be failed if when constructed are passed to a
disabled/uninstalled service.

bug:11197432

Change-Id: Ie4fe54327e3e25776b1dd572be2dfafdd700c2e5
2013-10-12 12:35:44 -07:00
Chris Craik
709129ba93 Merge "Document special case in hasOverlappingRendering" into klp-dev 2013-10-12 00:08:08 +00:00
Chris Craik
c09127a7c3 Document special case in hasOverlappingRendering
bug:11121809

Change-Id: I074ac47aa510bd2362cfda7dffc73930f07e925c
2013-10-11 17:00:16 -07:00
Matthew Williams
32551ae519 Merge "Fix infinite boot-loop bug in SM." into klp-dev 2013-10-11 21:26:19 +00:00
Chris Craik
c2245e1ac7 Merge "Workaround fading edge incompatibility with alpha modulation" into klp-dev 2013-10-11 20:57:34 +00:00
Matthew Williams
632515b9d0 Fix infinite boot-loop bug in SM.
Bug:11064918
If the ContentResolver sync API is used with the empty ("")
string as a provider, the ContentService will throw an RTE.
This cl addresses all the entry points of the API that could
allow this, as well as adds an ifEmpty check at the point of
failure.
Also removed RTE throws from public functions(no point in
crashing the phone).

Change-Id: I57427d12a6cafb3e6d7a32ca0c10b05315b20580
2013-10-11 13:18:22 -07:00
Chris Craik
7bcde5009d Workaround fading edge incompatibility with alpha modulation
bug:11121809

Fading edges, such as drawn by a scrolling marquee TextView, don't
behave correctly when their view is modulated, as done by the view
system when alpha is set on a view that returns false from
hasOverlappingRendering.

To work around this, always return true from hasOverlappingRendering
if a TextView has horizontal fading edges enabled.

Change-Id: I64c9b8c653aa1d9ca320292306fd24333e3ee225
2013-10-11 12:55:42 -07:00
Svetoslav
54adee86af Print spooler not starting.
1. In my previous change I fixed a typo in the Java constant with
   intent action to launch the print dialog but failed to updated
   the print spooler manifest.

2. Removed dead code - the user id is no longer needed since the
   spooler is an app that runs per user. Every user has its spooler.
   This code was not referenced from anywhere.

3. Added a default icon to the print spooler.

4. Fixed a bug where if the print history is empty the UI goes
   to the all pritners activity.

bug:11059554

Change-Id: If74c23b418a8c67620ba14435ee7f3b2c4527099
2013-10-11 12:39:47 -07:00
Eino-Ville Talvala
cd92588528 DO NOT MERGE: Hide new camera API.
Not yet ready.

Bug: 11141002

Change-Id: I4704bffb9ba36af47a66dc5b49cbba00be623aae
2013-10-11 19:26:08 +00:00
John Spurlock
e2bd7be298 Merge "Ensure fitSystemWindows is called on the IME at least once." into klp-dev 2013-10-11 17:27:26 +00:00
John Spurlock
3bf26b6f2f Ensure fitSystemWindows is called on the IME at least once.
InputMethodService will recreate the entire layout on config changes.
Until the system insets change again, the new instance will not
hear about the insets.

This change ensures fitSystemWindows is called at least once for all
input method root views that are added to a window.

Bug:11174545
Change-Id: Id0f02f32c0d6e9c2d6b6aeef74a12a13acfbb9e6
2013-10-11 13:16:23 -04:00
Svetoslav
8f34715b94 Merge "Refactor how the print dialog activity is started." into klp-dev 2013-10-11 17:01:15 +00:00
Dianne Hackborn
0ea920d839 Small IntentFilter docs improvement.
Change-Id: I52522e1c007c02d2c4fae8665369d92971689fd2
2013-10-11 09:40:18 -07:00
Svetoslav
7bfbbcb04b Refactor how the print dialog activity is started.
1. Before the print job activity was started asyncronously with
   respect to the print call on to the print manager. This was
   creating a situation where the starting activity may finish
   before the print dialog appears which may lead to an orphaned
   print document adapter with no data to print (as the UI is
   is gone), or strange behaviors where the print dialog starts
   on as a separate task.

   To address this the pending intent for starting the print
   dialog is not started by the print spooler since we cannot
   call into it synchronously as we have to start its process
   and bind to the spooler service which leads to jankyness in
   the client app. Now the pending intent is created by the
   print manager service in the synchronous print call so
   from an app's perspective calling print starts the activity.

   The side effect of this design is that the print dialog
   activity may start before the system is bound to the spooler
   service. In such a case the print activity cannot start
   poking the print spooler state as the system registers
   callback to observe the spooler state. To address this
   the print spooler activity disables the UI and also binds
   to the spooler service which happenes immediately after it
   is started. As soon as the print dialog binds to the
   service it starts the UI.

2. Fixed an bug in the printer adapter of the print dialog that
   was leading to a crash if the only item in the adater is the
   all pritners option and it is selected.

3. Piping the package name that started the printing so we can
   pass it to the storage UI as a hint to open the last location
   the app used.

bug:11127269

Change-Id: Ia93820bdae0b0e7600a0930b1f10d9708bd86b68
2013-10-11 09:11:24 -07:00
Aravind Akella
d9b09fa97e Merge "Fix registerListener and flush bugs." into klp-dev 2013-10-11 02:05:53 +00:00
Adam Powell
ebd1dca5ea Merge "Re-enable ActionMenuPresenter view recycling" into klp-dev 2013-10-11 01:27:20 +00:00
Adam Powell
c3ca3ea3a9 Re-enable ActionMenuPresenter view recycling
Since action bar transitions are turned off again for now, re-enabling
item view recycling fixes an unfortunate regression with submenus.

If a menu view is invalidated while a submenu is open we need to keep
its anchor consistent. With view recycling active we preserve status
quo and the previous anchor view instance for the popup window remains
in place.

In the future this will need to get more sophisticated;
ActionMenuPresenter will need to re-parent an open submenu against the
proper anchor view by menu item id. But that is a change for another
day.

Bug 11174504

Change-Id: I7e8a444f6996ec95417d20e87938f496e9c3a4dd
2013-10-10 18:07:48 -07:00
Alan Viverette
c37db9c0de Merge "Fix layout and invalidate in SubtitleView" into klp-dev 2013-10-11 00:24:02 +00:00
Jason Monk
8b81a63810 Merge "getProxy in ConnectivityService returns port w/PAC" into klp-dev 2013-10-10 22:52:03 +00:00
Matthew Xie
64be26fad7 Merge "Check callback null condition for register/unregsiter state change callback" into klp-dev 2013-10-10 21:56:20 +00:00
Jason Monk
decd295b13 getProxy in ConnectivityService returns port w/PAC
Changes the PacManager to report message back to ConnectivityService
to send a broadcast once the download has completed.  This allows the
ConnectivityService to store the correct proxy info for getProxy().

This made the problem arise that ProxyProperties was not handling port
while it had PAC.  Added small fix for equals() and parcelization.

The combination of these fixes seems to resolve Bug: 11028616.

Bug: 11168706
Change-Id: I92d1343a8e804391ab77596b8167a2ef8d76b378
2013-10-10 17:01:45 -04:00
Matthew Xie
9b69399399 Check callback null condition for register/unregsiter state change callback
Fix BluetoothPan closing sequence for unregsiter state change callback
bug 11160007

Change-Id: I405ec91a938289fe9541de2ebd9abc1fb938f44a
2013-10-10 12:12:04 -07:00
Edward Jee
430e361b20 Makes ACTION_PAIRING_REQUEST require BLUETOOTH_PRIVILEGED.
Bug: 11087521
Change-Id: I99cc584987bf12fe0648b048398b4eb9836e6172
2013-10-10 18:42:34 +00:00
Chet Haase
1d7b3dc126 Merge "Make LayoutTransition.setInterpolator() actually do something" into klp-dev 2013-10-10 18:22:08 +00:00
Alan Viverette
90abd6d1df Merge "Ensure accessibility node cache is synced with service state" into klp-dev 2013-10-10 18:19:25 +00:00
Chet Haase
33d08762d8 Make LayoutTransition.setInterpolator() actually do something
Previously, you could set a new interpolator on a LayoutTransition object,
but it wouldn't have any effect, since the value was only used at construction
time. This change makes the intended behavior work, byt assigning that
new interpolator to the appropriate animations when they are run.

Issue #11163487 LayoutTransition.setInterpolator() has no effect

Change-Id: I1b390a30c008ac2bf26491dc352e28f276357388
2013-10-10 11:17:48 -07:00
John Spurlock
a619afd659 Merge "IME navigation guard implemented as a View." into klp-dev 2013-10-10 18:15:00 +00:00
John Spurlock
57beb3b5b3 IME navigation guard implemented as a View.
Instead of a custom onDraw in order to stay 100% in sync with abrupt
layout changes.

Also use the unrestricted layout bottom to avoid unnecessary
fitSystemWindows churn.

Bug:11162351
Change-Id: If9bb9a52d503e348d642bf1238f75c4a418ad805
2013-10-10 12:54:05 -04:00
Svetoslav Ganov
a18661d592 Coalescing multiple print job notifications.
1. We used to show a single notificaiton for every print job but
   this is against th UX guidelines. Since we have to lead by
   example, this change adds coalescing of multiple notifications.

bug:11155212

2. Print job state callback in the PrintManager now correctly
   invoked on the main thread.

bug:10983508

Change-Id: I906e9e62198fa37cb4d2f71fce07ed475d61e1bd
2013-10-09 23:43:11 -07:00