Commit Graph

4066 Commits

Author SHA1 Message Date
Fabrice Di Meglio
c6a207c67b am 9003007d: Merge "Fix Volume icons for RTL languages"
* commit '9003007d35c6ae1cdeac4ca831a036292b7089e9':
  Fix Volume icons for RTL languages
2013-01-11 11:16:49 -08:00
Fabrice Di Meglio
9003007d35 Merge "Fix Volume icons for RTL languages" 2013-01-11 11:10:00 -08:00
Romain Guy
7962964a68 am fff06e97: Merge "Add a new type of profiling graph: lines"
* commit 'fff06e97e3e4e22271ec41ac0c44036aad3141fe':
  Add a new type of profiling graph: lines
2013-01-10 18:45:03 -08:00
Romain Guy
fff06e97e3 Merge "Add a new type of profiling graph: lines" 2013-01-10 18:41:37 -08:00
Romain Guy
48ef4a92a4 Add a new type of profiling graph: lines
Change-Id: I0e67d7227016fe37011e17d04220a200a6a5fba0
2013-01-10 18:38:46 -08:00
Svetoslav Ganov
2adc9bb1b4 am ea307734: Merge "Fixing a memory leak in ViewRootImpl and a focus change callback issue."
* commit 'ea307734e79e36a961d5184f89f7baa171f9915d':
  Fixing a memory leak in ViewRootImpl and a focus change callback issue.
2013-01-10 15:53:55 -08:00
Svetoslav Ganov
ea307734e7 Merge "Fixing a memory leak in ViewRootImpl and a focus change callback issue." 2013-01-10 15:45:38 -08:00
Dianne Hackborn
04ce447784 am 91893471: Merge "Fix issue #7966357: Super lights out mode vs. volume dialog"
* commit '91893471ba844287432db4473a15faf902889607':
  Fix issue #7966357: Super lights out mode vs. volume dialog
2013-01-09 18:47:31 -08:00
Dianne Hackborn
891d3fbb15 Fix issue #7966357: Super lights out mode vs. volume dialog
The volume panel now forces us out of the UI modes while it
is up.

Change-Id: I25f29af5b6518aba695b64a75977ae240b742118
2013-01-09 18:31:37 -08:00
Fabrice Di Meglio
8c02884c8c Fix Volume icons for RTL languages
- add mirrored version of the icons
- make VolumePanel respond to layout direction changes
- make AudioService propagate layout direction changes to the VolumePanel

Change-Id: Ibb884ab81641c319a9b7bea1381066f3f19581f0
2013-01-09 18:25:20 -08:00
Svetoslav Ganov
149567f9d5 Fixing a memory leak in ViewRootImpl and a focus change callback issue.
1. ViewRootImpl was keeping reference to the old focused view so it can
   call back the global on focus change listener when another view gets
   focus. The stashed reference, however was not cleared which caused a
   memory leak if the last focused view was removed from the view tree.
   In general keeping additional state for the last focus in ViewRootImpl
   is not a good idea since this add complexity due to additional book
   keeping work that is required. The view tree already keeps track of
   where the focus is and it should be the only place that holds this
   data. Since focus does not change that frequently it is fine to look
   up the focus since this operation is O(m) where m is the depth of the
   view tree. This change removes the duplicate book keeping from
   ViewRootImpl and the focus is looked up as needed.

2. ViewRootImpl was calling the global focus change callbacks when focus
   is gained, lost, or transferred to another view. This was done in
   *ChildFocus methods. In the case of a child losing focus, i.e. in
   clearChildFocus, there was a check whether focus searh yields a view
   to take focus and if so it did not call back the global focus listener
   assuming the the found view will take focus (the view tree gives focus
   to the first focusable when a view looses focus). This is not a correct
   assumption since some views override methods called as a result of
   View.requestFocus that determine what the next focused view should
   be. For example, HorizontalScrollView overrides onRequestFocusInDescendants
   and changes the direction of the search. In fact focus search does not
   take into accound ViewGroup descendant focusability. Hence, the view found
   by calling the focus search from the root is not necessarily the one
   that will get focus after calling requestFocus. Actually, it is
   possible that the focus search will find a view but no view will
   take focus. Now the View class is responsible for calling the
   global focus listeners which avoids the above problem. Also this
   saves book keeping in ViewRootImpl.

