68 Commits

Author SHA1 Message Date
Svetoslav Ganov
545252f4fd Refactoring of the screen magnification feature.
1. This patch takes care of the case where a magnified window is covering an unmagnigied
   one. One example is a dialog that covers the IME window.

bug:7634430

2. Ensuring that the UI automator tool can connect and correctly dump the screen.

bug:7694696

3. Removed the partial implementation for multi display magnification. It adds
   unnecessary complexity since it cannot be implemented without support for
   input from multiple screens. We will revisit when necessary.

4. Moved the magnified border window as a surface in the window manager.

5. Moved the mediator APIs on the window manager and the policy methods on the
   WindowManagerPolicy.

6. Implemented batch event processing for the accessibility input filter.

Change-Id: I4ebf68b94fb07201e124794f69611ece388ec116
2012-12-14 16:27:27 -08:00
Svetoslav Ganov
152e9bb81a Refactoring of the screen magnification feature.
1. The screen magnification feature was implemented entirely as a part of the accessibility
   manager. To achieve that the window manager had to implement a bunch of hooks for an
   external client to observe its internal state. This was problematic since it dilutes
   the window manager interface and allows code that is deeply coupled with the window
   manager to reside outside of it. Also the observer callbacks were IPCs which cannot
   be called with the window manager's lock held. To avoid that the window manager had
   to post messages requesting notification of interested parties which makes the code
   consuming the callbacks to run asynchronously of the window manager. This causes timing
   issues and adds unnecessary complexity.

   Now the magnification logic is split in two halves. The first half that is responsible
   to track the magnified portion of the screen and serve as a policy which windows can be
   magnified and it is a part of the window manager. This part exposes higher level APIs
   allowing interested parties with the right permissions to control the magnification
   of a given display. The APIs also allow a client to be registered for callbacks on
   interesting changes such as resize of the magnified region, etc. This part servers
   as a mediator between magnification controllers and the window manager.

   The second half is a controller that is responsible to drive the magnification
   state based on touch interactions. It also presents a highlight when magnified to
   suggest the magnified potion of the screen. The controller is responsible for auto
   zooming out in case the user context changes - rotation, new actitivity. The controller
   also auto pans if a dialog appears and it does not interesect the magnified frame.

bug:7410464

2. By design screen magnification and touch exploration work separately and together. If
   magnification is enabled the user sees a larger version of the widgets and a sub section
   of the screen content. Accessibility services use the introspection APIs to "see" what
   is on the screen so they can speak it, navigate to the next item in response to a
   gesture, etc. Hence, the information returned to accessibility services has to reflect
   what a sighted user would see on the screen. Therefore, if the screen is magnified
   we need to adjust the bounds and position of the infos describing views in a magnified
   window such that the info bounds are equivalent to what the user sees.

   To improve performance we keep accessibility node info caches in the client process.
   However, when magnification state changes we have to clear these caches since the
   bounds of the cached infos no longer reflect the screen content which just got smaller
   or larger.

   This patch propagates not only the window scale as before but also the X/Y pan and the
   bounds of the magnified portion of the screen to the introspected app. This information
   is used to adjust the bounds of the node infos coming from this window such that the
   reported bounds are the same as the user sees not as the app thinks they are. Note that
   if magnification is enabled we zoom the content and pan it along the X and Y axis. Also
   recomputed is the isVisibleToUser property of the reported info since in a magnified
   state the user sees a subset of the window content and the views not in the magnified
   viewport should be reported as not visible to the user.

bug:7344059

Change-Id: I6f7832c7a6a65c5368b390eb1f1518d0c7afd7d2
2012-12-03 10:38:48 -08:00
Jason Sams
131549dd7b am 98a09c64: am 43174b7d: am 718fb9f1: Fix sample code issues
* commit '98a09c64d52aa1166a09ab071049bc3536def1cd':
  Fix sample code issues
2012-11-30 13:26:03 -08:00
Jason Sams
718fb9f12e Fix sample code issues
Correct min SDK.
Correct file extension on mandelbrot

Change-Id: I508c22c382f1a930b27d8c5f4414cac3a990a332
2012-11-30 12:32:36 -08:00
Makoto Onuki
aeb3751559 resolved conflicts for merge of 9cd8c711 to master
Change-Id: I5e2d13c44f6a0589648e5934c8c36790da85e828
2012-11-30 10:05:20 -08:00
Makoto Onuki
1b86d75d31 Remove unused IExtendedNetworkService
It was used in the cupcake era for docomo.  Is not used anymore.

Bug 7633569

