Commit Graph

5445 Commits

Author SHA1 Message Date
Alan Viverette
db2911321b Merge "Replace PNG-based seekbar thumb animation with AVD" into mnc-dev 2015-05-29 22:51:04 +00:00
Alan Viverette
87e1938be8 Replace PNG-based seekbar thumb animation with AVD
Adds optical inset support for VectorDrawable and GradientDrawable.

Bug: 19944181
Change-Id: I9df04d9fe17ad858413e7f93694bf37ee2c43c85
2015-05-29 15:12:14 -07:00
James Cook
63b6320af4 Merge "assist: Fix reported colors/styles for TextView/Switch" into mnc-dev 2015-05-29 17:30:23 +00:00
James Cook
5cfaae4aae assist: Fix reported colors/styles for TextView/Switch
Changes to the data provided to AssistStructure:
* Text foreground color is correct even if the view has not yet been
painted.
* Text background color is now always 1 (TEXT_COLOR_UNDEFINED) for a
TextView, as it has no separate concept of background color.
* Switch now reports the text size/color/style of the label text
(usually user visible) rather than the on/off text on the button
itself (usually hidden in Material, and not usually revelant when
visible).

Bug: 21080375
Change-Id: I7e15f68d89510a76cab76031c2c8ca6ca3f32435
2015-05-28 15:52:44 -07:00
Doris Liu
c81c082628 Fix ScrollView's EdgeEffect to respect clipToPadding flag
bug: 19126514
Change-Id: I21fe4fd3e2f1240ee31c51f9deac7f285ffe2408
2015-05-28 13:29:44 -07:00
Andrei Stingaceanu
373816ef1f Stop showing both the floating toolbar and suggestions
The selection mode without selection (PASTE|SELECT_ALL)
pops up along the suggestion popup if we tap on a word
within 15sec of the most recent cut/copy/textChanged
operation. Fix this by making suggestion popup take
precedence.

Also moved the invalidation of the text changed time
into the handleTextChanged() which fixes the selection
mode starting once after the text has changed.

NOTE: Subsequent clicks on non-suggestion spans will
still trigger the selection mode without selection if
within the defined timeframe.

Bug: 20443325
Change-Id: If2726e2c965e77e82ef7b847cf352d4426205bdc
2015-05-28 11:26:28 +01:00
Alan Viverette
9123e666bb Merge "Update cached child enabled state before selector state" into mnc-dev 2015-05-26 22:27:31 +00:00
Keisuke Kuroyanagi
1733bd3def Merge "Fix: Insertion handle can be moved just by tapping." into mnc-dev 2015-05-22 02:28:26 +00:00
Keisuke Kuroyanagi
27a6361234 Merge "Fix: Crash when modifying text while using drag accelerator." into mnc-dev 2015-05-21 04:07:57 +00:00
Mady Mellor
b300d31bf1 Merge "Text selection: fix some issues with drag accelerator" into mnc-dev 2015-05-20 18:05:32 +00:00
Mady Mellor
3244a66336 Merge "Fix selection handles on older API versions" into mnc-dev 2015-05-20 17:09:13 +00:00
Mady Mellor
7a93644d5e Text selection: fix some issues with drag accelerator
Couple of overlapping issues that this CL fixes. The major change is to
offset the selection vertically this is similar to how the handles work
already (i.e. touch target is below what's being selected), and still
allows the user to see the selection start / end without covering it with
their finger.

This change fixes multiple issues:
1) Previously to ensure the finger wasn't covering the selection a
   preceding or following offset was taken, this made it difficult to
   select certain words and it made text on the edge of the screen hard
   to select (b/21098345 and b/19965619)
2) The use of preceding and following on the word iterator was not correct
   allowing grapheme clusters to be split, now the offset is calculated
   with getWordStart/End which respect grapheme clusters (b/21045116)

