Commit Graph

2928 Commits

Author SHA1 Message Date
Dianne Hackborn
c8911ddd48 am 373a2f15: am 607b414d: Add new app ops method to reset all op modes.
* commit '373a2f15667956ff8a00ba59b42972b9c930af92':
  Add new app ops method to reset all op modes.
2013-08-02 19:32:13 -07:00
Dianne Hackborn
607b414d04 Add new app ops method to reset all op modes.
Change-Id: I5ee6764de8dc31d812e5a788914ab0099bbef4c0
2013-08-02 19:06:25 -07:00
Dianne Hackborn
5b45f2366e am bd61ba5b: am a99cb5bc: (DO NOT MERGE) Fix pub issue #58043: Copy crash in Android 4.3...
* commit 'bd61ba5b22f55a70615e128310d365c6175a0a4e':
  (DO NOT MERGE) Fix pub issue #58043: Copy crash in Android 4.3...
2013-07-31 14:18:06 -07:00
Dianne Hackborn
a99cb5bc41 (DO NOT MERGE) Fix pub issue #58043: Copy crash in Android 4.3...
...when clipboard listener attached

We need to clear the calling identity before dispatching change
notifications.  Also make this more robust, so that in the face
of any failure we will clean up the broadcast state.

Integrated from master.

Change-Id: I05e1f76ffd486439535631fe4062dabe94bd2ccf
2013-07-31 13:48:39 -07:00
John Spurlock
46ae41221f am a9221987: Merge "Save Notification large icon to extras." into jb-mr2-dev
* commit 'a9221987c047a9a05da9cc4f3446a0d581494a85':
  Save Notification large icon to extras.
2013-06-11 14:09:53 -07:00
John Spurlock
bf563368e1 Save Notification large icon to extras.
This piece of semantic info was defined, cleared properly on
lightenPayload, but never saved.

Change-Id: Ib2c5372a57d2a01617e401231c150260d22b05d6
2013-06-10 11:45:17 -04:00
Adam Powell
d3cb6bcf0f am 8152c794: Merge "Fix incorrect fragment animation used for hiding fragments"
* commit '8152c7940a10f11a9edb16ae1daeca8a6fe2e6bb':
  Fix incorrect fragment animation used for hiding fragments
2013-06-07 11:49:32 -07:00
Adam Powell
2756293910 Fix incorrect fragment animation used for hiding fragments
Mirror of support lib patch
https://android-review.googlesource.com/#/c/60032/ into
frameworks/base.

Change-Id: I8d1cb2e217721336674b8e3e2ef8722a8d9baefd
2013-06-07 10:19:22 -07:00
Dianne Hackborn
fc09b326da am fee6d0cb: Merge "Fix documentation of requestCode parameter."
* commit 'fee6d0cb1e27b13f6ed91c1cdcb9d524bb967ea2':
  Fix documentation of requestCode parameter.
2013-05-26 00:02:31 -07:00
Dianne Hackborn
fee6d0cb1e Merge "Fix documentation of requestCode parameter." 2013-05-26 06:56:03 +00:00
Daniel Sandler
617055d7a9 am 5d6dc425: Merge "Filter out dangerous CharSequences in Notification." into jb-mr2-dev
* commit '5d6dc425287e5651e3a1fdc32591b8791dd9dd18':
  Filter out dangerous CharSequences in Notification.
2013-05-08 17:30:43 -07:00
Daniel Sandler
5d6dc42528 Merge "Filter out dangerous CharSequences in Notification." into jb-mr2-dev 2013-05-09 00:28:11 +00:00
Daniel Sandler
dcbaf661bf Filter out dangerous CharSequences in Notification.
If an app mistakenly puts some Parcelable implementation of
CharSequence in here, Bundle will try to marshal the derived
class, which is going to be bad news when we try to unparcel
it in another process.

Additionally add a proper stack trace to unparceling
failures (otherwise you have no idea where the bad parcel
was being used).

Bug: 8725271
Change-Id: Ide19b986d65c7f47929cf2dde4e62b762c469fee
2013-05-08 17:06:35 -04:00
Scott Main
0ba3d91f2d am 05759d15: Merge "add notice to not use 0 in startForeground(). also delete some obsolete back-compat tips for <=donut bug: 8746126" into jb-mr2-dev
* commit '05759d1531f4e36b51f386fa884454eeda88ecb8':
  add notice to not use 0 in startForeground(). also delete some obsolete back-compat tips for <=donut bug: 8746126