bug:7962363

Change-Id: Ic95a18b364e997021f3f6bb46943559aac07d95a
2013-01-09 12:34:49 -08:00
Derek Sollenberger
fc615a0f64 Remove calls to SkCanvas::setBitmapDevice()
Change-Id: Ib0aa2f65b77802b105c0e8a9d7cdde2e863d3673
2013-01-08 10:00:54 -05:00
Craig Mautner
e620507766 am 4b71aa1f: Move app transition constants
* commit '4b71aa1f8a1a3b7189fd29241ea7c594ce01623c':
  Move app transition constants
2013-01-08 00:02:12 -08:00
Craig Mautner
4b71aa1f8a Move app transition constants
Move app transition constants from WindowManagerPolicy to
AppTransition.

Change-Id: I8ae6c4d0da1db826c44eb4ea0c6b85016b50b1a3
2013-01-07 23:38:57 -08:00
Romain Guy
e64fb50701 am 7d1c4fa3: Remove out-of-date comment and rename constant
* commit '7d1c4fa322dec1247f7d509a066e436f1d2706fa':
  Remove out-of-date comment and rename constant
2013-01-07 11:59:27 -08:00
Romain Guy
7d1c4fa322 Remove out-of-date comment and rename constant
Change-Id: I0c60d349505776cff0d7e5360e87ac5584dc5876
2013-01-07 11:55:27 -08:00
Romain Guy
023b3ebc46 am 4a623745: Merge "Fix issue when toggling profiling from visual to off to visual"
* commit '4a62374544152d9cc6dafd3e8dd9b0ba475a974c':
  Fix issue when toggling profiling from visual to off to visual
2013-01-07 11:35:37 -08:00
Romain Guy
666d5daab2 Fix issue when toggling profiling from visual to off to visual
Change-Id: I4a623020a9bf0079029d184c13e58d92e692faf8
2013-01-07 11:29:14 -08:00
Romain Guy
e5080343ae am 31ffc571: Merge "Update profiling properties"
* commit '31ffc5713913062c58854b1cc3556547f6681f65':
  Update profiling properties
2013-01-07 11:24:57 -08:00
Romain Guy
a4fef0260b Update profiling properties
This change merges debug.hwui.profiling and profiling_visualize.
Now only the first property exists and accepts the values true, false
and visual. This enables setting the property from Settings.

Change-Id: I16a11fe23ac1a6bb907a1a826e418d6b3994b56c
2013-01-07 11:18:38 -08:00
Romain Guy
4b9c6b3111 am e1730e77: Merge "Use dp units instead of px to draw profiling graph"
* commit 'e1730e77a3d02d54f8118e9256ea57d0f489d43e':
  Use dp units instead of px to draw profiling graph
2013-01-07 11:02:31 -08:00
Romain Guy
98e4a52cc0 Use dp units instead of px to draw profiling graph
Change-Id: Iba24b21ebe46738c6b1d6d320ce34af71f7c769d
2013-01-07 10:58:34 -08:00
Romain Guy
044eca4321 am 63e2098b: Merge "Make profiling graph more readable in all apps"
* commit '63e2098b7480ce4ca338a220b2de30b182e93b31':
  Make profiling graph more readable in all apps
2013-01-04 19:35:49 -08:00
Romain Guy
63f4d84ec2 Make profiling graph more readable in all apps
Change-Id: Ic9467d4420c2aa8d295d0045c714c9f8e6269220
2013-01-04 19:31:12 -08:00
Romain Guy
7bac55434c am 9acd1b4f: Merge "Add visual profiling feature"
* commit '9acd1b4fa897f3a007dd23dc1f0471b151fa03ad':
  Add visual profiling feature
2013-01-04 19:29:05 -08:00
Romain Guy
672433d90f Add visual profiling feature
When profiling is enabled with debug.hwui.profile set to true,
setting debug.hwui.profile_visualizer to true will display the
profiling data directly on screen.

Change-Id: I3d5fe3f0347090815087b1cbfce66b8e76d9347b
2013-01-04 19:21:54 -08:00
Justin Koh
165abde0da am e422737f: am a90c92a1: am 86903699: Merge "Start RecognitionActivity with an upswipe gesture." into jb-mr1-aah-dev
* commit 'e422737fda48f73cdd74800c9a9b9d15d0186b6d':
  Start RecognitionActivity with an upswipe gesture.