Bug: 21098345
Bug: 21045116
Bug: 19965619
Change-Id: Id8392426cce20ad0ff47a4279c92f6ed1b0ad30e
2015-05-20 10:05:52 -07:00
Andrei Stingaceanu
8c44e74524 Merge "Landscape extracted mode - floating toolbar interference" into mnc-dev 2015-05-20 09:32:50 +00:00
Andrei Stingaceanu
975a8d0f4d Landscape extracted mode - floating toolbar interference
In landscape do not allow starting selection modes if the
extracted mode has not yet started. Also remove the single
tap selection delayed runnable.

This allows for a smooth transition (as in no floating
toolbar artifacts) into extracted mode. Also fixes
(more as in hides) the double selections.

Bug: 20930071
Change-Id: Idb9c375dc25777761b11ca17ccfd9f5eedc642b4
2015-05-20 10:31:19 +01:00
Abodunrinwa Toki
1f21d2a8b1 Merge "Hide floating toolbar when user interacts with screen." into mnc-dev 2015-05-19 14:06:46 +00:00
Abodunrinwa Toki
fd3a3a1163 Hide floating toolbar when user interacts with screen.
- Adds an ActionMode.snooze(int) API.
- Clients call this to hide the floating toolbar on DOWN touch event.
- This is called repeatedly as a snooze timeout will re-show the
  toolbar.
- ActionMode.snooze(0) will "wake" the toolbar, reshowing it.
- Clients call this to re-show the toolbar on UP touch event.
- This CL also adds code to hide the toolbar when the "content rect"
  is changing.

Bug: 20148125
Change-Id: If5a9a15f72c73cad8ca01a4328a58570b3e29f66
2015-05-19 14:25:39 +01:00
Clara Bayarri
e94561ecbc Merge "Fix Cancelling a text action activity deletes the selected text" into mnc-dev 2015-05-19 10:42:20 +00:00
Alan Viverette
a19ab347be Update cached child enabled state before selector state
We reference the cached enabled state from the selector state update
code, so we need to ensure it is accurate first.

Bug: 20121334
Change-Id: I5859e9e8c594e1ba64ec9f001f47c2a6ea311c4f
2015-05-18 13:20:52 -07:00
Keisuke Kuroyanagi
bc89a5ce34 Fix: Insertion handle can be moved just by tapping.
Horizontal poistion is passed to updatePosition() without
adding getHorizontalOffset(). The position is wrong for the
insertion handle; thus, the handle is moved just by tapping
on it.

Bug: 20923263
Change-Id: Ie867ebd9e6b682057b73373fefb7b2baf45caef9
2015-05-18 14:49:29 +09:00
Keisuke Kuroyanagi
259292ff3d Fix: Crash when modifying text while using drag accelerator.
Drag accelerator state was not cleared when the text was
modified; thus, mStartOffset could point to an invalid offset.

Bug: 21178876
Change-Id: Ic9b47375bab321fbc573e8a81e3fadf60309da78
2015-05-18 14:15:32 +09:00
Keisuke Kuroyanagi
e20b22feb3 Merge "Fix: Drag handle isn't updated after crossing bidi boundary." into mnc-dev 2015-05-18 04:57:09 +00:00
Keisuke Kuroyanagi
33f81ac108 Fix: Drag handle isn't updated after crossing bidi boundary.
mDrawable is updated, but it was not re-drawn properly.
postInvalidate() should be called when the drawable is
updated.

Bug: 21141841
Change-Id: Icb3ddf18d05285ffa8758a9be256482d594ab8ed
2015-05-18 13:56:06 +09:00
Mady Mellor
709386f501 Fix selection handles on older API versions
The new assets didn't have the same padding on the edges as assets on older
versions. The adjustments to the getHotspotX code for the new assets broke
how the handles on older API versions were placed.