Change-Id: I2ec826fc9a70d261a340957a937ed4c9f8e67c5c
2012-11-29 12:52:51 -08:00
Glenn Kasten
ee5668cf50 Audio assets at 48000 Hz
Bug: 7397767
Change-Id: If62c2219adf61f0c1b2115a83b7394d76829c028
2012-10-23 16:34:21 -07:00
Stephen Hines
d3d6570df4 Port ImageProcessing to Filterscript.
This enables testing of the Filterscript front-end for llvm-rs-cc.

Bug: 7166741
Change-Id: I90bda9d2710c6652336a8c112b5654c5da3d14e4
2012-10-12 14:50:49 -07:00
Jason Sams
b2ae7a1a18 Update compatibility library tests
bug 7327728

Change-Id: If3f85fb8944d7217a4d5c035f522d1ecc7af3a07
2012-10-10 18:17:53 -07:00
Jason Sams
1dd273a7df add cleanspec.
Change-Id: I5aa58efa7c48809d1f05c8ad48332508597b9869
2012-09-20 09:12:43 -07:00
Wink Saville
92bd5f95ca Update cleanspec
mms and telephony have been moved remove the framework_intermediates.

Change-Id: I49c2128ebaddfdae6cfa91913b739900d0f8d91b
2012-07-12 10:31:06 -07:00
Eino-Ville Talvala
708e6bc652 Remove Disco video from builds.
Bug: 6294985
Change-Id: Idde6148b94a55a27740f3b4f82c2038272f06628
2012-06-13 15:34:38 -07:00
Svetoslav Ganov
7b1e0c7046 Removing default accessibility gesture handling.
1. The initial design was to have some accessibility gestures
   being handled by the system if the gesture handling access
   service does not consume the gesture. However, we are not
   sure what a good default is and once we add a default handler
   we cannot remove it since people may rely on it. Thus, we
   take the simples approach and let the accessibility service
   handle the gestures. If no gestures are handled the system
   will work in explore by touch as before.

bug:5932640

Change-Id: I865a83549fa03b0141d27ce9713e9b7bb45a57b4
2012-05-13 12:39:51 -07:00
Dianne Hackborn
8e638dc335 Add missing clean steps.
Change-Id: Iecb3ff4d6658e581e51414bdfc397953189e66cb
2012-04-16 11:27:11 -07:00
Alex Sakhartchouk
b43a1e5ddf Moving libRS
Change-Id: I1e42204e862585b9c2f7818b615890c60f08faf6
2012-03-28 14:18:15 -07:00
Jeff Brown
4c1241df8f Rename CancellationSignal using preferred spelling.
Bug: 5943637
Change-Id: I12a339f285f4db58e79acb5fd8ec2fc1acda5265
2012-02-02 18:02:16 -08:00
Justin Ho
882ed37471 Resolved conflicts for merge of 83cf0313 to master
Change-Id: Ib66ee7e34d0c4d845004bce635ee1ef300d3b344
2011-10-10 16:46:35 -07:00
Justin Ho
62dce9b574 Ensuring previous sounds are named correctly
Bug: 5416299

Change-Id: I0f2cd229be02908553368d6ff19977a0ebd3e613
2011-10-10 15:57:41 -07:00
Ying Wang
8e359817da Make symlinks for DroidSans.ttf and DroidSans-Bold.ttf
Bug: 5420351

Make the following symlinks:
/system/fonts/DroidSans.ttf -> Roboto-Regular.ttf
/system/fonts/DroidSans-Bold.ttf -> Roboto-Bold.ttf

Change-Id: If9a74ef4ac2386cdb46d125fed8ce5771e872310
2011-10-06 16:00:58 -07:00
Justin Ho
d5b9b26081 Resolve conflicts for merge 121e805a to master
Conflicts:
	CleanSpec.mk

Change-Id: I750218dbd78e15c1ae3324b3bcfbcd28a4da2676
2011-10-03 17:06:26 -07:00
Justin Ho
18f3656eb5 Adding additional variety to sound set 7
Change-Id: I3f8c806258e47dc3b78ce81fd582722753573b54
2011-10-03 16:06:09 -07:00
Ying Wang
46b20e7f41 Correction the use of SMALLER_FONT_FOOTPRINT
SMALLER_FONT_FOOTPRINT is a BoardConfig variable that's only available
in Android.mks but not product config makefiles.

Change-Id: I1784b6e8c744ffcca1538e76d338f5800f150e72
2011-09-29 20:02:05 -07:00
Justin Ho
48704d4962 Updated key and effect sounds
Change-Id: Ia7c771ed59bf1803ed7ff25d338a412906cf59c0
2011-09-26 09:47:18 -07:00
Russell Brenner
9d8c7e8242 Replaced Lohit_Hindi with Lohit-Devanagari
Lohit-Devanagari is now provided by external/lohit-fonts, replacing
Lohit_Hindi from here. Removed font from fonts.mk and renamed in
fallback_fonts.xml.

