83865 Commits

Author SHA1 Message Date
Makoto Onuki
90ddc9040c A new broadcast action which is sent when profile changes
Adding it as a hidden API for now.  Should be made public later.

Bug 7148705

Change-Id: I6f5fbb8048728f355341ecdc6fd0242b45171d56
2012-09-11 18:22:53 -07:00
Dianne Hackborn
649d0d71b2 Merge "More multi-user stuff:" into jb-mr1-dev 2012-09-07 14:11:56 -07:00
Romain Guy
55e6b77bda Merge "Reduce the number of locks acquired by display lists" into jb-mr1-dev 2012-09-07 14:01:31 -07:00
Romain Guy
58ecc204fb Reduce the number of locks acquired by display lists
Change-Id: I1123aae0355de84db705bb75042c7083fc69c9f2
2012-09-07 14:01:09 -07:00
Dianne Hackborn
5e03e2ca7d More multi-user stuff:
- New (hidden) isUserRunning() API.
- Maintain LRU list of visited users.
- New FLAG_IS_DATA_ONLY for ApplicationInfo.
- Clean up pending intent records when force-stopping a user (or package).
  (Also fixes bug #6880627: PendingIntent.getService() returns stale
  intent of force stopped app)
- Fix force-stopping when installing an app to do the force-stop across
  all users for that app.
- When selecting which processes to kill during a force stop, do this
  based on the actual packages loaded in the process, not just process
  name matching.
- You can now use --user option in am when starting activities, services,
  and instrumentation.
- The am --user option accepts "current" and "all" as arguments.
- The pm uninstall command now uninstalls for all users, so it matches
  the semantics of the install command.
- PhoneWindowManager now explicitly says to start home in the current
  user.
- Activity manager call to retrieve the MIME type from a content provider
  now takes a user argument, so it will direct this to the proper user.
- The package manager uninstall paths are now implemented around
  PackageSetting, not PackageParser.Package.  This allows them to work
  even if the application's apk has been removed (in which case it only
  exists as a PackageSetting, not the PackageParser.Package parsed from
  the apk).