2013-05-06 17:06:40 -07:00
Scott Main
05759d1531 Merge "add notice to not use 0 in startForeground(). also delete some obsolete back-compat tips for <=donut bug: 8746126" into jb-mr2-dev 2013-05-06 23:56:41 +00:00
Dianne Hackborn
a98b0ff812 am d43a71da: Merge "Help for the debugging help for issue #8734824." into jb-mr2-dev
* commit 'd43a71dad80dfca65b0758f4333360516f6ad300':
  Help for the debugging help for issue #8734824.
2013-05-06 16:48:16 -07:00
Dianne Hackborn
8bd64df2ad Help for the debugging help for issue #8734824.
Add a new "hang" am command that lets you hang the system
process.  Useful for testing.

Change-Id: Ice0fc52b49d80e5189f016108b03f9fd549b58a7
2013-05-06 16:07:26 -07:00
Dianne Hackborn
485d7a31a8 am 5b88a2fd: Debugging help for issue #8734824: WATCHDOG KILLING SYSTEM PROCESS
* commit '5b88a2fd7b77880f6e09ae4a1de509bebe28bc3a':
  Debugging help for issue #8734824: WATCHDOG KILLING SYSTEM PROCESS
2013-05-06 13:47:04 -07:00
Dianne Hackborn
5b88a2fd7b Debugging help for issue #8734824: WATCHDOG KILLING SYSTEM PROCESS
IActivityController has a new callback which the Watchdog calls
when it detects that the system process is hung.  This may be
use full monkey.  All hail the monkey!

Also add a new private feature to Binder to be able to turn off
all incoming dump() calls to a process.  The watchdog uses this
when it reports it is hung, so that if someone, say, wants to
collect a bug report at this point they won't get stuck waiting
for things that are all busted.

Change-Id: Ib514d97451cf3b93f29e194c1954e29f948c13b1
2013-05-06 11:16:18 -07:00
Scott Main
2e6de8fdcc add notice to not use 0 in startForeground().
also delete some obsolete back-compat tips for <=donut
bug: 8746126

Change-Id: I3ee966647aa2c9f572e6f02eeabfc2cf925a031f
2013-04-30 11:44:07 -07:00
Kenny Root
e9ae6822a8 resolved conflicts for merge of 1f6e789b to jb-mr2-dev-plus-aosp
Change-Id: I06c05d637613215b6d83df3e29cd495f6a5a0176
2013-04-29 23:09:03 -07:00
Kenny Root
12e752225a Track change to JSSE provider
Change-Id: I35e824e47ad758ab6408e91e2ba5dcda053a82f5
2013-04-29 15:15:27 -07:00
Daniel Sandler
e6f7f2e3a0 API cleanup: NotificationListener
- Wrap all public member variables in getters and make
    slots private
  - Rename clear* methods to cancel* to be more consistent
    with existing public Notification API

Bug: 8656860
Change-Id: I84f7e71fbb627f859352a93089c6a531b44dac95
2013-04-25 15:51:08 -04:00
Daniel Sandler
25cf8cee6f New NotificationListener API: getActiveNotifications()
This allows a listener service to catch up on the current
state of the notification panel at any time, including at
startup.

Bug: 8656860
Change-Id: I1a3d665d84576e17870929a63dda334afc696010
2013-04-24 23:19:08 -04:00
Svetoslav
11adf6dc24 The touch exploration capability is dynamically granted pre-JellyBeanMR2.
Since the enable touch exploration capability is dynamically granted by
the user for apps targeting pre-JellybeanMR2 API level, we have to properly
update the accessibility service info for that service and also avoid
caching copies of the service info.

bug:8633951

Change-Id: I83dd1c852706ec55d40cda7209ad842889fb970a
2013-04-24 14:59:04 -07:00
Svetoslav
db7da0eb8b Fixing bugs exposed when moving accessibility CTS tests to UiAutomation.
1. UiAutomation#executeAndWaitForEvent method was invoking the passed
   runnable while holding the lock which may lead to a deadlock. For
   example: a runnable that calls getActivity() gets us into a state
   like this.

2. UI automation services did not get all capabilities such a
   service can have. Now a UI test service gets all of them.

3. When UiAutomation was exiting for event fired as a result of a
   performed action, it was checking whether the received evnet time
   is strictly before the time of executing the command that should
   fire the event. However, if the execution is fast enough, i.e.
   less than one millisecond, then the event time and the execution
   time are the same. This was leading to a missed signal in rare
   cases.