2012-12-19 11:50:30 -08:00
Justin Koh
e422737fda am a90c92a1: am 86903699: Merge "Start RecognitionActivity with an upswipe gesture." into jb-mr1-aah-dev
* commit 'a90c92a1c97830de5e1766bb64ff421a2a50ed56':
  Start RecognitionActivity with an upswipe gesture.
2012-12-19 11:48:41 -08:00
Justin Koh
a90c92a1c9 am 86903699: Merge "Start RecognitionActivity with an upswipe gesture." into jb-mr1-aah-dev
* commit '86903699692a0b3229062da2995d829629e64e7b':
  Start RecognitionActivity with an upswipe gesture.
2012-12-19 11:46:34 -08:00
Justin Koh
8690369969 Merge "Start RecognitionActivity with an upswipe gesture." into jb-mr1-aah-dev 2012-12-19 11:42:26 -08:00
Chet Haase
adcdf8931d am 11825751: Merge "Fix for requestLayout-during-layout inefficiencies"
* commit '118257517a4b715f4f0318c03f14b3236721dd01':
  Fix for requestLayout-during-layout inefficiencies
2012-12-19 07:46:42 -08:00
Derek Sollenberger
2fa54cef47 Merge "Update framework to support r5967 of Skia." into master-chromium 2012-12-19 06:18:11 -08:00
Chet Haase
cc699b4fe3 Fix for requestLayout-during-layout inefficiencies
An earlier fix made it possible to call requestLayout() during layout
(which is not recommended in most cases outside of a ListView) without
ending up with blank content and internal layout flags in a confused state.
However, that fix incorrectly detected a problem in some cases (such as
ListView practices of adding views during layout) which were actually okay;
as long as you make sure to measure and layout your children properly
before returning from layout(), then it's not a problem. We were improperly
spamming the log with supposed problems, and causing more overhead in correct
cases by running a full request/measure/layout pass after the first layout
pass, all of which is unnecessary in cases where the containers know what
they're doing.

This new fix changes the logic to only cause the second layout pass (and third,
posted to the next frame, if things are really done incorrectly) if the layout-request
flags are still set on the requesting views after the full layout pass is complete.
This situation causes the blank screens we've seen in buggy apps, and is exactly
what we should avoid. However, correct cases (e.g., ListView) will not have these
problems because they run measure/layout correctly after the request calls, which
clears these flags. The upshot is that buggy cases will be detected and compensated for
(by clearing the flags and then running a second request/measure/layout pass, as in the
original fix) and non-buggy cases will be noop'd, going back to their previous, working
logic flow.

The bug below is one of the buggy apps to demonstrate this problem. I noticed that the
original problem (blank screen) is no longer reproducible. I suspect that logic was
added to the app to force a refresh after it is attached. You can still detect the problem
(and the fix) by seeing that prior to the fix (say, on mr1.1) there is a delay of about
a second between the end of the progress bar updates and the showing of content on a
screen that used to just remain blank. With the fix (both the previous version and this
one), the content is updated immediately, because we now handle the buggy request-
during-layout situation in the same frame as it occurs.

Issue #6914123 News and Weather app sometimes loads to a blank screen

Change-Id: I4c34817cc3dd44ba422ff50de4321624c0824d83
2012-12-18 13:40:50 -08:00
Ben Pietrzak
05cb363bf3 Start RecognitionActivity with an upswipe gesture.
Change-Id: I7dd91bef3eb551bb7617307cc9a4777226b5ded7
2012-12-18 11:12:47 -08:00
Robert Ly
d0f35aa9c9 am bfb69176: am d4f4d14a: am 5042b051: am e7c3fba7: Merge "change onEnd() to withEndAction() in javadocs" into jb-mr1-dev
* commit 'bfb69176db2017a10072e4ba4e96d4a33f18e4a8':
  change onEnd() to withEndAction() in javadocs
2012-12-17 15:41:25 -08:00
Robert Ly
bfb69176db am d4f4d14a: am 5042b051: am e7c3fba7: Merge "change onEnd() to withEndAction() in javadocs" into jb-mr1-dev
* commit 'd4f4d14a91492384c4553b82be27b5f135a41227':
  change onEnd() to withEndAction() in javadocs