Change-Id: I3522f6fcf32603090bd6e01cc90ce70b6c5aae40
2012-09-07 13:55:23 -07:00
Dianne Hackborn
417984dc0d Merge "Wrapped call to notifyAll() in a synchronized block" into jb-mr1-dev 2012-09-07 13:27:47 -07:00
Adam Koch
14c625188a am aa98d509: am 6525f7bf: Merge "Updates to "Displaying Bitmaps Efficiently" class. Changes: -Updated code sample (see http://ag/214812) -Updated code snippets to match updated sample -Fixed <> in code snippets -Updated disk cache section -Some other minor update
* commit 'aa98d509500ba963f9dcda55073f312ee643cb46':
  Updates to "Displaying Bitmaps Efficiently" class. Changes:  -Updated code sample (see http://ag/214812)  -Updated code snippets to match updated sample  -Fixed <> in code snippets  -Updated disk cache section  -Some other minor updates
2012-09-07 13:20:16 -07:00
Adam Koch
aa98d50950 am 6525f7bf: Merge "Updates to "Displaying Bitmaps Efficiently" class. Changes: -Updated code sample (see http://ag/214812) -Updated code snippets to match updated sample -Fixed <> in code snippets -Updated disk cache section -Some other minor updates" into jb-de
* commit '6525f7bfcfaf66fe0d549cb3c3d22a751535932e':
  Updates to "Displaying Bitmaps Efficiently" class. Changes:  -Updated code sample (see http://ag/214812)  -Updated code snippets to match updated sample  -Fixed <> in code snippets  -Updated disk cache section  -Some other minor updates
2012-09-07 13:17:45 -07:00
Adam Koch
6525f7bfcf Merge "Updates to "Displaying Bitmaps Efficiently" class. Changes: -Updated code sample (see http://ag/214812) -Updated code snippets to match updated sample -Fixed <> in code snippets -Updated disk cache section -Some other minor updates" into jb-dev 2012-09-07 13:15:02 -07:00
Christopher Tate
970683c5d4 Merge "Further fixup of migration to global settings" into jb-mr1-dev 2012-09-07 12:56:42 -07:00
Christopher Tate
9219874be9 Further fixup of migration to global settings
The Settings.System.STAY_ON_WHILE_PLUGGED element should have been
migrated to the global table, but wasn't.  This CL does a couple of
things around dealing with this:

(1) Tidies up the migration tables outright, so that they correctly
    reflect the intended final state

(2) Introduces the option of doing a key migration only if the element
    has not yet been moved to the new table, to allow for safe retry-
    -with-ignore.  This will make it easy to make any future alterations
    to the global vs per-user association of individual elements

(3) Migrates the STAY_ON_WHILE_PLUGGED element if it hasn't been already.

Bug 7126575

Change-Id: Ic5fa9ba45f11b09270bd5bc94c26fbbd84abc749
2012-09-07 12:00:13 -07:00
Teng-Hui Zhu
4db5d23dea Merge "Back key to dismiss full screen video" into jb-mr1-dev 2012-09-07 11:49:54 -07:00
Fabrice Di Meglio
d672d29dd0 Merge "Update documentation for layout direction qualifiers for Resouces" into jb-mr1-dev 2012-09-07 11:39:27 -07:00
Fabrice Di Meglio
bae1d47896 Merge "Fix the build" into jb-mr1-dev 2012-09-07 11:37:35 -07:00
Fabrice Di Meglio
c5daf84f66 Fix the build
- use fully qualified name for Javadoc

Change-Id: Ic75ce7e19d407dc40c96b585f9fa1827fb614ba1
2012-09-07 11:36:21 -07:00
Katie McCormick
56b6293976 am 21d8331d: am ae050d56: Merge "Doc update: Appwidgets JB additions." into jb-dev
* commit '21d8331d610bb641e63e9f7ff00bb5db8f97f283':
  Doc update: Appwidgets JB additions.
2012-09-07 11:10:53 -07:00
Katie McCormick
21d8331d61 am ae050d56: Merge "Doc update: Appwidgets JB additions." into jb-dev
* commit 'ae050d56247257f652fecb71e3f2ed474238e23f':
  Doc update: Appwidgets JB additions.
2012-09-07 11:08:46 -07:00
Katie McCormick
ae050d5624 Merge "Doc update: Appwidgets JB additions." into jb-dev 2012-09-07 11:06:00 -07:00
Dirk Dougherty
7629a917d7 am 0152a51c: am 882b267d: Merge "Doc change: fix typo in JB highlights." into jb-dev
* commit '0152a51c46743a6759711b872c80b406ae4c8a44':
  Doc change: fix typo in JB highlights.
2012-09-07 10:55:14 -07:00
Dirk Dougherty
0152a51c46 am 882b267d: Merge "Doc change: fix typo in JB highlights." into jb-dev
* commit '882b267d189bdbab02e44f7fe87c5c55aa04c493':
  Doc change: fix typo in JB highlights.
2012-09-07 10:52:37 -07:00
Dirk Dougherty
882b267d18 Merge "Doc change: fix typo in JB highlights." into jb-dev 2012-09-07 10:49:42 -07:00
Dirk Dougherty
6ca8f880bd Doc change: fix typo in JB highlights.
Change-Id: I807a8ecee5d352c8494154629b92474ba4b0e892
2012-09-07 10:48:05 -07:00
Svetoslav Ganov
390a06b882 Merge "Restore accessibility focus after ListView layout." into jb-mr1-dev 2012-09-07 10:32:55 -07:00
Romain Guy
6543c292b2 Merge "The drawables cache strikes again Bug #7117785" into jb-mr1-dev 2012-09-07 10:32:55 -07:00
alanv
30ee76cf05 Restore accessibility focus after ListView layout.
Bug: 6439454
Change-Id: Ia61f5153b32c6ce5d18301f74e7e79c86349b987
2012-09-07 10:31:16 -07:00
Fabrice Di Meglio
f6aa537c2d Merge "Make ProgressBar / SeekBar / RatingBar widgets aware of layout direction" into jb-mr1-dev 2012-09-07 10:19:23 -07:00
Fabrice Di Meglio
01fcb72894 Merge "Use "ldrtl" and "ldltr" config qualifiers for RTL / LTR resources" into jb-mr1-dev 2012-09-07 10:17:55 -07:00
Mike Dodd
37ee53420c Merge "Add context support to backdropper filter." into jb-mr1-dev 2012-09-07 08:43:36 -07:00
Marco Nelissen
41ed910439 Merge "Audio Effects test app" into jb-mr1-dev 2012-09-07 07:41:17 -07:00
Matthew Xie
240a90d278 Merge "Fault tolerance in Bluedroid" into jb-mr1-dev 2012-09-07 00:07:23 -07:00
Syed Ibrahim M
1223e5a311 Fault tolerance in Bluedroid
When bluetooth process gets crashed/killed/stopped by Android
system, BluetoothManagerService will re-start AdapterService
to recover from the crash appropriately.

Change-Id: Iacb1a06a8245089517bbbd57de1378ca8ce4b41e
2012-09-06 23:55:41 -07:00
Jeff Sharkey
9545dc020e Include primary flag in StorageVolume.
Bug: 7003520
Change-Id: Iaae2ae22253820c954c51e0199c31087bc825f3f
2012-09-06 23:15:20 -07:00
Jeff Sharkey
162fabbcf8 Let Pair represent null values.
Bug: 7121262
Change-Id: I067ea0a4af40a0e8935a9408404df7a2e851e22c
2012-09-06 23:05:11 -07:00
Christopher Tate
1a9c0dfdbb Mark all settings upgrade transactions as successful along the way
If you don't, then the upgrade gets rolled back by the open helper,
and Bad Stuff Happens.

Change-Id: I191263e5cceb21b96ef413d28e7ee00a924acfc2
2012-09-06 22:52:23 -07:00
Svetoslav Ganov
8e21d4df21 Merge "Adding accessibility check in the node provider of NumberPicker." into jb-mr1-dev 2012-09-06 20:00:19 -07:00
Svetoslav Ganov
a909276298 Adding accessibility check in the node provider of NumberPicker.
1. The node provide in number picker was sending accessibility events
   without checking whether accessibility is enabled leading to a
   crash if accessibility is disable when the event is sent.

bug:7095330

Change-Id: I2e14b757003b4db58922cf6e20ea8e119770e567
2012-09-06 19:57:05 -07:00
Svetoslav Ganov
01fa888903 Merge "Adding FEEDBACK_BRAILLE to AccessibilityServiceInfo." into jb-mr1-dev 2012-09-06 19:43:54 -07:00
Svetoslav Ganov
eb9862fd4c Adding FEEDBACK_BRAILLE to AccessibilityServiceInfo.
1. The feedback type provided by braille devices differs from all
   already predefined types and this change defines braille
   feedback type. Braille does not fit in the already predefined
   categories.

bug:6998945

Change-Id: Ide6043bed03fdecd6d2ee45a08762f5bd07a2118
2012-09-06 19:40:34 -07:00
Svetoslav Ganov
4b15ab66a0 Fixing the build
Change-Id: I123b128f5d9e50653d8d4ed73ea07920b370b0fb
2012-09-06 19:30:14 -07:00
Christopher Tate
f92b57ca8b Merge "Don't use toArray() inappropriately" into jb-mr1-dev 2012-09-06 19:21:31 -07:00
Christopher Tate
a96798e4a5 Don't use toArray() inappropriately
HashSet<String>.toArray() does not give you an array of strings.

Change-Id: I2053e714b12eab718aaf75d92bbc0625745b9932
2012-09-06 19:17:45 -07:00
Svetoslav Ganov
52832e0c4f Merge "Granular navigation not possible in edit text if the view has content description." into jb-mr1-dev 2012-09-06 19:14:31 -07:00
Svetoslav Ganov
2f4bf52d2c Granular navigation not possible in edit text if the view has content description.
1. We were giving precedence of content description over text and this is
   what content description is supposed to do - override the text. However,
   putting content description on an EditText by mistake would render the
   text view not navigable which is pretty much unusable. Now we are giving
   precedence to the text and use the content description as a fall back if
   text is empty.

bug:7078382

Change-Id: I00882ace149344478b127124bd5e641903e1b756
2012-09-06 19:08:26 -07:00
Svetoslav Ganov
3540f1f28b Merge "Granular navigation uses mContentDescription instead of getCpontentDescription()s" into jb-mr1-dev 2012-09-06 19:06:37 -07:00
Svetoslav Ganov
05282aa43e Granular navigation uses mContentDescription instead of getCpontentDescription()s
1. Getting the value of the content description via the method since
   there is nothing preventing developers to override the method to
   return a desired value (they should not do that but it is feasible).

bug:7079008

Change-Id: Iaf5848e9b065454ebfefccf685415fbf034ae475
2012-09-06 19:06:12 -07:00
Svetoslav Ganov
6da5827193 Merge "Screen magnification - feature - framework." into jb-mr1-dev 2012-09-06 18:57:43 -07:00
Svetoslav Ganov
1cf70bbf96 Screen magnification - feature - framework.
This change is the initial check in of the screen magnification
feature. This feature enables magnification of the screen via
global gestures (assuming it has been enabled from settings)
to allow a low vision user to efficiently use an Android device.

Interaction model:

1. Triple tap toggles permanent screen magnification which is magnifying
   the area around the location of the triple tap. One can think of the
   location of the triple tap as the center of the magnified viewport.
   For example, a triple tap when not magnified would magnify the screen
   and leave it in a magnified state. A triple tapping when magnified would
   clear magnification and leave the screen in a not magnified state.

2. Triple tap and hold would magnify the screen if not magnified and enable
   viewport dragging mode until the finger goes up. One can think of this
   mode as a way to move the magnified viewport since the area around the
   moving finger will be magnified to fit the screen. For example, if the
   screen was not magnified and the user triple taps and holds the screen
   would magnify and the viewport will follow the user's finger. When the
   finger goes up the screen will clear zoom out. If the same user interaction
   is performed when the screen is magnified, the viewport movement will
   be the same but when the finger goes up the screen will stay magnified.
   In other words, the initial magnified state is sticky.

3. Pinching with any number of additional fingers when viewport dragging
   is enabled, i.e. the user triple tapped and holds, would adjust the
   magnification scale which will become the current default magnification
   scale. The next time the user magnifies the same magnification scale
   would be used.

4. When in a permanent magnified state the user can use two or more fingers
   to pan the viewport. Note that in this mode the content is panned as
   opposed to the viewport dragging mode in which the viewport is moved.

5. When in a permanent magnified state the user can use three or more
   fingers to change the magnification scale which will become the current
   default magnification scale. The next time the user magnifies the same
   magnification scale would be used.

6. The magnification scale will be persisted in settings and in the cloud.

Note: Since two fingers are used to pan the content in a permanently magnified
   state no other two finger gestures in touch exploration or applications
   will work unless the uses zooms out to normal state where all gestures
   works as expected. This is an intentional tradeoff to allow efficient
   panning since in a permanently magnified state this would be the dominant
   action to be performed.

Design:

1. The window manager exposes APIs for setting accessibility transformation
   which is a scale and offsets for X and Y axis. The window manager queries
   the window policy for which windows will not be magnified. For example,
   the IME windows and the navigation bar are not magnified including windows
   that are attached to them.

2. The accessibility features such a screen magnification and touch
   exploration are now impemented as a sequence of transformations on the
   event stream. The accessibility manager service may request each
   of these features or both. The behavior of the features is not changed
   based on the fact that another one is enabled.

3. The screen magnifier keeps a viewport of the content that is magnified
   which is surrounded by a glow in a magnified state. Interactions outside
   of the viewport are delegated directly to the application without
   interpretation. For example, a triple tap on the letter 'a' of the IME
   would type three letters instead of toggling magnified state. The viewport
   is updated on screen rotation and on window transitions. For example,
   when the IME pops up the viewport shrinks.

4. The glow around the viewport is implemented as a special type of window
   that does not take input focus, cannot be touched, is laid out in the
   screen coordiates with width and height matching these of the screen.
   When the magnified region changes the root view of the window draws the
   hightlight but the size of the window does not change - unless a rotation
   happens. All changes in the viewport size or showing or hiding it are
   animated.

5. The viewport is encapsulated in a class that knows how to show,
   hide, and resize the viewport - potentially animating that.
   This class uses the new animation framework for animations.

6. The magnification is handled by a magnification controller that
   keeps track of the current trnasformation to be applied to the screen
   content and the desired such. If these two are not the same it is
   responsibility of the magnification controller to reconcile them by
   potentially animating the transition from one to the other.

7. A dipslay content observer wathces for winodw transitions, screen
   rotations, and when a rectange on the screen has been reqeusted. This
   class is responsible for handling interesting state changes such
   as changing the viewport bounds on IME pop up or screen rotation,
   panning the content to make a requested rectangle visible on the
   screen, etc.

8. To implement viewport updates the window manger was updated with APIs
   to watch for window transitions and when a rectangle has been requested
   on the screen. These APIs are protected by a signature level permission.
   Also a parcelable and poolable window info class has been added with
   APIs for getting the window info given the window token. This enables
   getting some useful information about a window. There APIs are also
   signature protected.

bug:6795382

Change-Id: Iec93da8bf6376beebbd4f5167ab7723dc7d9bd00
2012-09-06 18:56:17 -07:00
Jim Miller
c71d406060 Merge "Better layout for Face Unlock on 600dp tablet" into jb-mr1-dev 2012-09-06 18:56:03 -07:00
Jim Miller
a56f8f7ca2 Merge "Fix EmergencyDialer button on devices without telephony hardware" into jb-mr1-dev 2012-09-06 18:45:18 -07:00
Jeff Sharkey
2b0442f330 Merge "Event logging for lockdown VPN state changes." into jb-mr1-dev 2012-09-06 18:34:17 -07:00