- 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
mDrawable is updated, but it was not re-drawn properly.
postInvalidate() should be called when the drawable is
updated.
Bug: 21141841
Change-Id: Icb3ddf18d05285ffa8758a9be256482d594ab8ed
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
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
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
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
* 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
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
ImageView.setImageIcon() is remotable, so you can also call
RemoteViews.setImageViewIcon().
Bug: 18568715
Change-Id: I456cfa65102e1983d3392d822584d154a6cd761a
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
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
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
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
Moved the replace action to be triggered from the TextView
rather than the Editor. Previously the ExtractedEditText
was calling the TextView.onTextContextMenuItem which did
not hold an entry for replace and thus was returning
false.
Note: this CL does not fix the extracted mode being
(randomly) terminated when edit actions are pressed. This
is still under investigation.
Bug: 20930071
Change-Id: I71f87418f040f6860fe7723e4cd731c298cf3c5f
We now maintain a mata-state with each permission in the form of flags
specyfying the policy for this permission. This enables support of the
following use cases:
1. The user denies a permission with prejudice in which case an app cannot
request the permission at runtime. If an app requests such a permssion
it gets a denial unless the user grants the permission from settings.
2. A legacy app with disabled app-ops being upgraded to support runtime
permissions. The disabled app ops are converted to permission revocations.
The app ops manager is a part of the activity manger which sits on top
of the package manager, hence the latter cannot have a dependency on the
former. To avoid this the package installer which is the global
permission managment authority marks the permission as revoked on
upgrade and the package manager revokes it on upgrade.
3. A device policy fixing a permission in a granted or revoked state. This
additional information is folded in the meta-state flags and neither
apps can request such permissions if revoked not the user can change
the permission state in the UI.
Change-Id: I443e8a7bb94bfcb4ff6003d158e1408c26149811
mTouchWordOffset was not appropriately updated when a
selection is modified across multiple lines.
Bug: 20650838
Change-Id: I46f5393970dc8d806719467bac489feac0fbe1a5
A previous CL introduced a new way of encoding view properties for
use by heirarchy viewer. This CL updates all views using the old
@ExportedProperty annotation to use this new method. The older
mechanism will be removed in a subsequent CL.
Change-Id: I6cc23b90cd9da1c6ce89b4caffe54874db203452
Fix the various view assist related APIs.
Also remove the blockAssist view attribute, and instead use
the window's FLAG_SECURE to drive blocking of the entire
hierarchy (which is semantically correct, and will protect
existing apps that have already indicated they need it).
Change-Id: I6beebc86b202809cba0a356cae9607d8d0fb5e78
Recycling of ActionBar items can cause problems with the current
ActionBar animations, as the system animates views that represent both
pre- and post-layout changes, sometimes causing opposit animations to
run on the same view, resulting in unpredictable effect slike views
remaining invisible.
This 'fix' is a workaround to disable item animations pending a more
complete and robust fix that involves a more involved system of view
recycling that would avoid recycling views that are currently being used
in animations.
Issue #20538912 Menu missing in Downloads app
Change-Id: I7b1d3baf94378e4788f868801a452c6583353842
This treats punctuation as "words", so groups of punctuation will be
selected together, i.e. "Hmm... yay!!!" would be treated as four words:
Hmm-...-yay-!!!
Bug: 19950062
Change-Id: Ic9514c524092734fad1abdf19a736bfa1406157b