2012-12-17 15:39:34 -08:00
Robert Ly
d4f4d14a91 am 5042b051: am e7c3fba7: Merge "change onEnd() to withEndAction() in javadocs" into jb-mr1-dev
* commit '5042b051b395f36d3c582202e9e78758934b79a6':
  change onEnd() to withEndAction() in javadocs
2012-12-17 15:37:21 -08:00
Robert Ly
5042b051b3 am e7c3fba7: Merge "change onEnd() to withEndAction() in javadocs" into jb-mr1-dev
* commit 'e7c3fba7929a1cb73bbe6ca84a5140febc09a62a':
  change onEnd() to withEndAction() in javadocs
2012-12-17 15:35:26 -08:00
Robert Ly
8ee2a70f08 change onEnd() to withEndAction() in javadocs
Change-Id: Ic9a04bf86d62249b47dc654052d58797dfc3990c
2012-12-17 15:00:08 -08:00
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
Derek Sollenberger
ca79cf69d0 Update framework to support r5967 of Skia.
bug: 6906025
Change-Id: Iefdb830ec3aa2ab3472c1c142484a7aa21788a15
2012-12-12 15:28:54 -05:00
Mita Yun
d44280e288 resolved conflicts for merge of ebcbfb3f to master
Change-Id: I0658dd4a1418fbad91d9663e5b52418a979dc683
2012-12-10 16:50:22 -08:00
Mita Yun
ebcbfb3fc7 am a98cd512: Merge "Use asynchronous messages for input method events." into jb-mr1-aah-dev
* commit 'a98cd5122be643a51f563d02069e8f9409d44394':
  Use asynchronous messages for input method events.
2012-12-10 15:35:05 -08:00
Mita Yun
a98cd5122b Merge "Use asynchronous messages for input method events." into jb-mr1-aah-dev 2012-12-10 14:37:38 -08:00
Adam Powell
ba534dece2 Merge "Update documentation to mention compatibility versioning" 2012-12-10 11:34:19 -08:00
Adam Powell
2c8cc972c3 Update documentation to mention compatibility versioning
Mention changes involving MeasureSpec/RelativeLayout/ImageView
behavior changes when apps target SDK > 17.

Change-Id: I232492a76ac048f7b460d28a87bd84cbbec4e4d7
2012-12-10 11:02:54 -08:00
Adam Powell
e3833c2ba4 Merge "Compatibility measurement hacks when targetSdkVersion <= JB-MR1" 2012-12-07 17:23:24 -08:00
Adam Powell
7da4b73a23 Compatibility measurement hacks when targetSdkVersion <= JB-MR1
All three of these are interrelated!

* Allow broken MeasureSpec values. The long-standing implementation
  of MeasureSpec.makeMeasureSpec has been to add both values rather
  than masking/or-ing the values together. Some old code relied on
  this, such as if it mixed up size/mode params.

* Disable ImageView adjustViewBounds allowing the view to grow beyond
  its initial size. A bug in RelativeLayout in the presence of the
  above MeasureSpec fix causes this not to work properly in apps.

* Allow RelativeLayout to send overflowed/bogus MeasureSpec values
  when measured with MeasureSpec.UNSPECIFIED mode. Some apps have
  custom child views that do not properly handle UNSPECIFIED
  measurements, but the exact overflow semantics caused this to
  generate AT_MOST $REALLYBIG MeasureSpecs for those views instead if
  they were placed inside a RelativeLayout in a scrolling container.

Change-Id: I977a5f1ba5637f0cba3d26a70139e2bcd021fc9c
2012-12-07 16:30:35 -08:00
Sascha Prueter
961ce2afbf am 2588648b: am 203f69f0: Merge "Call setSize to sync Surface to SurfaceFlinger. DO NOT MERGE" into jb-mr1.1-dev
* commit '2588648b5268526bdc9ed7fb4e9eac36c8c693dc':
  Call setSize to sync Surface to SurfaceFlinger. DO NOT MERGE
2012-12-07 12:40:32 -08:00
Sascha Prueter
2588648b52 am 203f69f0: Merge "Call setSize to sync Surface to SurfaceFlinger. DO NOT MERGE" into jb-mr1.1-dev
* commit '203f69f0998d982205b1c9f550576024654e6bc3':
  Call setSize to sync Surface to SurfaceFlinger. DO NOT MERGE
2012-12-07 12:38:15 -08:00