This CL updates the assets to have the same padding (i.e. handleWidth / 2
on each side of the handle and changes the getHotspotX methods for this.

Bug: 20829391
Change-Id: If7e466d200ef7757831bc763c3c3ce4a8bbf63fc
2015-05-15 15:51:47 -07:00
Alan Viverette
bd51b4d0b9 Return correct year in DayPickerPagerAdapter.getYearForPosition()
Previously it wasn't offsetting the position by the min date's month,
so it would be off by a year if the min date wasn't in January. Also
now updates button visibility whenever the ViewPager's range changes.

Bug: 21203303
Change-Id: Id7a41a4fa48843943c744fb0fecd4bebb798cee5
2015-05-15 14:18:44 -07:00
Mady Mellor
21417a0d50 Merge "Text selection: Fix moving by character when should move by word" into mnc-dev 2015-05-15 17:56:59 +00:00
Mady Mellor
c25d6c22bb Merge "Fix difficulty grabbing handles for small selections" into mnc-dev 2015-05-15 17:56:57 +00:00
Alan Viverette
617da41e8c Merge "Update button visibility as a final step in DayPickerView construction" into mnc-dev 2015-05-15 16:44:23 +00:00
Clara Bayarri
5b7665a1f2 Fix Cancelling a text action activity deletes the selected text
The implementation of onActivityResult in TextView did not check the
result code, hence treating the cancelled activity result as a
replacement by empty text.

Also added tests to catch this case and basic usage.

Bug: 21183019
Change-Id: Ibdafe89474dd69c5b70c67ec98fed46656f9fdcf
2015-05-15 16:32:50 +01:00
Alan Viverette
b12172ef47 Update button visibility as a final step in DayPickerView construction
Previously it was only updated when the page was turned, but that listener
isn't called until the user turns the page.

Bug: 20701637
Change-Id: I06faf59660cda0e19d57766f4afd141e4a389b18
2015-05-14 14:24:36 -07:00
Mady Mellor
81fa3e8966 Text selection: Fix moving by character when should move by word
The code to restrict handles from crossing did not respect moving by
word or by character. This CL checks the offset to see if it's crossing,
and if it is, it restricts it to the line of the other handle and proceeds
with determining the "actual" offset based on the activated
mode by word / by char).

There is also still a check to ensure that one character is selected
after the mode as adjusted the offset.

Bug: 21114827
Change-Id: Idac699ef2eb5d313e77d44b5064c03ff84e0fb88
2015-05-14 09:22:59 -07:00
Andrei Stingaceanu
fae270c108 Editor: enable double tap for selection after cut/copy.
* detect double tap in the TextView and pass it to Editor.
* add a timer (with getDoubleTapTimeout) for executing the
  single tap job in Editor.
* if double tap is detected then cancel the single tap job.

This way one tap shows the toolbar if within the timeframe
and two taps select the word and show the toolbar.

Bug: 20442587
Change-Id: I0a117939c896fcb13669346e30c9c48d319576dd
2015-05-14 16:11:07 +01:00
Andrei Stingaceanu
35c550c854 Fix: text selection bubbles move along with the text
Always hide the selection cursor when showing the
insertion cursor.

Bug: 19857679
Change-Id: I549552fa5026e60f94900364b8194217e0de4b4a
2015-05-14 14:30:18 +01:00
Wojciech Staszkiewicz
be752b1f28 Merge "Pass charset to XmlPullParser.setInput instead of null" into mnc-dev 2015-05-14 10:27:24 +00:00
Andrei Stingaceanu
c398adf81c Merge "Fix floating toolbar popping frequently after Replace/Copy" into mnc-dev 2015-05-14 10:23:09 +00:00
Andrei Stingaceanu
78e2f07e81 Merge "Fix: replace terminates extract mode (floating toolbar)" into mnc-dev 2015-05-14 09:33:58 +00:00
Wojciech Staszkiewicz
9e9e2e73c6 Pass charset to XmlPullParser.setInput instead of null
Passing null to XmlPullParser.setInput forces it to do additional
work, which can be easily avoided if we know the charset beforehand.

bug: b/20849543

