Commit Graph

2836 Commits

Author SHA1 Message Date
satok
f927e17ae5 Use correct spell check locale
Bug: 6542210
Change-Id: I414aa2321f30e396996d90fb8e90c1dbb3bb7b9e
2012-05-24 16:52:54 +09:00
Adam Powell
75ac4e8479 Merge "Fix a bug with deferred position scrolling in lists while data changes are pending" into jb-dev 2012-05-23 17:49:21 -07:00
Adam Powell
161abf3d44 Fix a bug with deferred position scrolling in lists while data changes
are pending

Save the pending position scroll until the data change is actually
serviced before posting it to run. This avoids handler loops on
GONE subtrees or when the view is detached.

Bug 6547649

Change-Id: Iab108cfcb7dd11ece703762d311a5f5985f38c3b
2012-05-23 17:24:27 -07:00
Svetoslav Ganov
748ee2e82a ActivityChooser view not handling its removal and relayout properly.
1. ActivityChooserView did not hide the popup window when detached.

bug:6544220

2. ActivityChooserView was calling show popup when it was already
   showing it resulting in an incrrect update and losing one item
   per rotation.

bug:6522041

Change-Id: Iec1682ca5d27e38caf57214fa86060edf82a2166
2012-05-23 15:21:16 -07:00
Craig Mautner
85aea36649 Merge "Remove Popup immediately rather than defer it." into jb-dev 2012-05-23 10:47:46 -07:00
Craig Mautner
b82d074038 Remove Popup immediately rather than defer it.
Delaying the popup by using removeView instead of removeViewImmediate
caused an error when the removal was actually executed after the parent
window was deleted along with the popup.

Fixes bug 6407801.

Change-Id: Ieb17d58467aaf16e1a24f47187f52766d694ba32
2012-05-23 10:15:09 -07:00
Adam Cohen
662e4a456b Merge "Fix ANR which could occur for collection widgets with very large items" into jb-dev 2012-05-22 14:41:54 -07:00
Adam Cohen
35fbe2a592 Fix ANR which could occur for collection widgets with very large items
-> We cache RemoteViews which populate the AdapterViews, but only
   up to a total memory amount of 2MB. The remainder of the cache
   is pruned out. If _every_ item is greater than 2MB, we were failing
   to prune the last item, leaving the framework in a loop on a bg
   thread, but holding a lock required by the main thread.

Change-Id: I0574a25a59ebec6586ae223fff6605c0fee953c3
2012-05-22 14:10:14 -07:00
Svetoslav Ganov
084c63eb6a Merge "Fix accessibility actions in AbsListView." into jb-dev 2012-05-21 18:15:48 -07:00
Svetoslav Ganov
4ce106f5cf Merge "Fixing some minor issues in accessibility focus." into jb-dev 2012-05-21 15:55:28 -07:00
Svetoslav Ganov
f76a83cfcf Fixing some minor issues in accessibility focus.
1. Now accessibility focus does not drag input focus and
   vice versa. Having the two focuses chase each other
   can lead to some pathological cases. For example, a
   container is input focusable and manages input focus
   for its children i.e. as soon as it gets input focus
   it sets input focus to a child. Now assume input and
   accessibility focus are on a child and focus search
   finds the parent to take accessibility focus, now
   putting accessibility focus to the parent will put
   input focus there and the parent will put input focus
   to the child which as a result will put accessibility
   focus there, thus resulting in traversal loop.

bug:6522900

2. Fixed asymmetrical behavior of accessibility focus search
   for AbsListView.

bug:6520016

3. Fixed accessibility focus search getting stuck in an
   empty AbsListView.

bug:6520049