Bug: 5364436
Change-Id: I0b8f65dbfdbec1802fba526209d7f88d2cf64fc4
2011-09-23 15:09:52 -07:00
Justin Ho
cd3f83a554 Adding missing cleanspec for audio file cleanup
Change-Id: I469601a2112994c466281a4959806a4179ffe245
2011-09-20 17:50:39 -07:00
Irfan Sheriff
651cdfcbac Unhide wifi p2p API
Bug: 5247957
Change-Id: Id93e30c0cb60f361ba13a840de8f843415777336
2011-09-13 16:04:00 -07:00
Irfan Sheriff
489a9d81fd Rename WpsConfiguration to Wps
For the purpose of exposing the class as a storage for Wps
info with p2p, it is better to just call it Wps

Bug: 5247957
Change-Id: Iaebef958dd8f08fdbeb4b9d7fa5ad5527400710d
2011-09-06 22:32:58 -07:00
Nick Pelly
c84c89a6ca Improve NDEF push API
Introduce
  setNdefPushMessage()
  setNdefPushMessageCallback()
  setNdefPushCompleteCallback()

Deprecate public API
  enableForegroundNdefPush()
  disableForegroundNdefPush()

Hide & Deprecate staged (public but never released) API
  enableForegroundNdefPushCallback()

The new API's do not require the application to explicitly call
enable()/disable() in onPause()/onResume(), we use a Fragment behind
the scenes to manager this automatically.

NDEF Push can be disabled by using a null parameter, so each
enable()/disable() pair is collapsed to a single set() call.

Application code should now look something like:

    public void onCreate() {
        NfcAdapter adapter = NfcAdapter.getDefaultAdapter(this);
        if (adapter != null) {  // check that NFC is available on this device
            adapter.setNdefPushMessage(myNdefMessage, this);
        }
    }

And that's it - no need to explicitly hook into onPause() and onResume() events.

