Commit Graph

31968 Commits

Author SHA1 Message Date
Svetoslav
afd1967503 Avoid NPE and add a warning log if a printing app misbehaves.
An app can print only from an activity. If the activity is finished
before printing completes we destroy the PrintDocumentAdapter. The
app may however invoke some of the print callbacks after destruction
resulting in a NPE. This change checks if the adapter is destroyed
and if so does not crash while printing a meaningful log error with
the mistake of the app developer.

bug:11675274

Change-Id: I66539cfbd7583f52cb863a84ef8e40856f92ceed
2013-11-13 17:31:15 -08:00
Jeff Sharkey
711d390be9 Merge "Small DocumentsProvider doc improvements." into klp-dev 2013-11-13 22:31:01 +00:00
Jeff Sharkey
3b945405cf Small DocumentsProvider doc improvements.
Bug: 11670294
Change-Id: I5fb91c7665fc2a4531059ef9f2de0972ebabe1ea
2013-11-13 13:31:17 -08:00
Svetoslav
14f300803b Merge "Update the PrintDocumentAdapter docs." into klp-dev 2013-11-13 21:30:58 +00:00
Jean Chalard
218ecd4394 Fix the docs build
Change-Id: I05f1f39aaa9d72201a7fd06377799246039cd505
2013-11-13 15:20:58 +09:00
Jean Chalard
7d57b7a35b Merge "Improve documentation for InputType and EditorInfo." into klp-dev 2013-11-13 05:19:36 +00:00
Svetoslav
57b296f5a9 Update the PrintDocumentAdapter docs.
This change adds some clarification when a cancellation will be
requested during a layout or write. It also clarifies from which
thread the layout and write callbacks can be invoked.

Change-Id: Id20ff04c6fca8315849ed4a6c329da1b12bb6836
2013-11-12 16:21:00 -08:00
Craig Mautner
6cd206b2aa Merge "Relayout windows that handle their own config change." into klp-dev 2013-11-12 23:56:21 +00:00
Craig Mautner
5d9f547720 Relayout windows that handle their own config change.
If a window claims to handle its own configuration change then we
won't destroy and recreate its window on a configuration change.
Normally that recreation triggers the first layout following
orientation change because mHaveFrame is false. Windows that handle
their own configuration changes never got a relayout pass following a
change in orientation.

This change passes the configuration changes that an application
handles into the AppWindowToken. If the app says it handles
orientation or screen size changes then a relayout will occur when the
configuration has changed.

Fixes bug 11647107.

Change-Id: Ie8d49fd050442ebbdcf0b805087894e3a2fc4be9
2013-11-12 14:02:52 -08:00
Fabrice Di Meglio
3f183a234b Merge "Fix bug #11586041 Regression: text truncation in Clock" into klp-dev 2013-11-12 19:03:48 +00:00
Eino-Ville Talvala
4d12d8bef6 Merge "Camera2: Add support for partial result metadata quirk" into klp-dev 2013-11-12 18:27:06 +00:00
Jean Chalard
c1a11f17a2 Improve documentation for InputType and EditorInfo.
Bug: 11245912
Change-Id: Ie92ba20079461f7f0e30d969ba3692fec3a3b97f
2013-11-12 14:13:55 +09:00
Svetoslav
2b8795a9db PreferencesFragment showing the breadcrumb area in single pane mode.
If the PreferenceActivity is running in a single pane mode we are
not showing the headers and the breadcrumb area. However, when this
activity is restarted and has a saved state to restore we are trying
to use headers even in a single pane mode. As a result the breadcrumb
area is shown and the content is shifted to the bottom with an empty
space at the top. This change ignores the saved headers from the
saved instance state in a single pane mode. Note that in such a case
these headers are null anyway as we do not use them.

bug:11242762

Change-Id: I2828bc82762695d9c93fb4ca43933598a9b12b87
2013-11-11 18:31:54 -08:00
Fabrice Di Meglio
82d37b40c5 Fix bug #11586041 Regression: text truncation in Clock
Background padding should be used only and only if
- no padding is already defined into a layout file
- an explicit call to setBackground() / setBackgroundDrawable() has been done

