Commit Graph

5200 Commits

Author SHA1 Message Date
Andreas Gampe
870c4ba78a am 1eca7d66: am 2a247b36: Merge "Frameworks/base: Fix visibility flag in Editor"
* commit '1eca7d66ee3da87c622259544794b8fe998cdb92':
  Frameworks/base: Fix visibility flag in Editor
2015-03-18 23:50:35 +00:00
Clara Bayarri
10ff56ec6d Merge "Editor: Make the Insertion handle start/finish the selection action mode on tap." 2015-03-18 23:02:58 +00:00
Clara Bayarri
452fa75207 Editor: Make the Insertion handle start/finish the selection action mode on tap.
The Insertion handle used to show/hide the paste popup, not that we are
unifying it with the selection action mode it should start/finish the mode.

There are no other use cases of the popup with the insertion handle, so that
code is cleaned up.

Change-Id: I40703bc8316f217edaf97aff72436935de60500c
2015-03-18 22:41:39 +00:00
Andreas Gampe
1eca7d66ee am 2a247b36: Merge "Frameworks/base: Fix visibility flag in Editor"
* commit '2a247b361089c0744202b604e22f9a79d239b92c':
  Frameworks/base: Fix visibility flag in Editor
2015-03-18 22:33:09 +00:00
James Cook
f2560e62cf Merge "Improve undo support for text entered with IME" 2015-03-18 21:39:03 +00:00
Chris Craik
43c410eaac Merge "Remove HardwareCanvas" 2015-03-18 21:36:56 +00:00
James Cook
d202668670 Improve undo support for text entered with IME
Use span properties to detect:
* Composing text - don't record undo operations
* Completing a composition - record an insert undo operation
* Canceling a composition - don't record

Save the composition state on parcel/unparcel.

Stop using begin/end batch edit to try to detect when a TextWatcher
is modifying the text. IMEs trigger multiple InputFilter passes in
a single batch edit. Use SpannableStringBuilder to determine when
we're in a TextWatcher callback because it is the authority on that
state.

Fix a bug in undo manager where it doesn't forget undos correctly if
there are more than one in the stack.

Bug: 19332904
Change-Id: Iaa9b0b2a7bf6683302cc85e7616e5d5fcc9fa202
2015-03-18 14:36:41 -07:00
Clara Bayarri
532c8e9b35 Merge "Editor: Fire the selection Action Mode when long pressing on an empty space" 2015-03-18 20:21:08 +00:00
Alan Viverette
8c9d897534 Merge "Remove unnecessary null check in FastScroller" 2015-03-18 19:36:53 +00:00
Clara Bayarri
29d2b5aa48 Editor: Fire the selection Action Mode when long pressing on an empty space
This used to fire the "paste" popup instead. It is a tiny step towards
unifying the cut/copy/paste action mode and paste popup.

Change-Id: I03dfcc294d4453e92464fc4f714468f58c692f24
2015-03-18 18:01:42 +00:00
Alan Viverette
a0f0494059 Remove unnecessary null check in FastScroller
Bug: 19805564
Change-Id: I12e1a3cadf52038fb480e5694d12b6ec5e0e467b
2015-03-18 10:25:43 -07:00
Alan Viverette
0e7c022601 Merge "Add single-arg TextView.setTextAppearance, deprecate two-arg method" 2015-03-18 00:34:38 +00:00
Andreas Gampe
4976e2de8d Frameworks/base: Fix visibility flag in Editor
Fix double check.

Bug: 19797138
Change-Id: I95e694f384f1f25d6cf3b6a1669052940385e41d
2015-03-17 16:08:43 -07:00
Tor Norbye
da81fa569e Merge "Add resource type annotations to some APIs" 2015-03-16 21:20:31 +00:00
Alan Viverette
3808227615 Add single-arg TextView.setTextAppearance, deprecate two-arg method
The text appearance should always be inflated against the TextView's
original inflation context.

Change-Id: Id9fd219d83bbe76e19b4d200a37ef4240665bfcd
2015-03-16 09:41:30 -07:00
Tor Norbye
417ee5ba89 Add resource type annotations to some APIs
Change-Id: I37c8afdaea455aa92bc8270bb2dfd60616c5f9bc
2015-03-13 11:20:45 -07:00
Dianne Hackborn
484bc6e5a7 Merge "More work on collecting assist data." 2015-03-13 16:41:29 +00:00
Dianne Hackborn
a83ce1dd2a More work on collecting assist data.
Optimize parceling of AssistData (which is now renamed to
AssistStructure) by pooling duplicated class name strings.

Change text associated with a view node to a CharSequence,
so styling information comes along.

Include global text attributes -- size, colors, etc.

Introduce a new AssistContent structure, which allows us
to propagate information about the intent and data the
activity is looking at.  This further allows us to propagate
permission grants, so the assistant can dig in to that data.
The default implementation propagates the base intent of an
activity, so if for example you bring up the assistant while
doing a share the assistant itself has the same information
and access that was given to the share activity (so it could
for example share it in another way if it wanted to).