4. AccessibilityNodeInfoCache was not clearing the relevant state
   for accessibility focus clearing event.

5. Accessibility text traversal in TextView was partially using text
   and partially content description - broken. Now we are using the
   text since for text view and content desc for other views. In other
   words, we are using the most precise text we have.

6. AccessibilityManagerService was not granting capabilities of a
   UiAutomation service - plainly wrong.

CTS change:https://googleplex-android-review.googlesource.com/#/c/300693/

bug:8695422
bug:8657560

Change-Id: I9afc5c3c69eb51f1c01930959232f44681b15e86
2013-04-23 17:44:00 -07:00
Daniel Sandler
f78ff07f6e Merge "Fix concurrency issues when parceling StatusBarNotifications." into jb-mr2-dev 2013-04-23 00:53:31 +00:00
Michael Wright
a44dd26a75 Rewrite input handling for native applications
Bug: 8473020
Change-Id: Ic4353d8924ab877bec21aff8c2dba9fe725bf906
2013-04-22 17:01:51 -07:00
Daniel Sandler
1a497d3a2b Fix concurrency issues when parceling StatusBarNotifications.
Protip: Don't mess with Bundles after you've sent them off
for parceling in an RPC.

Note that this change reduces the payload size of
StatusBarNotification objects received in
onNotificationRemoved() callbacks; it scrubs out the
RemoteViews and Bitmaps just as the NoMan's internal archive
does. [You don't really need that information anyway when
hearing about a removed notification; most likely all you
need are the other slots on StatusBarNotification, but
nulling the whole Notification object breaks a lot of
clients.]

Bug: 8616295
Change-Id: Ic899045f2352b96dcf064d3e9e51dad52629aea3
2013-04-22 15:14:55 -04:00
Christopher Tate
18414c4db7 Merge "Provide SharedPreferences coherence guarantees for BackupAgent" into jb-mr2-dev 2013-04-19 22:34:02 +00:00
Christopher Tate
f85f5b2125 Provide SharedPreferences coherence guarantees for BackupAgent
SharedPreferences uses deferred writes internally, and the public
API doesn't allow apps to explicitly synchronize with this, so the
backup/restore implementation needs to take a little care to make
sure that the app process isn't killed before the deferred writes
land on disk.  This parallels the coherence guarantees around
SharedPreference that the Activity and Service lifecycles provide.

Bug 8659368

Change-Id: I853e54f9fb0d2d260dbe6e40d640959f998092df
2013-04-19 14:30:11 -07:00
Amith Yamasani
e37c8f781a Merge "Improve API and documentation" into jb-mr2-dev 2013-04-19 19:10:02 +00:00
Amith Yamasani
3b458ad9ee Improve API and documentation
API for querying accounts visible to a specific package.

Improve API and docs for device owner.

Bug: 8657158
Change-Id: I01b8701534f64b383391508a49ae93ed21f22ae0
2013-04-19 12:07:46 -07:00
Ying Wang
4e0eb22fdf Fix doc build.
Change-Id: Ibf0d998721a2851c31529d5b44bf86b1b3df5791
2013-04-18 20:39:48 -07:00
Dianne Hackborn
f977201257 Fix issue #8656537: API review: styles, assist
Change-Id: I5542fb548805fc885b51a1dd1133a3ac226df96b
2013-04-18 15:35:16 -07:00
Amith Yamasani
7e99bc02c8 Modify restrictions bundle per api council recommendations
Use a Bundle for persisting and passing to the application, but use a
list to return data back from an application that's exposing restrictions.

Changed the xml reading/writing code to store the value type in the Bundle
so that it can be reproduced when reading. Earlier we were assuming only
String and String[].

Bug: 8633967

Change-Id: I523d5553728edcf28a1e9d432f490b4956f34215
2013-04-17 10:44:44 -07:00
Daniel Sandler
f094d221e5 Merge "Finish annotating Notification.extras." into jb-mr2-dev 2013-04-16 01:38:54 +00:00
Daniel Sandler
f45564ee72 Finish annotating Notification.extras.
This covers all useful data from the basic Builder as well
as each of the Styles that is not otherwise captured on the
Notification object itself.

Extras are now prettyprinted in dump() output.