Change-Id: I0a732c61b898e006ee86377bcbe7691740d68111
2013-11-11 16:52:49 -08:00
Eino-Ville Talvala
7a31310439 Camera2: Add support for partial result metadata quirk
- Add new CaptureListener.onCapturePartial() callback for receiving
  partial result metadata sooner than the full result metadata will be sent
  in onCaptureComplete().
- Add hidden keys for the partial result quirk
- Dispatch results to onCapturePartial based on the partial result quirk

All additions are hidden for now.

Bug: 11115603
Change-Id: Ie9a3be640f147257ae22e5b5edf0974bddc1cb85
2013-11-11 13:47:46 -08:00
Jeff Brown
75af171006 Changes to support new screen cast settings screen.
Fixed the Preference ordering code to consider the case where
two preferences might have the same order.  In that case, it
falls back on the title to disambiguate.  Previous behavior was
undefined (and technically not stable).

Expose the wifi display device address.

Perform wifi display scans every 10 seconds instead of every 15
to improve reponsiveness.

Make sure to define routes for wifi displays that we are connecting
to even if they are not yet paired.  Simplified the logic for
adding and removing these routes to avoid possibly getting out
of sync and leaving stale routes behind.

Fix wifi display notification icon.

Bug: 11257292
Change-Id: I8ac15fb17d83758c0bdce80399e12723c367b83c
2013-11-10 22:51:15 -08:00
Jeff Brown
0abd3a6ce8 Update the media router dialogs and integrate into system UI.
Port the new style UI back into the framework from the support library.
There are now two dialogs: a chooser and a controller.  We use the
same dialogs for selecting routes within app and within quick settings.

Note that the new UI does not support any grouping features since they
are deprecated and unused.

Bug: 11257292
Change-Id: I64e936a18d25ab75f0c470cbc1e7085f67004863
2013-11-10 14:39:19 -08:00
Jeff Brown
e2126baf72 Make quick settings show the standard media router icon.
Fixed a bug in ImageView where we failed to inform a newly updated
Drawable about the visibility state.  This caused AnimationDrawables
to not animate when attached to an existing ImageView *unless* that
ImageView happened to be attached to the window *later* or have
its visibility toggled for some other reason.

Bug: 11257292
Change-Id: Iba9e0db5ba0db2b022950aec0c6f60a435da8ad2
2013-11-09 18:59:46 -08:00
Ruben Brunk
e73b41b27f camera2: Remove prior repeating request when setting.
Bug: 11579778
Change-Id: Idb10662413ff5ee939adbdeab68a97cb34750fac
2013-11-07 19:30:43 -08:00
Jeff Brown
d40a4d74c6 Merge "Add media router service and integrate with remote displays." into klp-dev 2013-11-08 01:36:55 +00:00
Robert Greenwalt
e8c51298a4 Merge "Add BatteryStats for Wifi Batched Scanning." into klp-dev 2013-11-07 18:30:49 +00:00
Dianne Hackborn
9882d38899 Merge "Fix issue #11223338: Not retaining service started state while restarting" into klp-dev 2013-11-07 18:16:10 +00:00
Jeff Brown
69b07161be Add media router service and integrate with remote displays.
This change adds a new media router service whose purpose is to track
global state information associated with media routes.  This service
publishes routes to the media router instance in application processes
and handles requested state changes such as selecting or unselecting
global routes.  The service also binds to remote display provider
services which can offer new remote display routes to the system.

Includes a test application for manually verifying certain aspects
of the operation of the media router service.

The remote display provider interface is essentially a stripped down
media route provider interface as defined in the support library
media router implementation.  For now, it is designed to be used only
by first parties to publish remote display routes to the system so
it is not exposed as public API in the SDK.  In the future, the remote
display provider interface will most likely be deprecated and replaced
with a more featureful media route provider interface for third
party integration, similar to what is in the support library today.

Further patch sets integrate these new capabilities into the System UI
and Settings for connecting remote displays.

