Commit Graph

3928 Commits

Author SHA1 Message Date
Alan Viverette
57b867f3f5 Merge "Minor ListView clean up. Exposes View.pointInView() as hidden API." 2013-06-26 22:12:28 +00:00
Alan Viverette
3d15a2b8f4 Minor ListView clean up. Exposes View.pointInView() as hidden API.
Change-Id: Ia628f8438fac5af2471efd8558c8876fae3dafb0
2013-06-25 17:27:37 -07:00
Alan Viverette
6b40cc7f8a Fix FastScroller for single-section lists and untitled sections.
Change-Id: I121d9427e87e1a9e09562642f6aa621fc1cc849a
2013-06-25 16:41:52 -07:00
Alan Viverette
db759c3f02 Merge "Implement FastScroller as an animated overlay." 2013-06-24 17:23:19 +00:00
Alan Viverette
0ebe81e8b1 Implement FastScroller as an animated overlay.
Bug: 9372090
Change-Id: I46cb67ef0482a4c8f721248d5f5e2e692144c3a1
2013-06-21 17:01:36 -07:00
Fabrice Di Meglio
1cc0a6514f Merge "Fix potential NPE if there is no child in HorizontalScrollView" 2013-06-18 23:55:01 +00:00
Fabrice Di Meglio
f2fb76cc23 Fix potential NPE if there is no child in HorizontalScrollView
- related to the previous change for saving the scroll position
- also related to bug #9463581 NPE observed while launching News&Weather app from all apps tray

Change-Id: I9f2f8a246e793eefa1cf510e15a56a1058fb9c18
2013-06-18 15:49:16 -07:00
Fabrice Di Meglio
012416fdbb Merge "Fix bug #9463581 NPE observed while launching News&Weather app from all apps tray" 2013-06-18 21:54:49 +00:00
Fabrice Di Meglio
d6d543977d Fix bug #9463581 NPE observed while launching News&Weather app from all apps tray
- dont suppose that there will always be one child

Change-Id: I51c5cdf06294af25c992cfbaacabbc29dd1b9ad3
2013-06-18 14:09:07 -07:00
Adam Powell
90f339a5a3 Don't save ScrollView/HorizontalScrollView saved state for old apps
Older apps may have given IDs to ScrollViews and views of a different
class in layouts that vary by configuration. Now that ScrollViews save
state this causes ClassCastExceptions when trying to restore instance
state.

Only save new instance state for ScrollView/HorizontalScrollView for
apps targeting post-API 18.

Change-Id: Icaa095cd20bef35dddc225a17c5a8e30b3faea02
2013-06-13 17:44:04 -07:00
Alan Viverette
7d8885df35 Merge "Ensure page up/down always moves to first/last selectable item." 2013-06-13 20:32:20 +00:00
Alan Viverette
af9c5ea240 Ensure page up/down always moves to first/last selectable item.
Bug: 5088505
Change-Id: Ie73705f46602003b1c02fa08427dc940ad9f9b8a
2013-06-13 13:27:59 -07:00
Dave Burke
2ce9bae80c am bafc8dcf: am 34bc73df: Merge "Revert "Make implementation of isEmpty consistent with implementation of getCount in HeaderListViewAdapter"" into jb-mr2-dev
* commit 'bafc8dcf690776ec7fdcf26518f3aff47724871d':
  Revert "Make implementation of isEmpty consistent with implementation of getCount in HeaderListViewAdapter"
2013-06-12 21:13:51 -07:00
Dave Burke
bafc8dcf69 am 34bc73df: Merge "Revert "Make implementation of isEmpty consistent with implementation of getCount in HeaderListViewAdapter"" into jb-mr2-dev
* commit '34bc73dff1f0c8402da3fc9bd1f0175bddcaa842':
  Revert "Make implementation of isEmpty consistent with implementation of getCount in HeaderListViewAdapter"