Bug: 8270485
Change-Id: I47fc50860dab6409793f57e904cc60296310d5cf
2013-04-15 15:05:08 -04:00
Svetoslav Ganov
26257a09a5 Merge "Allow for setting test type as a monkey." into jb-mr2-dev 2013-04-13 00:15:40 +00:00
Dianne Hackborn
f7be4800df Add new resources trace, also trace apk dex loading.
Change-Id: Ia48566efb21ee018659bd976ddb3a0f4997b9a3a
2013-04-12 14:53:10 -07:00
Adam Momtaz
8f6f1f43ee Allow for setting test type as a monkey.
1. This allows UiAutomation type tests to run as if an
   android monkey test is running. This allows applications
   that recognize that they are drive by a test framework and
   avoid performing certain actions such as calling 911.

2. Fixed a bug where the UiAutomation#disconnect() was not
   called when the instrumentation is shutdown.

bug: 8588857

Change-Id: I9e3624dfbe2b8f81f27805711de1098ea2edd03d
2013-04-12 12:54:34 -07:00
Svetoslav
14c8c741f7 Merge "Adding APIs for an accessibility service to intercept key events." into jb-mr2-dev 2013-04-12 05:45:43 +00:00
Dianne Hackborn
ba880da44c Merge "Fix issue #7643046: Activity.getCallingPackage() bogusly returns null..." into jb-mr2-dev 2013-04-12 01:29:14 +00:00
Dianne Hackborn
7b92467179 Fix issue #7643046: Activity.getCallingPackage() bogusly returns null...
...after having to recreate the task stack

Change-Id: Ia354240f3650ddb578f2116a2aa4584e9ffe8508
2013-04-11 18:12:56 -07:00
Dianne Hackborn
b57a50bd16 Fix issue #8582003: Evernote Camera Capture Failure
ActivityThread.currentPackageName() was actually returning
the process name.  Change this to return the package name, and
fix the one spot using it I could find that was actually wanting
the process name.

Change-Id: I323b9c5987106b5a090968e545281fc0ba55b6b8
2013-04-11 17:29:32 -07:00
Svetoslav
c4fccd183f Adding APIs for an accessibility service to intercept key events.
Now that we have gestures which are detected by the system and
interpreted by an accessibility service, there is an inconsistent
behavior between using the gestures and the keyboard. Some devices
have both. Therefore, an accessibility service should be able to
interpret keys in addition to gestures to provide consistent user
experience. Now an accessibility service can expose shortcuts for
each gestural action.

This change adds APIs for an accessibility service to observe and
intercept at will key events before they are dispatched to the
rest of the system. The service can return true or false from its
onKeyEvent to either consume the event or to let it be delivered
to the rest of the system. However, the service will *not* be
able to inject key events or modify the observed ones.

Previous ideas of allowing the service to say it "tracks" the event
so the latter is not delivered to the system until a subsequent
event is either "handled" or "not handled" will not work. If the
service tracks a key but no other key is pressed essentially this
key is not delivered to the app and at potentially much later point
this stashed event will be delivered in maybe a completely different
context.The correct way of implementing shortcuts is a combination
of modifier keys plus some other key/key sequence. Key events already
contain information about which modifier keys are down as well as
the service can track them as well.

bug:8088812

Change-Id: I81ba9a7de9f19ca6662661f27fdc852323e38c00
2013-04-11 16:00:08 -07:00
Jaikumar Ganesh
6d0c1d78f1 Sensor values changes.
1. Remove Sensor Event Pool.
2. Allocate fixed array values for each Sensor added.
   - Needed for backward compatibility.
3. Use SDK checks for backward compatibility for
   rotation vector.

b/8165631

Change-Id: I2d2cf10d3460478ed7af8e6188343f4bb033503c
2013-04-11 10:25:35 -07:00
Jamie Gennis
f9c7d6bc15 Add APIs for application-generated systrace events
This change adds new APIs to enable applications to generate custom Systrace
begin/end events.  Application-generated events use the ATRACE_APP_TAG tag,
which is enabled only if either the application has declared itself debuggable
in its manifest or ro.debuggable is set to 1 on the device.

Change-Id: I311d09e2e6ed1a30f5ffa84907f250e11cc0d48d
2013-04-09 11:59:43 -07:00
Dianne Hackborn
558a3c1b7b Merge "Kill processes when permissions are revoked." into jb-mr2-dev 2013-04-09 17:38:00 +00:00
Dianne Hackborn
f1b782427f Kill processes when permissions are revoked.
Some permissions are associated with gids, so we need to
kill any running processes if their permission is revoked.
We will do this for any permission being revoked, since
the association between gids and permissions can change
over time.

Change-Id: Ieb7408e032539c4f21eb089d65a7a7e6c289f010
2013-04-08 22:28:59 -07:00