Change-Id: Ia26e5be7b5a9f340f873861ff466c787467b98dc
2012-05-21 15:32:28 -07:00
Svetoslav Ganov
de83e7aa32 Merge "Make TextView respect ACCESSIBILITY_SPEAK_PASSWORD preference." into jb-dev 2012-05-21 15:08:53 -07:00
alanv
7d62419c85 Make TextView respect ACCESSIBILITY_SPEAK_PASSWORD preference.
Bug: 6523447
Change-Id: I2610b558395dc53a74b5c8c36c09673898da44f2
2012-05-21 14:23:17 -07:00
Romain Guy
46a8b1acdb Merge "Remove unused, obsolete debug code" into jb-dev 2012-05-21 13:40:41 -07:00
Daniel Sandler
2926948d20 Merge "Add RemoteViews.setViewPadding()." into jb-dev 2012-05-21 13:37:16 -07:00
Romain Guy
13b907353f Remove unused, obsolete debug code
All these features have either been abandonned and left un-maintained
for years or can be replaced by systrace.

Change-Id: I42e4579a8078744047e5fe08a7a15254970b09bc
2012-05-21 13:29:06 -07:00
Daniel Sandler
99d1f74864 Add RemoteViews.setViewPadding().
Bug: 6519374
Change-Id: I29ad738d741153a9d9e74c9e2ac110a8b97f046b
2012-05-21 16:15:06 -04:00
Daniel Sandler
90497c18f7 Merge "Remotable view method for TextView.setTextSize(int, float)." into jb-dev 2012-05-21 12:12:13 -07:00
Daniel Sandler
7264f71399 Remotable view method for TextView.setTextSize(int, float).
The only remotable method on TextView is setTextSize(float)
which assumes "sp" dimensions, making it tricky to get exact
text sizes.

Bug: 6519374
Change-Id: I961bbdd607ca6786c0630ff1ce19186f54f6f31f
2012-05-21 14:51:51 -04:00
Philip Milne
b65408fc0f Doc changes for GridLayout.
Add some javadoc to explain orientation property properly.

Change-Id: I1e2092f32fe2f524eda7d1c46c6daad571733c1f
2012-05-21 10:46:56 -07:00
Jeff Brown
51f2430217 Support toast cancellation.
Change-Id: Idd00b9c6e3049822e437afaf56351575a5c167df
2012-05-20 12:09:37 -07:00
Dianne Hackborn
35013d0e8b Merge "DO NOT MERGE: Remove a few left-over layout direction things." into jb-dev 2012-05-18 18:04:11 -07:00
alanv
9c3e0e6826 Fix accessibility actions in AbsListView.
Check adapter for position enabled state, check selection index.

Bug: 6508142
Change-Id: If25a133533a7316ef7eba8761522bd2ee4f6338d
2012-05-18 17:43:35 -07:00
Dianne Hackborn
39af624f31 DO NOT MERGE: Remove a few left-over layout direction things.
Change-Id: Id66b171594af939df4716aa0e0baa25fe47eecee
2012-05-18 17:34:06 -07:00
Romain Guy
d2aed40a37 Fix documentation
Change-Id: Id3a5d3b6b43ce684c2328f046e4991e64e97575a
2012-05-18 17:32:08 -07:00
Romain Guy
5a418c771d Gallery, we need to talk...
Change-Id: Ie4b62df03c27161565d303d11447e3d7ff3115c4
2012-05-18 17:09:53 -07:00
Svetoslav Ganov
e54c5f1365 Merge "Exposing some accessiblity actions only for enabled views." into jb-dev 2012-05-16 18:43:31 -07:00
Svetoslav Ganov
fb1e80a247 Exposing some accessiblity actions only for enabled views.
1. Some accessibility actions should not be performed on disabled
   views. For example, scrolling should not be permitted while
   accessibility focus should be. Made a quick pass over the
   actions we expose now.

Change-Id: I36626dfbc0d2f480309a910f58f1de64e9e05675
2012-05-16 17:51:52 -07:00
Svetoslav Ganov
6467f94b37 Merge "Make AbsSeekBar widget adjustable via accessibility actions." into jb-dev 2012-05-16 15:53:35 -07:00
alanv
c826b7d8fa Make AbsSeekBar widget adjustable via accessibility actions.
Change-Id: I559da3cea139c2d5a4c82e2854921de173fbfa4f
2012-05-16 14:19:21 -07:00
Adam Cohen
e0bb6fe333 Merge "Cap widget bitmap usage by screen size (issue 6464700)" into jb-dev 2012-05-16 13:43:27 -07:00
Svetoslav Ganov
4528b4e882 Prefetching of accessibility node infos getting incorrect views.
1. The prefetcher of accessibility nodes infos was not folloing
   the childForAccessibility relationship when finding the views
   whose node infos to prefetch.