2013-06-12 21:11:12 -07:00
Fabrice Di Meglio
f649a06e6b Merge "Fix bug #9302365 HorizontalScrollView is not RTL aware" 2013-06-13 01:32:45 +00:00
Fabrice Di Meglio
fafe88c3d9 Fix bug #9302365 HorizontalScrollView is not RTL aware
- follow up for cleaning the state

Change-Id: I850d0da5ff8813d1c7a6f2277bddba1b8ccc07ec
2013-06-12 18:18:08 -07:00
Fabrice Di Meglio
b57e2e3872 Merge "Save Scroller position" 2013-06-13 00:54:37 +00:00
Fabrice Di Meglio
d6befbdd17 Save Scroller position
- add SaveState with scroll position and use it during the first layout

Change-Id: I0806ddb9c52d70d32055f4b474d21f6e2e5a4ea8
2013-06-12 17:42:14 -07:00
Adam Powell
fc93d0c108 Revert "Make implementation of isEmpty consistent with implementation of getCount in HeaderListViewAdapter"
This reverts commit ef2277ec58.

This caused a regression for some apps relying on the old behavior.

Bug 9372495
2013-06-12 17:38:25 -07:00
Fabrice Di Meglio
4d5c4e21d3 Merge "Fix bug #9302365 HorizontalScrollView is not RTL aware" 2013-06-13 00:27:13 +00:00
Fabrice Di Meglio
c4d712237c Fix bug #9302365 HorizontalScrollView is not RTL aware
- make FrameLayout capable of forcing a Gravity.LEFT (when there will be
only one child with Gravity.RIGHT and wider than its parent like for
HorizontalScrollView)
- fix onLayout() so that it is forcing Gravity.LEFT if needed and
setting correctly the initial mScrollX
- also add restore/save from an instance state (by saving if the layout
is RTL and the scroll position)

Change-Id: Ida7ff4654c6a54a1696c2575af46f044dd1aabc8
2013-06-12 16:54:31 -07:00
Alan Viverette
4602a709d8 Merge "Allow adding headers and footers to ListView after setAdapter()." 2013-06-12 21:12:54 +00:00
Alan Viverette
72e2f2a940 Allow adding headers and footers to ListView after setAdapter().
Bug: 6110394
Change-Id: I0238ff91b6ae3159b2350d5210545425ac7340f3
2013-06-12 12:56:29 -07:00
Alan Viverette
a6954f7e12 Merge "Add getters for ListView header & footer divider drawing attrs." 2013-06-12 19:49:13 +00:00
Alan Viverette
a420b53d37 Merge "Clean up FastScroller. Expand overlay to fit text content." 2013-06-12 19:48:53 +00:00
Alan Viverette
5542103589 Add getters for ListView header & footer divider drawing attrs.
Bug: 6104055
Change-Id: I874d631ec6fbb0e99790a3f37d00d589c1d63d34
2013-06-11 17:50:56 -07:00
Svetoslav
6b1d5a4ff2 Merge "Notification for changed subtree in accessibility mode not fired properly." 2013-06-10 19:55:39 +00:00
Svetoslav
00dbe81fea Notification for changed subtree in accessibility mode not fired properly.
We fire notifications that the a view subtree changed for accessibility.
In some cases the notifications were fired if accessibility is not
enabled. This is now fixed. Also the runnable for making the recurring
subtree change was not dequeued if it was pending but we received a
request which we decided to run immediately.

bug:9337912

Change-Id: I27401b3d11f81c653e8761a704ee530263b08c3a
2013-06-10 12:51:14 -07:00
Romain Guy
f38fd87844 am 7a6e1297: am 8d8fc469: Merge "Don\'t orphan footers with transient state Bug #8725945" into jb-mr2-dev
* commit '7a6e129759672f0c1b0ce462d389c0f469e7348f':
  Don't orphan footers with transient state Bug #8725945
2013-06-10 11:12:09 -07:00
Romain Guy
7a6e129759 am 8d8fc469: Merge "Don\'t orphan footers with transient state Bug #8725945" into jb-mr2-dev
* commit '8d8fc469952ffe3feb45e52388f2129f8dd5e40c':
  Don't orphan footers with transient state Bug #8725945