Change-Id: Iaff97be9df2d0f99d7af8f19f65934439c9658e2
2015-05-14 10:24:34 +01:00
Chris Banes
e695bb8a28 Fix build; doc link in ImageView
Change-Id: Ie3057fc2b920f71ff89eee0d3577d21d0e9930c3
2015-05-14 10:12:20 +01:00
Deepanshu Gupta
e646022429 Merge "Revert "Call dispatchFinishTemporaryDetach before returning a transient view"" into mnc-dev 2015-05-14 04:52:59 +00:00
Keisuke Kuroyanagi
0433488daa Merge "Track difference between touch and word in x coordinate." into mnc-dev 2015-05-14 04:26:21 +00:00
Deepanshu Gupta
5987e553c2 Revert "Call dispatchFinishTemporaryDetach before returning a transient view"
This reverts commit c73a1aaa90. The change
causes an NPE when rendering ListViews.
2015-05-13 21:25:57 -07:00
Dan Sandler
a22a380fbb Add Icon support to ImageView.
ImageView.setImageIcon() is remotable, so you can also call
RemoteViews.setImageViewIcon().

Bug: 18568715
Change-Id: I456cfa65102e1983d3392d822584d154a6cd761a
2015-05-13 23:50:39 -04:00
Alan Viverette
bf6d50f906 Merge "Call dispatchFinishTemporaryDetach before returning a transient view" into mnc-dev 2015-05-13 23:35:55 +00:00
Keisuke Kuroyanagi
0138e4c7f8 Track difference between touch and word in x coordinate.
After a handle is snapped to the word, the difference was
tracked in offset. It can break grapheme clusters, ignores
character width, and makes it difficult to select text near
line breaks.

Bug: 21005599
Change-Id: I42402a377670c7e3c6d6e6583744d085ae52bba2
2015-05-13 16:28:29 -07:00
Mady Mellor
21623faa44 Merge "Fix issue where handle is in front of word rather than end of word" into mnc-dev 2015-05-13 17:34:13 +00:00
Mady Mellor
2e577d2e1c Fix difficulty grabbing handles for small selections
The gravity for the handles pushes them to the outside of the touch target
square, causing the touch target to overlap for both of them when close
together. This CL swaps the gravity so that the touch target does not
overlap when the handles are close.

Bug: 20065564
Change-Id: I4d14e7076ac779c5f4a0a603d6348ba6dc7c7b4c
2015-05-13 07:15:17 -07:00
Roozbeh Pournader
0ca0f58000 Merge "Add hyphenationFrequency attribute to TextView and StaticLayout." into mnc-dev 2015-05-12 22:59:47 +00:00
Roozbeh Pournader
95c7a13f2a Add hyphenationFrequency attribute to TextView and StaticLayout.
This patch adds plumbing to TextView and StaticLayout to control the
frequency of automatic hyphenation used in laying out paragraphs.

Bug: 21038249
Change-Id: Ib45de190eb0a1ed738e69fd61f2b39561b11aec7
2015-05-12 14:56:57 -07:00
Mady Mellor
58c9087137 Fix issue where handle is in front of word rather than end of word
Previous getWordEnd and getWordStart functions would return a boundary
rather than a word end / start boundary in some cases. This behavior is
most evident when moving between short lines -- the handle would go to
the next boundary rather than the word end on the next line (and the
start handle would go to the word end rather than the word start on
the prev line).

This CL ensures that word or punctuation boundaries are returned and moves
most of the punctuation boundary logic into WordIterator since it makes
a bit more sense there.

Bug: 21030788
Change-Id: I96c6aff7f2c213aa3c4f66ac87ca913ca16fd347
2015-05-12 11:09:37 -07:00
Chris Craik
6a49ddef62 Revert "Fix build - Revert "Revert "Use default constructor to get anti-aliasing"""
Fix import

This reverts commit 7ed1431c83.

Change-Id: Id93eba3ed1d47a90384ba20dea6f74d78755792b
2015-05-12 10:44:30 -07:00
Chris Craik
7ed1431c83 Fix build - Revert "Revert "Use default constructor to get anti-aliasing""
This reverts commit dfe0a66cec.

Change-Id: I58a1bae649a284f3d3b6213064d903ea7fcf185a
2015-05-12 17:22:22 +00:00