2. NumberPicker was not reporting the correct parent.

bug:6471710

Change-Id: Ia7ad5dd031fb4b3816dfe630d5212201cfafa236
2012-05-15 18:32:23 -07:00
Svetoslav Ganov
48d1586f40 Add accessibility scroll support to some widgets.
1. Added support for accessibility scroll action to
   some widgets that are scrollable.

2. Making the super call when handling an accessibility
   action in the views to call super first to allow
   an accessibility delegate to intercept the call.

bug:5932640

Change-Id: I5eb37d64bf9fba1d5c596981132e0df717e2a18a
2012-05-15 11:21:32 -07:00
Svetoslav Ganov
8b4d73b2d5 Merge "Revert "Showing default activity in activity chooser view only if enough space."" into jb-dev 2012-05-15 10:49:01 -07:00
Svetoslav Ganov
0e29ac9e4e Merge "Accessibility focus traversal in virtual nodes." into jb-dev 2012-05-15 10:48:44 -07:00
Gilles Debunne
855f5407c7 Merge "Minor changes in SpellCheckSpan pool management in SpellChecker" into jb-dev 2012-05-15 02:57:00 -07:00
Svetoslav Ganov
b9f286e1a3 Revert "Showing default activity in activity chooser view only if enough space."
This reverts commit 340e2611de

Change-Id: I396b70e8c737e6f1c36429618889e5c8fc690b55
2012-05-15 02:48:13 -07:00
Svetoslav Ganov
791fd31a68 Accessibility focus traversal in virtual nodes.
1. Finished the implementation of support for maintaining
   accessibility focus in view with virtual descendants.

2. Finished the NumberPicker implementation of virtual
   subtree such that all requred attributes are reported
   and ensuring that it support accessibility focus in
   its virtual descentants.

3. Fixed a bug where if a predecessor of the view that is
   accessiiblity focused is removed the accessibliity focus
   host in ViewRootImpl is not cleared leading to a crash
   when trying to draw the accessibility focus highlight.:

bug:6472646
bug:6433864

Change-Id: I3645642b87b4a26025c0b2ba9dfaad92d11a48f1
2012-05-15 00:43:53 -07:00
Svetoslav Ganov
8ce2d78aa8 Merge "Improving accessibility focus traversal." into jb-dev 2012-05-14 18:26:24 -07:00
Svetoslav Ganov
e5dfa47d84 Improving accessibility focus traversal.
1. Now the views considered during the accessibility focus search
   are the ones that would get accessibility focus when thovered
   over. This way the user will get the same items i.e. feedback
   if he touch explores the screen and uses focus traversal. This
   is imperative for a good user experience.

2. Updated which focusables are considered when searching for access
   focus in ViewGroup. Generally accessibility focus ignores focus
   before/after descendants.

3. Implemented focus search strategy in AbsListView that will traverse
   the items of the current list (and the stuff withing one item
   before moving to the next) before continuing the search if
   forward and backward accessibility focus direction.

4. View focus search stops at root namespace. This is not the right
   way to prevent some stuff that is not supposed to get a focus in
   a container for a specific state. Actually the addFocusables
   for that container has to be overriden. Further this approach
   leads to focus getting stuck. The accessibility focus ignores
   root names space since we want to traverse the entire screen.

5. Fixed an bug in AccessibilityInteractionController which was not
   starting to search from the root of a virtual node tree.

6. Fixed a couple of bugs in FocusFinder where it was possible to
   get index out of bounds exception if the focusables list is empty.

bug:5932640

Change-Id: Ic3bdd11767a7d40fbb21f35dcd79a4746af784d4
2012-05-14 16:21:29 -07:00
Svetoslav Ganov
844047acb7 Merge "Fix inconsitency in aAccessibilityNodeInfo cache." into jb-dev 2012-05-14 14:14:26 -07:00
Philip Milne
c8b7747bc0 Merge "Add validation code for GridLayout.LayoutParams" into jb-dev 2012-05-14 14:12:06 -07:00
Philip Milne
0f57cea898 Add validation code for GridLayout.LayoutParams
Bug 6404882.