2013-06-10 10:26:57 -07:00
Romain Guy
b7e0f7942b Don't orphan footers with transient state
Bug #8725945

Selecting text in an EditText causes the View to have transient
state. This would in turn cause the View to be removed from its
ListView parent. When removed, the EditText would lose its
AttachInfo, causing all sorts of problems. Headers and footers
must not be removed, only detached. This is the part of the fix
in AbsListView.

Fixing AbsListView triggered a second bug: when a View is removed
from the Window manager, it would keep its parent assigned, thus
making it impossible to add it again to the window manager. When
a ViewRootImpl goes through doDie(), it must set its content view's
parent to null to properly cleanup.

Change-Id: I0489daa74f8f7fcf85526f0928f8925ec30d4f42
2013-06-07 15:36:49 -07:00
Alan Viverette
e918a48df9 Clean up FastScroller. Expand overlay to fit text content.
Bug: 6472526
Change-Id: I1b4d5ca87a1844d372553377294f9b7341f3bfd1
2013-06-07 11:43:06 -07:00
Satoshi Kataoka
65ea41541b Merge "Fix an issue where "SuggestionSpan"s are not removed properly" 2013-06-07 07:59:44 +00:00
Svetoslav
494cb689d0 Merge "Optimizing AccessibilityNodeInfo caching." 2013-06-07 00:04:57 +00:00
Romain Guy
f69913056b Remove unnecessary allocations
Change-Id: Ia561a0a312ca2737d5afa742184f5392bb2f29a3
2013-06-06 12:10:42 -07:00
Elliott Hughes
e7af0d2866 am 340df6c4: am 4d33a8ab: am fa6d6256: Merge "change "next" to "done" in minute IME option under 24-hour format"
* commit '340df6c4f7af79dc085471064211ba01ebd45f0a':
  change "next" to "done" in minute IME option under 24-hour format
2013-06-05 16:29:13 -07:00
Elliott Hughes
340df6c4f7 am 4d33a8ab: am fa6d6256: Merge "change "next" to "done" in minute IME option under 24-hour format"
* commit '4d33a8aba33fa70e1e1a1c713e487a26a090bc25':
  change "next" to "done" in minute IME option under 24-hour format
2013-06-05 16:26:04 -07:00
Elliott Hughes
4d33a8aba3 am fa6d6256: Merge "change "next" to "done" in minute IME option under 24-hour format"
* commit 'fa6d6256e9052a5f5155ac97364170f6518e37a4':
  change "next" to "done" in minute IME option under 24-hour format
2013-06-05 16:23:34 -07:00
Elliott Hughes
fa6d6256e9 Merge "change "next" to "done" in minute IME option under 24-hour format" 2013-06-05 23:20:37 +00:00
Svetoslav
6254f4806d Optimizing AccessibilityNodeInfo caching.
1. Before we were firing an accessibility event from the common
   predecessor of views with accessibility related state changes
   every X amount of time. These events designate that the tree
   rooted at the source is invalid and should not be cached.
   However, some of the state changes do not affect the view tree
   structure and we can just refresh the node instead of evicting
   and recaching nodes infos for views that did not change. Hence,
   we need a way to distinguish between a subtree changed over a
   node changed.

   Adding a new event type will not work since if say two siblings
   have local changes and their predecessor fires a window state
   change event, the client will drop the subtree rooted at the
   parent including the two views with changes. Subsequent, more
   specialized events emitted from the two changed siblings will
   be useless since the parent which did not changed is already
   evicted from the cache. Conversely, if the specialized events
   are fired from the two siblings with local changes and they
   are refreshed in the cache the subsequent window state change
   event from the common predecessor will force the refreshed
   nodes to be evicted.

   Hence, to enable distinction between node being changed and
   a subtree baing changed while not changing existing behavior,
   we will fire only window content change event with an additional
   argument specifying what changed - node or a subtree for now.
   Also if the changes are local to a view we fire the window
   content changed event from the view. So, the two siblings will
   fire such an event independently and the client will know that
   these are local changes and can just refresh the node. If the
   changes are structural, then we fire the window state change
   event from the common predecessor.