Did some optimization of loading PersistableBundle from xml,
to avoid duplicating hash maps and such.

Changed how we dispatch ACTION_ASSIST to no longer include
the more detailed AssistStructure (and new AssistContent)
data when launching; now the example code that intercepts
that needs to be sure to ask for assist data when it starts
its session.  This is more like it will finally be, and allows
us to get to the UI more quickly.

Change-Id: I88420a55761bf48d34ce3013e81bd96a0e087637
2015-03-12 17:07:51 -07:00
Marco Nelissen
a80ac05f85 resolved conflicts for merge of 42f55d1e to master
Change-Id: I9c26861c5b0e26bb55e50b2133b7561348a01aec
2015-03-12 16:17:45 -07:00
Roozbeh Pournader
4f831caa49 Merge "Fix negative touch word offset that caused crashing when selecting text" 2015-03-12 21:45:22 +00:00
Mady Mellor
27d6b97f63 Fix negative touch word offset that caused crashing when selecting text
Previously the offset between the touch event and the start / end of
the word could result in a negative value - we don't care or want
this value to be negative. The negative value also causes the returned
offset to be outside the bounds of the text which resulted in a crash.

Bug: 19705184
Change-Id: I4287df7778c246dd10654f1a1f1e57538e940730
2015-03-12 19:24:26 +00:00
Clara Bayarri
f84a9724f1 Move the "Replace" popup option to the Text Selection ActionMode.
As a first step in unifying the cut/copy/paste ActionMode in Editor
with the paste/replace popup, I'm moving the replace option to
the CAB ActionMode. Paste is already there, so for now all options
are together.

Missing things to address in upcoming CLs:
- Invoke the ActionMode in all cases where the popup shows up now,
ensuring only the options that are currently available show up.
- Get rid of the current popup
- Make the ActionMode a floating toolbar (pending feature completion)
- Define a keyboard shortcut for replace?

Note that since the ActionMode still shows up in the ActionBar and
replace has no icon it now appears as text and takes up lots of
space. This will improve when we can switch to using a floating
toolbar.

Change-Id: Ib6b60bae9b58e4db96b9c4cee556e19d3f1bb466
2015-03-12 10:31:11 +00:00
Alan Viverette
1130363f18 Merge "Various fixes for popup monkey testing" 2015-03-11 21:04:28 +00:00
Alan Viverette
8fd949e680 Various fixes for popup monkey testing
Ensures PopupMenu works correctly when multiple calls are made to show
and dismiss. Ensure PopupWindow works correctly when multiple calls are
made to showAsDropDown and dismiss (fixes multiple clicks on Spinner).

Bug: 19672907
Bug: 19671831
Change-Id: Ib92accd8fd70a1ff1f8cda27155347b007a4d25b
2015-03-11 12:21:30 -07:00
Marco Nelissen
42f55d1e68 am a3d25d74: Merge "Fix context leak"
* commit 'a3d25d7489d7e071fb6db01b62ec9d925e1d493d':
  Fix context leak
2015-03-11 18:21:24 +00:00
Roozbeh Pournader
4cdeeadd42 Add a check for invalid spans being set by SpellChecker.
One of the exit conditions of the loop immediately above the code is
when a BreakIterator finishes its input and emits BreakIterator.DONE,
which we were then mistakenly then using as a parameter for setting
spans.

Bug: 12936072
Bug: 5555929
Change-Id: Ib4aba113f2e7838cd040076160c1dd0fb90adb1a
2015-03-11 11:09:34 -07:00
Marco Nelissen
926ebb860a Fix context leak
Using an activity context with AudioManager could cause that context
to be held on to longer than desired, for example if the caller
acquired audio focus but never abandoned it. Fix acquire/abandon in
VideoView, and use the application context in AudioManager to mitigate
the issue for other misbehaving code.

Bug: https://code.google.com/p/android/issues/detail?id=152173
Change-Id: I0fb8390207422c784800dda25b1f2c03d4574bcd
2015-03-11 10:00:28 -07:00
Chris Craik
f6829a0a61 Remove HardwareCanvas
Change-Id: I239646a7f00f09d3f76fe6b6162eed86bc0d6e77
2015-03-10 14:56:11 -07:00
James Cook
2a914cb3ae Merge "Handle undo in TextView fields with no cursor" 2015-03-10 17:42:48 +00:00
James Cook
900185d003 Handle undo in TextView fields with no cursor
This fixes a rare crash in the undo system. In particular, if the
TextView did not have a cursor and the first operation was a
programmatic insert/append the "old cursor position" would be -1.
Attempting to undo would try to restore the cursor to -1 and crash.

Test will land separately in CTS.