Bug: 11257292
Change-Id: I31109f23f17b474d17534d0f5f4503e388b081c2
2013-11-07 03:25:37 -08:00
Robert Greenwalt
a029ea1318 Add BatteryStats for Wifi Batched Scanning.
bug:10690989
Change-Id: Ia39b715ee6d5733970095bc76de0ed40ff8208c0
2013-11-06 17:43:18 -08:00
Dianne Hackborn
daa0d5c929 Fix issue #11223338: Not retaining service started state while restarting
When I cleaned up how we maintained the lifecycle of the tracker with a
service, I broke most tracking of the service restart state.  (Since at
that point the service is no longer associated with a process, so I
must clean up the tracker state).  This change introduces a new special
case for interacting with a service tracker to explicitly tell it when
a service is being restarted.  It also fixes how we update the process
state when services are attached to it, so it goes in and out of the
restarting state correctly.

In addition:

- Maybe fix issue #11224000 (APR: Dependent processes not getting added
  to LRU list).  We were not clearing ServiceRecord.app when bringing
  down a service, so if for some reason there were still connections to
  it at that point (which could happen for example for non-create bindings),
  then we would so it when updating the LRU state of that client process.
- dumpsys procstats's package argument can now be a package or process
  name, and we will dump all relevent information we can find about that
  name.
- Generally improved the quality of the dumpsys procstats output with its
  various options.
- Fixed a bug in ActivityManager.dumpPackageState() where it would hang if
  the service was dumping too much, added meminfo to the set of things
  dumped, and tweaked command line options to include more data.
- Added some more cleaning code to ActiveServices.killServices() to make
  sure we clean out any restarting ServiceRecord entries when a process is
  being force stopped.
- Re-arranged ActiveServices.killServices() to do the main killing of the
  service first, to avoid some wtf() calls that could happen when removing
  connections.

Bug: 11223338
Bug: 11224000

Change-Id: I5db28561c2c78aa43561e52256ff92c02311c56f
2013-11-06 16:42:17 -08:00
Patrick Tjin
bd9513f3b2 Merge "Add HSPA+ to BatteryStats" into klp-dev 2013-11-06 18:12:47 +00:00
Ruben Brunk
6fe15c3d5f Merge "gcam: Avoid leaking repeating CaptureRequests." into klp-dev 2013-11-06 18:07:28 +00:00
Adam Lesinski
1aac29c3dd Merge "Fix off-by-one issue when removing from Iterator" into klp-dev 2013-11-06 17:49:21 +00:00
Patrick Tjin
b71703cfdf Add HSPA+ to BatteryStats
HSPA+ was being shown as connection type other in battery
statistics because it was not updated when TelephonyManager
was changed.

Bug: 11552902
Change-Id: I85ce7c393bf93010a4ac8437f14684015ad0391a
2013-11-06 17:29:33 +00:00
Jeff Sharkey
5f4affdab8 Merge "Clarify DocumentsProvider recents behavior." into klp-dev 2013-11-05 20:46:11 +00:00
Jeff Sharkey
37ed78e504 Clarify DocumentsProvider recents behavior.
Bug: 11448309
Change-Id: I17e0ac757e549b251e08d58d5ce7d25fb253883f
2013-11-05 12:38:21 -08:00
Fabrice Di Meglio
f48bcd5b68 Merge "Fix bug #11256076 Spinner text is too close from the opening triangle in RTL Locales" into klp-dev 2013-11-05 00:46:19 +00:00
Fabrice Di Meglio
cad157b370 Merge "Fix bug #11252410 Recents items stuck behind hammerhead navigation panel in landscape" into klp-dev 2013-11-05 00:45:41 +00:00
Svetoslav
517220b468 Merge "PreferenceFragment showing the breadcrumb when not needed." into klp-dev 2013-11-04 19:09:49 +00:00
Victoria Lease
3dbea35f7e Merge "use SpannedStringBuilder to build a SpannedString" into klp-dev 2013-11-04 16:23:15 +00:00
Victoria Lease
ee4c84642a Merge "Handle surrogate pairs in Html.toHtml()" into klp-dev 2013-11-01 20:22:42 +00:00
Michael Wright
4846a93b55 Merge "Only call dump when a ViewRoot actually exists" into klp-dev 2013-11-01 20:11:48 +00:00
Michael Wright
5f48dc7409 Only call dump when a ViewRoot actually exists
Bug: 11446494
Change-Id: I47e35d7b4d49d6893ba0c9f8ad05b31f91be85d2
2013-11-01 12:42:49 -07:00
Michael Wright
17d28ca3d7 Check view and focus invariants after calling into app
When we dispatch input events into the actual application, make sure
the input invariants we rely on haven't changed. If they have, we
drop the event and log why.