2. Added the input type of a text view as one of the properties
   reported by an AccessibilityNodeInfo. It is nice to prompt the
   user what input is expected.

3. Added a bundle for optional information to AccessiiblityNodeInfo.
   For example, it will be used for putting web specific properties
   that do not map cleanly to Android specific ones in WebView.

4. AccessibilityInteractionController was not taking into account
   whether the current accessibility focused node is shown before
   returing it. Hence, a disconnected node would be returned and
   caching it puts our cahche in an inconsistent state.

Change-Id: I8ed19cfb4a70bdd7597c3f105487f1651cffd9e0
2013-06-05 15:16:05 -07:00
Alan Viverette
d6f37d724d Merge "Prevent scroll views from sending duplicate onScrollChanged events." 2013-06-05 17:37:29 +00:00
Satoshi Kataoka
d7429c15e6 Fix an issue where "SuggestionSpan"s are not removed properly
Basically, the root cause of this issue is a lack of an expected implementation.
This change completes the spec of the architecture to remove modified "SuggestionSpan"s.

Bug: 9190860
Change-Id: I63f2ccf3407ae7c1bc28813e044b8703e2112f34
2013-06-05 22:30:54 +09:00
Alan Viverette
4bb52a93e9 Merge "Always draw dividers for footers and headers when explicitly enabled." 2013-06-04 22:48:20 +00:00
Alan Viverette
9234a78be2 Merge "Clear pressed state when moving outside list bounds." 2013-06-04 22:46:31 +00:00
Joe Malin
e3b8d7fdb1 am 36d0f946: am e9dff008: am 305cf97b: am 60776093: am 029099ff: am f4b21585: am 10d96950: DOC CHANGE: Clarify textIsSelectable in TextView
* commit '36d0f946adc83a9ffa5483556d263b719977da5d':
  DOC CHANGE: Clarify textIsSelectable in TextView
2013-06-04 11:17:16 -07:00
Joe Malin
36d0f946ad am e9dff008: am 305cf97b: am 60776093: am 029099ff: am f4b21585: am 10d96950: DOC CHANGE: Clarify textIsSelectable in TextView
* commit 'e9dff008adc7b6e565402ec61cd89fb3265a28bd':
  DOC CHANGE: Clarify textIsSelectable in TextView
2013-06-04 10:20:15 -07:00
Joe Malin
e9dff008ad am 305cf97b: am 60776093: am 029099ff: am f4b21585: am 10d96950: DOC CHANGE: Clarify textIsSelectable in TextView
* commit '305cf97ba7b927f49d3f52952c36cb5102699cc5':
  DOC CHANGE: Clarify textIsSelectable in TextView
2013-06-04 10:17:46 -07:00
Joe Malin
305cf97ba7 am 60776093: am 029099ff: am f4b21585: am 10d96950: DOC CHANGE: Clarify textIsSelectable in TextView
* commit '60776093a5569817040e2f65a17893a381906564':
  DOC CHANGE: Clarify textIsSelectable in TextView
2013-06-04 10:14:48 -07:00
Joe Malin
60776093a5 am 029099ff: am f4b21585: am 10d96950: DOC CHANGE: Clarify textIsSelectable in TextView
* commit '029099ff56b92201e10b2047e1ced675c8e9f964':
  DOC CHANGE: Clarify textIsSelectable in TextView
2013-06-04 10:12:09 -07:00
Joe Malin
10d96950c1 DOC CHANGE: Clarify textIsSelectable in TextView
Change-Id: Iddfdf7ed82ea3fa2a0160bda4a1e29ec8f815a2b
2013-06-04 09:34:54 -07:00