The supplied code in this bug sets up a table with 2 columns and then
tries to add a component in column 5. Earlier attempts to fix this
by 'doing what the user meeant' had unwanted side-effects. This CL is
intended to defend against all ways to register invalid LayoutParams
and throw IllegalArgumentExcpetion when any column index falls outside the
range [0 .. N] where N is the number of columns. It also includes the
symmetrical check for rows.

Change-Id: I958a6d16035889cd954b78108773426e8b6b6d95
2012-05-14 13:42:05 -07:00
Guang Zhu
0d607fbe54 accessibility bug fix in NumberPicker
* moved View#isVisibleToUser to protected with @hide
* added a new View#isVisibleToUser(Rect), so that a portion of
  the view can be tested for visibility
* NumberPicker will report its concrete class name
* code to append virtual children was at wrong place
* boundInScreen for increment and decrement buttons are reported
  wrong

Change-Id: Ic5d644b3e1efa15b1f0537907c8cdd4ce43a97c1
2012-05-12 19:09:34 -07:00
Svetoslav Ganov
c406be9036 Fix inconsitency in aAccessibilityNodeInfo cache.
1. Fixed errors in the accessibility node cache.

  A. The cache was not catching the case when the current window changes as a
     result the user touch exploring it. As a result the cache had nodes from
     more that one window but the node ids are not unique thus causing a mess.

  B. The node info tree was prefetched regardless if a prefetched node is root
     name space (i.e. view ids - not accessibility ids - are namespaced) while
     the prefetched nodes were taking this into account. As a result there can
     get disconnected subtrees in the cache.

  C. When an event for a property change such as focus was received the cache
     we were removing the source node. As a result there may be disconnected nodes.

  D. When a node was added to the cache and an older version exists there was
     no check if it will point to the same children and parent. As a result if
     the state of the node has fewer children the subtrees rooted at the no
     longer present children will stay disconnected in the cache.

  E. When a node got accessibility or input focus the old one in the cache was
     not removed. As a result you may have a state with more than one access
     or input focus.

2. Added integrity check enabled only on user builds when a specific flag is set
   for the cache which checks whether:

  A. All nodes are from the same window.

  B. All nodes are connected.

  C. There are no duplicates.

  D. There is only one input focus.

  E. There is only one accessibility focus.

3. The reported accessibility node info tree was stopping at the root namespace
   boundary which is not correct. The reported tree has to reflect everything
   on the screen that the user can see such a workspace with widgets. The root
   namespace is added to avoid clash of view id but the accessibility ids are
   unique no matter if the view is inflated from a remote view.

4. Added calls to notify the accessibility layer when a preoprty that is interesting
   for accessibiliy has changed.

bug:6471710

Change-Id: I069470d91f209ba16313fa6539787a55efa3512e
2012-05-11 17:42:07 -07:00
Adam Powell
057a585fba Automatic persistent text selection for ListViews
Use View transient state tracking to allow selection to persist across
ListView-style item view recycling.

Fix some bugs with transient state tracking.

Bug 6110122

Change-Id: Ic084b8fc2289bff718b19478a37ce64459b3ed4c
2012-05-11 14:26:17 -07:00
Raph Levien
75ef98f821 Merge "Add fontFamily XML attribute to select font family by string" into jb-dev 2012-05-11 09:31:22 -07:00
satok
bec154c500 Allow the spell checker to remove existing misspelled spans
Bug: 6451163
Change-Id: If018533e8855e9dc21ab2a09ae31aa80ef260b72
2012-05-11 17:34:01 +09:00
satok
37e169cd14 Add a safety net to set range span in the spell checker
Bug: 6476578
Change-Id: I60ad82f80770dcb67fd9663dac64dc81634d7014
2012-05-11 12:56:13 +09:00
Adam Cohen
311c79c3e9 Cap widget bitmap usage by screen size (issue 6464700)
Change-Id: I04e16223861a88d40ad757afa086a0f92e84493b
2012-05-10 15:52:28 -07:00