Bug: 19332904
Change-Id: I9aa18c1e3621b99d13ac707e483154382effb81c
2015-03-10 10:25:26 -07:00
Alan Viverette
7d6bc4f022 Merge "Revert RelativeLayout's baseline view to API 22 and below behavior" 2015-03-10 17:19:53 +00:00
Roozbeh Pournader
d1eca77c3c Merge "Fix: Drag handles are not shown for selection/insertion" 2015-03-10 01:06:03 +00:00
Alan Viverette
0e14a85768 Revert RelativeLayout's baseline view to API 22 and below behavior
The previous behavior used the top-start-most view, rather than the view
with the bottom-most baseline. Which doesn't really make sense, but
that's what it did.

Bug: 19653790
Change-Id: Ia23476f1d2de5313fd82aac037e90d45b0af8972
2015-03-09 18:01:19 -07:00
Scott Kennedy
6c4c58d6d9 Merge "Add more @Nullable annotations" 2015-03-07 01:34:49 +00:00
Scott Kennedy
ed2b5f8aca Add more @Nullable annotations
Change-Id: I5b2935eb5e63289d80ebf9bf70741800b1c0934a
2015-03-06 17:24:58 -08:00
Yigit Boyar
0c7ffe4418 Merge "Remove original movements record from GridLayout" 2015-03-07 00:09:31 +00:00
Tor Norbye
c0a1b7f9a6 Merge "Annotate ARGB integer parameters with @ColorInt" 2015-03-06 23:15:27 +00:00
Scott Kennedy
1592f98973 Merge "Allow attrs to be @Nullable in TextView and LinearLayout" 2015-03-06 18:45:25 +00:00
James Cook
f7e503de70 Merge "Support undo of some programmatic TextView changes" 2015-03-06 15:42:06 +00:00
Scott Kennedy
3a1fa10e13 Allow attrs to be @Nullable in TextView and LinearLayout
Change-Id: I46ac6cddf010e7ce59de6272c30e824104e28acb
2015-03-05 19:15:11 -08:00
Tor Norbye
80756e3888 Annotate ARGB integer parameters with @ColorInt
Change-Id: I307f72a382272cf18ddb6b07d9fcb81228568d9a
2015-03-05 16:34:12 -08:00
Yigit Boyar
38d909a57d Fix build. getAlingment should not be public
Change-Id: I4abde1ddc78367795601215106388d6eb535cbca
2015-03-05 22:40:06 +00:00
Yigit Boyar
fbd9997e68 Remove original movements record from GridLayout
Change-Id: Iebb761d0195b9d123dada1262090a71c4c175c5e
2015-03-05 22:20:12 +00:00
Yigit Boyar
6dafd87fb4 Fix some weight bugs in grid layout
This CL also changes how GONE views are considered.
Previously, they would still participate in weight calculations.
Now, they are ignored.

Bug: 19546781

Sub bugs:

Bug: 19571249
Bug: 19571653
Bug: 19571319
Bug: 19571841
Change-Id: I7344f757d3a76be98bb92660f07d2a0cafa9ac12
2015-03-05 22:01:14 +00:00
Mady Mellor
138bc2f37b Merge "Text selection changes - smart handles & drag accelerator" 2015-03-05 15:15:26 +00:00
James Cook
48e0fac6c2 Support undo of some programmatic TextView changes
Applications can use TextWatcher.afterTextChanged() to implement
post-edit formatting of text, such as inserting spaces in a credit
card number. From the user's perspective, the insertion of the spaces
is not a separate action, so that change should be merged with the
previous undo operation.

* Force merge undo states for edits that are triggered by callbacks
  after the InputFilter, such as TextWatchers.
* Reset the undo state when the whole field is reset with setText().
* Create separate undo operations for direct programmatic changes to
  the Editable (e.g. directly calling insert).
* Remove part of the non-forced replacement edit merging code. An
  improved version will land in the next CL.

Bug: 19332904
Change-Id: Iba5366a5aadbe3534554b668f8d417250deff505
2015-03-03 14:32:44 -08:00
Chris Craik
4939e2bf36 Merge "Improve docs for drawable tint and color filters" 2015-03-03 16:46:48 +00:00
Chris Craik
bd3bfc5285 Improve docs for drawable tint and color filters
bug:19564477
Change-Id: I7e11baae2d4dd245965904c85b8855de71f6b6ac
2015-03-02 16:21:02 -08:00
Alan Viverette
445e1c5ddd Merge "Improve handling of activity destroy during popup exit animation" 2015-03-02 22:24:25 +00:00
Alan Viverette
df4639a013 Improve handling of activity destroy during popup exit animation
Ensures the decor view isn't double-removed and that we don't try to
dereference a null anchor view.

Bug: 19553353
Bug: 19551371
Change-Id: I191a41f9065b68e49d66f96794cb7456f79d2d34
2015-03-02 12:40:34 -08:00