Bug: 11399505

Change-Id: Id772e41ca41dc332bb02725ab486e3b10a73c220
2013-11-01 19:13:20 +00:00
Adam Lesinski
83c7ac3b8e Fix off-by-one issue when removing from Iterator
MapCollections' iterator removes the preceding element
which causes IndexOutOfBoundsExceptions to be thrown
when removing the first element while iterating.

bug:11477476
Change-Id: Ifc8fcf0ca1651e759f3b2ab8356404564e9f7d0b
2013-11-01 12:00:53 -07:00
Svetoslav
7db97b0a29 PreferenceFragment showing the breadcrumb when not needed.
The breadcrumb section is used for a single pane mode for showing
the current user location. The breadcrumb should not be shown if
its title and subtitle are empty. The code in PreferenceActivity
onCreate updates the breadcrumb with the title and subtitle in
a single page mode but does not hide it if they are empty. This
change fixes that.

bug:11242762

Change-Id: Ib1ba9e8afd9d0ab2e85d78a65ca7c18489464f6d
2013-11-01 11:57:12 -07:00
John Spurlock
56d007b998 Manage keyguard nav elements using transitions.
Move the logic for managing dimming the navigation bar
elements on the lockscreen into BarTransitions.

Replace search light + camera assets with new
versions at full brightness, and apply 50% dimming
at runtime, including the IME dismiss button.

Remove unused StatusBarManager _NOP hints.

Improve choreography between camera button +
password security (w/ IME).  Fix a few found bugs
in PagedView.

Improve password security unlock transition, manually
fade in back along with the rest of the icons.

Bug:11221659
Change-Id: Ifd1f8c9f400d90542f0ca858b9a4deacabbd518a
2013-11-01 11:33:48 -04:00
Jeff Sharkey
c09b6a46a3 Merge "Better enforcement in DocumentsProvider.call()." into klp-dev 2013-11-01 00:56:26 +00:00
Svetoslav
a9f28eea36 Merge "Temporary detached views not properly reported to accessibility layer." into klp-dev 2013-11-01 00:44:50 +00:00
Svetoslav
a84e1197f5 Merge "Uninitialized UiAutomationConnection incorrectly enforces caller id." into klp-dev 2013-11-01 00:31:02 +00:00
Svetoslav
d4bdd6befa Temporary detached views not properly reported to accessibility layer.
A view may be temporary detached. While in this state the view
state may change for which we fire accessibility events. Clients
use them to know when the view changed and what the change is.
However, detached views do not fire accessibility events.
Hence, a client may hold a stale AccessibilityNodeInfo since
the changes to its source view happened in a temporary detached
state.

bug:11388752

Change-Id: I9052700ca9195841cc2881b65c17f5615e6f71fb
2013-10-31 17:25:06 -07:00
Svetoslav
9663fd09e9 Uninitialized UiAutomationConnection incorrectly enforces caller id.
When a client of a UiAutomationConnection is set it remembers its UID
and allows subsequent operations only from this UID. The connection
If the connection was not used, i.e. its client is not set, and an
attempt to destroy it is made the connection enforces the caller UID
to be that of the owner but it does not have an owner yet. Now if the
destroy method is called on a connection that is never used (has no
client) we do not enforce caller UID.

bug:11465888

Change-Id: I739dfc45e772ea970b6ab384e4420184724333a3
2013-10-31 16:28:24 -07:00
Ruben Brunk
decfe95fce gcam: Avoid leaking repeating CaptureRequests.
Bug: 11352359
Change-Id: I598416c08c0a7c3e5a8054a4d80ed29d82870bd2
2013-10-31 15:33:46 -07:00
Jim Miller
43ef1c8c34 Merge "Remove deprecated API calls to KeyguardManager from statusbar" into klp-dev 2013-10-31 22:22:58 +00:00
Jeff Sharkey
8a2998eade Better enforcement in DocumentsProvider.call().
Use ContentProvider.enforceWritePermissionInner() to handle all edge
cases around checking if caller has write permissions.  This fixes
bug where call() would throw if caller and provider were the same app.

Bug: 11464234
Change-Id: Iace8e0e4243d56ed1cdcc9680383103975107036
2013-10-31 14:55:44 -07:00