Also - introduce a generic NfcEvent class that is provided as a parameter on
all NFC callbacks. Right now it just provides the NfcAdapter, but using
the wrapper classes allows us to add more fields later without changing
the callback signature. (i'm thinking Bluetooth).

Change-Id: I371dcb026b535b8199225c1262eca64ce644458a
2011-08-26 17:28:45 -07:00
Justin Ho
8370ba9e20 Updated phone sounds
Change-Id: I88df6ad7ca8e96f163d968540420fd1cde410008
2011-08-24 09:40:25 -07:00
Jean-Michel Trivi
4426e42ac6 Bug 5045498 New implementation of remote control API
Remote control displays expose an IRemoteControlDisplay interface
 which they register through AudioManager.
Remote control clients create a RemoteControlClient object, which
 implicitely exposes an IRemoteControlClient interface registered
 in AudioService through AudioManager.
AudioService tells all clients and displays when a new client
 is the one that should be displayed.
A client's data gets sent to the display when it is valid, or
 it sets new data (while being valid).

The implementation for setting metadata and album art is temporary,
 and will migrate to the MetadataEditor API in future CLs.

Change-Id: Ibab6ea1d94c68f32482c760c6ae269541f885548
2011-08-23 11:23:22 -07:00
Jean-Michel Trivi
178889eff7 Bug 5045498 RemoteControlClient interface
Define a RemoteControlClient interface that applications must
 implement and register to be displayed on the lockscreen.

Change-Id: I67276ae653f203e76727432231f1d76535c31942
2011-08-17 09:53:12 -07:00
Daniel Sandler
b12c6b8e21 Fixed cleanspec.
Change-Id: I3125487d2ffbe389f141537f5a974366e7ce5a91
2011-08-12 11:45:43 -04:00
Christian Robertson
2e347429df New RSSI cluster in status bar.
Bug: 5147463
2011-08-12 10:15:31 -04:00
Jeff Hamilton
c3afd39c67 Remove the binder interface for LLCP.
Change-Id: Idc9631cdbcac1435e285c656948a37315e32515d
2011-08-02 15:30:26 -05:00
Chia-chi Yeh
972d92f47c Add CleanSpec.mk for change If98e456e779f8e97f562d99c57d909b1f5d9db55.
Change-Id: I0aeb6355ab856bdfaafba0d2ab13801c73a9cf44
2011-07-03 17:01:12 -07:00
Brian Carlstrom
93201f545b KeyChain API refinements
Change-Id: I177ab4642e6cd1aa13526c14f0a707175fd79655
2011-06-09 21:11:06 -07:00
Jeff Sharkey
7527990420 Collect historical network stats.
Periodically records delta network traffic into historical buckets to
support other services, such NetworkPolicyManager and Settings UI.

Introduces NetworkStatsHistory structure which contains sparse, uniform
buckets of data usage defined by timestamps.  Service periodically
polls NetworkStats and records changes into buckets.  It only persists
to disk when substantial changes have occured.  Current parameters
create 4 buckets each day, and persist for 90 days, resulting in about
8kB of data per network.

Only records stats for "well known" network interfaces that have been
claimed by Telephony or Wi-Fi subsystems.  Historical stats are also
keyed off identity (such as IMSI) to support SIM swapping.

Change-Id: Ia27d1289556a2bf9545fbc4f3b789425a01be53a
2011-06-01 17:44:52 -07:00
Andreas Huber
93c612e2e7 The decoder wrapper is no longer needed. Also disable building old-style decoders.
Change-Id: Ie022f1a6dffe619c1b0385aa13f63e097282cfe4
2011-05-12 11:24:13 -07:00
Bjorn Bringert
50e657bb2d Add Java API for writing TTS engines
This removes the old non-public C++ API for TTS
engines and replaces it with a Java API.

The new API is still @hidden, until it has been approved.

Bug: 4148636
Change-Id: I7614ff788e11f897e87052f684f1b4938d539fb7
2011-04-15 10:04:31 +01:00
Nick Pelly
a64e2ad4da resolved conflicts for merge of 38d0d562 to honeycomb-plus-aosp
Change-Id: Iff9ea08b810b0d142a9227272492c0305a9bcf42
2011-03-14 10:28:11 -07:00
Nick Pelly
367f41f8f6 Implement new NFC-EE API's as shared library (frameworks/base).
Change-Id: I45c4eaf59ec78167fc236fdd59676465a5e1bcb7
2011-03-10 16:03:46 -08:00
Mike Lockwood
c4308f01c9 Move USB framework support from android.hardware to android.hardware.usb package
Change-Id: I00fd4f0caaa4aebe48f71c576bb211b5f38bf88d
Signed-off-by: Mike Lockwood <lockwood@android.com>
2011-03-01 08:07:20 -08:00
Alex Sakhartchouk
9b39dcefcf Fixing incremental build.
Change-Id: I8b1d952384581279cd1d2934de6bb23bfabd640d
2011-02-22 16:43:49 -08:00
Dianne Hackborn
de39851592 Hook up large heap API.
Change-Id: I215644f8de326fe3d4fa582447885b0aa01f72d3
2011-01-19 16:13:18 -08:00
James Wylder
d285415e8a libstagefright: Compile MP3 & AAC decoders in 32bit ARM Mode
Speeds up the decoding leaving more time for cpuidle (lp2),
thus lowering overall current drain.

Change-Id: Ia4e0636b1813810072fe0a4f94f6921adf2eab31
Signed-off-by: James Wylder <james.wylder@motorola.com>
2010-12-09 12:00:58 -08:00
Nick Pelly
089c3c7c0b resolved conflicts for merge of 28e8c66d to master
Change-Id: I9746fd7478d3954b491179ffbd241f481cc2fb6c
2010-12-06 11:50:47 -08:00
Jeff Hamilton
6be655c768 Rough first pass at the NFC technology API.
Change-Id: I903ad6bc124bf9a65af788dae45f55d58704ef7b
2010-11-19 20:26:29 -06:00
Jason Sams
cebfaab7a5 Fix potental incremental build failure with
leftover RS generated files.

Change-Id: I4b2ed98372ac9caba61ff6622b26f1bb1b435df0
2010-11-04 13:28:14 -07:00
Nick Pelly
18286cc601 am 38476ef2: am 8f1e7b62: Merge "Cleanspec to fix incremental build failures of the form:" into gingerbread
Merge commit '38476ef2f1bc5d8c3540382ea792f709d0b61faf'

* commit '38476ef2f1bc5d8c3540382ea792f709d0b61faf':
  Cleanspec to fix incremental build failures of the form:
2010-10-19 09:55:52 -07:00
Nick Pelly
31bcbdaa6c Cleanspec to fix incremental build failures of the form:
out/target/common/obj/JAVA_LIBRARIES/framework_intermediates/src/core/java/com/trustdlogic/trustednfc/android/ILlcpConnectionlessSocket.java:74:
cannot find symbol
symbol  : class LlcpPacket
location: package com.trustedlogic.trustednfc.android.com.trustedlogic.trustednfc.android.LlcpPacket _result = this.receiveFrom(_arg0);

Change-Id: I344c3b882265049cbc11dd5433535376eaadd855
Signed-off-by: Nick Pelly <npelly@google.com>
2010-10-18 15:13:00 -07:00