History log of /frameworks/base/core/java/android/widget/TextView.java
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
71175f727bc1e094e72a410aca62392badffbf11 29-Nov-2012 Fabrice Di Meglio <fdimeglio@google.com> Merge "Fix bug #7621927 Radio button/TextView drawable regression in 4.2" into jb-mr1.1-dev
b878ddb56ec4e755706890110d76735176ff2295 28-Nov-2012 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #7621927 Radio button/TextView drawable regression in 4.2

- as we remove the 9 patch padding trick, we need also to do the correct
positioning of the radio / checkbox / star during draw

Change-Id: I02b67bef9c0f2dc1c0c65361de14ab20ce9b881d
/frameworks/base/core/java/android/widget/TextView.java
4d931acdb85df1f9d1577cf05686601a6c2fb4cc 20-Nov-2012 Fabrice Di Meglio <fdimeglio@google.com> Merge "Fix for bug #7417949 TextView / EditText error Drawable is not put on the left in RTL mode" into jb-mr1.1-dev
8701bb90db889c4731ed15c6588854870f34cdd4 15-Nov-2012 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #6638582 Password fields appears RTL in Arabic locale , it should be LTR

- change heuristic to LTR.

Change-Id: I3c5f413e48ceddbd931d713eb8c168431fcd09a2
/frameworks/base/core/java/android/widget/TextView.java
bb0cbae441f04c052dd1a73448ae58fbffaca65d 14-Nov-2012 Fabrice Di Meglio <fdimeglio@google.com> Fix for bug #7417949 TextView / EditText error Drawable is not put on the left in RTL mode

- keep the Error Drawable infos into the Drawables cache
- reset left/right Drawable state before resolving where to put the Error Drawable
- get the mirrored Drawable for the Error popup background
- set the Error popup position depending on the layout direction (so that the "triangle"
of the background is pointing to the middle of the Error icon)

One restriction: we load the Error popup background Drawable corresponding to the layout
direction of the System Locale. So if you set the Layout direction on a TextView (or
an EditText) to RTL and set an error to it when you are in a RTL System Locale, then you
see that the background "triangle" is not pointing to the Error icon. This is working as
intended as the AssetManager load the Drawable resource depending on the configuration
which is in that case the RTL one thus loading the RTL version of the background (and not
the LTR one).

Thus there can be a discrepancy between the "layout direction" of the TextView
and the one from the Error popup background. This would happen only thru using the SDK and
not in a normal case when running an App.

Change-Id: I91bbfbe46ac20efe0e585c5d4c766db23b5c709d
/frameworks/base/core/java/android/widget/TextView.java
72bba588079e17eb425c4926d22ffcf301693bab 05-Nov-2012 Svetoslav Ganov <svetoslavganov@google.com> TextView not respecting "speak passwords" setting when adding before text to events.

1. If the speak passwords settings is on, the accessibility events emitted from a
TextView should contain the text and before text of the source. The settings
shows the users consent to put the source's text in the event. While the code
that populates the current text in the accessibility event respects the
setting, the one that populates the before text does not. As a result the
fact that the user has typed a letter cannot be echoed by an accessibility
service.

bug:7468768

Change-Id: I7580c37936d742f42653315b2591e268a634d22b
/frameworks/base/core/java/android/widget/TextView.java
1957d281ea123e4925e51fa5ad22ce239ef2a07d 26-Oct-2012 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #7419054 TextView Drawables resolution is broken in RTL mode

- check layout direction previous value in the onResolveDrawables(int) callback
- dont do any Drawables resolution if we cannot resolve the layout direction
- also remove unnecessary call to resolveRtlPropertiesIfNeeded() in ViewGroup when
adding a child as the call to resolveRtlPropertiesIfNeeded() will be done into
the measure() call itself later

Change-Id: I62237af3d307dfea203f7f2865551d1c61a0e0b8
/frameworks/base/core/java/android/widget/TextView.java
8b17969c64b5d8749b901784b61dc7c165ee98be 16-Oct-2012 Raph Levien <raph@google.com> Fix for bug 7358703 Gmail ANR when trying to compose a message

When deferring scroll to a point, it's possible the text changed between
the time the scroll was requested to the time layout happens. In this
case, it attempts to scroll to a point past the end of the text buffer,
which created an infinite loop.

This patch clamps the scroll offset to the length of the text, so it
just scrolls to the end in that case, rather than crashing.

Change-Id: I53740d119d588560f5a4d9fb80e38f7057faab89
/frameworks/base/core/java/android/widget/TextView.java
f5c1a8798f3a2e4196473fb1328159bd8297f178 16-Oct-2012 Raph Levien <raph@google.com> Fix for bug 7344916 text view flickers when you hit enter

The flickering was caused by trying to scroll to the cursor position
while the view was in an inconsistent state (text updated to change the
number of lines, but layout not done yet). This patch defers the actual
setting of the cursor until layout is done, when layout is pending.

Change-Id: I8ed3a402beb8058ac7a7f3935afeb946a23308ab
/frameworks/base/core/java/android/widget/TextView.java
84ebb35f392478600ddf8f08107fb345f13ef91c 12-Oct-2012 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #7334966 Padding is still broken in RTL languages

- do correct resolution and reset propagation for all RTL properties (padding and drawables included)
- fix CheckedTextView padding too

Change-Id: Ie603683a2324b2a6ef2c03633d01d5726c883b90
/frameworks/base/core/java/android/widget/TextView.java
1eac6b7b0554eb126d113e49009208a1da5f23d9 09-Oct-2012 Satoshi Kataoka <satok@google.com> Don't update the text services locale in the main thread

This is a revised version of I9f8a81d3c9261a6cfc00292b9f5cb06053b9112d

Bug: 6761326
Change-Id: I43a0a65df6e4b6941bd0dca548c4af20b7e5bf58
/frameworks/base/core/java/android/widget/TextView.java
72fa0b35c522e833f4d9fb4282e334d103819c73 10-Oct-2012 Ken Wakasa <kwakasa@google.com> Revert "Don't update the text services locale in the main thread"

This reverts commit 8fa0838bf82f43acfabc0e7fe9471e488a97796b

Change-Id: Ie790ae6dcb33d05d1fbf86c8ef28aec6fe60793a
/frameworks/base/core/java/android/widget/TextView.java
8fa0838bf82f43acfabc0e7fe9471e488a97796b 09-Oct-2012 Satoshi Kataoka <satok@google.com> Don't update the text services locale in the main thread

Bug: 6761326
Change-Id: I9f8a81d3c9261a6cfc00292b9f5cb06053b9112d
/frameworks/base/core/java/android/widget/TextView.java
343e11345ed496003f605e1b3bba5850d3e6cf0e 29-Sep-2012 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #6427629 Clean up layout direction APIs

- remove onPaddingChanged(int) and fold it into onRtlPropertiesChanged(int)

Change-Id: I1d7f02d2b4538c6c991bd4285501bbc73e6aa5c3
/frameworks/base/core/java/android/widget/TextView.java
1a7d487380460b4aea37140baf6bf4bf7f92f8a5 24-Sep-2012 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #6427629 Clean up layout direction APIs

- rename getResolvedTextAlignment() to getTextAlignment()

Change-Id: I6a2b6c9ec4f5cea1adde46e35d5f3c49880791ee
/frameworks/base/core/java/android/widget/TextView.java
97e146cf02f87b91f81c37d53644e5415efddb72 24-Sep-2012 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #6427629 Clean up layout direction APIs

- rename getResolvedTextDirection() to getTextDirection()

Change-Id: Id2a6025daf5521dcd676e454fc6bb9955fdccf2d
/frameworks/base/core/java/android/widget/TextView.java
e56ffdc7b31b0937628609cc3bbaa15879023569 23-Sep-2012 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #6427629 Clean up layout direction APIs

- rename getResolvedLayoutDirection() to getLayoutDirection()

Change-Id: I3afe56c0db0751952f5056c23893cb7455531d29
/frameworks/base/core/java/android/widget/TextView.java
4457e85a7090ad51726d50a4daf981d917cceedd 19-Sep-2012 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #6427629 Clean up layout direction APIs

- canResolveXxx() should be hidden
- resetResolvedXxx() should be hidden
- resolveDrawables(), resolveLayoutDirection(), resolvePadding(), resolveTextAlignment(), resolveTextDirection() should be hidden
- onResolvedXxx() should be merged into one callback
- fix also an issue with setting the layout direction of the drawable in ImageView
- fix also an issue with checking if TextAlignment can be resolved

Change-Id: I1402269ddf8632525f5550f80e5610e1a7b4034d
/frameworks/base/core/java/android/widget/TextView.java
f6aa537c2dddfa9c68af161c082b5d4f316bd068 07-Sep-2012 Fabrice Di Meglio <fdimeglio@google.com> Merge "Make ProgressBar / SeekBar / RatingBar widgets aware of layout direction" into jb-mr1-dev
2f4bf52d2ca1500c77b42e76f30f81f806fb6189 07-Sep-2012 Svetoslav Ganov <svetoslavganov@google.com> Granular navigation not possible in edit text if the view has content description.

1. We were giving precedence of content description over text and this is
what content description is supposed to do - override the text. However,
putting content description on an EditText by mistake would render the
text view not navigable which is pretty much unusable. Now we are giving
precedence to the text and use the content description as a fall back if
text is empty.

bug:7078382

Change-Id: I00882ace149344478b127124bd5e641903e1b756
/frameworks/base/core/java/android/widget/TextView.java
0af4b8b0c8b038bca9b4f60eb81f71e186f471ce 12-Jun-2012 Fabrice Di Meglio <fdimeglio@google.com> Make ProgressBar / SeekBar / RatingBar widgets aware of layout direction

- see bug #5429822 UI should be mirrored for RTL locales (Arabic, Hebrew, farsi)

Change-Id: I8d76299090abf6b2b187696b1a83e71d7a44b1ce
/frameworks/base/core/java/android/widget/TextView.java
fa1babd22105416e8f3d0988d46982d0313da63c 05-Sep-2012 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #7023040 android.widget.cts.TextViewTest#testResetTextAlignment failures

- cache the text aligment as we cannot resolve the text alignment during reset of the text direction

Change-Id: I79de625e517bf8bad6313fd5e349f1181b1eaa30
/frameworks/base/core/java/android/widget/TextView.java
df8ef4b139a8918895f8a5c62536123da06e81fe 18-Aug-2012 Victoria Lease <violets@google.com> DO NOT MERGE LocaleSpan makes Han disambiguation easy!

Cherry-pick of I7f1b0d49a2ece957a7b9b5d65d48385bf2c2a668 from master.

I've also provided TextView.setTextLocale() for use in single-language
TextViews.

Change-Id: I5692859bfd2aafc284172454d943afc250b22535
/frameworks/base/core/java/android/widget/TextView.java
7d6f6c938cd99b42ce3355c291d32216ae83ae8f 26-Jul-2012 Fabrice Di Meglio <fdimeglio@google.com> Make TextView Marquee RTL-aware

- fix bug #6870530

Change-Id: Icd8aae19136cfd49ee475d26749978463e7f7f77
/frameworks/base/core/java/android/widget/TextView.java
49ccb116e9f2f3cf1233738c931f3e620287afc4 12-Jun-2012 Victoria Lease <violets@google.com> am 1b15102f: am 72b8fc7e: Merge "Revert "Fix fake bold for fallback fonts in frameworks."" into jb-dev

* commit '1b15102fc040f59c72c6453dee15b791f54c9f06':
Revert "Fix fake bold for fallback fonts in frameworks."
aa0980afab57a6aebb06e70f60e92511708fa5af 11-Jun-2012 Victoria Lease <violets@google.com> Revert "Fix fake bold for fallback fonts in frameworks."

This reverts commit b26fa0ce68d3311b2fdffb930b27d897e481dd5a
/frameworks/base/core/java/android/widget/TextView.java
c3672a4e19d3a0063c6d467453e9d7e03b2c1d2f 09-Jun-2012 Victoria Lease <violets@google.com> am 2203fab2: am 2e6f9be5: Merge "Fix fake bold for fallback fonts in frameworks." into jb-dev

* commit '2203fab24966c80af5c37f0a58263218dbbcd610':
Fix fake bold for fallback fonts in frameworks.
b26fa0ce68d3311b2fdffb930b27d897e481dd5a 08-Jun-2012 Victoria Lease <violets@google.com> Fix fake bold for fallback fonts in frameworks.

This change is analogous to Ic0e9f1bbd8cae9fdd3a6d1d015bb9224c8be545c
in WebView, and depends upon the same Skia change that that CL makes
use of.

This flips the "fake bold" flag on for bold fonts in
TextView.setTypeface(), with the expectation that Skia will ignore
the flag if the final typeface used to render the glyphs is already
bold. It also does the same for StyleSpans, TextAppearanceSpans,
TypefaceSpans, and the Switch widget.

With this, fake bold should work uniformly across all scripts - if
fake bold works for a primary typeface, it should also work for all
fallback typefaces.

Bug: 6629786
Change-Id: Id3b8639ab0df83052ffd82809cb12adaacc1d46b
/frameworks/base/core/java/android/widget/TextView.java
3eaf181f964590be06fa99af5d41ffb2d0a18654 07-Jun-2012 Gilles Debunne <debunne@google.com> am 11c15cfb: am 78c6aeef: Merge "Fixed cast exception with selectable text." into jb-dev

* commit '11c15cfb4e48c53bcaf648c82de12707d6e479ba':
Fixed cast exception with selectable text.
857c341dfe36324fb32d7debc06d536cd8a9add1 07-Jun-2012 Gilles Debunne <debunne@google.com> Fixed cast exception with selectable text.

Bug 6550358

The EditText constructor now calls setTextIsSelectable, which uses
getText where the cast exception happens because the EditText is not
yet fully built and its text does not have the right type.

Fixed by using mText directly instead of getText().

Change-Id: I52a2720ae99475881f210ac74464728cab92147e
/frameworks/base/core/java/android/widget/TextView.java
b03b434089cf2106c467b2827a65e5c589c91d01 04-Jun-2012 Fabrice Di Meglio <fdimeglio@google.com> Revert "Revert "Clean up layout direction APIs for Drawable""

This reverts commit c96132ff53e5c26f5b0170edd85072006fb2bc70
/frameworks/base/core/java/android/widget/TextView.java
c96132ff53e5c26f5b0170edd85072006fb2bc70 02-Jun-2012 Jean-Baptiste Queru <jbq@google.com> Revert "Clean up layout direction APIs for Drawable"

This reverts commit c1da65187a4b9de8f72bd617ef937030187c0a92.
/frameworks/base/core/java/android/widget/TextView.java
78068825416a4a0f3b2fdf57491ba4932c2bb6c4 01-Jun-2012 Fabrice Di Meglio <fdimeglio@google.com> Merge "Clean up layout direction APIs for Drawable"
c1da65187a4b9de8f72bd617ef937030187c0a92 01-Jun-2012 Fabrice Di Meglio <fdimeglio@google.com> Clean up layout direction APIs for Drawable

- see bug #6427629

Change-Id: I3119db3022bba0ee325b6d0d4471bfebd850ec10
/frameworks/base/core/java/android/widget/TextView.java
3b6a3f004f7edf88949ed916f01b77573cd33da0 31-May-2012 Fabrice Di Meglio <fdimeglio@google.com> am 875713c6: am f053e236: Merge "Fix bug #6567507 [Bidi] - Cursor is sometimes not visible on EditText" into jb-dev

* commit '875713c6886a5b24fff3a2ce36eb95bc9446e749':
Fix bug #6567507 [Bidi] - Cursor is sometimes not visible on EditText
f053e2367d4859adf9488bd1712bdbe8f647eeb8 31-May-2012 Fabrice Di Meglio <fdimeglio@google.com> Merge "Fix bug #6567507 [Bidi] - Cursor is sometimes not visible on EditText" into jb-dev
0ed59fae6fc85c2c4a223d3be88b79cf797908ab 30-May-2012 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #6567507 [Bidi] - Cursor is sometimes not visible on EditText

- take the hint layout primary horizontal offset if needed

Change-Id: Ib5c4dd990278e1fd8bb9ba4f4b6940a62dba91e3
/frameworks/base/core/java/android/widget/TextView.java
b616547cd5915793ebb5f7b85e815895c54b1d93 30-May-2012 Svetoslav Ganov <svetoslavganov@google.com> am 378aa011: am a5c896af: Merge "Updating the behaviour of accessibility text iterators." into jb-dev

* commit '378aa011d5f989166b62e9db6328a5881a1a73a0':
Updating the behaviour of accessibility text iterators.
a5c896afe89aaf40166343232d85980b94974032 30-May-2012 Svetoslav Ganov <svetoslavganov@google.com> Merge "Updating the behaviour of accessibility text iterators." into jb-dev
39f2aee640eea62b43fa79f28dec3a962e5cb065 29-May-2012 Svetoslav Ganov <svetoslavganov@google.com> Updating the behaviour of accessibility text iterators.

1. Iterators were skipping content on reversing direction.

2. The cursor was positioned at the beginning of the next text segment
when moving forward and at end of the previous text segment when moving
backwards. This is incorrect and now the cursor is positioned at the
end of the segment when moving forward and at the beginning when moving
backward.

3. The cursor position was not properly set when reaching the end/start
of the text.

4. The iterators were reporting strictly the next/previous segment even
if the cursor is within such a segment. Thus, when traversing some
content may be skipped. Now moving forward moves the selection to
the next segment end and the start position is either the old index
if it was within a segment or the start of the segment. Same in
reverse.

bug:6575099

Change-Id: Ib48a649cec53910339baf831a75e26440be6e576
/frameworks/base/core/java/android/widget/TextView.java
5284148f28d25f69bae3f34037f65275edaa0186 24-May-2012 satok <satok@google.com> am 77f79a39: am f927e17a: Use correct spell check locale

* commit '77f79a39c0e6aa540f8204adb39ec6671ee053e7':
Use correct spell check locale
f927e17ae543b6edeae8200cc86c59c3ee740670 24-May-2012 satok <satok@google.com> Use correct spell check locale

Bug: 6542210
Change-Id: I414aa2321f30e396996d90fb8e90c1dbb3bb7b9e
/frameworks/base/core/java/android/widget/TextView.java
ce725cc1e209658132f7d269f13a9fa1eb7dbe74 22-May-2012 Svetoslav Ganov <svetoslavganov@google.com> am f7b8bbad: am de83e7aa: Merge "Make TextView respect ACCESSIBILITY_SPEAK_PASSWORD preference." into jb-dev

* commit 'f7b8bbadf50f313733dd89c5680f0ffc60f364bc':
Make TextView respect ACCESSIBILITY_SPEAK_PASSWORD preference.
7d62419c85dbf4fff1895e91d38edccf5d1f46ec 21-May-2012 alanv <alanv@google.com> Make TextView respect ACCESSIBILITY_SPEAK_PASSWORD preference.

Bug: 6523447
Change-Id: I2610b558395dc53a74b5c8c36c09673898da44f2
/frameworks/base/core/java/android/widget/TextView.java
39af624f3135328ec0550888e99f4350572634b5 19-May-2012 Dianne Hackborn <hackbod@google.com> DO NOT MERGE: Remove a few left-over layout direction things.

Change-Id: Id66b171594af939df4716aa0e0baa25fe47eecee
/frameworks/base/core/java/android/widget/TextView.java
72e15ceb85ecbe066c2ba33ca7e086dc511a8d23 18-May-2012 Svetoslav Ganov <svetoslavganov@google.com> am cefd97c8: am e54c5f13: Merge "Exposing some accessiblity actions only for enabled views." into jb-dev

* commit 'cefd97c8546d6dca184e8ac9589ab2ff1b795c06':
Exposing some accessiblity actions only for enabled views.
fb1e80a247221ee7e8f5c5deba04812021d9d07e 17-May-2012 Svetoslav Ganov <svetoslavganov@google.com> 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
/frameworks/base/core/java/android/widget/TextView.java
83492861b61ecd3fa7fdc4cec4db6e786638d4f6 15-May-2012 Gilles Debunne <debunne@google.com> am 8573c204: am 855f5407: Merge "Minor changes in SpellCheckSpan pool management in SpellChecker" into jb-dev

* commit '8573c204049d81d616616c6ed2ffd4629b051d59':
Minor changes in SpellCheckSpan pool management in SpellChecker
855f5407c74694ebd924b36738ecc79241c4becf 15-May-2012 Gilles Debunne <debunne@google.com> Merge "Minor changes in SpellCheckSpan pool management in SpellChecker" into jb-dev
24ef21aeebb247f5dd6de13aea878f3d7194143a 15-May-2012 Svetoslav Ganov <svetoslavganov@google.com> am e436812e: am 844047ac: Merge "Fix inconsitency in aAccessibilityNodeInfo cache." into jb-dev

* commit 'e436812e85f4a8da724f4fe36c1547a1b806f1f9':
Fix inconsitency in aAccessibilityNodeInfo cache.
844047acb7133c0b6b7128f19b76f93eaca9371e 14-May-2012 Svetoslav Ganov <svetoslavganov@google.com> Merge "Fix inconsitency in aAccessibilityNodeInfo cache." into jb-dev
e60a635919ce8f1f5d868d51a87d7fc5da4ddda0 14-May-2012 Adam Powell <adamp@google.com> am e48c70e4: am 7fc4fbcc: Merge "Automatic persistent text selection for ListViews" into jb-dev

* commit 'e48c70e4d9302795d5f02d352c7907302ca5c8b6':
Automatic persistent text selection for ListViews
c406be9036643ebe41bafcd94fe4aa861b4e4f4f 12-May-2012 Svetoslav Ganov <svetoslavganov@google.com> 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
/frameworks/base/core/java/android/widget/TextView.java
057a585fba01d92c38f27a8c080622dfd0c6f556 11-May-2012 Adam Powell <adamp@google.com> 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
/frameworks/base/core/java/android/widget/TextView.java
2ab65680466e2dc9018020f99c2681f30ef2e42d 11-May-2012 Raph Levien <raph@google.com> resolved conflicts for merge of a9cc30ce to master

Change-Id: I507bd7a4650f9a7bfe6a0ad7bb8dd4067adb6a8b
d570e8987ae50ee101c3d4cfa973e1a6b6ecc8f5 09-May-2012 Raph Levien <raph@google.com> Add fontFamily XML attribute to select font family by string

Change-Id: I0b649528d3d9888e3561a1a3907a6b6ee2e30238
/frameworks/base/core/java/android/widget/TextView.java
69865bd6860a97793a06523a48dfe6472e9b7562 09-May-2012 Gilles Debunne <debunne@google.com> Minor changes in SpellCheckSpan pool management in SpellChecker

Bug 6464190

The 'inProgress' flag is set to false when the SpellCheckSpan starts
to get used (instead of a less intuitive when it is removed).

Pool recycling in handled by onSpellCheckSpanRemoved, called from
the TextView's SpanWatcher, when a SpellCheckSpan is removed for any
reason (from the SC code or due to text editing).

The other change is that Sentence SC now correctly removes the span
from the text (and hence recycles it in the pool).

Change-Id: If8b433fd5e41d4dc0304a127ebcc088ea1eecaa7
/frameworks/base/core/java/android/widget/TextView.java
e92c4e029bc169e114b06ec494734992cb310ee3 09-May-2012 Gilles Debunne <debunne@google.com> am 4fcc9b49: am 2e999d12: Merge "Removed debug code in TextView" into jb-dev

* commit '4fcc9b49242e850008ea4966f741cdcecca0ae3f':
Removed debug code in TextView
4833ca2903e89eab93b353f00a1e4904a73d79bb 09-May-2012 Svetoslav Ganov <svetoslavganov@google.com> am 755b2146: am b2ee0d57: Merge "Text traversal at various granularities." into jb-dev

* commit '755b2146735c15deb0eb611430a7da1e363d82a1':
Text traversal at various granularities.
5fae996751f61fdddce0b11fa30b39fb6c5cb762 08-May-2012 Gilles Debunne <debunne@google.com> Removed debug code in TextView

Bug 6462527

The String parameter was used to debug code during the
refactoring process.

Change-Id: I49a78bbfa3b45c185311d0dbebddddc52515c099
/frameworks/base/core/java/android/widget/TextView.java
6d17a936f73976971135aa1e6248662533343292 28-Apr-2012 Svetoslav Ganov <svetoslavganov@google.com> Text traversal at various granularities.

1. Implementing text content navigation at various granularities.
For views that have content description but no text the
content description is the traversed at character and word
granularities. For views that inherit from TextView the
supported granularities are character, word, line, and page.

bug:5932640

Conflicts:

core/java/android/view/View.java

Conflicts:

core/java/android/view/View.java

Change-Id: I66d1e16ce9ac5d6b49f036b17c087b2a7075e4c0
/frameworks/base/core/java/android/widget/TextView.java
66388dcb09018933ccd1d38eae563f0890ba4f06 04-May-2012 Fabrice Di Meglio <fdimeglio@google.com> Hide RTL related APIs - DO NOT MERGE

- fix bug #6441155 API review: @hide RTL layout APIs

Change-Id: I13c5ea5f579cecffed9d517f06180ab0576cd26a
/frameworks/base/core/java/android/widget/TextView.java
f03acef0ab614fbd69eee606bb60434f9659259f 01-May-2012 Gilles Debunne <debunne@google.com> API fix in TextView

Bug 6104140

Change-Id: I44af54ac7c194335a649e5878ff47dc894fa46fe
/frameworks/base/core/java/android/widget/TextView.java
c54da1cef96454886967dfe72ed9873f23084b96 28-Apr-2012 Fabrice Di Meglio <fdimeglio@google.com> Add TextView textSize as a ViewDebug for hierarchyviewer

Change-Id: I6459d0d9cdb9fe6a81b3e30c56b64159fc729d52
/frameworks/base/core/java/android/widget/TextView.java
2d373a18345a5d0a5f8272833b6fdc8bfc4a91cd 21-Apr-2012 Gilles Debunne <debunne@google.com> TextView refactoring part 3: the easy

Removed safety net getEditor() method.
Cleaned-up trailing spaces.
Enforced the 100 characters limit on all lines.

Change-Id: I0e0d704f8b795cd2e2d040f31c20e63c60fa31a8
/frameworks/base/core/java/android/widget/TextView.java
0b7d747e900dd9e6e6f62f10772c2dded9b9d0c6 24-Apr-2012 Gilles Debunne <debunne@google.com> Merge "Editor uses a SpanWatcher to track EasyEditSpans"
c62589cbecef6e748bcc6c6f4ea6a8ff7656923f 12-Apr-2012 Gilles Debunne <debunne@google.com> Editor uses a SpanWatcher to track EasyEditSpans

Will also fix Bug 6344997

The previous TextWatcher mechanism was inneficient. It require an
expensive getSpans() call to retrieve all the spans and then search
for the one we're interested in in case it has been changed.

The SpanWatcher is faster, it will broadcast the add/changed/removed
events we're interested in.

Now that we can rely on SpanWatcher, use it to directly track
addition and removals of EasyEditSpans.

No unit test for this feature which require an integration with
the voice IME. Easy to test manually though.

Change-Id: Idabcacc48c479bf9868d5204c0b0ca709207ede2
/frameworks/base/core/java/android/widget/TextView.java
b983e27af47b6a3a6b13af0d3dd64b163f540efd 24-Apr-2012 Gilles Debunne <debunne@google.com> Merge "Re-added a flag to prevent the IME from showing"
1271e2cc80b01d577e9db339459ef0222bb9320d 20-Apr-2012 Chet Haase <chet@google.com> Remove USE_DISPLAY_LIST_PROPERTIES flag

This flag was still hanging around pending any need to disable
DisplayList properties. But things seem stable, so it's time to clean up
and simplify the code.

At the same time, I reduced redundance in DisplayList dimensions. We
used to call drawDisplayList() with width/height parameters that were
used to do a clip reject. This is redundant with the DisplayList properties
that set the bounds of the DisplayList; the left/right and top/bottom properties
represent the same width/height properties formerly used in drawDisplayList().
The new approach is to not pass dimensions to drawDisplayList(), but to
instead pull those dimensions directly from the DisplayList when needed.

Change-Id: I8871beff03b1d4be95f7c6e079c31a71d31e0c56
/frameworks/base/core/java/android/widget/TextView.java
3473b2b1f495f0f5a31e7ed687557c423c63abff 21-Apr-2012 Gilles Debunne <debunne@google.com> Re-added a flag to prevent the IME from showing

Revert of CL 161404

This flag will be used by the dialer. It prevents any IME from
showing as a result of a focus given to a TextView through a tap
or a D-Pad click.

Change-Id: Ifa5bfcbff124b300780f76dea443d26cf172f5e3
/frameworks/base/core/java/android/widget/TextView.java
ebc86af1dc186c77f723c8970951e8ff00b4866b 21-Apr-2012 Gilles Debunne <debunne@google.com> Visible spans changes only invalidate the affected text sub display lists

When a span with a visible influence on the text is modified, we only
need to invalidate the text sub display lists that overlap this span.

This is especially useful when typing and the composing span (an underline
span) gets updated after each key stroke.

Change-Id: Ib2af3219c41eb79ec5d0a2eee317aca8c4efdef9
/frameworks/base/core/java/android/widget/TextView.java
4213804541a8b05cd0587b138a2fd9a3b7fd9350 20-Mar-2012 Svetoslav Ganov <svetoslavganov@google.com> Accessibility focus - framework

Usefulness: Keep track of the current user location in the screen when
traversing the it. Enabling structural and directional
navigation over all elements on the screen. This enables
blind users that know the application layout to efficiently
locate desired elements as opposed to try touch exploring the
region where the the element should be - very tedious.

Rationale: There are two ways to implement accessibility focus One is
to let accessibility services keep track of it since they
have access to the screen content, and another to let the view
hierarchy keep track of it. While the first approach would
require almost no work on our part it poses several challenges
which make it a sub-optimal choice. Having the accessibility focus
in the accessibility service would require that service to scrape
the window content every time it changes to sync the view tree
state and the accessibility focus location. Pretty much the service
will have to keep an off screen model of the screen content. This
could be quite challenging to get right and would incur performance
cost for the multiple IPCs to repeatedly fetch the screen content.
Further, keeping virtual accessibility focus (i.e. in the service)
would require sync of the input and accessibility focus. This could
be challenging to implement right as well. Also, having an unlimited
number of accessibility services we cannot guarantee that they will
have a proper implementation, if any, to allow users to perform structural
navigation of the screen content. Assuming two accessibility
services implement structural navigation via accessibility focus,
there is not guarantee that they will behave similarly by default,
i.e. provide some standard way to navigate the screen content.
Also feedback from experienced accessibility researchers, specifically
T.V Raman, provides evidence that having virtual accessibility focus
creates many issues and it is very hard to get right.
Therefore, keeping accessibility focus in the system will avoid
keeping an off-screen model in accessibility services, it will always
be in sync with the state of the view hierarchy and the input focus.
Also this will allow having a default behavior for traversing the
screen via this accessibility focus that is consistent in all
accessibility services. We provide accessibility services with APIs to
override this behavior but all of them will perform screen traversal
in a consistent way by default.

Behavior: If accessibility is enabled the accessibility focus is the leading one
and the input follows it. Putting accessibility focus on a view moves
the input focus there. Clearing the accessibility focus of a view, clears
the input focus of this view. If accessibility focus is on a view that
cannot take input focus, then no other view should have input focus.
In accessibility mode we initially give accessibility focus to the topmost
view and no view has input focus. This ensures consistent behavior accross
all apps. Note that accessibility focus can move hierarchically in the
view tree and having it at the root is better than putting it where the
input focus would be - at the first input focusable which could be at
an arbitrary depth in the view tree. By default not all views are reported
for accessibility, only the important ones. A view may be explicitly labeled
as important or not for accessibility, or the system determines which one
is such - default. Important views for accessibility are all views that are
not dumb layout managers used only to arrange their chidren. Since the same
content arrangement can be obtained via different combintation of layout
managers, such managers cannot be used to reliably determine the application
structure. For example, a user should see a list as a list view with several
list items and each list item as a text view and a button as opposed to seeing
all the layout managers used to arrange the list item's content.
By default only important for accessibility views are regared for accessibility
purposes. View not regarded for accessibility neither fire accessibility events,
nor are reported being on the screen. An accessibility service may request the
system to regard all views. If the target SDK of an accessibility services is
less than JellyBean, then all views are regarded for accessibility.
Note that an accessibility service that requires all view to be ragarded for
accessibility may put accessibility focus on any view. Hence, it may implement
any navigational paradigm if desired. Especially considering the fact that
the system is detecting some standard gestures and delegates their processing
to an accessibility service. The default implementation of an accessibility
services performs the defualt navigation.

bug:5932640
bug:5605641

Change-Id: Ieac461d480579d706a847b9325720cb254736ebe
/frameworks/base/core/java/android/widget/TextView.java
acb69bb909d098cea284df47d794c17171d84c91 14-Apr-2012 Dianne Hackborn <hackbod@google.com> Add direct support for HTML formatted text in ClipData etc.

When using the clipboard, ACTION_SEND, etc., you can now supply
HTML formatted text as one of the representations. This is exposed
as a set of methods on ClipData for building items with HTML
formatted text, and retrieving and coercing to HTML (and styled)
text. In addtion, there is a new EXTRA_HTML_TEXT for interoperating
with the old ACTION_SEND protocol.

Change-Id: I8846520a480c8a5f829ec1e693aeebd425ac170d
/frameworks/base/core/java/android/widget/TextView.java
9da0f8a5c4bccf8e722ae2ebf43873457aec3271 14-Mar-2012 Fabrice Di Meglio <fdimeglio@google.com> Add View textAlignment

- fix bug #6163772
- use bits field and pack them as much as possible
- take care of "supportsRtl" flag from Manifest
- add visual unit tests

CTS unit tests in another CL

Change-Id: Ib77c4eb423854209af130688c5ef9977401a9c1c
/frameworks/base/core/java/android/widget/TextView.java
db8c9a6a4d9bf8c39f834b25611926caf21380f6 22-Mar-2012 Chet Haase <chet@google.com> Optimization of alpha with DisplayList properties

Some views (such as ImageView and TextView) handle non-opaque alpha
values directly. This was originally an optimization, but we can handle it faster
in many cases without this optimization when DisplayList properties are enabled.
Basically, if a view has non-overlapping rendering, we set the alpha value directly
on the renderer (the equivalent of setting it on the Paint object) and draw each
primitive with that alpha value. Doing it this way avoids re-creating DisplayLists
while getting the same speedup that onSetAlpha() used to get pre-DisplayList properties.

Change-Id: I0f7827f075d3b35093a882d4adbb300a1063c288
/frameworks/base/core/java/android/widget/TextView.java
d88876a72f9ceebd2c93eb9ba1be4bcff971e754 17-Mar-2012 Gilles Debunne <debunne@google.com> Extracted text editing logic in a separate class

Editor specific method and fields are extracted to a dedicated Editor class.

Some private fields and methods had to be made package private so that the
Editor can see them. No change in the public API.

Other changes in this CL:
- The Blink class no longer has a WeakReference to the TextView
- EasyEditSpanController is no longer a field of ChangeWatcher.

Future work:
remove the getEditor() method in TextView and
clean whitespaces and indentation.
remove the EasyEditSpanController as a change watcher, fix spanWatcher

Change-Id: I1fbe0176b6bd27d90f556dc3a90469367f77437c
/frameworks/base/core/java/android/widget/TextView.java
59075643acedd38e324746083e2c59f69c0b9e56 28-Mar-2012 Gilles Debunne <debunne@google.com> Merge "Handle non DynamicLayout in Editable draw method."
0711047af71a31568f7a49f078e9f46ef5af84aa 28-Mar-2012 Gilles Debunne <debunne@google.com> Handle non DynamicLayout in Editable draw method.

An Editable text will use a BoringLayout when the text is empty.
Fallback on the regular layout draw text method when the layout
does not support the block optimisation.

Change-Id: Ie4bdb4381f2f58b71d7c35b2f5734e544e3115ea
/frameworks/base/core/java/android/widget/TextView.java
4cb85f6ad6f6ff4428aa2c5179b6d62741be7aa9 28-Mar-2012 Gilles Debunne <debunne@google.com> Moving focus on text should not create an Editor

Bug 6241159.

onCreateInputConnection should not create an Editor but instead
should return an input connection iff the text is editable.

Change-Id: Ie9ea55b2467f5a40e6243b36f9b44fa6dfab586f
/frameworks/base/core/java/android/widget/TextView.java
b85967b9af76e1e60f7a96603e2567a6449d2e04 26-Mar-2012 Chet Haase <chet@google.com> Re-enabling DisplayList properties

Several issues came up after DisplayList properties were enabled,
so they were disabled pending fixes. Those issues have been fixed, so
DisplayList properties are once again being enabled by default. This
CL both re-enables these properties (in View.java and DisplayListRenderer.h)
and fixes the various issues that enabling them caused the first time around.

Related issues (all currently marked as Fixed, though that was simply because
DL properties were disabled - this CL provides the real fixes now that
DL properties are enabled by default):
Issue #6198276 Text input broken
Issue #6198472 Native crash at pc 00076428 in many different apps in JRM80
Issue #6204173 Date/time picker isn't rendering all parts of UI
Issue #6203941 All Apps overscroll effect is rendered weirdly/has flickering
Issue #6200058 CAB rendering issue - not drawing items?
Issue #6198578 Front camera shows black screen after taking picture.
Issue #6232010 Layers not recreated when children change (DisplayList properties)

Change-Id: I8b5f9ec342208ecb20d3e6a60d26cf7c6112ec8b
/frameworks/base/core/java/android/widget/TextView.java
91889e2c86d863f74feee6de3cda739646483938 27-Mar-2012 Gilles Debunne <debunne@google.com> Merge "Update to TextView#didTouchFocusSelect documentation"
820ba323f9919d33aac5e999bd8daa7842d3969c 23-Mar-2012 Daniel Sandler <dsandler@android.com> Add remotable methods for TextView's compound drawables.

Change-Id: I67445e5b1d4a571020dfcd551ab00bd83a8eb536
/frameworks/base/core/java/android/widget/TextView.java
a4a26053ea91a90c824ef98f17552c34bd89207e 20-Mar-2012 Gilles Debunne <debunne@google.com> Disabled display lists in TextView

Bug 6198276, bug 6193544, bug 6199959

The activation of display list properties on Monday 19th
broke the editable text behovior.

Disabling display lists to fix the blocking rendering
issues.

Change-Id: I5bd0584d1a34c6bb0af79ef45499154e9004eac1
/frameworks/base/core/java/android/widget/TextView.java
053c439824fcf95d613aaca8d9b60aa77c9e8132 15-Mar-2012 Gilles Debunne <debunne@google.com> Update to TextView#didTouchFocusSelect documentation

Bug 6171333

Related to https://android-git.corp.google.com/g/#/c/173335/

Change-Id: Ib4a83b6b0a03579b28d7319c9eb92a4bca09d209
/frameworks/base/core/java/android/widget/TextView.java
33b7de85b6918b7714641f12f1ba2ff03a344740 12-Mar-2012 Gilles Debunne <debunne@google.com> Multiple display lists for editable text

Bug 5763685

Long text in a ScrollView (not when the View's internal
scroll is used) is cached as a unique display list when hardware
rendering is on.

As a result, each time the text is edited, the entire display
list has to be updated, which takes a significant amount of
time (up to 500ms for a few thousand lines), proportional to the
size of the text.

This CL splits the text into multiple display lists as the
text is edited. The boundaries of the display list are aligned
with paragraphs.

There is still an issue when the number of lines changes: onLayout()
is called which invalidates all the display list. When the source
of that change is line wrapping and not a change in the view's
dimensions, we should be able to simply shift down the previous DL
instead of re-creating everything.

Change-Id: I7de49a1e5637cdfc9ef06b64b1ec4b61d9ea2415
/frameworks/base/core/java/android/widget/TextView.java
a1cff5043d0fbd78fcf9c48e7658e56a5b0c2de3 21-Feb-2012 Chet Haase <chet@google.com> Handle view properties at the native level

Basic functionality of handling View properties (transforms,
left/right/top/bottom, and alpha) at the native DisplayList level.
This logic is disabled for now (via compile-time flags in View.java and
DisplayListRenderer.h) as we continue work on it (there is no advantage
to the new approach until we optimize invalidation and rendering paths
to use the new code path).

Change-Id: I370c8d21fbd291be415f55515ab8dced6f6d51a3
/frameworks/base/core/java/android/widget/TextView.java
d122d8eb3e92b47eb18aea1fc619cfd04e07b14b 10-Mar-2012 Gilles Debunne <debunne@google.com> Merge "Re-use the display list valid flag, save a boolean"
73ba0df14fedefe144808a2a43308811567875be 10-Mar-2012 Fabrice Di Meglio <fdimeglio@google.com> Merge "Make Drawable RTL APIs public"
06e1ec6462763a2f12ba5fb1c1c826bf393bfacd 10-Mar-2012 Fabrice Di Meglio <fdimeglio@google.com> Make Drawable RTL APIs public

- also optimize imports

Change-Id: I2649a539a5784293d09179981a5d57e900219246
/frameworks/base/core/java/android/widget/TextView.java
583fcb9175cd0c614f096db633d9e784ab7e1f54 09-Mar-2012 Romain Guy <romainguy@google.com> Merge "Dispatch screen state change events to Views Bug #6120957"
bb9908b828a8cfd5965553be66faa6af89973697 08-Mar-2012 Romain Guy <romainguy@google.com> Dispatch screen state change events to Views
Bug #6120957

Using this new callback, views can interrupt and resume their
animations or other periodic tasks based on the current state
of the display.

Change-Id: I398f4abd421e9c5f207107bf1009a7b92cf45daa
/frameworks/base/core/java/android/widget/TextView.java
bf923ebb250a112266bd9bcae106cb84f42b6f15 08-Mar-2012 Fabrice Di Meglio <fdimeglio@google.com> More fixes about padding

- take care of overridig setPaddingRelative() too in TextView subclasses

Change-Id: If2057247cfcac919d777846def4adfeb5a682d51
/frameworks/base/core/java/android/widget/TextView.java
0c245fb201aa28776586dc1ce4fc4fc281f894a7 08-Mar-2012 Fabrice Di Meglio <fdimeglio@google.com> Merge "Make more TextView RTL APIs public"
d159109bd88e290ffacce30aaff42b0a0c790709 08-Mar-2012 Fabrice Di Meglio <fdimeglio@google.com> Make more TextView RTL APIs public

- padding related APIs
- drawable related APIs

Change-Id: If926ba1658431f826153128553f1ff429275f948
/frameworks/base/core/java/android/widget/TextView.java
28ab0b5d0a15f9257fc08f9062b2b3884d1d125b 07-Mar-2012 Gilles Debunne <debunne@google.com> Re-use the display list valid flag, save a boolean

Change-Id: I991e7fb224b0725a0f2ae02f04456bd192582ca6
/frameworks/base/core/java/android/widget/TextView.java
faeac2737de098269a69011f4980a412559b55a9 06-Mar-2012 Jeff Brown <jeffbrown@google.com> Merge "Change widgets to post invalidate to the animation timer."
6cb7b46c56449e84434b11eb12f9b8977fcd0398 05-Mar-2012 Jeff Brown <jeffbrown@google.com> Change widgets to post invalidate to the animation timer.

Change-Id: I8377e924529fb9d8afd8a834003a17de616e8e87
/frameworks/base/core/java/android/widget/TextView.java
6c488de023a4797069673dc619c1a4096079ea9e 02-Mar-2012 Gilles Debunne <debunne@google.com> EditText caches only text in its internal display list.

Decorelate background and text in layout display. This allows
to only store the text in the editable TextView's display list.

Selection and cursor changes no longer need to invalidate the
display list, leading to faster rendering.

Change-Id: I3af3a98846e1bfe2d9ec6c42590e71bf3704595e
/frameworks/base/core/java/android/widget/TextView.java
dd3ef2c573396271c7c3b71e30fbd10cf66d3bc0 02-Mar-2012 Fabrice Di Meglio <fdimeglio@google.com> Improve RTL APIs

- follow changed / reset pattern

Change-Id: I1c5e9b39196029bd78add2ab13b984da124822ca
/frameworks/base/core/java/android/widget/TextView.java
161d9cf9547757e543783bc8d1cc173e1cb0215b 01-Mar-2012 Gilles Debunne <debunne@google.com> Merge "Invalidate text display list on scroll"
fe35a46f56b8d512f2af8d84e381dda52dbaea20 01-Mar-2012 Fabrice Di Meglio <fdimeglio@google.com> Merge "Fix bug #5616520 When the device is set to Arabic, and the email application is launched, the guided text is not displayed"
b863419b751e994d78f466374d1eb3d60eba1ef6 29-Nov-2011 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #5616520 When the device is set to Arabic, and the email application is launched, the guided text is not displayed

- do correct scrolling when hint is shown

Change-Id: If17a1ffbd4d83bfa601e5ee97d3e73932eb4143c
/frameworks/base/core/java/android/widget/TextView.java
6382ade0c7e26c88c4a17f7ee7124ed92b0b8bcc 01-Mar-2012 Gilles Debunne <debunne@google.com> Invalidate text display list on scroll

This is a problem only when using TextView's internal scroll.
Since there was no bug report about this obvious problem, it
looks like most EditText are single ine or located inside of
a ScrollView.

Change-Id: I699ad0078c9df64c70d10c64f0293b404485e05f
/frameworks/base/core/java/android/widget/TextView.java
f17981b33b0359136c0b88a92311a3140be2ba71 29-Feb-2012 Gilles Debunne <debunne@google.com> Merge "Vibrate on long press, even out of text"
3e804a615dda96cc9f79474b01e301d4f3f63c0b 29-Feb-2012 Gilles Debunne <debunne@google.com> Merge "Removed TextAlign in TextView"
9f102ca592e5bca91140c72e0962277d8731f977 28-Feb-2012 Gilles Debunne <debunne@google.com> Vibrate on long press, even out of text

Bug 6073057

Change-Id: I53441f365419aa1ae4d51e03efff46697059d38a
/frameworks/base/core/java/android/widget/TextView.java
528e6dda428f388b7fca4c76696046c0f202f929 28-Feb-2012 Gilles Debunne <debunne@google.com> Merge "Selection highlight made possible with no editor"
0ca95700b170997abd03645e751f9679139fec24 28-Feb-2012 Gilles Debunne <debunne@google.com> Merge "Fix for NPE on long press to start a selection on text."
e7769bc76d01e9b031f65a58129b3e358ebabd3f 28-Feb-2012 Gilles Debunne <debunne@google.com> Fix for NPE when dragging on TextView

Bug 6076166

Change-Id: I52b1e2edc451f0601b71af50e6056dcbe69add43
/frameworks/base/core/java/android/widget/TextView.java
7e07adbcd3bc7e7bb4b32b620a8f96ee97fd4aae 28-Feb-2012 Gilles Debunne <debunne@google.com> Fix for NPE on long press to start a selection on text.

Bug 6075849

Change-Id: Ie07bd2adfecc0820995b9c8a75cd4de6dd9891e1
/frameworks/base/core/java/android/widget/TextView.java
83051b8c75a145a12eca1a021ff1a4fbcc77ba4b 25-Feb-2012 Gilles Debunne <debunne@google.com> Selection highlight made possible with no editor

Bug 6065081

Selecting text programatically is possible (like when a link is highlighted
by LinkMovementMethod) even when the text is not editable.

Also removed the textCanBeSelected text is highlight computation which prevented
links from being highlighted (legacy problem, not reported).
Now that they work, we can see that the highlight is not removed when the text
loses focus. Will be addressed in a different CL.

Change-Id: I673f435966686234b4c0b0a97bcc65abd01169ff
/frameworks/base/core/java/android/widget/TextView.java
5cd164c5cf58047cda39b05a2c4f3cbab2d10078 25-Feb-2012 Gilles Debunne <debunne@google.com> Merge "Fix NPE on Activity start in TextView"
c1e79b45a2fa49cd31eed7437942ba9796495164 25-Feb-2012 Gilles Debunne <debunne@google.com> Fix NPE on Activity start in TextView

Bug 6065279

The selection can be created programatically, and mEditor may be null
when it happens.

Make sure mEditor is created to display the selection highlight.

Change-Id: Idd66a5fd4ad327f9b390b539574e6878c794ba4a
/frameworks/base/core/java/android/widget/TextView.java
9f809c2fd186c7cdb5ed52af4240189298c80ef7 25-Feb-2012 Gilles Debunne <debunne@google.com> Merge "Fix crash on long press in TextView"
f14634e4917dc86a9dfd05cd0d76b530a2d4f392 25-Feb-2012 Gilles Debunne <debunne@google.com> Fix crash on long press in TextView

Bug 6058792

Glitch in mEditor handling

Change-Id: I9b68796d5038c20d190ba5fbdaff1608b36aaee6
/frameworks/base/core/java/android/widget/TextView.java
b98a81f86ab87f1d718f329f03256111fdabd8d1 24-Feb-2012 Adam Powell <adamp@google.com> Add support for optional titles in action modes

Optional titles will only be displayed in the CAB if they entirely fit
instead of ellipsizing.

Fixes bug 5821883

Change-Id: I0cfd6d4fd34a4fa9f520499d577706da30606811
/frameworks/base/core/java/android/widget/TextView.java
5ca6f9e56fa7256f355f1881e19e7ec5c805a693 22-Feb-2012 Gilles Debunne <debunne@google.com> Merge "EditText-specific data extracted from TextView"
978a8ff842d400249b1e0de4217913fb972cb2db 22-Feb-2012 Gilles Debunne <debunne@google.com> Removed TextAlign in TextView

This value is not assigned anymore.

Change-Id: Ic86a38acb870994ebe77a817b61aa618813e3788
/frameworks/base/core/java/android/widget/TextView.java
60e2186c354c30b2f75ed0ef1ba75181bd32afda 31-Jan-2012 Gilles Debunne <debunne@google.com> EditText-specific data extracted from TextView

All edit-specific data has been moved to an EditData inner class in TextView.

The instance of this class is created as soon as one of its fields is set to
a non-default value. Regular TextViews (buttons, checkboxes...) should never
have to instantiate the Editor, thus reducing their memory footprint.

Note: this is a debug version. The getEditor() method is here to track
possible problems and should be removed in the final version. Indentation
will be fixed then.

Next step is to extract more methods and classes into Editor and create a
dedicated class for it. mMovement may also be Editor specific.

Change-Id: Ic241953a2fb73213180f300c3609a9e6799aa884
/frameworks/base/core/java/android/widget/TextView.java
36a5822484860d8a66639f1d01387c7b545ffad9 22-Feb-2012 Gilles Debunne <debunne@google.com> Merge "Added bottom padding in textview's focused rectangle"
322044abe4affc29999398663007c57f664bc4fa 22-Feb-2012 Gilles Debunne <debunne@google.com> Added bottom padding in textview's focused rectangle

Bug 6017386

Focused rect in used in ViewRoot when a new view takes focus.
TextView bringPointIntoView defines an other rectangle as text is typed.

Make sure the latter is included in the former to avoid the jump when one
starts typing text.

Change-Id: I0177adc046c77a5fd9c1423c0069d5b9798dc0b9
/frameworks/base/core/java/android/widget/TextView.java
6917e6550d2dc11ad3b794be08cc9caa53970d32 18-Feb-2012 Romain Guy <romainguy@google.com> Merge "Record possible clip rejects when recording display lists"
33f6beb10f98e8ba96250e284876d607055d278d 17-Feb-2012 Romain Guy <romainguy@google.com> Record possible clip rejects when recording display lists

This optimization allows us to quickly skip operations that lie
entirely outside of the known bounds of a display list. Because
of ViewGroup.setClipChildren, we must keep the operations recorded
in the display list. setClipChildren(false) is however a very
uncommon operation and we will therefore often benefit from this
new optimization.

Change-Id: I0942c864e55298e6dccd9977d15adefbce3ba3ad
/frameworks/base/core/java/android/widget/TextView.java
50eb3b9bf9bf0b014ad19066951b6c1dffd4e3f3 17-Feb-2012 Jeff Brown <jeffbrown@google.com> Merge "Encapsulate the ViewRootImpl's handler."
6d3d5057b445069e73fd06adbc11fa412e7c48c3 16-Feb-2012 Fabrice Di Meglio <fdimeglio@google.com> Improve textDirection APIs

Change-Id: I8bff30f5adb0ab4077145d83ac4a716e04f289ac
/frameworks/base/core/java/android/widget/TextView.java
a175a5b7ea3682cb58cca7f9726d0b8171cd549d 16-Feb-2012 Jeff Brown <jeffbrown@google.com> Encapsulate the ViewRootImpl's handler.

This change makes it much easier to make sense of the messages that
get posted to the ViewRootImpl's handler by encapsulating their point
of dispatch within the ViewRootImpl itself.

As part of this change, the View.AttachInfo now carries a reference
to the ViewRootImpl itself, which simplifies some code that used
to try to find the ViewRootImpl by getting the root view's parent.

In principle, it might have been nice to hide the ViewRootImpl from
the View hierarchy but in practice the two were coupled in many ways.

Change-Id: I51ebccdf5f8c8c505cd6f17cdf594174d041dc54
/frameworks/base/core/java/android/widget/TextView.java
5e78d9bea5bddbf200b4349d445c7d6cc4383e20 15-Feb-2012 Gilles Debunne <debunne@google.com> Invalidate display list on alpha change

Bug 5945886

Change-Id: Ibab3ad2c9e526c038672699b571de154dfc8d17c
/frameworks/base/core/java/android/widget/TextView.java
626c3169755bdc51bf544b5625ea7704386ff7e3 15-Feb-2012 Gilles Debunne <debunne@google.com> Display list invalidated on hint text change

Bug 5993119

Change-Id: I750e73cb5c26e2aaa2a88a80cf35c4d471c30403
/frameworks/base/core/java/android/widget/TextView.java
c067717c1e4e25c511c3712e213c6f0ce2451d57 08-Feb-2012 Gilles Debunne <debunne@google.com> Merge "Invalidate text display list when text properties change."
132bda1cffcb28aab9b84f58dab9955257733ffc 08-Feb-2012 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #5979311 Change TextView to not clip top/bottom text

Change-Id: I40a2ef40e540f20a9f626ab2e4e6e39fd062c9fe
/frameworks/base/core/java/android/widget/TextView.java
2e85274d26c52f8df517e7e327eb78340c8c552f 08-Feb-2012 Gilles Debunne <debunne@google.com> Invalidate text display list when text properties change.

Bug 5887530, Bug 5945886, Bug 5904371

Added more invalidation when other properties of the text are changed.

Change-Id: I618dbaae9da64bf72dd29e444215b7de1c644573
/frameworks/base/core/java/android/widget/TextView.java
1e56fff3b90946b342ddabf68648dc3551ce47db 31-Jan-2012 Romain Guy <romainguy@google.com> Merge "Add debug markers to OpenGLRenderer"
13631f3da855f200a151e7837ed9f6b079622b58 31-Jan-2012 Romain Guy <romainguy@google.com> Add debug markers to OpenGLRenderer

These markers will be used to group the GL commands by View in the
OpenGL ES debugging tool. This will help correlate individual GL
calls to higher level components like Views.

Change-Id: I73607ba2e7224a80ac32527968261ee008f049c6
/frameworks/base/core/java/android/widget/TextView.java
e62beb5c20c18beec5bee5ff0a9d84067949c36d 31-Jan-2012 Gilles Debunne <debunne@google.com> Removed SoftInputShownOnFocus methods in TextView

Not used by Phone, for which it was initially created.

Change-Id: I0cad668f894e88cda0a410005aaf6b6c0b89dc3e
/frameworks/base/core/java/android/widget/TextView.java
2e37d6292658e5f481e7173f98e95fee28986c49 27-Jan-2012 Gilles Debunne <debunne@google.com> Remove onPreDrawListeners earlier in TextView

Bug 5556478

Launcher pre-populates its all apps and widget pages with their
content, which includes text. The layout calls some onMeasure methods
that trigger TextView's registerForPreDraw(), which in turns adds a
listener in the ViewTreeObserver.

However, some of these pages may never be actually displayed, leaving
the listeners in the list since onDraw() is never called.

As a result, every frame displayed by launcher is slowned down by this
array copy of 6-18 listeners.

The problem is not Launcher specific since other applications may use
a similar caching mechanism.

The solution is to unsubscribe the listener in onPreDraw.

The drawback is that several successive calls to registerForPreDraw() will
add/remove the some listener object. However, these calls are rare and are
relatively cheap since we're just adding the object in and out of an
ArrayList which should not need to change its size.

Change-Id: Ifb65655a27e302d31a2ad622d18f839aec99689e
/frameworks/base/core/java/android/widget/TextView.java
566e8baf43a08b1000b8c4c24fb14fe94e46394d 27-Jan-2012 Gilles Debunne <debunne@google.com> Merge "Fix for IOOB when suggestions have disappeared"
ea1181220deaf1820fb5cc13247d5e976b5543d4 27-Jan-2012 Gilles Debunne <debunne@google.com> Merge "Handle tap and move cursor before showing suggestions"
e93c51713c440d572913292926c6e606edd6c64d 26-Jan-2012 Gilles Debunne <debunne@google.com> Merge "Modified algorithm to remove duplicated suggestions"
7af1f9669b98020f83aa5278bb173550053b53d3 26-Jan-2012 Gilles Debunne <debunne@google.com> Fix for IOOB when suggestions have disappeared

This new test is required since the suggestion popup is now triggered by a
Runnable. We have to make sure there is still at least one SuggestionSpan
at that position.

Change-Id: I5c84ba0ca412f51a0201bee5c2e63b5bd3717338
/frameworks/base/core/java/android/widget/TextView.java
868121f29601657baeecff541ef6096257fa082c 26-Jan-2012 Gilles Debunne <debunne@google.com> Handle tap and move cursor before showing suggestions

Otherwise the suggestions do not correspond to the tapped location.

Change-Id: Id0bd87931e73513ca7e50c6212a17b0fc7d6179d
/frameworks/base/core/java/android/widget/TextView.java
6e0b22bea91398403ea500360b02ff2fc7a03d00 25-Jan-2012 Gilles Debunne <debunne@google.com> Modified algorithm to remove duplicated suggestions

Bug 5916225

Duplicates were removed when received from SpellChecker, in a way
that could move the top candidates lower in the list.

Moved that code to the part that creates the actual suggestion list,
to make it more generic. The order of the first SuggestionSpan is
guaranteed to be respected.

Also mentionned non null suggestions and fixed a problem in SuggestionSpan
constructor.

Change-Id: Iaa3b1b84ae512451e439e5c5e63448c2a19145b5
/frameworks/base/core/java/android/widget/TextView.java
954325ed26e3d04fcff45e971d12c8657565b6b2 25-Jan-2012 Gilles Debunne <debunne@google.com> TextView's display list updated on layout

Bug 5903021

We need to invalidate the DL at anytime the layout is changed.

Change-Id: Ief06c988b88cdf1b35fe8ce9bac1243326ea44c4
/frameworks/base/core/java/android/widget/TextView.java
a54b9641cd832a4bbe6a3e8d0e4cb77449c92a76 24-Jan-2012 Gilles Debunne <debunne@google.com> Merge "Restored selectAllOnFocus"
4bb2833fa62d57d62a78d662bf937b19dde31ba7 24-Jan-2012 Gilles Debunne <debunne@google.com> Restored selectAllOnFocus

Bug introduced in recent refactoring
https://android-git.corp.google.com/g/#/c/158896/

Do not move cursor when selectAllOnFocus and focus just happened.
The didTouchFocusSelect() condition was not copied over from ArrowKeyMM.

Change-Id: Id01d225c436ae3dd97c5d77d5dac5d0690d7de76
/frameworks/base/core/java/android/widget/TextView.java
822b8f0cfae35958ee8d7e6e7cdd021f86c22879 18-Jan-2012 Gilles Debunne <debunne@google.com> Double tap to select enabled on suggestions

Using a runnable to schedule the action, interrupted by any other
touch event, enabling a catch of a double tap to trigger text selection
instead.

Change-Id: I21f8b9fdfad0036d6970f5dbfe6d72dd3eff35a1
/frameworks/base/core/java/android/widget/TextView.java
2f9510ca50b0fd2925bc7e349f76136ed403a386 20-Jan-2012 Gilles Debunne <debunne@google.com> Merge "Touch moves cursor in text refactored"
92db51938f6dac6227ab362e851858bc848efd9e 20-Jan-2012 Gilles Debunne <debunne@google.com> Make sure text selection always starts

When text can indeed be selected, we should always initiate
a text selection on long press. When the WordIterator fails
(for instance if the text is entirely made of punctuation
characters, maybe also with foreign languages), we select
one character.

Change-Id: I842507f7cbaed9a924d3176ea8ed6586f3548366
/frameworks/base/core/java/android/widget/TextView.java
004b02d62605c172c3c9a332a22356cd4edf3598 18-Jan-2012 Gilles Debunne <debunne@google.com> Touch moves cursor in text refactored

Code was moved back from the movement method to the touch event code in TextView.

Change-Id: I7dc0d957554ddce08e810d20e0385f98802ef1a4
/frameworks/base/core/java/android/widget/TextView.java
b3ca0fe66c1def11a04b18e6872318deb0340b9b 19-Jan-2012 Gilles Debunne <debunne@google.com> Merge "Touch slop added to double tap detection"
bdf7f9658044d4c55c4826a88a41822045557ee5 19-Jan-2012 Gilles Debunne <debunne@google.com> Merge "Fixes around extract mode"
c171402318c1d71df961221f4ed1660fbedd08cc 17-Jan-2012 Gilles Debunne <debunne@google.com> Touch slop added to double tap detection

Similar to what is done in GestureDetector

Removed all gesture constants. Only one one them is used on MOVE
(added an early exit test), the 2 others on UP or DOWN where
performance is not such an issue.

Change-Id: Icd58ead5078f94f86786f934ddf81aa5ec9bf549
/frameworks/base/core/java/android/widget/TextView.java
0764dee89cc82dd53196cce2865d3cabafed208f 18-Jan-2012 Svetoslav Ganov <svetoslavganov@google.com> Merge "AccessibilityEvent/AccessibilityNodeInfo class name property should be set to only framework classes."
8a78fd4d9572dff95432fcc4ba0e87563415b728 17-Jan-2012 Svetoslav Ganov <svetoslavganov@google.com> AccessibilityEvent/AccessibilityNodeInfo class name property should be set to only framework classes.

AccessibilityEvent and AccessibilityNodeInfo have a property className which is set to the source
Java class. This is problematic since leads to leaking private classes which would allow an
accessibility service to load classes from other packages. This is strongly undesirable since
not trusted code can be loaded, and hence executed, in the accessibility service. To address
that the class name is set to the most concrete framework class extended by the info/event
source.

bug:5878943

Change-Id: I7b3114ece8772ea2773f5151e21b8a6f2006882a
/frameworks/base/core/java/android/widget/TextView.java
14568c3f76cc4d3ad75dfd0206a3dc2130135c58 14-Jan-2012 Gilles Debunne <debunne@google.com> Fixes around extract mode

Stop selection mode after Edit/Copy while in extracted mode.

The selection mode was started by a long press in the ExtractedEditText.
Selection Copy in the menu simply sends the id to the context menu.
SelectionMode is not stopped in the underlying text since it was not
started there. Stop it directly in the ExtractedEditText.

Cut and paste do stop the mode because the text is modified.

Change-Id: Id7dbfa99de404c4eb85ced9627c99af4895ac628
/frameworks/base/core/java/android/widget/TextView.java
b35ab7b72967adcfd01cec483a705dafe8b951d1 06-Dec-2011 Gilles Debunne <debunne@google.com> Sub display list in TextView

TextView uses a sub-display list to 'cache' the rendering of its
text. This saves time when drawing an editable text, where the blinking
cursor forces a re-draw twice per second, which creates pauses during
scrolling.

Added a sub-display list invalidation when an appearance span is
modified/added/removed.

Also added an invalidation of the display list when selection range
is changed.

Change-Id: I41e8068a12902b8a745c5bb77de8c77def76a270
/frameworks/base/core/java/android/widget/TextView.java
4c1e00a8c29e532a5b0fce755bead691797eff94 06-Jan-2012 Fabrice Di Meglio <fdimeglio@google.com> Add textDirection="locale"

- also fix and update unit tests
- see bug #5242821

Change-Id: I29e029bab8ade336a430f9a2a5073caaf11b8dda
/frameworks/base/core/java/android/widget/TextView.java
cd76a4da3e95ae213b6a25418f43ff57d905ce2e 20-Dec-2011 Gilles Debunne <debunne@google.com> Merge "Rationalize blinking cursor test."
545c4d44389f189f7dda68f8e0f54d3b90ad98a6 29-Nov-2011 Gilles Debunne <debunne@google.com> Rationalize blinking cursor test.

Moved full test into shouldBlink() to make the condition consistent.

Change-Id: Id8abf38e180e1a00eb132476f102361f0feb56da
/frameworks/base/core/java/android/widget/TextView.java
6e87ecbb1db883aa60aeb37b059f066974220d2b 14-Dec-2011 Gilles Debunne <debunne@google.com> am 2450b36a: am 19636dc4: Merge "Do not spell check the foreground ExtractEditText." into ics-mr1

* commit '2450b36a3696bc5afdf2a0f2af8b2008efb8a7b0':
Do not spell check the foreground ExtractEditText.
770f0fa92e0745c523be466e3520d22f51e28bb1 13-Dec-2011 Gilles Debunne <debunne@google.com> Do not spell check the foreground ExtractEditText.

Bug 5755099

In extracted text mode, we spell check the background and the foreground
edit text. All changes in the background are already propagated to the
foreground, and updates on the foreground may trigger a spell check
of the entire text since we use setText.

Change-Id: Ie44c3d9113258082ac6df5890851d0e21c702ea2
/frameworks/base/core/java/android/widget/TextView.java
249d1e827a7ffe2a034130d05e18c7b521b0de9b 13-Dec-2011 Gilles Debunne <debunne@google.com> Re-synced MR1 and master for SpellChecker

Some auto-merges got lost, re-syncing master with the latest
and greatest from MR1.

Change-Id: Ifc0b5d1fd2e11e68d219c3f491f37d4c047579a0
/frameworks/base/core/java/android/widget/TextView.java
a4b1b8ab3c240efe82d1018a54277f16dc03a8fa 13-Dec-2011 Gilles Debunne <debunne@google.com> am 7ffadba5: am 1fb90497: Merge "Text blinking cursor hard to see." into ics-mr1

* commit '7ffadba5dfbeeaa93a9559ca3eaf1a7719426a5f':
Text blinking cursor hard to see.
961ebb9ab0a6d45b06a74aa90894f7fda3d528c6 12-Dec-2011 Gilles Debunne <debunne@google.com> Text blinking cursor hard to see.

Bug 5738416

This problem was introduced in
https://android-git.corp.google.com/g/#/c/152599

The invalidated cursor region is no longer expanded to include the
cursor drawable (different from the handles' drawables).

Added that code back. Added a flag, since invalidateRegion is also
used to invalidate text span regions in spell check (assumes the decorated
span bounds are not bigger that text boundaries), which is fine in case
of underline.

When the cursor is moved on a single line, invalidate the whole line
(same as what was done before). This is sub-optimal, will file a bug
to fix this. The core problem is that we should invalidate the previous
and the new cursor's positions. We only have one of these.

Change-Id: I9ada9340fb52aad3d80c39efd021fd3f9ec0cc4d
/frameworks/base/core/java/android/widget/TextView.java
481c0a260420a921cdca55130d8d9685d17cf527 12-Dec-2011 Gilles Debunne <debunne@google.com> am afa0a714: am df372289: Merge "Fixed SpellCheckerSessions leak in TextView" into ics-mr1

* commit 'afa0a714acb45e90bdda3fd72b529a817a25f2d1':
Fixed SpellCheckerSessions leak in TextView
70511ade47f75160bdfbf0693145a4b827294136 10-Dec-2011 Gilles Debunne <debunne@google.com> am b25d417f: am aa4a5713: Merge "Make the Next key navigate between TextViews" into ics-mr1

* commit 'b25d417fce0e0467187ac187a4dabae75d5dc83d':
Make the Next key navigate between TextViews
683a485fbcf72caad42f9fd030255f1083ce5637 09-Dec-2011 Gilles Debunne <debunne@google.com> am aee940df: am a5a98a03: Merge "IOOB is Suggestions" into ics-mr1

* commit 'aee940df55b5d1f769f56ff8a6dd645253b7f8e5':
IOOB is Suggestions
17994a1d04e3e5e986f3758f996381ab759c3832 09-Dec-2011 Gilles Debunne <debunne@google.com> Blinking cursor in Talk

I verified that this fixes the unblinking cursor problem in Talk.

Change-Id: I5e3e5c8ad5cf3d8479462495107bf93e5e4fb956
/frameworks/base/core/java/android/widget/TextView.java
df3722895172e03c81787f62d922daabaad3e20b 09-Dec-2011 Gilles Debunne <debunne@google.com> Merge "Fixed SpellCheckerSessions leak in TextView" into ics-mr1
06a8e9b1ce63f1e0842c877133b2562a6b638123 08-Dec-2011 Gilles Debunne <debunne@google.com> Make the Next key navigate between TextViews

Bug 5718127

Fixes from changes introduced in
https://android-git.corp.google.com/w/?p=platform/frameworks/base.git;a=commit;h=0500b3cfda5192efc09d6d4344b0c6c785c0a815

Change-Id: I4f6d213cd744b913b053275c4a26194cd030de84
/frameworks/base/core/java/android/widget/TextView.java
a5a98a034b4d52c6bbc75e72f74f1a6ea1c61ed5 08-Dec-2011 Gilles Debunne <debunne@google.com> Merge "IOOB is Suggestions" into ics-mr1
b69c8cab56cffb4799e6701e3a52da9242b0569d 08-Dec-2011 Gilles Debunne <debunne@google.com> am 0235016a: am 2df13452: Merge "Insert into user dict with the correct locale" into ics-mr1

* commit '0235016acb241556f24689e3d818db6973b5ad4f':
Insert into user dict with the correct locale
c115fa041c02f68d1987e2c9cae263c9a31f370b 07-Dec-2011 Gilles Debunne <debunne@google.com> Fixed SpellCheckerSessions leak in TextView

Bug 5709546

Change 1a22db29 created a potential leak: setText calls
sendOnTextChange that now calls updateSpellCheckSpans.

The original call to updateSpellCheckSpans made sure the
View had been attached to a window, through the existence
of the SpellChecker object.

The mSpellChecker object will now only be created when the
View is attached, all other spell related method will do
nothing if it has not been initialized.

Change-Id: I8885c12be6395e2346c0ed057bb6a275256f012b
/frameworks/base/core/java/android/widget/TextView.java
5fa6737cac2bf246becb802982980372a4d6160b 07-Dec-2011 Jean Chalard <jchalard@google.com> Insert into user dict with the correct locale

This fixes a bug where a word would be entered in the user
dictionary with the wrong locale.

Bug: 5667272
Change-Id: I219d5461f8f8c74b6ab34f9bb157a4b977f00e68
/frameworks/base/core/java/android/widget/TextView.java
f9bb1cd1fcff7079445dae494ce5d56276092c11 07-Dec-2011 Gilles Debunne <debunne@google.com> resolved conflicts for merge of fb729202 to master

Change-Id: Ic571594b14f2822094d5c1aa4c4b1e9da4a2eae0
e300be9c29b7915450ddb62f2957d312b52cfa32 06-Dec-2011 Gilles Debunne <debunne@google.com> IOOB is Suggestions

Bug 5555929

This problem only happens when in landscape extracted text mode.

A suggestion pick from the popup window replaces the text in the ExtractedText,
when it should do it in the underlying source EditText instead.

When the replacement text is longer than the replaced text and is at the end
of the text, an IOOB occurs because the ExtractedText was not modified (we now
correctly change the source text using replaceText_internal).

This is basically an implementation of the TODO comment next to setSpan in
TextView.

Change-Id: I6575137530e0bb5c9ac7e40cc2bba9c66dc254d2
/frameworks/base/core/java/android/widget/TextView.java
98a85c2de6b3f27ba1ccb2cfd44a775b4f490f72 06-Dec-2011 Gilles Debunne <debunne@google.com> Merge "Invalidated bounds tightened in TextView" into ics-mr1
0715f12605933f1587012705d0cd0c1a34fe11da 02-Dec-2011 Gilles Debunne <debunne@google.com> am b4812f8a: am 335c4e6c: Broken build. New methods made private.

* commit 'b4812f8a815a4c4a9896e73412f4011d7a30f03f':
Broken build. New methods made private.
335c4e6cb2094c7cbd6039e0c7915702b69e7657 02-Dec-2011 Gilles Debunne <debunne@google.com> Broken build. New methods made private.

Change-Id: Ia123ab4ddb1fe93bcd053c3ea5bf6b87c7204640
/frameworks/base/core/java/android/widget/TextView.java
2101c57552ad5e184e718683a7774d82f1ce01d4 02-Dec-2011 Gilles Debunne <debunne@google.com> am a8205d24: am 09cbff02: Merge "Better handles\' visibility test" into ics-mr1

* commit 'a8205d24703fc353076cf30795b3a06a87208cfa':
Better handles' visibility test
58d8953958ce452c5080eaa582d7e5d2b5017398 02-Dec-2011 Gilles Debunne <debunne@google.com> Merge "Scroll performance improved in multiline TextEdit" into ics-mr1
09cbff0294a27d33c93de50e0b4471ad86154a84 02-Dec-2011 Gilles Debunne <debunne@google.com> Merge "Better handles' visibility test" into ics-mr1
6bb5fc577d326cfef5b7b15457ef145118e2e904 01-Dec-2011 Gilles Debunne <debunne@google.com> am 4fec974c: am 0433c157: Merge "TextViews keep focus after Done" into ics-mr1

* commit '4fec974c2f75886516509699ccfc0100b029fe4d':
TextViews keep focus after Done
ad79297a4118e73e7828f08545963e9795407df1 01-Dec-2011 Gilles Debunne <debunne@google.com> am d732efa2: am b2aa672f: Merge "Revert "IME action (done, next...) correctly handled"" into ics-mr1

* commit 'd732efa2972eaaa22ff921c39744ec969598bcd0':
Revert "IME action (done, next...) correctly handled"
64901d4eb0f13b794d9c22ae58f16104b556f9b7 25-Nov-2011 Gilles Debunne <debunne@google.com> Better handles' visibility test

Checking if the hotspot position is visible instead
of checking if it is part of the clipped visible rectangle.

Bug 5638710

Patch set 2: synchronize static variables you will.
Patch set 3: renaming and refactored the while loop.
Patch set 4: synchronize you will (again)
Patch set 5: parent

Change-Id: I330510f491c85f910fc61598936113ad07d304e4
/frameworks/base/core/java/android/widget/TextView.java
647944897fecf2d14bf8140638be9141f4dc1432 01-Dec-2011 Gilles Debunne <debunne@google.com> TextViews keep focus after Done

Otherwise the ViewRoot tries to focus something else and as a result
it will scroll back to the top of a form with many fields, which is
annoying.

Change-Id: I1de10f76fe4b82bc4097fc13c629450d6f999fd0
/frameworks/base/core/java/android/widget/TextView.java
8bfcd133a2a326d3fddb87834fedb1cf18edc59f 01-Dec-2011 Gilles Debunne <debunne@google.com> Revert "IME action (done, next...) correctly handled"

This reverts commit efbad5fb90fe990d42bf30c63e42558bd9bdb5d8.
/frameworks/base/core/java/android/widget/TextView.java
8615ac9e049cdf4ab77b0897aca9bceec142c9fa 30-Nov-2011 Gilles Debunne <debunne@google.com> Invalidated bounds tightened in TextView

New invalidateRegion method, with better horizontal invalidate
bounds in case the region is on one line.

Use by SpellChecker when a new SuggestionSpan is added.

Change-Id: Ide11f1d3d2b1350032b475db0641018a49c08d13
/frameworks/base/core/java/android/widget/TextView.java
70b34a1e0525c8e13f431c2e6c9d37d1954de1b2 27-Oct-2011 Gilles Debunne <debunne@google.com> Scroll performance improved in multiline TextEdit

Measuring line widths, glyph by glyph slows down the scrolling
process for long text (for some reason, width measure efficiency
is affectedi by text length, maybe because the whole text has to
be passed to JNI layers).

This optimization avoids this computation in the case where there
is no possible horizontal scroll.

This is a cherry pick of 145957 into ICS-MR1

Change-Id: I2082e3d0eedace1a86122a03e4b21f90f3bc8522
/frameworks/base/core/java/android/widget/TextView.java
c273cd318d8bb45c22a914ba88d4cb4dd94a768e 29-Nov-2011 Gilles Debunne <debunne@google.com> Merge "Restoring mLayout has private in TextView"
e29e4d2adef21aa54b2ae4bf225e3492bc3735c3 29-Nov-2011 Gilles Debunne <debunne@google.com> am 9d8d5297: am 10232fe6: Merge "Extracted text problems" into ics-mr1

* commit '9d8d529739b1b9790599364f57cffbe022d15ee2':
Extracted text problems
6c9d4f3cd3c5185cda06f3bf83049dba81007bd1 29-Nov-2011 Gilles Debunne <debunne@google.com> am 0dca407e: am 7be31bd9: Merge "IOOB in text selection." into ics-mr1

* commit '0dca407eede3d85a0185718f4993c2b09d1cc658':
IOOB in text selection.
10232fe63916d03d147d0a07f8bf4d70cb60941c 29-Nov-2011 Gilles Debunne <debunne@google.com> Merge "Extracted text problems" into ics-mr1
7be31bd96a4cc71ebc2539573f062fa53cc7cb05 29-Nov-2011 Gilles Debunne <debunne@google.com> Merge "IOOB in text selection." into ics-mr1
cdfab19bf761eb6faaae119ab13b5a9de855770c 29-Nov-2011 Gilles Debunne <debunne@google.com> Restoring mLayout has private in TextView

Change-Id: If8c4385ec0b64fb2055f4561aeeb1c145294d679
/frameworks/base/core/java/android/widget/TextView.java
1a22db2927abf6860498ed4194947ba2d40d5ec7 20-Nov-2011 Gilles Debunne <debunne@google.com> IOOB in text selection.

Several issues here:

1. when selection has been set to size 0 (should not be possible, but see 2.),
moving any of the selection handles will create an IOOB because we add/substract 1
with no test. Added min/max.

2. the text change detection, which stop selection mode, was done in
handleTextChanged. We need to go deeper. Some methods (such as setText())
directly call the more atomic sendOnTextChange(). Moved the test down
to this method. As a result, pressing the 'x' button in the QuickSearchBox
correctly stops selection mode (it used to leave an empty selection).

This change may also solve some weird similar issues in extracted mode where
it is sometimes possible to end up with a 0-length selection.

It may also impact Bug 5555929 since spellCheckSpans will now be correctly
updated on ANY text change.

3. the before != after test is flawed. When this method is called, the text
has been changed and selection mode should be stopped even when the new text
happens to have the same size.

Change-Id: I869ef728662f4350f22ed6149dd42db193c333ed
/frameworks/base/core/java/android/widget/TextView.java
664d87ef01f7b4dbd7c96f23db73aba6cbc57481 17-Nov-2011 Gilles Debunne <debunne@google.com> am b3272d29: am de8c5ec8: Merge "IME action (done, next...) correctly handled" into ics-mr1

* commit 'b3272d297bb45e5cd3201766baef4fef7921ce05':
IME action (done, next...) correctly handled
de8c5ec88982b836b2c50d4f685f4e05b29bdd0d 16-Nov-2011 Gilles Debunne <debunne@google.com> Merge "IME action (done, next...) correctly handled" into ics-mr1
efbad5fb90fe990d42bf30c63e42558bd9bdb5d8 16-Nov-2011 Gilles Debunne <debunne@google.com> IME action (done, next...) correctly handled

Bugs 5599728 and 5319237.

mInputContentType should be set for a "modern" cupcake
environment says a comment in TextView.

However, it is possible to call onEditorAction on a
TextView that didn't use any of the method that lazily
create that field. This is for instance achieved using
the extracted mode in landscape (Done, Next actions)
or in Contacts, that feature a Next/Done button in the
IME.

As a result, the action is ignored.

The patch is to force the creation of the mInputContentType
when the EditText is associated to the IME.

Change-Id: I5beec5a52e9eec0c209af37d68791bb6ff83d6f6
/frameworks/base/core/java/android/widget/TextView.java
6ec455211b9959ed7ef37bd3e6655722d33d9fd9 15-Nov-2011 Gilles Debunne <debunne@google.com> am 7bc6600e: am 8a440477: Merge "Clean-up in TextView" into ics-mr1

* commit '7bc6600e60688ea37ee7f18b82cb16677c0f5e74':
Clean-up in TextView
8a440477fd203d74b73b32dc2b357f07dfc36067 15-Nov-2011 Gilles Debunne <debunne@google.com> Merge "Clean-up in TextView" into ics-mr1
0f6ba9267ff4ef8f87aecdfc2bb8fb7e2ba2e42e 12-Nov-2011 Jeff Brown <jeffbrown@google.com> Merge "Seems to break text views all over. Particularly noticeable is that the labels in launcher icons appear left-justified. Multi-line text fields also wrap after every character."
033a001a612c7349c35198561e095350182deb34 12-Nov-2011 Jeff Brown <jeffbrown@google.com> Seems to break text views all over. Particularly noticeable is that the labels in launcher icons appear left-justified. Multi-line text fields also wrap after every character.

Revert "Fix bug #5387832 [UI/Visual] Address of the website is not displayed properly(second line of the address is partly shown)"

This reverts commit caa8c06de5f94db69faca35d666c04b82d3f420b
/frameworks/base/core/java/android/widget/TextView.java
951aa9d8ea71082f4ae4c46c41616e79619401fd 11-Nov-2011 Christopher Tate <ctate@google.com> am 9acae658: am 847fbbea: Merge "Localized optimizations in views and bitmaps" into ics-mr1

* commit '9acae658e179796beee91d673f9f70af49ae3c9b':
Localized optimizations in views and bitmaps
1373a8eb581fe3c8e9a036e69042015f98a7e346 11-Nov-2011 Christopher Tate <ctate@google.com> Localized optimizations in views and bitmaps

* Don't call context.getResources() redundantly when unnecessary;
similarly for Resources.getCompatibilityInfo()

* During bitmap creation, don't bother clearing to 0: it's unnecessary
because now that the raw bits are stored in a VM-side byte array, it
was cleared at initialization time. Also, don't use the sanity-
checking public entry point to erase to a color, because we know
that we're by definition in a "legal" path to erase to the initial
contents and don't need to incur the overhead of the (inappropriate)
sanity checking.

Change-Id: Idaca4d64fdecefd5d51337646ead32e1db510e02
/frameworks/base/core/java/android/widget/TextView.java
9704a14eebda065c70f95e918b55ac0c302fc359 10-Nov-2011 Gilles Debunne <debunne@google.com> am 2e97db49: am e5504ba1: Merge "Visual glitches when starting extracted text" into ics-mr1

* commit '2e97db4981e7773e84deee37c394748076b1aafd':
Visual glitches when starting extracted text
c95b7412c2d4b6dca0fdee631bd777b6148ddf81 10-Nov-2011 satok <satok@google.com> am 3628dafe: am 34bd5969: Merge "Respect user settings for spell checking language if explicitly set" into ics-mr1

* commit '3628dafe22aeeb2fca09b49d82c8d7289baf68ad':
Respect user settings for spell checking language if explicitly set
771d64b1e0bd92a78f07ab725091c5946984c890 10-Nov-2011 Gilles Debunne <debunne@google.com> Clean-up in TextView

Removed some variables that are no longer needed after the
removal of context menu in TextView.

Change-Id: I6d98bb356bd7b409a5230756849aef0f2896d4c5
/frameworks/base/core/java/android/widget/TextView.java
39ba6d9c4cf5a88d71edb800f3f48f85f61187c4 09-Nov-2011 Gilles Debunne <debunne@google.com> Extracted text problems

Bug 5557258: recent text editing changed in ExtractedText mode is
broken. The modifications of the text performed by:
- drag and drop
- text suggestions, deletion
- voice IME's delete button

all change the ExtractEditText itself, while they should affect the underlying
EditText (and the change will be forwarded to the ExtractEditText). As a results,
changes are not actually modifying the underlying text.

Created new protected methods in TextView, overloaded in ExtractTextView to
affect the underlying text instead.

Changes to spans should also be forwarded to the original TV (see the 2 TODOs),
this is tracked in bug 5589158.

Change-Id: Ibfec272469e8db191b3875e7576e32481a9dc1bd
/frameworks/base/core/java/android/widget/TextView.java
e5504ba1a279fc58eac74bda8d9c5c29cae235a9 10-Nov-2011 Gilles Debunne <debunne@google.com> Merge "Visual glitches when starting extracted text" into ics-mr1
d4c3b8e106a7dd86a6c701c6e4475647c15acce5 10-Nov-2011 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #5544127 TextView regression in ICS when setting TextSize dynamically

- nullify cached font metrics when we are nullifying the layouts as a result of changing text size

Change-Id: I372e4fad336de4aac89e1344c3e8d34c4e914f2f
/frameworks/base/core/java/android/widget/TextView.java
05f24700613fb4dce95fb6d5f8fe460d7a30c128 02-Nov-2011 satok <satok@google.com> Respect user settings for spell checking language if explicitly set

Bug: 5554116
Change-Id: I8c16d732af1fe713d30d97dfe829ff16653c7f34
/frameworks/base/core/java/android/widget/TextView.java
61ddbbae71f4a3be2e03cd6c040c5f722dbe2b51 09-Nov-2011 Gilles Debunne <debunne@google.com> Visual glitches when starting extracted text

Partially addresses Bug 5547923

In landscape, tapping on the text
1. starts extracted text mode
2. displays the cursor handle or the selection popup window.

As a result, some ghost effects and race conditions create an
unpleasing visual experience.

Fixed this by not doing 2. in case extracted mode will start.

The drawback of this quicl fix is that the user will have to
tap again to get the handle/suggestion. That can be fixed later
if needed.

Change-Id: I10e1d8399bb35e5b2cd5cba1295f7d29d051cae0
/frameworks/base/core/java/android/widget/TextView.java
5af447366d6dc5794cdcdd064bae72b66b9bc5c0 09-Nov-2011 Fabrice Di Meglio <fdimeglio@google.com> Merge "Fix bug #5387832 [UI/Visual] Address of the website is not displayed properly(second line of the address is partly shown)"
c4c13f970468286a19906a67a0dc81dbe4b81262 08-Nov-2011 Gilles Debunne <debunne@google.com> am 39896f52: Merge "No more context menu in TextView" into ics-mr1

* commit '39896f52a84947ffc2062a2584033ff749d90534':
No more context menu in TextView
07194e57547bed05469b299b75ce948ab8edca40 02-Nov-2011 Gilles Debunne <debunne@google.com> No more context menu in TextView

No longer needed now that all devices use the CAB for text selection.

MR1 port of https://android-git.corp.google.com/g/#/c/147391/

Change-Id: Ibb4c93e37f6df43ad676265247a734634f886d8c
/frameworks/base/core/java/android/widget/TextView.java
cf3b31704ae7743ca85219bca9698adcf6fbc67a 02-Nov-2011 Dianne Hackborn <hackbod@google.com> am ad41a94b: Merge "Some optimizations." into ics-mr1

* commit 'ad41a94b298f834e13632ee29b27cefd75f10012':
Some optimizations.
0500b3cfda5192efc09d6d4344b0c6c785c0a815 01-Nov-2011 Dianne Hackborn <hackbod@google.com> Some optimizations.

- Don't try to create a thumbnail bitmap on the client side. This
wastes 64k, and isn't needed since we are doing screenshots.
- Optimize View to put all of the callback pointers out of line.
Added a couple new APIs so these don't need to be protected/public.
- Lazily create ViewGroup's cache paint.
- Change FrameworkPerf app to not use HW accel drawing, to give better
comparison with GB.

Change-Id: Iec56d02459820d74a4cc9c7ec9c1856563c82c7b
/frameworks/base/core/java/android/widget/TextView.java
e9b82808d412fa1b87954dd88579b92d0b4ab0e2 27-Oct-2011 Gilles Debunne <debunne@google.com> No threading issues in SpellChecker.

SpellChecker is exclusively called from the main UI thread and
there are no concurrency issues. As a result, the TextView's
wordIterator can safely be re-used in the parse() method.

Also reset the pool of SpellParsers on language change.

Change-Id: I1cc8a2750f21233754f006e40a81622730030ec8
/frameworks/base/core/java/android/widget/TextView.java
4e13ebed6b900ab7e977ec7bfd385b35b300a67c 29-Oct-2011 Gilles Debunne <debunne@google.com> Merge changes I2082e3d0,Ibf8e9827

* changes:
Scroll performance improved in multiline TextEdit
Performance improvements for long text edition.
f818511ddad0a212ede089e5aaa7e27794a369d8 26-Oct-2011 Mark Wagner <mxw@google.com> bugfix 5513340 Insertion pointer (vertical beam) behaves oddly in Talk's message composition field

Seems like we should be calling makeBlink from setEnabled

Change-Id: I5b0433ba438a693f53d29e8ff7d4d853acc96bba
/frameworks/base/core/java/android/widget/TextView.java
a068e2f1d9532e6f005a162adfa295c553873ca5 28-Oct-2011 Gilles Debunne <debunne@google.com> am 4eec98ed: Merge "Text handles do not handle scroll correctly" into ics-mr0

* commit '4eec98edee3d6eb516e30a7151da13fd726f93a9':
Text handles do not handle scroll correctly
93347c24a77489d614332b8dfa98a3a50092590c 21-Oct-2011 Gilles Debunne <debunne@google.com> Text handles do not handle scroll correctly

A recent patch taking scroll into account was applied at the wrong
level. isVisible() expects positions that already take scroll into
account. isOffsetVisible() is where the initial bug was.

Cherry pick of 144415 from master.

Change-Id: I06ceebfb3d7b24aa4adba886c24fcf9d8dd39d2e
/frameworks/base/core/java/android/widget/TextView.java
f2a02018e2fa3089f6d39fc838a04818ae6cf26b 27-Oct-2011 Gilles Debunne <debunne@google.com> Scroll performance improved in multiline TextEdit

Measuring line widths, glyph by glyph slows down the scrolling
process for long text (for some reason, width measure efficiency
is affectedi by text length, maybe because the whole text has to
be passed to JNI layers).

This optimization avoids this computation in the case where there
is no possible horizontal scroll.

Change-Id: I2082e3d0eedace1a86122a03e4b21f90f3bc8522
/frameworks/base/core/java/android/widget/TextView.java
caa8c06de5f94db69faca35d666c04b82d3f420b 07-Oct-2011 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #5387832 [UI/Visual] Address of the website is not displayed properly(second line of the address is partly shown)

- finally get ride of VERY_WIDE constant ...
- compute the text width on the fly (we cannot cache it as the paint properties can be changed)

Change-Id: I07a0df15202ad3f61eabf62da9658fc301422be7
/frameworks/base/core/java/android/widget/TextView.java
fec22c6be6ce4988cda358cd405899566c07f032 21-Oct-2011 Gilles Debunne <debunne@google.com> Text handles do not handle scroll correctly

A recent patch taking scroll into account was applied at the wrong
level. isVisible() expects positions that already take scroll into
account. isOffsetVisible() is where the initial bug was.

Change-Id: If2a5349555ec9e86e4295e819d5d9086f0adcdbd
/frameworks/base/core/java/android/widget/TextView.java
592ddaa34f5a6799e4bb707996a3b8308448282e 12-Oct-2011 Gilles Debunne <debunne@google.com> Bug 5428541: Check that span is still in text before deleting

This is a cherry-pick in MR0 of CL 141388 from master.

Bug 5488537

In case the span has been removed from the text since the popup
was showed, the delete action is a no-op.

Change-Id: Iec2aeaf03becd82ad44715d5c08bfaa8f62aa3fe
/frameworks/base/core/java/android/widget/TextView.java
0f4109e4ef7bca3bf879335007803e6b5392ca6e 19-Oct-2011 Gilles Debunne <debunne@google.com> Renaming of a hidden API: ShowSoftInputOnFocus

Change-Id: Ib0384815f5ed677547a42d456ee190d5ac2ef7bd
/frameworks/base/core/java/android/widget/TextView.java
69db986cf01c74094747f82758e229da9f007a74 14-Oct-2011 satok <satok@google.com> am e6fee18d: Merge "Invalidate SuggestionSpan with FLAG_AUTO_CORRECTION when it\'s removed." into ics-mr0

* commit 'e6fee18d16a86c266afef48f7705268435a99111':
Invalidate SuggestionSpan with FLAG_AUTO_CORRECTION when it's removed.
e6fee18d16a86c266afef48f7705268435a99111 14-Oct-2011 satok <satok@google.com> Merge "Invalidate SuggestionSpan with FLAG_AUTO_CORRECTION when it's removed." into ics-mr0
ae245d59b384fb4e649d32a3475e4519fafa43ff 14-Oct-2011 Gilles Debunne <debunne@google.com> Merge "Bug 5420741: exception when rotating device while suggestion popup is visible"
b9e78d96b745341c6cd8be950480c0cb0a20974f 14-Oct-2011 Gilles Debunne <debunne@google.com> Merge "Spell checher's language synced with keyboard."
75e126f2df40365ca987d192d81188127518b384 14-Oct-2011 satok <satok@google.com> Invalidate SuggestionSpan with FLAG_AUTO_CORRECTION when it's removed.

Bug: 5460262

Change-Id: I4ca71020a6d4b7057f60ca99944c479775cca8b7
/frameworks/base/core/java/android/widget/TextView.java
19f4b66ddc924e1828ddc4082dd381616f57ec06 14-Oct-2011 Gilles Debunne <debunne@google.com> Merge "Bug 5228934: added a flag to disable the display of the soft input on focus"
9d8d3f1539ce5bdf512bd47ec1648609d6cde5b1 13-Oct-2011 Gilles Debunne <debunne@google.com> Spell checher's language synced with keyboard.

Bug 5379440. The spell check is now using the IME's language to
do the spell checking. Changing the input language triggers a
new spell check of the entire text.

Optimizations: ArrowKeyMovementMethod re-uses the TextView's
wordIterator, already set to the correct language.

One wordIterator shared by all SpellParsers in SpellChecker.
Cannot re-use TextView's because of concurrency issues.

With the current implementation, one has to type a new character
to see the new spell checking take place.

Change-Id: I0e460c0a6777548f89d03d6b68f3deea6606c17f
/frameworks/base/core/java/android/widget/TextView.java
cbdd245793fe5dc42d4573c20d0a43ad95d06d53 13-Oct-2011 Gilles Debunne <debunne@google.com> Merge "Bug 5428541: Check that span is still in text before deleting"
26c8b3ae7f01e8a28658e23e2a0d525dd7b9bdf9 12-Oct-2011 Gilles Debunne <debunne@google.com> Bug 5420741: exception when rotating device while suggestion popup is visible

The suggestion popup window was not dismissed on orientation change.
This is triggered by onDetachedFromWindow.
However, this method is also called when the suggestion popup window
pops up. A new flag detects that case to dismiss the popup unless it
has expressly been asked to show up.

Still errors in the log after that change, I assume related to the window manager.

Change-Id: Ia515fc576ddf2127b2f9863cc2652aeb619fff6e
/frameworks/base/core/java/android/widget/TextView.java
cee057ed2d5443d901484238a5212c2d3cc5c994 12-Oct-2011 Fabrice Di Meglio <fdimeglio@google.com> am 87228cd7: Merge "Fix bug #5446966 Changing Gravity on a TextView does not change how the text is aligned" into ics-mr0

* commit '87228cd7bb9a39e2bb33a767d214c8d834f840df':
Fix bug #5446966 Changing Gravity on a TextView does not change how the text is aligned
550efbfbf7cad81f2cc96da68e52324c6231f9ab 11-Oct-2011 Gilles Debunne <debunne@google.com> Bug 5228934: added a flag to disable the display of the soft input on focus

This will be used by the contact app for the dial screen text input.
https://android-git.corp.google.com/g/#/c/141088/

New upload to trigger a new android-build-police build.
Error 137 on buld server, builds fine locally even after a make clean.

Change-Id: I9288f3cab5c3330d693e08f88611acdd03526a41
/frameworks/base/core/java/android/widget/TextView.java
9f51384720715b58616a7281e2a073f736eff859 12-Oct-2011 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #5446966 Changing Gravity on a TextView does not change how the text is aligned

- this was a regression introduced when dealing with getLayoutAlignment()

Change-Id: I9571a7976789b768c7cb41560d88b35d67ae3895
/frameworks/base/core/java/android/widget/TextView.java
28ef904077b8acdeebb6b80cd05c4f4447d3c155 12-Oct-2011 Gilles Debunne <debunne@google.com> Bug 5428541: Check that span is still in text before deleting

In case the span has been removed from the text since the popup
was showed, the delete action is a no-op.

Change-Id: I6478e0953cab132a984174b596d1f813909cdc2d
/frameworks/base/core/java/android/widget/TextView.java
5915c885deaf40231c29bc720503dcf03acab188 11-Oct-2011 Gilles Debunne <debunne@google.com> Bug 5237623: word no longer underlined after replacement

When replacing a word, we need to remove *all* misspelled
suggestion spans, not just the one which triggered that popup.

Change-Id: I7be17ac626b26123b029f5e10c1e2eaa5f94d67c
/frameworks/base/core/java/android/widget/TextView.java
287d6c6e12a38864d019fa7b9184206bc8a31ea1 06-Oct-2011 Gilles Debunne <debunne@google.com> Bug 5250788: LatinIME slows down as amount of Text increases

Removed unnecessary CharSequenceIterator and made the WordIterator
work on String instead of CharSequence

Submit words to the spell checker by batches.

Refactored WordIterator to make it intrinsically local.

Change-Id: Ie9e30691985a130fa55cd052005ddb22a21761cb
/frameworks/base/core/java/android/widget/TextView.java
764041d21360b4865f905194e08eb8ea2f3ead9f 06-Oct-2011 Fabrice Di Meglio <fdimeglio@google.com> Fixbug #5387832 [UI/Visual] Address of the website is not displayed properly(second line of the address is partly shown)

- make VERY_WIDE bigger ... 64 times actually

Change-Id: I1a177ef5821d9341abb77ea69a50e05a5bfc97b5
/frameworks/base/core/java/android/widget/TextView.java
e921572bda621b75a217bce115c2b605caf9b26a 05-Oct-2011 Fabrice Di Meglio <fdimeglio@google.com> Merge "Revert "Fix bug #5387832 [UI/Visual] Address of the website is not displayed properly(second line of the address is partly shown)""
ad0b051b133baf92f199c96a8ac1e81b3393190c 05-Oct-2011 Fabrice Di Meglio <fdimeglio@google.com> Revert "Fix bug #5387832 [UI/Visual] Address of the website is not displayed properly(second line of the address is partly shown)"

This reverts commit a130e5f59dc6b2117e4c1a8ffef54828e9ea44c7
/frameworks/base/core/java/android/widget/TextView.java
8c60235b550ecbd5cba594584f78ef6630953e56 04-Oct-2011 Gilles Debunne <debunne@google.com> Merge "5402566: Copy/cut icons do not appear if the text is Japanese only"
a13a322e090c50549ce5a42c382e1ef668cf0481 04-Oct-2011 Gilles Debunne <debunne@google.com> Merge "Optimisations and bugs in SpellChecker"
8f3105ff9bc331a3d664cf06793d47f4763db3c5 04-Oct-2011 Gilles Debunne <debunne@google.com> 5402566: Copy/cut icons do not appear if the text is Japanese only

When the word iterator return an empty range, select an arbitrary
character so that cut/copy icons are available.

Change-Id: I16e5a3c7f10886db967d870706da7f2d690af013
/frameworks/base/core/java/android/widget/TextView.java
e1fc4f6c3c7d573f013b707ee962d58f9fb636dd 04-Oct-2011 Gilles Debunne <debunne@google.com> Optimisations and bugs in SpellChecker

A bug was introduced in a recent refactoring: correct words didn't have their
SpellCheckSpan removed, leaving a lot of useless spans.

SPAN_EXCLUSIVE_EXCLUSIVE should never have a 0-length. With Japanese characters
wordStart could be equal to wordEnd when parsing the text: skip these.

Using toString().substring(...) instead of subSequence(...).toString() which
is more efficient.

Change-Id: I670870a34565939b676400091f4852152a7f7124
/frameworks/base/core/java/android/widget/TextView.java
d2b58940f7db9d85a9d3f9d12173ec2a07c837df 03-Oct-2011 Adam Powell <adamp@google.com> Don't obtain attributes for the whole theme when looking for selection
mode drawables.

Change-Id: I82d327e8fcf67baa557245982b2b5ba76ffa9fec
/frameworks/base/core/java/android/widget/TextView.java
f00b4decc3f0b0ebd88b9a2cdb6df959704dfd46 03-Oct-2011 Gilles Debunne <debunne@google.com> Merge "Bug 5327547: re-check word after it (may) have been added to user dictionary."
6771c7fdbede3f0b68ec06a5ea734c62577876fd 03-Oct-2011 Gilles Debunne <debunne@google.com> Merge "Bug 5384674: When only one suggestion is returned, it is displayed twice"
d3871c53cfbc6c789de97cf3e5928a03c5b84232 03-Oct-2011 Gilles Debunne <debunne@google.com> Merge "New underline color for the Voice recognized suggestions"
845d9c7f7ee4ffc776f66fcb5206ac7287e270ef 23-Sep-2011 Gilles Debunne <debunne@google.com> Bug 5327547: re-check word after it (may) have been added to user dictionary.

Change-Id: Id4f32477c3368a140883dd34c97578aab46b04db
/frameworks/base/core/java/android/widget/TextView.java
176cd0d3b4a612b9fdd88c1d245e9fd93a327bf2 30-Sep-2011 Gilles Debunne <debunne@google.com> Bug 5384674: When only one suggestion is returned, it is displayed twice

Two separate issues here:
- The results of the spell checker may be identical to the one set by the IME. Since
we merge the spans, the entries are duplicated. Filter spell checker results to avoid
these duplicates.

- When the text is saved on rotation, the spans are saved and restored. Since we start
a new spell check when the window is attached, it also doubles the size.

Change-Id: I21e1a5ae1b264bc97f44d762e4589bf520c6c19c
/frameworks/base/core/java/android/widget/TextView.java
eba3d923415431ea8b301d4e77c8f2b7225fed30 30-Sep-2011 Gilles Debunne <debunne@google.com> Merge "Bug 5384675: Color in add to dictionary"
5b92a451c0004b53e8c10537c5254c9e6d047d19 30-Sep-2011 Gilles Debunne <debunne@google.com> Merge "Bug 5254884: suggestions are no logner copied in the clipboard"
67ed574cdb0a66c42a9827f7dbc54df98578271b 30-Sep-2011 Gilles Debunne <debunne@google.com> Merge "Bug 5250788: EditText gets slower has the entered text gets longer"
c2deadc9f3c7bb0bd23500bd86a1cffe04862c07 30-Sep-2011 Gilles Debunne <debunne@google.com> New underline color for the Voice recognized suggestions

Change-Id: Icb863942e7c11caca7384deca5c59866d4668256
/frameworks/base/core/java/android/widget/TextView.java
af43add388cdc69d6d1006b874f970eb7dd3026e 30-Sep-2011 Luca Zanolin <zano@google.com> Merge "The x and y position of the pop-up where not calculated correctly when the text view had internal scrolling."
46c78b4de14b18152db031d155006e6f45aa9eaa 30-Sep-2011 Fabrice Di Meglio <fdimeglio@google.com> Merge "Fix bug #5387832 [UI/Visual] Address of the website is not displayed properly(second line of the address is partly shown)"
a130e5f59dc6b2117e4c1a8ffef54828e9ea44c7 29-Sep-2011 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #5387832 [UI/Visual] Address of the website is not displayed properly(second line of the address is partly shown)

- make DynamicLayout honor max lines
- make StaticLayout.generate() take maxLines as a parameter instead of using the field mMaximumVisibleLineCount

Change-Id: I9eafb1be4b8bb2aa881514955a6903f559cb6a1e
/frameworks/base/core/java/android/widget/TextView.java
cf68fee06da3c1e238c0fcbeac40fd6385d15e93 29-Sep-2011 Gilles Debunne <debunne@google.com> Bug 5254884: suggestions are no logner copied in the clipboard

Change-Id: I621c5b4da4252876b0f424e895a4e19e2a4dda50
/frameworks/base/core/java/android/widget/TextView.java
e670101db8fbad28ee38481495be6387504f7da6 29-Sep-2011 Gilles Debunne <debunne@google.com> Bug 5384675: Color in add to dictionary

Change-Id: Ibb89265a90d6b598927dec2bcf45a8c02388b5f0
/frameworks/base/core/java/android/widget/TextView.java
404c8e57647cd70bc1e6b1fc6301d34e2c732d55 29-Sep-2011 Gilles Debunne <debunne@google.com> Merge "Bug 5278473 & 5278471: delete option in suggestion popup menu"
f4314dffbd1b082bb6458b2d6bee69bda4ce2673 29-Sep-2011 Gilles Debunne <debunne@google.com> Merge "Too many SpellCheckSpans are created."
83e8ced91a8c235787bd1f0e3a5b9f85ff7a9cd2 29-Sep-2011 Luca Zanolin <zano@google.com> Merge "Change the width of the suggestion item to match the one of the suggestion pop-up"
d5ea0a1bc2fae7c6084b0c5cc9b68a925a0f50f6 29-Sep-2011 Gilles Debunne <debunne@google.com> Bug 5250788: EditText gets slower has the entered text gets longer

Profiling showed that the bottle neck was in the word iterator.
Now initializing the word iteerator to only a window around the region
of interest to reduce the text analysis.

Change-Id: Ibfa4952cbf52a1b36726f965143ac7a6dc63673e
/frameworks/base/core/java/android/widget/TextView.java
a403cb7e721a914b84cc2af17d400e108d077fff 28-Sep-2011 Luca Zanolin <zano@google.com> The x and y position of the pop-up where not calculated correctly when the text view had internal scrolling.

This method is invoked only when the pop-up is currently displayed and the text scrolles.

This is scenario is reproducible only with Voice IME (I think), as the text is inserted without
touching the screen.

Bug: 5290463

Change-Id: I0b842732cc1f115de06e992fbe28cb64eac49b22
/frameworks/base/core/java/android/widget/TextView.java
58707d6212aed2c6dfcdaecd108c6ddf117e756b 28-Sep-2011 Luca Zanolin <zano@google.com> Change the width of the suggestion item to match the one of the suggestion pop-up

Bug: 5267313
Change-Id: Ic7151398872459459f2537322961092d3ccffd1c
/frameworks/base/core/java/android/widget/TextView.java
a6c673bd6fdd5385ce9c76088f5d90e739216008 28-Sep-2011 Gilles Debunne <debunne@google.com> Bug 5278473 & 5278471: delete option in suggestion popup menu

Also added + and x icons on that line.

Change-Id: I508ae48f83eb7a831f24bb4f81933d9e698abde6
/frameworks/base/core/java/android/widget/TextView.java
b062e81e3a16af43db3619d721aa522c137d1aa9 27-Sep-2011 Gilles Debunne <debunne@google.com> Too many SpellCheckSpans are created.

Removed the Runnable in SpellChecker, spell check is triggered at the end
of updateSpellCheckSpans instead of when a new SpellCheckSpan is created.

Cache the spans in updateSpellCheckSpans to limit the calls to getSpans.

When typing, every new letter in a word will create a SpellCheckSpan
(this is needed in case the user taps somewhere else on the screen)
The SpellCheckSpans are pooled in SpellChecker to limit unnecessary new
SpellCheckSpan creation.

Minor optimization on test order in getSpans to avoid some calculation.

Spell check is not started everytime the selection is changed (would be
triggered when the insertion handle is moved). Explicitely do that only
on tap.

Change-Id: Ibacf80dd4ba098494e0b5ba0e58a362782fc8f71
/frameworks/base/core/java/android/widget/TextView.java
3a6c2e985534aeaef04661e2875a8745022c334a 27-Sep-2011 Fabrice Di Meglio <fdimeglio@google.com> am a200a23a: Merge "Bug 5332065: IOOB in case the suggestionSpan has been removed" into ics-factoryrom

* commit 'a200a23af10dfcbbe46d10e868c2eae9f2c794a4':
Bug 5332065: IOOB in case the suggestionSpan has been removed
14ed50a9a3386e63ee19f6ac0b66c7f3c0fe362a 23-Sep-2011 Gilles Debunne <debunne@google.com> Bug 5332065: IOOB in case the suggestionSpan has been removed

I don't understand how the SuggSpan that has been tapped to display
the popup can have disappeared when an item is clicked.

This problem seems specific to monkey test with a race condition somewhere.

Change-Id: I447b6563a1b959dc3c1ead31cde2d9bcad369765
/frameworks/base/core/java/android/widget/TextView.java
8013290dd0e9d3eabc3611d7eca47aa50bdceed0 26-Sep-2011 Fabrice Di Meglio <fdimeglio@google.com> Merge "Fix bug #5366547 TruncateAt.MARQUEE should be replaces with "two dot" ellipsis on hardware that dont support MARQUEE"
cb332649e44db86ff8b4e7f006db4bbfd82fed55 24-Sep-2011 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #5366547 TruncateAt.MARQUEE should be replaces with "two dot" ellipsis on hardware that dont support MARQUEE

- introduce TruncateAt.END_SMALL
- code refactoring for suppressing use of hardcoded constants

Change-Id: I70e24857cd5d6bd012a743cbc0ba46fbd06d5457
/frameworks/base/core/java/android/widget/TextView.java
186aaf973530f426b9b0e602e9744c591aa4aea9 16-Sep-2011 Gilles Debunne <debunne@google.com> Bug 5248215: Even though I turned off the Spelling correction, it still shows up

Bug 5313754: SpellCheckSession is released when the window loses focus.

When an EditText is initialized with text, a new spell check is initiated
and previous spell check spans are removed.
Requires a new flag to prevent this from happening when the window focus
change comes from the suggestion popup window being shown.

Also fixes bug 5329588: handle spell check language change.

This change has been reverted. This amended change defers the creation
of the SpellChecker, so that it is only created for editable TextView.

Patch 3: Bug 5332065, the spell check session is closed in onDetachedFromWindow, which is
called when the window is destroyed (like on rotation), which was not the case with
onWindowFocusChanged.

Patch 5: Fixed life cycle. A view can be created and never attached to the hierarchy. As
a result, the spellCheck session would not be closed. Moved spell check to onAttach and
perform a spell check when text is changed by setText only if the view has previously
been attached (and the spellChecker has been created).

Change-Id: Ic2cfbfc0d3f23c589dd9e37f02e4afc1d625615d
/frameworks/base/core/java/android/widget/TextView.java
a80599f5be394edd9f3918ba03c490850a1d9e7f 21-Sep-2011 Gilles Debunne <debunne@google.com> Revert "Bug 5248215: Even though I turned off the Spelling correction, it still shows up"

This reverts commit 6e405f84b8d0c7c0f939bc8e9bec17e65e704a2d.

Change-Id: I9593273d414aee1f9817f84b462cf45360ff19e3
/frameworks/base/core/java/android/widget/TextView.java
576b6bb2f9a72cc7599a254818b8d6a1df25ecb5 21-Sep-2011 Gilles Debunne <debunne@google.com> Merge "Bug 5248215: Even though I turned off the Spelling correction, it still shows up"
d37848af08be784ce52da09629dce771131ae5e5 20-Sep-2011 Svetoslav Ganov <svetoslavganov@google.com> TextView not adding text to accessibility events.

Reversed conditional.

bug:5342756

Change-Id: Ia2a523af6f7b12e27275e6095ea1b137768ea14c
/frameworks/base/core/java/android/widget/TextView.java
2c2ab5864f6037cebac5a4c73ec039f266d0dcfd 19-Sep-2011 Dianne Hackborn <hackbod@google.com> Fix issue #5260129: Suggestion strip in Talk app not showing all the time
/frameworks/base/core/java/android/widget/TextView.java
6e405f84b8d0c7c0f939bc8e9bec17e65e704a2d 16-Sep-2011 Gilles Debunne <debunne@google.com> Bug 5248215: Even though I turned off the Spelling correction, it still shows up

Bug 5313754: SpellCheckSession is released when the window loses focus.

When an EditText is initialized with text, a new spell check is initiated
and previous spell check spans are removed.
Requires a new flag to prevent this from happening when the window focus
change comes from the suggestion popup window being shown.

Also fixes bug 5329588: handle spell check language change.

Change-Id: I113229dbe06863d34c1369d05d067292894f73f1
/frameworks/base/core/java/android/widget/TextView.java
bc82385706c597ceb36bcf8f842f339bcaa321f9 19-Sep-2011 Dianne Hackborn <hackbod@google.com> Fix issue #5260129: Suggestion strip in Talk app not showing all the time

Change-Id: Ibac6138f3b3b0c3850a30d2c432495aa57b7f3f1
/frameworks/base/core/java/android/widget/TextView.java
ab5a4057e734df59358b606f1cba9ef921a9e269 15-Sep-2011 Svetoslav Ganov <svetoslavganov@google.com> TextView should report in an AccessibilityNodeInfo's text its hint if the View text is empty.

1. TextView was reporting only its text as the text of the emmited AccessibilityNodeInfo
not using the hint if the text is empty which is inconsistent with the handling of
accessibility events.

2. TextView was using the contentDescription in AccessibilityEvents if its
text and hint are empyty. However, the content description is reported as
a separate event property and it is incorrect to report it as the text.

bug:5129138

Change-Id: I1c9270459cb07650a0ec5181cc4a01993dde3b5c
/frameworks/base/core/java/android/widget/TextView.java
ea515aeafa01de6f50c854ee381b972ef2478284 15-Sep-2011 Svetoslav Ganov <svetoslavganov@google.com> Update the public APIs for finding views by text to optionally use content description.

1. Added flags to the search method to specify whether to match text or
content description or both.

2. Added test case for the seach by content description.

3. Updated the code in AccessibilityManager service to reflect the latest
changes there so test automation service works - this is the fake
service used for UI automation.

Change-Id: I14a6779a920ff0430e78947ea5aaf876c2e66076
/frameworks/base/core/java/android/widget/TextView.java
bd4016e9c8958d79cbee40ac5fb2a6d5ffa92241 14-Sep-2011 Gilles Debunne <debunne@google.com> Bug 5295607: IOOB problems in Suggestions

The start and end of the suggestion span were cached, where as
they should be retrieved when the user clicks since text may have
changed in the meantime.

Change-Id: Iab47f9969d538d8213a8c5b76b4b7ace8dc9428e
/frameworks/base/core/java/android/widget/TextView.java
18b43119229e5cd72952fdb71b7676de6e853c23 13-Sep-2011 Gilles Debunne <debunne@google.com> Merge "Bug 5281947: add to dictionnary option promoted in suggestions."
ab0f485e64418eb22f0a1d89d7064902b381e9c2 13-Sep-2011 Dianne Hackborn <hackbod@google.com> Fix problems where we were allocating TypedArray when not needed.

Fixes up some recycling of TypedArray objects to reduce the
number we need to allocate during inflation etc.

Change-Id: I948dccc052997779001eaa99db2a710b04be01ae
/frameworks/base/core/java/android/widget/TextView.java
e076045f10a1f4fd2764ec2230e068702fd64d06 08-Sep-2011 Luca Zanolin <zano@google.com> If suggestion span is not enable, removes the suggestion span (so no underline is displayed),
and do not try to display the suggestion pop-up.

Bug: 5267093

Change-Id: Ia6f2596d0c62885ef9affeb478e00d3b92d76aac
/frameworks/base/core/java/android/widget/TextView.java
c9fd978da60f76c0576150c55629a034e1fa19fb 09-Sep-2011 Gilles Debunne <debunne@google.com> Bug 5281947: add to dictionnary option promoted in suggestions.

When several SuggestionSpans are available at a given position, their
content are merged, in creation time order.

As a result, the IME's suggestions are picked before the spell check, and
no add to dictionnary option is created.

This CL modifies the comparator to make easy correction spans appear first
(Voice IME), then misspelled words and then regular suggestions.

Also avoids the creation of a new comparator and length hash map on every display.

Change-Id: I1f9f031a6fdcbbc09f248a192b83051092765f8e
/frameworks/base/core/java/android/widget/TextView.java
2bfc75a6d9217d20e6fb17b484424935aa55a575 10-Sep-2011 Gilles Debunne <debunne@google.com> Merge "Bug 5255124: Move cursor to the end of a word after correction popup alternates selection"
4f2b0dc552dbce06ae6825d099e959b40e6bf0e6 10-Sep-2011 Gilles Debunne <debunne@google.com> Merge "Bug 5278456: text highlight color depends on the type of suggestion spans."
1a87ba4636fd6ec1f33664f24263e9452fd43a65 09-Sep-2011 Gilles Debunne <debunne@google.com> Bug 5255124: Move cursor to the end of a word after correction popup alternates selection

Change-Id: Idd3edc72edf864f256df173bcf643163192ecbde
/frameworks/base/core/java/android/widget/TextView.java
99e109915e2fe08179f6a64c607ef56a91fb1dfa 09-Sep-2011 Svetoslav Ganov <svetoslavganov@google.com> Merge "The time and data pickers did not support IME editor action correctly."
a53efe9923bedab4fe5d578f32eaff308e5b9e76 09-Sep-2011 Svetoslav Ganov <svetoslavganov@google.com> The time and data pickers did not support IME editor action correctly.

1. Updated TextView to traverse all focusable items. It was searching focus
down and up and was missing right and left focusabled. Updated the focus
seach to use FOCUS_FORWARD and FOCUS_BACKWARD - now all focusable views
are visited.

2. TimePicker and DatePicker were not specifying the IME options for
the next and done editor actions.

bug:5264046

Change-Id: Ief80863fc312582f2f76928bf6e915f620c427e5
/frameworks/base/core/java/android/widget/TextView.java
fa4e2d994bb398b89d08304bb233671ef1a5d5f8 09-Sep-2011 Gilles Debunne <debunne@google.com> Bug 5278456: text highlight color depends on the type of suggestion spans.

Change-Id: I76ac02b7688a297c0e83d593f446a4cf2ee36015
/frameworks/base/core/java/android/widget/TextView.java
2295cc77c72d451e7a1c9ec48f120a8e73651b6d 09-Sep-2011 Fabrice Di Meglio <fdimeglio@google.com> Merge "Fix bug #2246815 Error popups on EditText should span the width of the screen instead of the width of the EditText field"
e4231461f41e4e25645be0831f5653aa6d266b2b 09-Sep-2011 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #2246815 Error popups on EditText should span the width of the screen instead of the width of the EditText field

Part 2

- use "textview_error_popup_default_width" as a dimension resource instead of a basic constant

Change-Id: Ieb89fc416105716ab491749a82390a7e784b1755
/frameworks/base/core/java/android/widget/TextView.java
0669577b13302767e90a193c5f48e7faae580654 09-Sep-2011 Fabrice Di Meglio <fdimeglio@google.com> Merge "Fix bug #2246815 Error popups on EditText should span the width of the screen instead of the width of the EditText field"
33438be0087518aeb99e17ecc70213956ce0f25a 09-Sep-2011 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #2246815 Error popups on EditText should span the width of the screen instead of the width of the EditText field

- cap the popup to 240 (Validated with UX team)

Change-Id: I2923825a19b7c79fa0d1233300f42e10bdda8df7
/frameworks/base/core/java/android/widget/TextView.java
15208ac5003de16e8e3d9ec26c3ef05347da7731 08-Sep-2011 Gilles Debunne <debunne@google.com> Merge "No vibration when long pressing in the empty part of an EditText"
df1324c3cfcd94c1a634fd7f1ef97f15e0d727dc 08-Sep-2011 Gilles Debunne <debunne@google.com> Merge "Longpressing in landscape correctly starts selection mode."
0c4f8ec6d33f113e8173efa86901593cd8b84cdf 08-Sep-2011 Gilles Debunne <debunne@google.com> Merge "Updated text selection color. As in 133272"
76866208f81988fa653568513112b152e156d806 08-Sep-2011 satok <satok@google.com> Merge "Send onViewClicked in the extract mode"
a67a3cfc7c5db3b0a7710a75b57cd5360fce015a 07-Sep-2011 satok <satok@google.com> Send onViewClicked in the extract mode

Bug: 5257838
Change-Id: I16547aab86812f2db45deb879ad887dc38968164
/frameworks/base/core/java/android/widget/TextView.java
e28454a23723c76b4eebdf9651692d85aa2a4737 08-Sep-2011 Gilles Debunne <debunne@google.com> No vibration when long pressing in the empty part of an EditText

Bug 5272224. Vibration should be limited to the start of an action mode,
which is not the case here.

Change-Id: I0f2263edb24e73f10297d27e109bb37c46fe96bc
/frameworks/base/core/java/android/widget/TextView.java
98fb9ed4c1f630e1834b16e5bcf55de8d87d12cc 08-Sep-2011 Gilles Debunne <debunne@google.com> Longpressing in landscape correctly starts selection mode.

Two issues here:
1. selection mode was stopped when extracted mode started,
thus loosing the selection.
2. starting selection mode shows a transient action bar which
is then hidden when extracted mode starts. Detect this case
and do not start selection mode, which will start in extracted
mode. This also solves 1.

Change-Id: I61d6e8d2071e9d3b1a136915b685962bbc093bd0
/frameworks/base/core/java/android/widget/TextView.java
4147abcd84f7dab2bf6f7a644b86c732d8e16cdb 07-Sep-2011 Fabrice Di Meglio <fdimeglio@google.com> Merge "Fix bug #5252977 TextView selection handles appearing in a weird state"
03e4d64587d50200d990f95a64b1b1c57ae59d77 07-Sep-2011 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #5252977 TextView selection handles appearing in a weird state

- a remove of a listener was missing as dismis() and hide() need to
share the same semantics

Change-Id: I01dc5a971324d0aa0942e365d5302d93a1a51a16
/frameworks/base/core/java/android/widget/TextView.java
0046199daba6a089dc966cf56a8e95d80ed60831 07-Sep-2011 Gilles Debunne <debunne@google.com> Merge "Fix "out of bound exception" when the span has prefix."
d486bd278959e4f70fc2d14b02621156a132c8ce 07-Sep-2011 Gilles Debunne <debunne@google.com> Merge "Fix several issues with the "EasyEditSpan"."
1564fc7c7eab89fb2d13719c0d4dc664d57b930e 07-Sep-2011 Luca Zanolin <zano@google.com> Fix several issues with the "EasyEditSpan".

- The easy edit span was displayed twice when in extracted mode. The orignal TextView now checks if it is in extra mode, and if so it does not display any pop-up
- The easy edit span was displayed before the view was layout causing the application to crash.

New feature:

- the span is automatically hidden after a timeout

I also renamed all the fields and classes to "EasyEdit...". There were still some field/class using an old name.

Bug: 5255363
Bug: 5247453
Bug: 5246997

Change-Id: Ic9bf05d2525e2df9017c91344a687e8cb9105417
/frameworks/base/core/java/android/widget/TextView.java
6fbe5ca6438587af59de2cb55a97a55354a7eb03 07-Sep-2011 Gilles Debunne <debunne@google.com> Updated text selection color. As in 133272

b/5217848

Change-Id: I628c65af941d575a402a38f45bc923ebb4256c56
/frameworks/base/core/java/android/widget/TextView.java
c6fc20a91bdf6f5d8cd8784324a55e39bcb7077c 07-Sep-2011 Fabrice Di Meglio <fdimeglio@google.com> Merge "Fix bug #5262565 Need to remove CharCount TextDirectionHeuristics"
2346e0117dff5db9be3932b696a1baaed4488c2f 06-Sep-2011 Luca Zanolin <zano@google.com> Fix "out of bound exception" when the span has prefix.

Change the behavior of the highlight marking the "suggested text" and not the differences.

Bug: 5252699
Change-Id: I4c7e9fc9bac81da8b5f643990b86a336363d7968
/frameworks/base/core/java/android/widget/TextView.java
e3bf88da23bfadd89a35b6dec769ea825e5ecd6e 06-Sep-2011 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #5262565 Need to remove CharCount TextDirectionHeuristics

- update unit tests too

Change-Id: I7c518f58a9f17cb679bc3913bdd38243f7ad2195
/frameworks/base/core/java/android/widget/TextView.java
34d2eba560f83f4eb665cdc039cf02bf96c201da 01-Sep-2011 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #5243493 TextView selection is not working correctly when there is some RTL run into it

Part 2

- make selection handles aware of the run direction

Change-Id: Idf41036de53d8968e7ae27eb87aea09e86bcd652
/frameworks/base/core/java/android/widget/TextView.java
572527f2c337ec9266ebcd931a66e17d2ae63e01 02-Sep-2011 Gilles Debunne <debunne@google.com> Merge "Remove the suggestion underline when the TextView loses focus."
a41bc33855d9e55701c6e615590e273ada69a445 02-Sep-2011 Gilles Debunne <debunne@google.com> Merge "Popup windows positions are updated when a TextView is scrolled"
f3d78eac0f565b51d5e657e6cb21b4a48ef6f660 02-Sep-2011 Gilles Debunne <debunne@google.com> Merge "Added an add to dictionary option in suggestions for misspelled words"
fe5e9834a3086ab6bd99a4cb0d9273fdeb52ecd8 02-Sep-2011 Luca Zanolin <zano@google.com> Remove the suggestion underline when the TextView loses focus.

Only the easy correction (i.e., voice ime corrections) will lose the underline, while the misspelled span will not.

Change-Id: If96c17473dd70c99b808739ddde800cc93551e2a
/frameworks/base/core/java/android/widget/TextView.java
70a6312f09329bd0b19343bc7906f9ce665fe3ad 01-Sep-2011 Gilles Debunne <debunne@google.com> Fixes around text selection

Text selection mode was started by two consecutive taps inside a
field with selectAllOnFocus.

ArrowKeyMovementMethod does not respect the possible cancelLongPress and handles up events.
As a result a scroll that happens to end up at its initial position will be considered a tap
and will move the cursor.
This is however not considered as a tap in TextView and a possible selection mode would not
be stopped in that case.
Fixed by making ArrowKeyMovementMethod aware of the cancel that happened in Touch.

Change-Id: I07372b703f250e1edc7ee0665318ce30441b9187
/frameworks/base/core/java/android/widget/TextView.java
e90bed18cc123c0963bbcc023976fa355c16a352 30-Aug-2011 Gilles Debunne <debunne@google.com> Added an add to dictionary option in suggestions for misspelled words

Change-Id: I031f17a76b4a81ae375b778046b8c391f9b8b2b2
/frameworks/base/core/java/android/widget/TextView.java
f682a77d5ee2c47285ddce14894db0c9e9359cdd 01-Sep-2011 Gilles Debunne <debunne@google.com> Popup windows positions are updated when a TextView is scrolled

The View's internal scroll was not triggering an update of the popup windows' positions.

Also fixes an update problem when a new long press moved the action popup window.

Change-Id: Ic3bb39fc55981c67db2a15ef2e90aad37a36d116
/frameworks/base/core/java/android/widget/TextView.java
0eea6681519277310e1733d791bfc0342b8e5cea 29-Aug-2011 Gilles Debunne <debunne@google.com> Using ListView for Suggestion popup window

New background assets from Bug 5204807.
New text selection color and associated handles, bug 5217848.

Change-Id: I4eaea6be732843d8ff344400d029b4a1b80b084f
/frameworks/base/core/java/android/widget/TextView.java
282e377d8b25a3aaf02ce40f33279d94b77ecbdc 31-Aug-2011 Adam Powell <adamp@google.com> Ellipsize marquee TextViews that aren't currently animating

On some devices the fading edge effect can be expensive. Offer an
alternative for screens full of textviews.

Change-Id: I0382b4ea0f8b0c6948cb68611f3679dbf5e2898a
/frameworks/base/core/java/android/widget/TextView.java
b5305007a6eb10457aa97b9791fed62d3542e3c1 31-Aug-2011 Gilles Debunne <debunne@google.com> Merge "Add EditTextShortcutSpan to provide edit short cut in the text view."
e6d368218918f911b1954296dab25bf84147b4c6 30-Aug-2011 Luca Zanolin <zano@google.com> Add EditTextShortcutSpan to provide edit short cut in the text view.

At the moment, EditTextShortcutSpan allows only the deletion of the text. In the future, we may decide to add extra functionality,
like "retry" where all the text is removed and a specific IME is triggered.

Fix the underline. The underline is not defined in thickness, and not as a multiplier of the default underline thickness.

Change the behaviour of SuggestionRangeSpan to match the specification.

Change-Id: I80437d9887c7a2ff8f62c38afbb0cb7add7ee9c8
/frameworks/base/core/java/android/widget/TextView.java
57324c738272eb35217eebfa5001eff45101f683 29-Aug-2011 Gilles Debunne <debunne@google.com> Moving action popup window when moving text selection

Long press to select, the action popup (Paste) is displayed.
A second long press moves the selection (selection mode is still on),
but the action popup's location was not updated.

Change-Id: I2ac133e608dbca35ec0236b47b42f029623fc303
/frameworks/base/core/java/android/widget/TextView.java
474cac1c212e1f02deaffe5512941af9cb2a760b 29-Aug-2011 Gilles Debunne <debunne@google.com> Merge "Suggestions popup window is dismissed on tap outside."
d32f27aec04dd91edf488f280ca609e0b55aec9e 26-Aug-2011 Fabrice Di Meglio <fdimeglio@google.com> Merge "Fix bug #5199577 TextView with android:password="true" is showing the "dots" on the left even if the password chars are RTL"
7810b5f8cffb3c2c98fd0df579f4da5a9ac6cc73 25-Aug-2011 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #5199577 TextView with android:password="true" is showing the "dots" on the left even if the password chars are RTL

- force TextView to LOCALE text heuristic when in "password" mode
- remove TEXT_LAYOUT_DIRECTION_UNKNOWN_DO_NOT_USE
- LocaleUtils.getLayoutDirectionFromLocale() returns "LTR" is locale is NULL or ROOT

Change-Id: I182c46aaf2d73c8b18967fffa230bfabec91ed06
/frameworks/base/core/java/android/widget/TextView.java
8e7e95f22f700fae6926d87b25c388bf9b509389 25-Aug-2011 Gilles Debunne <debunne@google.com> Merge "Bug 5166707: NPE fixed in getFocusedRect"
fd419b051a43c68b28131d1fd4535af0d21b5039 25-Aug-2011 Gilles Debunne <debunne@google.com> Bug 5166707: NPE fixed in getFocusedRect

Change-Id: I1e59ac739f1258c0047a667443f80b2c09ffa12c
/frameworks/base/core/java/android/widget/TextView.java
28294cc74491885c7fe4442353026f01f5b773e8 24-Aug-2011 Gilles Debunne <debunne@google.com> Suggestions popup window is dismissed on tap outside.

But now the tap is not handled at all, as it was before. To do this, the popup window
is now focusable. As a result, the TextView's window loses focus. We hide the
cursor to prevent a non-blinking visible cursor. We should also fake the
state of the parent TextView to keep it visually focussed.

SuggestionRangeSpan and SpellCheckSpan had to made Parcelable since they are recreatedi
when the TextView is re-created when the popup is dismissed.

Change-Id: Ic99b2c4f02c282394f214938dd19168547af4886
/frameworks/base/core/java/android/widget/TextView.java
616b20c0de273bf19791db319f83658055a39d6c 25-Aug-2011 Gilles Debunne <debunne@google.com> Remove spell log that exposes typed text in the logs

Change-Id: I88a31f7e1fb93f0550d1cd5eb86afacbc19afd29
/frameworks/base/core/java/android/widget/TextView.java
6435a56a8c02de98befcc8cd743b2b638cffb327 05-Aug-2011 Gilles Debunne <debunne@google.com> Spell checking in TextViews

New UX interactions (the Paste action is no longer displayed after a delay)
suggestionEnabled flag replaced by existing input type flag.
removeSpans fixed in SpannableStringBuilder to always send notifications
SuggestionSpan handled by TextView instead of SpannableStringBuilder

New span update algorithm to correctly handle edition around word boundaries.

Change-Id: I52c01172f19e595fa512e285a565a3fd97c3c50e
/frameworks/base/core/java/android/widget/TextView.java
c2d256b41587ff44efb6373885affe02e5df80b5 23-Aug-2011 Fabrice Di Meglio <fdimeglio@google.com> Merge "Improve TextDirection resolution"
a646145c335ba821f01d9e4f8be2583eb9fd7266 20-Aug-2011 Fabrice Di Meglio <fdimeglio@google.com> Improve TextDirection resolution

- remove unuseful heuristics
- tune Javadoc

Change-Id: Id72a158b3a17a528423d278b1cbfd95b8c2951b5
/frameworks/base/core/java/android/widget/TextView.java
3de510313a44977a25ecb5253603fb2df2cc34b2 18-Aug-2011 Fabrice Di Meglio <fdimeglio@google.com> Merge "Fix bug #5175022 Easy mode in MeasuredText.setPara() is no more used"
4b60c30838fbd635964f1e79c057de5048dcc66f 18-Aug-2011 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #5175022 Easy mode in MeasuredText.setPara() is no more used

- use the real TextDirectionHeuristics constants
- make more formal that LayoutDirection should be resolved BEFORE TextDirection
- reset TextDirection if LayoutDirection is recomputed
- remove non used TextDirectionHeuristic.isRtl(CharSequence...)

Change-Id: I1d53a7e3ee324cfd27785bb4d715d93de8d9ff4d
/frameworks/base/core/java/android/widget/TextView.java
15b8016434a888b47a6032715acf831a0e0b2e5c 17-Aug-2011 Luca Zanolin <zano@google.com> Fix bit comparison for checking the variant of the input type.

Change-Id: I0c74af09e29e39fbd092c10b107ea7aa3273a680
/frameworks/base/core/java/android/widget/TextView.java
4cee03a85f5756227e3c74965a5d3fb52bbf57a9 16-Aug-2011 Gilles Debunne <debunne@google.com> Merge "Change the behavior of SuggestionSpan."
7d1c55fad8194e2c82f5f88f98ab5569f9c52ab9 16-Aug-2011 Luca Zanolin <zano@google.com> Change the behavior of SuggestionSpan.

SuggestionSpan can be accessed in two different ways:

- by tapping on the text (easy access)
- by tapping on "replace" pop-up (not easy and difficult to discover)

The "easy access" will be used for dictionary suggestions and voice recognition suggestions.

The suggestion span can be rendered into two different way:

- default, text is underlined in blue
- spelling error, text is underlined in red

Change-Id: I0af0fe6700d0ad588facb21c021dc6f59ef172f1
/frameworks/base/core/java/android/widget/TextView.java
8059e0903e36cbb5cf8b5c5d5d653acc9bbc8402 11-Aug-2011 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #3388534 Long file names are improperly displayed when played

- force ellipsising when there are more lines found than maxLines
- do not care about lines when we have reached maxLines
- also fix relayouting when changing maxLines thru setMaxLines()
- do not allow START / MIDDLE ellipsis when there are multiple lines
(and print a log accordingly)

Change-Id: I90f5a7f5200a220aceee01fb7300bec2c4c3a075
/frameworks/base/core/java/android/widget/TextView.java
186c1683ce6a6c7e845b06b8c0706ef7950c6608 15-Aug-2011 Gilles Debunne <debunne@google.com> Merge "Text suggestions are enabled for a subset of input types"
248b112ddaea42eb7c9330407aee1c9d836db7fd 12-Aug-2011 Gilles Debunne <debunne@google.com> Text suggestions are enabled for a subset of input types

Change-Id: I0e521eec2784af99ff741a1132a3bc3f7b7aa071
/frameworks/base/core/java/android/widget/TextView.java
1329192fc317b60a4ebcc4d058d8545f6f8743aa 12-Aug-2011 Gilles Debunne <debunne@google.com> Merge "Bug 5150869: Text selection enabled in browser."
2237829e770dfb17496796154436d04a08d7a2aa 12-Aug-2011 Gilles Debunne <debunne@google.com> Bug 5150869: Text selection enabled in browser.

After text selection is started, rebuildWebTextView is called, which
calls setHorizontallyScrolling with false (multi-line). This was already
its value, but since there was no test for a value change, the layout was
nulled and this stops the selection mode.

Change-Id: I99aadbf45fca4fbdbe8ab7266fe9a7ff839e2792
/frameworks/base/core/java/android/widget/TextView.java
8a5c6617d513bd0a47c733520facb3ba543b70b0 11-Aug-2011 Dianne Hackborn <hackbod@google.com> Merge "Fix issue #5016544: IME keyboard hides folder rename text field."
072b50c6671e06707563864007f3ca491ea02435 03-Aug-2011 Gilles Debunne <debunne@google.com> SuggestionEnabled flag enforced in ActionPopup

Also removed the Nothing to paste string (and its references)

Change-Id: Iaed952075e9e72dcb962ca52341615bc57cb4047
/frameworks/base/core/java/android/widget/TextView.java
70a3f677bf015d8641f41d149b76d362bb2b801c 08-Aug-2011 Dianne Hackborn <hackbod@google.com> Fix issue #5016544: IME keyboard hides folder rename text field.

Tweak some issues in TextView with the focus rect used to determing
where the scroll position needs to be. The ultimate problem was that
in various situations it would use the right-most selection position
cursor as the scroll location and when it adds 1 to make this a valid
rect we end up with a rectangle that is outside of the view.

Change-Id: Ia200c58e4e014d2a0a1be4761f9a1e5eb702a8e5
/frameworks/base/core/java/android/widget/TextView.java
1f6ac8b1e05a15739961aeb1640c0007c492bae1 09-Aug-2011 Gilles Debunne <debunne@google.com> Merge "Handles' position are updated in case of external change."
cb2516bb660c6035f1e75dffa45fdf3cd5fc620d 06-Aug-2011 Gilles Debunne <debunne@google.com> The PASTE action is always displayed, even when starting a selection

Change-Id: I5269490f411de2bf6195956aead240a3908026e7
/frameworks/base/core/java/android/widget/TextView.java
232cbab493013b961b1526cd3a3e6638643ef312 06-Aug-2011 Gilles Debunne <debunne@google.com> Handles' position are updated in case of external change.

A 'Select All' for instance will alter the selection and the handles
have to updated accordingly.

Change-Id: I8ac91c858e7944a7b4ce1b37a3d90609a3003d22
/frameworks/base/core/java/android/widget/TextView.java
7abaecc3dbb610b24e22685e6aa749c7011be1eb 04-Aug-2011 Svetoslav Ganov <svetoslavganov@google.com> Merge "Removing firing of spurious scroll accesibility events."
eba69ac07085089194b4a1403f6b698605adf417 04-Aug-2011 Gilles Debunne <debunne@google.com> Merge "A tap on the insertion handle is only handled if it has not been moved"
c0e74ca82285d09fd5253f39c63610fa9553906d 03-Aug-2011 Gilles Debunne <debunne@google.com> Merge "Bug 5050963: Suggestion popup moves with its associated TextView"
040023a4813d5a546b5ddaadde0eeea328615923 03-Aug-2011 Gilles Debunne <debunne@google.com> A tap on the insertion handle is only handled if it has not been moved

Without this test, an arbitrary drag of the handle that happens to end next to
where it started triggers the replace/paste action popup window, which is very
confusing.

Change-Id: Ib1f848147a1c12c231a28f2e730eccaf5321f85c
/frameworks/base/core/java/android/widget/TextView.java
21078e4349568210b8c1909999d7714d57f3fff5 02-Aug-2011 Gilles Debunne <debunne@google.com> Bug 5050963: Suggestion popup moves with its associated TextView

Generalisation of the onPreDraw listener pattern for all popup windows
(SuggestionsPopupWindow, ActionPopupWindow and HandleView).

Added a shared PositionListener class that tracks movements of the
parent's TextView and limit calls to hierarchy to get this position from
different places.

See also bug 5106062.

Change-Id: Ia2fe9509fa7df683acc859f9871bf4630c2da4dc
/frameworks/base/core/java/android/widget/TextView.java
6805545649f2b194859033df94602492b9ec086e 03-Aug-2011 Romain Guy <romainguy@google.com> Add the ability to enable/disable marquee fading per device

Change-Id: I4211553455e87f0af598a2fac1d4f65f15c294fc
/frameworks/base/core/java/android/widget/TextView.java
e3f89c08f24c88d8758bc8ad2f67ce00790b2120 01-Aug-2011 Luca Zanolin <zano@google.com> Sort the suggestions based based on the length of the text they are attached too.

When the suggestions are displayed, the shortest one will be at the top of the list, as they are the most relevant one.

Bug: 5006130

Change-Id: Id3ac3accce5198a6a58a0c3028ee5f77957ceac6
/frameworks/base/core/java/android/widget/TextView.java
4e03f5910cf641e2610f4cbe3fc24d84c430d1e8 30-Jul-2011 Svetoslav Ganov <svetoslavganov@google.com> Removing firing of spurious scroll accesibility events.

1. Adding a TextView to a layout fires an accessibility scroll event
with mScrollX = 8144. Now TextView does not fire scroll events
since they are not interesting for accessibility and also the
implementation fires scroll to frequently - though correctly.

2. AbsListView was firing accessibility events for the same location.
Here the caveat is that this class does not know its height and
calls onScrollChange every time is scroll as seen by the user
may have changed but for accessibility purposes we care for the
start and end indices of visible views. The fix is to avoid
sending access events with duplicate data.

bug:5097467

Change-Id: I7bf11efd638ea3673843f1095a03f518e57cfe9d
/frameworks/base/core/java/android/widget/TextView.java
0ef92056b7ce67922e868057d398caf51a89a372 29-Jul-2011 Svetoslav Ganov <svetoslavganov@google.com> Merge "Improving accessibility feedback for two state widgets."
7650259a597dd24137420d32acc35efc44db381e 29-Jul-2011 Svetoslav Ganov <svetoslavganov@google.com> Improving accessibility feedback for two state widgets.

1. Added population of sensible text for the state of the
two state controls such as CheckBox, Switch, etc. This
is important since if they are in a layout manager which
fires an accessibility event there should be a description
of the widget.

bug:5092552

Change-Id: Ie3ca955653563496b84db379ae23a23fe88089a8
/frameworks/base/core/java/android/widget/TextView.java
646f856ec8675a2b00fffd55559a8fed6d348005 28-Jul-2011 Gilles Debunne <debunne@google.com> New interaction model for suggestions

Double tap and long press both start a text selection mode. The previous 'Paste'
popup window associated with insertion handle is now also used in selection mode.
It offers a new 'Replace' option that will popup the suggestion list.

The HC paste/side/nopaste layout are no longer used. For the new action popup
window, I also chose not to make the new background / text appearance styles
themable in order to avoid the same problem in case this design evolves again.

Known problems:
the popup is not moved when the TextView is scrolled.
the final visual style may change
the "ADD TO DICT" option is missing from the suggestion list
no interaction with the spell checker
- There are different bugs open for each of these

Change-Id: I167841f5ac017227fe4efa616eb935247250871a
/frameworks/base/core/java/android/widget/TextView.java
2888524e03896831f487e5dee63f18f1c33c0115 26-Jul-2011 Gilles Debunne <debunne@google.com> Bug 4987014: a tap outside dismisses the text suggestion popup

Change-Id: I61f5a3c981770393aa861c88d989c653ea00a067
/frameworks/base/core/java/android/widget/TextView.java
31a41d35f64c016c63eebaaceff938a0ca40b122 11-Jul-2011 Gilles Debunne <debunne@google.com> Bug 4534376: Suggestion popup is not clipped.

This happened when the popup was larger than the screen because of a very long suggestion.
The text will now be ellipsized with a marquee (better than using 2 lines I believe).

Also removed the up layout that was intended to be used when the popup did not fit vertically.
The popup is moved up instead if needed.

Change-Id: Ie741610e74ade10c691614f1c30d0e17b213c698
/frameworks/base/core/java/android/widget/TextView.java
317ab3427afa24cbe71bf339903c9764dcafe93b 21-Jul-2011 Gilles Debunne <debunne@google.com> Merge "Suggestions are dismissed by back key"
caed51bcc23303182ffffb8b2db04647845bc1f5 20-Jul-2011 Gilles Debunne <debunne@google.com> Merge "Insertion handles fades out after being positionned"
59f13c7dfb3cb38f03b7cc207d8e381f6274bfef 20-Jul-2011 Romain Guy <romainguy@google.com> Prevent NPE in TextView.getFadeTop()
Bug #5051776

Change-Id: I2fc1ac4b31c06cfb224898ff39f6b63bfbcd77e8
/frameworks/base/core/java/android/widget/TextView.java
3784a7f6f8483e6bc9e8624d454f8e90d20ed8ad 15-Jul-2011 Gilles Debunne <debunne@google.com> Insertion handles fades out after being positionned

Change-Id: I08b497222fd585a39cbd04b7be1992acf1a70145
/frameworks/base/core/java/android/widget/TextView.java
1003aeb9dee6cb9ccb9991b32a6be94cd933d0ce 20-Jul-2011 Romain Guy <romainguy@google.com> Merge "Reduce the fade area to save bandwidth."
f2fc460a9512500d9d5749fbaada88903d8e3b22 20-Jul-2011 Romain Guy <romainguy@google.com> Reduce the fade area to save bandwidth.

Change-Id: I8ccea17fc1fb3c132329baa0acc1b3d5a140a5c6
/frameworks/base/core/java/android/widget/TextView.java
f66fdadefb3f15b647ffca57667233d8abfc14e0 19-Jul-2011 Fabrice Di Meglio <fdimeglio@google.com> Code cleaning

- follow member name code style

Change-Id: I7a3540ee511aa600c71d2e4b9b7e7f94e47618a9
/frameworks/base/core/java/android/widget/TextView.java
6dd005b48138708762bfade0081d031a2a4a3822 18-Jul-2011 Dianne Hackborn <hackbod@google.com> I. Can. Not. Stand. ViewAncestor.

It was done so we would have the name "ViewRoot" available for a
public API. However, the name "ViewAncestor" just makes no sense.
So instead, change it to ViewRootImpl.

Change-Id: If9599ca67896f339f6fefa7d1dde121201171d97
/frameworks/base/core/java/android/widget/TextView.java
176ee3d0f24e10e980069158518aa05c0dc466c1 16-Jul-2011 Gilles Debunne <debunne@google.com> Bug 5037953: Fix NPE in bringPointIntoView

Change-Id: If711f65de1a70ac9132b0b853a9f336ec56355b8
/frameworks/base/core/java/android/widget/TextView.java
9703ac8e6f98346a659fd4dbd112f82b558b6de1 16-Jul-2011 Fabrice Di Meglio <fdimeglio@google.com> Merge "Some code refactoring"
c7f2cdea3c16b7303c8f897293e9816029edd1d0 15-Jul-2011 Gilles Debunne <debunne@google.com> Merge "Bug 4382356: No automatic focus change in ScrollViews"
8202cd3602b87634eeb8b2729612d96f8dbf9416 15-Jul-2011 Gilles Debunne <debunne@google.com> Bug 4382356: No automatic focus change in ScrollViews

The current behavior in ScrollView is inconsistent: a slow scroll will
not change focus while a fling will. With this change, the focus is not
moved from field to field (resulting in poup due to keyboard / suggestion bar
state changes).

Also made sure any new input in a TextFields scrolls back the view to make the
EditText visible. Has no effect if the EditText is already visible.

Change-Id: I7ff301fe85f73c27d76e4893aeab7442d0539b13
/frameworks/base/core/java/android/widget/TextView.java
50e95eba5c7cf70a0ecbc50c0cf5b700201aa67f 15-Jul-2011 Fabrice Di Meglio <fdimeglio@google.com> Merge "Implement textDirection heuristic selection."
38143a682274dd5f9212d9092ed3553f2ec3e88c 15-Jul-2011 Gilles Debunne <debunne@google.com> Merge "Bug 5014726: Paste works in ExtractedText"
d2b5d1cf4aaa5ce95803a837f563292763184302 14-Jul-2011 Fabrice Di Meglio <fdimeglio@google.com> Some code refactoring

- make Layout.Alignment.ALIGN_LEFT as the default case
- update unit tests for reproducing bug #5002512

Change-Id: Id7ec17abd115bcda7f3434e6d64dbbba6915f108
/frameworks/base/core/java/android/widget/TextView.java
cb379120456d8065d742021fc5c66748fc8a11a8 07-Jul-2011 Doug Felt <dougfelt@google.com> Implement textDirection heuristic selection.

Change-Id: I2fcf18de573f2d66494fa5ed61e4273c3c6078c7
/frameworks/base/core/java/android/widget/TextView.java
a6c53c79390e719ae425d38d6d80587e0d017ef3 13-Jul-2011 Fabrice Di Meglio <fdimeglio@google.com> Merge "Introduce TextView drawableStart and drawableEnd"
459ac63adae54bafff2391f1f60c607f5deece4a 13-Jul-2011 Gilles Debunne <debunne@google.com> Bug 5014726: Paste works in ExtractedText

Change-Id: I3eb72001662cf9df0a94377f98ba22b19c490fa4
/frameworks/base/core/java/android/widget/TextView.java
a3b6b95f9943b53d25d44a35082f817802d4eccd 30-Jun-2011 Fabrice Di Meglio <fdimeglio@google.com> Introduce TextView drawableStart and drawableEnd

- update also unit tests

Change-Id: I20b82f5fea2cc48c93fd9e26eb03290ad730c08a
/frameworks/base/core/java/android/widget/TextView.java
4a7199ae2b25ad57ae9c3a634aacd1315afe4041 11-Jul-2011 Gilles Debunne <debunne@google.com> Suggestions are dismissed by back key

Also changed back when in text selection mode: selection mode / suggestion are hidden
first, before the IME is dismissed.

Bug 4541805.

Change-Id: I71ee7fe2fdf9e882d059482aa29dd45ade3e5dbe
/frameworks/base/core/java/android/widget/TextView.java
bb588da7b16734c89618e91d7f6d53db39f1266c 12-Jul-2011 Gilles Debunne <debunne@google.com> Refactored TextView selectable state methods.

There were inconsistencies across methods on how to decide if text is selectable.

Fleshed up textCanBeSelected to support all cases (including non editable textIsSelectable).

onTouchEvent removed from CursorController, test in SelectionModifierCursorController for
editable text is not needed since it is conditionned by an hasSelectionController().

Bug 5016955: protection in offset for text selection

Change-Id: I1e39f7c4a859476e0220e72a4e490b43e60b4a9a
/frameworks/base/core/java/android/widget/TextView.java
25b9f42737c60c052c0f8279d748c619e39935a8 11-Jul-2011 Doug Felt <dougfelt@google.com> Fix scrolling bug causing centered cursor.

Change-Id: I792a2c4d291e2ac5f0d1ed6e74f5e2ecb395c010
/frameworks/base/core/java/android/widget/TextView.java
7f86c806ada21fc7a3feefd89d6fcb4282b0af40 02-Jul-2011 Fabrice Di Meglio <fdimeglio@google.com> Fix View reset of layoutDirection and textDirection

- do it in onDetachedFromWindow()
- make naming consistent too
- update unit tests

Change-Id: I320fcdbf75166bae793c4409e7344608b696667f
/frameworks/base/core/java/android/widget/TextView.java
7f8f79a1ff086c04a3ad2a442b1d39a8186e3e50 08-Jul-2011 Adam Powell <adamp@google.com> Add ALL CAPS style to TextView/TextAppearance

Switch out ugly hack in action menu items for the new style.

Change-Id: I68a0ed62a352b14d499e6478b82bbc12dcb5a030
/frameworks/base/core/java/android/widget/TextView.java
35aecd5884a5ccfe380903e39f30f468315e8f92 01-Jul-2011 Adam Powell <adamp@google.com> Updates for action menus

Sync with UX designs for action menus in split action bar mode.
Layout is now based on a grid cell scheme.

Tweak action menu item layouts.

Fix some bugs with drawing LinearLayout dividers.

Rename config resources to follow convention.

Action bar menu items now show text in ALL CAPS. This is done in a
locale-dependent manner, but if it produces problems in specific
locales the config resource config_actionMenuItemAllCaps should be set
to false for that locale.

Change-Id: I064c2dd85e012e89551f29153efcfc17f9106333
/frameworks/base/core/java/android/widget/TextView.java
f03712bf540db15d0594b848e63c207fd50e9379 02-Jul-2011 Fabrice Di Meglio <fdimeglio@google.com> Merge "Fix default TextView textDirection heuristic"
0b28c757adfec4302b144d8230c01c04ae00ca2b 01-Jul-2011 Fabrice Di Meglio <fdimeglio@google.com> Fix default TextView textDirection heuristic

- use "first strong" instead of "locale"
- optimize "any rtl" heuristic too
- fix a few wording issues too

Change-Id: I239a11a49a7a6a6d45165f593c96e8b6b84f0661
/frameworks/base/core/java/android/widget/TextView.java
0e591ab277e777b0422463823e3abf28bb1fd5d8 01-Jul-2011 Fabrice Di Meglio <fdimeglio@google.com> Merge "Add charCount heuristic to TextView textDirection"
8f5026562f26dcde43ee9d9182b309c3204dc1ad 30-Jun-2011 Fabrice Di Meglio <fdimeglio@google.com> Add charCount heuristic to TextView textDirection

- threshold set to 60% (using a constant)
- fix also one issue during layout direction resolution (parent could be null so delay resolution
up to when parent is no more null)

Change-Id: I65f24a297aac6bc0d5d482ee31b55db0b201e5bf
/frameworks/base/core/java/android/widget/TextView.java
fe8b06cfb4cb4991bcfd09ffa60dcbb7b48ee45f 30-Jun-2011 Fabrice Di Meglio <fdimeglio@google.com> Merge "Support control of text alignment."
c0ccf0c47c00942a9d0f2670600a8f2d4d7adb5b 24-Jun-2011 Doug Felt <dougfelt@google.com> Support control of text alignment.

Change-Id: Id6f3682f67ba2e6811e3014cd34a281e6dd0a469
/frameworks/base/core/java/android/widget/TextView.java
83955ef12fb324fb3d407c5ea08769f267af7074 29-Jun-2011 Fabrice Di Meglio <fdimeglio@google.com> Merge "Add textDirection support for TextView and ViewGroup"
863fcd62171e55bc9f2105d9fb5877df982454d8 21-Jun-2011 satok <satok@google.com> Add onClickView to InputMethodService

Bug: 4697141

- onClickView is called everytime the user taps EditText

Change-Id: Ia71ad325e50a20e9e1001def662ef992bb50a9d0
/frameworks/base/core/java/android/widget/TextView.java
222688682e6e072076489d8203d01bdf2366101a 28-Jun-2011 Fabrice Di Meglio <fdimeglio@google.com> Add textDirection support for TextView and ViewGroup

- use ViewGroup inheritance if defined
- use different heuristics (inherit, firstStrong, anyRtl, ltr, rtl)
- add more unit tests

Change-Id: Ic1325aa7d9e4689b181e0a2d08b7dd7fb3f0dbeb
/frameworks/base/core/java/android/widget/TextView.java
a0156177cdc809795dd8bc5a19943dd2b6f82b66 27-Jun-2011 Svetoslav Ganov <svetoslavganov@google.com> Added scroll and text selection change accessibility events.

1. Added scrolling accessibility event to provicde feedback
when a view is scrolled.

Note: We need scroll events for ICS since even though we have
touch exploration the user does not know when something
is scrollable and not feedback is provided while scrolling.

bug:4902097

2. Added a text selection change event to provide feedback
for selection changes including cursor movement.

Note: We need the text selection change events for ICS since
even though the IME supports navigation in text fields
the user receives no feedback for the current selection/
cursor position.

bug:4586186

3. Added a scrollable property to both AccessibilityEvent and
AccessibilityNodeInfo. The info has to describe the source
in terms of all properties that make sense for accessibility
purposes and the event has this property (kinda duplicated)
since clients will aways want to know if the source is
scrollable to provided clue to the user and we want to avoid
pulling the info of the source for every accessibility event.

Change-Id: I232d6825da78e6a12d52125f51320217e6fadb11
/frameworks/base/core/java/android/widget/TextView.java
3af0b4e1250aaaf4502eaa05131a3d06342d562c 24-Jun-2011 Guang Zhu <guangzhu@google.com> Case insensitive for real

previous code was comparing to the unconverted CharSequence, so
it's never going to find a match if the string is mixed case

Change-Id: Ifd537d9781b7da1a2328f01b6f2f3229ca7d950b
/frameworks/base/core/java/android/widget/TextView.java
ec39c234bde97336aae18994efe67424527f3fa2 22-Jun-2011 Svetoslav Ganov <svetoslavganov@google.com> Searching for AccessibilityNodeInfo by text not case insensitive.

1. The query string was not converted to lower case during search
for infos with text.

bug:4818098

Change-Id: Ie4ba8ac2632072bdd71070ec8fd24ca255560ac0
/frameworks/base/core/java/android/widget/TextView.java
0656bc32fa8bb59dae502a0f1409afe47f9f638d 15-Jun-2011 Gilles Debunne <debunne@google.com> Merge "Bug 4579629. Send before and after text when suggestion is picked."
c0053223bedf33581b0830fb87be32c1f26e5372 13-Jun-2011 Fabrice Di Meglio <fdimeglio@google.com> Add View.getResolvedLayoutDirection()

- update Callback2 interface
- update Gravity.getAbsoluteGravity() and Gravity.apply() to be more generic
by changing "boolean isRtl" parameter to "int layoutDirection"
- fix BiDiTests for RTL FrameLayout

Change-Id: I97bb456c22d5fd3ecb34f08564ce4dbed37e7459
/frameworks/base/core/java/android/widget/TextView.java
4d8028082127003852016a6a1f480f5286118f96 14-Jun-2011 Gilles Debunne <debunne@google.com> Bug 4579629. Send before and after text when suggestion is picked.

Change-Id: Iaf8ad50b19e7301ece1a5a7a13b3bc604c817fd6
/frameworks/base/core/java/android/widget/TextView.java
ed6741817a6c075a306b5e9c63e6c08abc5b8dc6 03-Jun-2011 Gilles Debunne <debunne@google.com> Text selection on phone

Exception on device rotation due to a removed test for existing selection.

onPreDraw is called for the PhoneWindow, updating container position, but before
the popup window is layout. Added a flag to force a new update after the layout.

Change-Id: I0f833c689a367ef76144230df28afa48db9ad950
/frameworks/base/core/java/android/widget/TextView.java
8643aa0179e598e78d938c59035389054535a229 20-Apr-2011 Svetoslav Ganov <svetoslavganov@google.com> Interrogation of the view hierarchy from an AccessibilityService.

1. Views are represented as AccessibilityNodeInfos to AccessibilityServices.

2. An accessibility service receives AccessibilityEvents and can ask
for its source and gets an AccessibilityNodeInfo which can be used
to get its parent and children infos and so on.

3. AccessibilityNodeInfo contains some attributes and actions that
can be performed on the source.

4. AccessibilityService can request the system to preform an action
on the source of an AccessibilityNodeInfo.

5. ViewAncestor provides an interaction connection to the
AccessibiltyManagerService and an accessibility service uses
its connection to the latter to interact with screen content.

6. AccessibilityService can interact ONLY with the focused window
and all calls are routed through the AccessibilityManagerService
which imposes security.

7. Hidden APIs on AccessibilityService can find AccessibilityNodeInfos
based on some criteria. These API go through the AccessibilityManagerServcie
for security check.

8. Some actions are hidden and are exposes only to eng builds for UI testing.

Change-Id: Ie34fa4219f350eb3f4f6f9f45b24f709bd98783c
/frameworks/base/core/java/android/widget/TextView.java
a556abfb3d9ace5f6d179cf0831138fe9c580146 07-Jun-2011 Fabrice Di Meglio <fdimeglio@google.com> Merge "Rename Gravity BEFORE/AFTER to START/END"
9e3b002d3f9141d54948a65e0330fdcd09e75a30 07-Jun-2011 Fabrice Di Meglio <fdimeglio@google.com> Rename Gravity BEFORE/AFTER to START/END

- following spec proposal for having CSS3 like naming

Change-Id: Id5e316a2d9b54b9f20bbcb168fea6a3a83882e1b
/frameworks/base/core/java/android/widget/TextView.java
371790b77491c1ea6a4abeb334143fa3a58e0652 04-Jun-2011 Jeff Brown <jeffbrown@google.com> resolved conflicts for merge of 955e8d79 to master

Change-Id: I90b0d523053d173b7df60ebc975de65ab387ff18
ea28694aee64837bb74130716e45b89fce342651 03-Jun-2011 Fabrice Di Meglio <fdimeglio@google.com> Fix default TextView gravity

- default set to Gravity.TOP | Gravity.BEFORE instead of Gravity.TOP | Gravity.LEFT

Change-Id: I5e528fb1d0a6e3c84dd506e899df33c9b58d25f3
/frameworks/base/core/java/android/widget/TextView.java
793a940b84b376bed3be606c2b0f25adef69e20c 03-Jun-2011 Gilles Debunne <debunne@google.com> Tap timeout removed on paste. Relying on position only.

Change-Id: I2e2b4a68f17957a2631a545badd602e4d127cfc3
/frameworks/base/core/java/android/widget/TextView.java
aa67eef1b64fd52366bcba339150ce571bc1409b 02-Jun-2011 Gilles Debunne <debunne@google.com> Remove suggestion span underline on device rotation

Change-Id: I2fca995f839eff84ee8c62289f6f110ebb8dd321
/frameworks/base/core/java/android/widget/TextView.java
829de65b9aa8d59cff7d8b4acd6c89682a1952a5 01-Jun-2011 Gilles Debunne <debunne@google.com> Merge "Select all for text shown as an icon on smaller screens"
5e9af2ddf09cd2dbb9d7c1a07f9dab8b262077b8 28-May-2011 Gilles Debunne <debunne@google.com> Select all for text shown as an icon on smaller screens

Text has been removed to leave space for 4 icons, that should fit
even in portrait mode.

Note: requires a definitive selectAll icon from designers.

Change-Id: I65547527e9ca872aa8888467f31fa7de9653fa77
/frameworks/base/core/java/android/widget/TextView.java
38fd7cde0bf51f5372c829713ab8578af941fd36 01-Jun-2011 Fabrice Di Meglio <fdimeglio@google.com> Merge "Fix TextView potential NPE in isLayoutRtl()"
83fa41b06e0180d4e86c16f7cb6ae2439183fda8 01-Jun-2011 Fabrice Di Meglio <fdimeglio@google.com> Fix TextView potential NPE in isLayoutRtl()

- test if mDrawables can be null
- see bug #4517017 (was seen with Monkeys)

Change-Id: I07f04c88a238d1cae6fe89b0ab56fc2c456b8534
/frameworks/base/core/java/android/widget/TextView.java
da188fbe4b4d7b91e1440afe5a1279d0fd7a91eb 31-May-2011 Gilles Debunne <debunne@google.com> Merge "Fix for bug 4499752 - Detect nulled layouts in HandleViews"
d4bb0b01c6caccbaef1baec377a59c10790da35c 28-May-2011 Gilles Debunne <debunne@google.com> Fix for bug 4499752 - Detect nulled layouts in HandleViews

Change-Id: I6a7289150bf461cdf4cca0aff4aa4a0400e0d553
/frameworks/base/core/java/android/widget/TextView.java
5ff0f99b23da389f59fe736c4c670c60f13be8ea 27-May-2011 Fabrice Di Meglio <fdimeglio@google.com> Merge "Add support for Gravity BEFORE and AFTER"
6a03640539405afbdefe72894759281b98aa6e6f 23-May-2011 Fabrice Di Meglio <fdimeglio@google.com> Add support for Gravity BEFORE and AFTER

- update layouts
- add Callback2 for RTL aware Drawable
- add unit tests

Change-Id: Ic64d0291e262170aff7297c6580b0b422eaa8d89
/frameworks/base/core/java/android/widget/TextView.java
b1619e5615a295981b6467442783b3e57edf36b3 26-May-2011 Gilles Debunne <debunne@google.com> EditText notifies the IME when a suggestion is picked.

Bug 4443922

Change-Id: Ie1e5a8164bf80bcfb48036c9337e649dc0d8a2fb
/frameworks/base/core/java/android/widget/TextView.java
970ce730175e1d27ce3fc7c179f2d24ecc1b5213 24-May-2011 Gilles Debunne <debunne@google.com> Merge "Made getOffsetForPosition public in TextView."
bd4d5826228d3c3c55a52aa7e175559509ec3498 24-May-2011 Gilles Debunne <debunne@google.com> Merge "TextView uses floats for touch event positions."
9511b41e05312f1f5ed88d22040876218d7bfdd4 24-May-2011 Gilles Debunne <debunne@google.com> Made getOffsetForPosition public in TextView.

Bug 4443839

Change-Id: I3e5d6f0fe3a45b068166f682daf3c4163903306e
/frameworks/base/core/java/android/widget/TextView.java
3bca69b09fb51116b5eb18fb91cb991c1450e384 24-May-2011 Gilles Debunne <debunne@google.com> TextView uses floats for touch event positions.

This is the type returned by event.getX/Y methods. Conversion
to ints is only performed when needed. Low performance impact
since there is only a minimal amount of computations on these
values.

Change-Id: I53a56efe5e3a1a96911adc25fedaab7f40f1ba8e
/frameworks/base/core/java/android/widget/TextView.java
f3a135bfbae0e64cf32dcb21714420ec974b1cab 24-May-2011 Gilles Debunne <debunne@google.com> Added a new flag in TextView to disable Suggestions.

This is needed for specific TextEdit (such as AutoCompleteTextField)
which do not want to display the "No suggestions available" message.

Bug 4443830

Change-Id: Ic228b56bacfdf2765e70eb24952ab087556c1f93
/frameworks/base/core/java/android/widget/TextView.java
73162196e712c5f71238642bf8ca0b5984ee51a4 13-May-2011 Svetoslav Ganov <svetoslavganov@google.com> Merge "Factored out the Accessibility vertical initialization."
30401328c1026389171d454c934c15875c3f7ff0 13-May-2011 Svetoslav Ganov <svetoslavganov@google.com> Factored out the Accessibility vertical initialization.

1. Accessibility events were filled with data in
dispatchPopulateAccessibilityEvent and
onPopulateAccessibilityEvent. These events have
two axis of population 1) up the class
hierarchy to populate information for the event
source; 2) down the view hierarchy to populated
all the text contained in the source including
its descendants. These two axis of population
were done in on population pass now the populating
the source properties happens in initializeAccessiblityEvent
and the text in onPopulateAccessibilityEvent which
is called from dispatchPopulateAccessiblityEvent.

2. Removed the string description from events fired from
CompoundButton since the event has isChecked()
property and it is responsibility of the clients
to decide what utterrance to use and if to use such
for announcing the checked state.

Change-Id: I5d7f75cf8a87a7a4b3bb7b311e8e642ec9a0faa5
/frameworks/base/core/java/android/widget/TextView.java
ee511cc529bcbb8551af4313cf1d2bbf0362de14 05-May-2011 Gilles Debunne <debunne@google.com> SuggestionSpans are preserved when picked.

This is the exception case: text replacement should NOT remove SuggestionSpans
when this is the result of a Suggestion pick in the popup.

Save them and restore them after the text replacement.
Only spans that entirely englobe the replaced region make sense after the
text replacement.

Change-Id: Ib18eb6437c3a63fd0e788ebd4565c8f42e83503b
/frameworks/base/core/java/android/widget/TextView.java
d9fd3d5ca93ba9840a56812752c4b8beaffcdee7 06-May-2011 Gilles Debunne <debunne@google.com> Merge "All SuggestionSpans are removed when the window loses focus."
9de128ef79452dcda91b46f9dea3cb158bfe2eae 05-May-2011 Gilles Debunne <debunne@google.com> Merge "Off by one bug in TextView's suggestions popup."
ba4997ac355d11db3c7b04d4215c6948d05cb047 02-May-2011 Gilles Debunne <debunne@google.com> All SuggestionSpans are removed when the window loses focus.

SuggestionSpans should have a limited, well defined life-span.
Saving these in onSaveInstanceState is inappropriate since these can
be very large and will not necessarily be saved/loaded by the application.

Keeping them in the application when it is dismissed is not consistent
since they may be garbage collected while the application is not active.

Change-Id: Icebf6cb0218528f9d162a689ad33efeb770fbede
/frameworks/base/core/java/android/widget/TextView.java
c6cc0f8c19d9eccf408a443fa2bf668af261dcd0 12-Apr-2011 Joe Onorato <joeo@google.com> Rename ViewRoot to ViewAncestor.

ViewRoot is about to be a new public class for poking at ViewAncestor.

Change-Id: Ie95d707c6d8bbb48f78d093d7b2667851812a7d5
/frameworks/base/core/java/android/widget/TextView.java
6e222bcadbf15f4c34b63394831f80f7c82199b4 04-May-2011 Gilles Debunne <debunne@google.com> Off by one bug in TextView's suggestions popup.

Change-Id: I39615bb75e1e2e24ba5c5a65f1b3e11f8fadd89f
/frameworks/base/core/java/android/widget/TextView.java
f0f955e2c3440d835bfffffdec31c980d9a1ffd9 30-Apr-2011 Svetoslav Ganov <svetoslavganov@google.com> Merge "Touch exploration - nits"
887e1a17eb9b12448f5929791b564565b2665aab 30-Apr-2011 Svetoslav Ganov <svetoslavganov@google.com> Touch exploration - nits

Change-Id: Ie49558e0a81218dbad70c02f81dd7a59b3213d5c
/frameworks/base/core/java/android/widget/TextView.java
939ccad344c5f32bc9e7dbfa80648c1e75cac62a 29-Apr-2011 Gilles Debunne <debunne@google.com> Merge "SuggestionSpans are removed around edited text."
75beb336f4b164c3bed5d4b91f0b9c6ea49a3437 29-Apr-2011 Gilles Debunne <debunne@google.com> SuggestionSpans are removed around edited text.

SuggestionSpans do not make sense anymore when the text they
refer to is modified. Removed these at the lowest possible common
level: In the SpannableStringBuilder that is used to back the Editable.

This way, IME do not have to care about removing these when they change
text. And they cannot forget to so either.

Also fixed a bug in TextView's paste with multi-item paste text (never
exercised, since we have no source for such a thing).

Change-Id: I08ed921f8c04ffb1a00936a3e554a85ee82f103c
/frameworks/base/core/java/android/widget/TextView.java
8e3b17ad13a07ccfe904fa787c0be4cc92d85c0b 29-Apr-2011 Gilles Debunne <debunne@google.com> Merge "TextView uses WordIterator to select words."
c59269f4d3a0a3bd7220b797b04ca037c7b54c75 22-Apr-2011 Gilles Debunne <debunne@google.com> TextView uses WordIterator to select words.

Also added some boolean return values to know when selection is
possible.

Change-Id: Ic6763509318c56fcef49349d586e45d14d58a86a
/frameworks/base/core/java/android/widget/TextView.java
214a8627c5688b7d942a1209fa38eda4a24a7240 27-Apr-2011 Gilles Debunne <debunne@google.com> Support for overlapping spans in TextView's suggestions.

Implemented the merging of the different spans, highlighting words that actually differ.

Some TODO left in the code.

Change-Id: Iaf01f36b07d01639a4009cced6ea9b055ce9cc1f
/frameworks/base/core/java/android/widget/TextView.java
736c2756bf3c14ae9fef7255c119057f7a2be1ed 23-Apr-2011 Svetoslav Ganov <svetoslavganov@google.com> Touch exploration feature, event bubling, refactor

1. Added an Input Filter that interprets the touch screen motion
events to perfrom accessibility exploration. One finger explores.
Tapping within a given time and distance slop on the last exlopred
location does click and long press, respectively. Two fingers close
and in the same diretion drag. Multiple finglers or two fingers in
different directions or two fingers too far away are delegated to
the view hierarchy. Non moving fingers "accidentally grabbed the
device for the scrren" are ignored.

2. Added accessibility events for hover enter, hover exit, touch
exoloration gesture start, and end. Accessibility hover events
are fired by the hover pipeline. An accessibility event is
dispatched up the view tree and the topmost view fires it.
Thus predecessors can augment the fired event. An accessibility
event has several records and a predecessor can optionally
modify, delete, and add such to the event.

3. Added onPopulateAccessibilityEvent and refactored the existing
accessibility code to use it.

4. Added API for querying the currently enabled accessibility services
by feedback type.

Change-Id: Iea2258c07ffae9491071825d966dc453b07e5134
/frameworks/base/core/java/android/widget/TextView.java
c1e1f43dab96a317f58e31137c49a4df2e919b83 23-Apr-2011 Adam Powell <adamp@google.com> Merge "Revert "Touch exploration feature, event bubling, refactor""
3fb3d7c4e756bd32d5abde0abca9ab52d559bc84 23-Apr-2011 Adam Powell <adamp@google.com> Revert "Touch exploration feature, event bubling, refactor"

This reverts commit ac84d3ba81f08036308b17e1ab919e43987a3df5.

There seems to be a problem with this API change. Reverting for now to
fix the build.

Change-Id: Ifa7426b080651b59afbcec2d3ede09a3ec49644c
/frameworks/base/core/java/android/widget/TextView.java
3f92b8b18856371f561955197b488191433977e6 23-Apr-2011 Fabrice Di Meglio <fdimeglio@google.com> Merge "Clean getTextRunAdvances() APIs"
f9fa622cc04028fd7c5f5036ea2e0ccfb80d55f3 23-Apr-2011 Svetoslav Ganov <svetoslavganov@google.com> Merge "Touch exploration feature, event bubling, refactor"
2037b827f3e3955ca3b05fd372bf4bac82764333 22-Apr-2011 Gilles Debunne <debunne@google.com> Refactoring in TextViews' handles

The position of the container has to be updated on each frame
in preDraw, since the handles' positions can be modified programatically.
Updating position when the handle is dragged is no longer sufficient and
now redundent.

Change-Id: I304b13089f4327baad2e8d4c0974c649bef1e883
/frameworks/base/core/java/android/widget/TextView.java
ac84d3ba81f08036308b17e1ab919e43987a3df5 05-Apr-2011 Svetoslav Ganov <svetoslavganov@google.com> Touch exploration feature, event bubling, refactor

1. Added an Input Filter that interprets the touch screen motion
events to perfrom accessibility exploration. One finger explores.
Tapping within a given time and distance slop on the last exlopred
location does click and long press, respectively. Two fingers close
and in the same diretion drag. Multiple finglers or two fingers in
different directions or two fingers too far away are delegated to
the view hierarchy. Non moving fingers "accidentally grabbed the
device for the scrren" are ignored.

2. Added accessibility events for hover enter, hover exit, touch
exoloration gesture start, and end. Accessibility hover events
are fired by the hover pipeline. An accessibility event is
dispatched up the view tree and the topmost view fires it.
Thus predecessors can augment the fired event. An accessibility
event has several records and a predecessor can optionally
modify, delete, and add such to the event.

3. Added onPopulateAccessibilityEvent and refactored the existing
accessibility code to use it.

4. Added API for querying the currently enabled accessibility services
by feedback type.

Change-Id: Iec03c6c3fe298de3f14cb6efdbb9b198cd531a0c
/frameworks/base/core/java/android/widget/TextView.java
0a1413e4bf9dcda2a8abb2287e43f612a7fb2453 22-Apr-2011 Fabrice Di Meglio <fdimeglio@google.com> Clean getTextRunAdvances() APIs

- remove ICU reference in API names
- use a "reserved" int parameter to pass either "0" for Harfbuzz or "1" for "ICU"

Change-Id: I88b4f76feafd203a6999cd7349402fa36a9a4b2a
/frameworks/base/core/java/android/widget/TextView.java
b3fc1a5b8b8f88eaf00b05957523cbdc0944b24b 06-Apr-2011 satok <satok@google.com> Rename CorrectionSpan to SuggestionSpan

Change-Id: I004b2e012b2de4de959a31da1f55b63ca7c14199
/frameworks/base/core/java/android/widget/TextView.java
6a839703cd9aa72f5c6f107d0a8f894601d5c308 07-Apr-2011 Gilles Debunne <debunne@google.com> Merge "Word suggestion popup added to EditText."
6934044fd7d2de12c21e3cc9b7da589ec3b71e8e 31-Mar-2011 Gilles Debunne <debunne@google.com> Word suggestion popup added to EditText.

A double tap on a word will now display a list of suggestions based
on the CorrectionSpans that were added by the IME.

This is a first implementation of this feature. It needs some attention from
designers.

Change-Id: If863107681ce82a1639f21315878f830c2991fb7
/frameworks/base/core/java/android/widget/TextView.java
c5a43594babeabe965e6f386259431e9712951a0 04-Apr-2011 Gilles Debunne <debunne@google.com> IME is no longer shown when an EditText gets focus.

Change-Id: Ife24f83831f97c911e4e800547182a390cda0d75
/frameworks/base/core/java/android/widget/TextView.java
eee49c699c035ffba188417489f40d34f587d65c 25-Mar-2011 Fabrice Di Meglio <fdimeglio@google.com> Fix text redering issue where the text was sometimes truncated

- mostly was visible in Settings apps / Wi-Fi networks summary info for each network
- correctly setup the local SkPaint for advances computation
- improve test app for adding live resizing

Change-Id: Ia031fe1b115b521ba55c7e68f2a26300f02e48ca
/frameworks/base/core/java/android/widget/TextView.java
e3797a15fbf769a0abcbe121cfd33b4b658aea1e 21-Mar-2011 satok <satok@google.com> Removed APIs for setCorrectionSpan from InputConnection

("setCorrectionSpan" was added in Id3abc9ea4d11753cd )

Also..
- Added a class java doc for CorrectionSpan
- Removed FLAG_DEFAULT
- Changed the return type of getSuggestions from Array<CharSequence> to String[]

Change-Id: If5eb091e307a7a40c5b4a70ec1fe6059ecd9fb2d
/frameworks/base/core/java/android/widget/TextView.java
6f72cf80576c17b888d4768dfcd14481087b7143 25-Mar-2011 Gilles Debunne <debunne@google.com> Fix a leak in TextView around ViewTreeObserver

Port of AOSP change 21909 into master.

Change-Id: I5a3490a6e0151867840507d0137ee811ea2fb139
/frameworks/base/core/java/android/widget/TextView.java
c0a8cd10a5829bf4e94ee073ba6f553128e9d8e9 19-Mar-2011 Svetoslav Ganov <svetoslavganov@google.com> Text in accessibility events not consistent

bug:2513822

Text added to accessibility events is truncated to max
length. However, the fromIndex and toIndex properties
are relative to the text before being truncated, thus
potentially our of bound. Removed the max length
limitation because test very rarely is longer that
500 characters and in the cases in which text is longer
than 500 character it will not be a real problem to
pass a bit more data through an IPC (very rarely).

Change-Id: Ie70ac630dfeb56d4f59079abb2f46d07582796b6
/frameworks/base/core/java/android/widget/TextView.java
adb435835fb9a5f2bb74d29930b239dde18504a7 09-Mar-2011 satok <satok@google.com> Add CorrectionSpan and APIs to pass a secure CorrectionSpan to TextView

- CorrectionSpan is a span which has suggestions made by IME.
This has a function to change the current IME to other IME specified
in this span. For security reasons, only the current IME
is allowed to use this function through InputConnection.
(IME token is used for checking the validity of it.).

- CorrectionSpan stores following information:

flags, subtype Id, InputMethodInfo Id, suggests, locale, original string

Change-Id: Id3abc9ea4d11753cdc4f483a2bb3128f49ba198a
/frameworks/base/core/java/android/widget/TextView.java
e3f075622da4e78772abf21a5a219a0d48bc6c04 14-Mar-2011 Michael Jurka <mikejurka@google.com> Merge "Removing TextView predraw listeners sooner"
2b942d53297f7091e22ee281f2faf0aacb12fc4b 01-Mar-2011 Michael Jurka <mikejurka@google.com> Removing TextView predraw listeners sooner

Solves issue where the listeners were being run on every frame
/frameworks/base/core/java/android/widget/TextView.java
e1fb6ebd132617508c625aadf646cc88994f4203 14-Mar-2011 Gilles Debunne <debunne@google.com> Merge "Removed empty block warnings in TextView"
d40cc3c58a6c0d4f66bd10ee66a3b978a2b945c6 12-Mar-2011 Gilles Debunne <debunne@google.com> Removed empty block warnings in TextView

Change-Id: Ieec52faa6fa7160fb3f8fca30cdd25125ccd51ee
/frameworks/base/core/java/android/widget/TextView.java
6a85508e9423b3d65681178e873dcad061020d52 12-Mar-2011 Gilles Debunne <debunne@google.com> Wrong null check in TextView

Bug 4087576

Change-Id: I907cb08b24b23715f3900bc076de2cc856650981
/frameworks/base/core/java/android/widget/TextView.java
05bb0105bf053d26173feec5fbc997b2a6e228ca 11-Mar-2011 Gilles Debunne <debunne@google.com> Merge "Refactor in TextView's HandleViews."
180bb1bf26f3061fdfd58106e62d5874f57f675b 10-Mar-2011 Gilles Debunne <debunne@google.com> Refactor in TextView's HandleViews.

HandleView had a reference on its Controller, and Controller had
a reference to its HandleView.

This large refactoring breaks this dependency, creating smarter
HandleView subclasses that don't have to delegate to the controller
anymore.

Change-Id: I472621f747cdc78fd8b2bba84c0edc62cb2f6316
/frameworks/base/core/java/android/widget/TextView.java
52c7ba174ba6edabf7a4c7a69ee124a9e30244e9 10-Mar-2011 Gilles Debunne <debunne@google.com> Removed updateCursorControllerPositions hidden method.

This method is no longer needed since handles' positions are
updated in onPreDraw.

See CL 100549

Change-Id: I7f95d9850c866935c22ecc49c6f4ce89a87861ae
/frameworks/base/core/java/android/widget/TextView.java
4469e60e9e45a67680039bba63063d25019e4cd2 09-Mar-2011 Gilles Debunne <debunne@google.com> Fixed TextView#onTextChanged documentation.

Bug https://code.google.com/p/android/issues/detail?id=14804

Change-Id: I3356800b680ff79cc2fe099845634bb8d9b96ec6
/frameworks/base/core/java/android/widget/TextView.java
682e32b743f36b6864d9909c391c12b754a4301e 08-Mar-2011 Gilles Debunne <debunne@google.com> am 0a301f58: am 949d0c8c: Merge "Text handles positions\' are correctly updated." into honeycomb-mr1

* commit '0a301f58a2b09a3c8aa083574121d21f275f62b9':
Text handles positions' are correctly updated.
716dbf63d4580b3e4d87fec83c633e6ea8730117 08-Mar-2011 Gilles Debunne <debunne@google.com> Removed unnecessary memory allocation in TextView.

No other obvious unneeded memory allocation related to
text editing and selection was found.

Change-Id: I7d8c9210940982120caeb1e7b75d754557ebf6db
/frameworks/base/core/java/android/widget/TextView.java
cfc22c533222f0181be7a717fbf721891d3bfd2d 08-Mar-2011 Gilles Debunne <debunne@google.com> Text handles positions' are correctly updated.

Bug 3510106

The CAB animation does not fire events, which does not update the
handles' positions.

The solution is to make the handle update their position before any
draw traversal, using an onPreDrawListener. The ScrollingPopupWindow
onScroll listener is no longer needed with this change. This is also
a more robust solution since other events (such as animations) may
change the TextView's position.

The cost is a recomputation of the Handles' positions at each redraw
which was not necessary with listeners. But as mentioned before, not
all possible events provide listeners or will in the future.

Change-Id: I0f46118de5f660a75d95eecb2cf987fcb4b3b322
/frameworks/base/core/java/android/widget/TextView.java
059d5affa188406223f00ee24373e85f3ce85cd7 28-Feb-2011 Gilles Debunne <debunne@google.com> Merge "Text selection mode is stopped when View is recycled in ListView"
8f34567c71003505456a9b1a0d461a4e62883d70 26-Feb-2011 Jeff Brown <jeffbrown@google.com> Add scroll wheel support to TextView.

Change-Id: I6e4258c50b0d754dccf07266ff4b2abcbccd733a
/frameworks/base/core/java/android/widget/TextView.java
4b2274fff53356d32e07585a566d2c73c92272a3 26-Feb-2011 Gilles Debunne <debunne@google.com> Text selection mode is stopped when View is recycled in ListView

Change-Id: If09cef9485ccc35c53ad9c7a809c982e32da2f0e
/frameworks/base/core/java/android/widget/TextView.java
b7012e841c8a4590d0c05db21d4bcd7ba48ab310 25-Feb-2011 Gilles Debunne <debunne@google.com> Removed ViewTreeObserver in TextView when handles are hidden

terminate method is no longer needed since handles are popupWindow
which have their own fade-out animations.

Change-Id: I8354f78ece2ffe9c098ef2f02f0d637fc4c813c0
/frameworks/base/core/java/android/widget/TextView.java
808b04abe63eff07a56865786bf321fdc950468c 24-Feb-2011 Gilles Debunne <debunne@google.com> Merge "Cursors correctly displayed with legacy theme."
eca97a320f52db05291019959851d6dd85ba2973 24-Feb-2011 Gilles Debunne <debunne@google.com> Cursors correctly displayed with legacy theme.

Bug 3482848

Change-Id: Ic2eda961a8bb5e865bc638106124d00a5a7b4b21
/frameworks/base/core/java/android/widget/TextView.java
ddf00b8afe43c7c2020f0d085e90f410a689e190 24-Feb-2011 Gilles Debunne <debunne@google.com> Text handles movement improvements.

Bug 3329346

Making sure the cursor is never hidden by the finger. Some
vertical movement is not repercuted on the handles' position
if it moves the finger closer to its 'ideal' touch position,
where both the insertion line and the top of the handle are
visible.

Also removed the hysteresis line filter which is not that
usefull and feels sluggy.

Change-Id: I6ad0fed0cf66753c6571b3bc620b1a0f2397c7b2
/frameworks/base/core/java/android/widget/TextView.java
81f08086b44a117097960195d2c9072e29644962 17-Feb-2011 Gilles Debunne <debunne@google.com> Text selection handles correctly scroll

Bug 3416154

The origin of the problem is new display optimisations that enable
a scrollView to be scrolled without calling the onDraw method of its
children. As a result, the handles' positions were not updated on scroll.

DropDown popup menu have an integrated scroll listener that will fix the
problem. Using these indead is the first part of the solution.

The next problem is that when they get hidden, these popups try to move their
parent (the TextView in our case) which creates a scroll conflict. Fixed by
overriding findDropDownPosition.

Finally, when the handles get invisible, a new scroll listener has to be
installed that will show them back in case the view is scrolled back.

This is also an important step to fix Bug 3441308 (selectable text in list
views).

Debugging find outs:
Small optimization in PopupWindow to avoir unregistering then registering
back the listener when it is updated.

getHandle().show(); is not needed since updatePosition will do it through
moveTo().

Change-Id: I6bf6a3649538328257734ed1e651b23b889d65d9
/frameworks/base/core/java/android/widget/TextView.java
76327dc0a8807a6f1d16d067ca2480a2870baedb 22-Feb-2011 Gilles Debunne <debunne@google.com> Merge "Tuning the touch up filter."
8eb18b114ee96c07940be5ef0228fb38ae4a7a43 22-Feb-2011 Gilles Debunne <debunne@google.com> Merge "Fixes around cursor blink."
0c4650b4d566f65aa6faa9be45e7f1e29148e1a9 22-Feb-2011 Gilles Debunne <debunne@google.com> Merge "Cursor does not jump back to its previous position when IME is showed up."
bc7a4c8cfa3b8352e14e2dcc8f6cd00cc00c7833 09-Feb-2011 Gilles Debunne <debunne@google.com> Tuning the touch up filter.

Bug 3436027

A movement has to happen recently, and there has to have been a stable
period before this.

Also fixes a problem with the paste popup that could be displayed for very
fast motion since it was only based on time and not on distance.

Change-Id: I02264b4d54e4d1323ebc2d1b5102769ba2d8569a
/frameworks/base/core/java/android/widget/TextView.java
3d01006fd6698cc52760527d25611b3c25193330 18-Feb-2011 Gilles Debunne <debunne@google.com> Fixes around cursor blink.

Bug 3394800

A previous fix called cancel when the window was detached. The cancel/uncancel
mechanism does not actually removes the Blink runnable.

It is indeed more a suspend, which is used when the window loses focus.
The problem here was that uncancel was never called.

Removing the runnable callback instead.

Also rationalized the use of makeBlink and the setting of mShowCursor

Change-Id: I92aac43a891991b7cc98738de0f12332ab16907a
/frameworks/base/core/java/android/widget/TextView.java
ad8484b3799ba7046e57388e34ba9a4c0a971b42 18-Feb-2011 Gilles Debunne <debunne@google.com> Cursor does not jump back to its previous position when IME is showed up.

Bug 3441308

This behavior may be restored for phones if appropriate.

Change-Id: Ibc2de587d64d372521da2d54f239cab56f04b407
/frameworks/base/core/java/android/widget/TextView.java
46b7d441c6efa456ad95471d1d06946ea5637232 18-Feb-2011 Gilles Debunne <debunne@google.com> Composing span is removed when insertion point is moved

Bug 3457633

Change-Id: I8896823b7e700dd52acec180c2a1d8e2f6ac5ae1
/frameworks/base/core/java/android/widget/TextView.java
f75c97e023af7d4ad9a8c129d4ea282b1c3b8f94 11-Feb-2011 Gilles Debunne <debunne@google.com> Text insertion cursor is now defined by a Drawable.

Bug 3261766

If defined, the drawable is used instead of directly drawing a 1 pixel
line. This makes the cursor more fancy and more visible.

The drawable is currently clipped by the TextView's limits, which is
currently visible on the left when the cursor is at the first position.
To solve this issue properly, we would need to propagate a do-not-clip
up in the hierarchy.

Change-Id: I99f6001048eed14104994acf6bab942dda8eb38e
/frameworks/base/core/java/android/widget/TextView.java
299733e2b40e77d6d08c749fa8dd8a783857ee0e 08-Feb-2011 Gilles Debunne <debunne@google.com> CTRL+A simply highlights all text.

Bug 3351442

It does not start text selection mode, and does not display selection
handles. Just like a selectAllOnFocus does.

Change-Id: I3b6df3c57abb7cc2cd03a0a67896faeec2ec631f
/frameworks/base/core/java/android/widget/TextView.java
8f8aac5e8adfe14b8a01d90424b1815e0a0ebe28 01-Feb-2011 Gilles Debunne <debunne@google.com> Merge "Pixel were missing on the last line of text when using MaxLines." into honeycomb
0ad4f0963a47feafaaa92a756fb84caab5b6bddb 01-Feb-2011 Gilles Debunne <debunne@google.com> Merge "Patches for the Paste window behavior." into honeycomb
11f9647e03d4e1141bc4312626c8dc9116f1f470 01-Feb-2011 Gilles Debunne <debunne@google.com> Merge "Hint text is visible when using center gravity." into honeycomb
3ce726eb9487bec53d53379b8b35cb84fd387357 01-Feb-2011 Gilles Debunne <debunne@google.com> Patches for the Paste window behavior.

Bug 3409440

Change-Id: Id266bb83aa6e1912817995881daa9c24a1553c32
/frameworks/base/core/java/android/widget/TextView.java
9a80a650467384d582d3cdf13a8136622a831885 31-Jan-2011 Gilles Debunne <debunne@google.com> Hint text is visible when using center gravity.

Bug 3379366

Non left aligned text uses the VERY_WIDE width, but the hint text
was not.

Change-Id: I7327958336acf7fe16bb89bb8b7bf9b869167d53
/frameworks/base/core/java/android/widget/TextView.java
ccfcd9e813d090ec9b4390b5217b32f73dd8263d 31-Jan-2011 Gilles Debunne <debunne@google.com> Merge "Fxi initial error popup dialog in TextEdit and refreshed assets." into honeycomb
0a4db3c5270440eeb7e4e44a7029926e239ec3bd 14-Jan-2011 Gilles Debunne <debunne@google.com> Pixel were missing on the last line of text when using MaxLines.

Bug 3295544

Only the last line of text includes the bottomPadding (extra line
spacing below the characters' descent. When The text is clipped using
maxLines, the desired height correctly added this value, but getLineTop
and getLineDescent are also used when the layout is drawn.

The fix is to make the layout aware of its clipping so that these
values are correctly updated.

Change-Id: I703656cf45022d34a90f55f0ed8fc5e4b30f80b1
/frameworks/base/core/java/android/widget/TextView.java
c9cb30837116b138a91b251e5217a644231eebef 31-Jan-2011 Adam Powell <adamp@google.com> Merge "Fix bug 3405899 - android.view.WindowManager$BadTokenException" into honeycomb
65a1de963a9b93225b67a399c9abc66d9bb8fd6f 31-Jan-2011 Adam Powell <adamp@google.com> Fix bug 3405899 - android.view.WindowManager$BadTokenException

Clear any pending runnables involved with TextViews when cursor
controllers are released

Change-Id: I96898fcc237f20d0b0f2351181244cb171fa2083
/frameworks/base/core/java/android/widget/TextView.java
12ab64593f557674f783e39ab804a7cd033b0050 30-Jan-2011 Gilles Debunne <debunne@google.com> Auto-clearing setError popup

Bug 3403325

Error popup has to be dismissed whether or not the key was handled.

Change-Id: Ib6326b27fc521398f3cb0c546d29a7de9df18375
/frameworks/base/core/java/android/widget/TextView.java
f1f409a389d67dedc4847f802df402e78dd01353 28-Jan-2011 Gilles Debunne <debunne@google.com> Fxi initial error popup dialog in TextEdit and refreshed assets.

Bug 3398923

Set the background of the popup when it is created so that the first
measure is correct.

New assets.

Change-Id: I4803754ef3115429a608d890f56c6b0c8033d253
/frameworks/base/core/java/android/widget/TextView.java
b7fc63f7aac3689696f7f84953009b5928ac3db3 28-Jan-2011 Gilles Debunne <debunne@google.com> Fix for TextView's error popup behavior when using soft keyboard.

Bug 3370191

The documented behavior is to hide the error when the text changes.
However, this should not be the case if the error was reset by a text watcher.

Comparing errorBefore and errorAfter as was done before is not sufficient in the
case where the error is reset to the same value. String pool optimization will re-use
the same Object and it will look like the error has not been modified (hence the
blinking behavior reported in the bug).

For this reason, TextView has a mErrorWasChanged flag. The fix is to export methods
that can use this flag as in done inside TextView when a physical keyboard is used.

These methods are hidden.

Change-Id: Ie3ec59a368f3b1588b81242890b971ac48e8ff7e
/frameworks/base/core/java/android/widget/TextView.java
17d31decef349b4f6026b41a7425a4e64940aef5 27-Jan-2011 Gilles Debunne <debunne@google.com> Soft keyboard is not shown when text selection mode is aborted.

Bug 3381317

Also generalized and uniformized the use of peekInstance. Added null
tests, and isActive tests before hiding.

Change-Id: Ifd1a053fd920841333e0ebab3e2a8d26b469a0f6
/frameworks/base/core/java/android/widget/TextView.java
ddd6f3928756c439e8a7a975a9dc51248f687b7e 27-Jan-2011 Gilles Debunne <debunne@google.com> CustomSelectionActionModeCallback can prevent selection mode from starting.

Bug 3381317

Change-Id: I9fb52077216ed56c101ed58f8897478343369528
/frameworks/base/core/java/android/widget/TextView.java
9e7c2c6ded1144122915cfb8bd663e789c7eb93b 27-Jan-2011 Romain Guy <romainguy@google.com> Merge "Optimize invalidate() calls." into honeycomb
0fd89bf7221431260883cee4597e2db942d799a0 27-Jan-2011 Romain Guy <romainguy@google.com> Optimize invalidate() calls.

Change-Id: I09d99290ca74f96046702bc2604f125a1276ce05
/frameworks/base/core/java/android/widget/TextView.java
5f059e4663d94c4569b4757ea8406793fc217dfb 13-Jan-2011 Gilles Debunne <debunne@google.com> Holo theme for error popups in TextViews.

Bug 3277308

Change-Id: I9711adb848df975b95ad09fc84bba4b970e44670
/frameworks/base/core/java/android/widget/TextView.java
874d77c62e0aa18116063948cd580ad0b37b4578 26-Jan-2011 Gilles Debunne <debunne@google.com> A long press on the selection handle no longer selects the word.

Bug 3371448.

Change-Id: I360e6259f5f58a6f251efbe031ac46a76b7168e7
/frameworks/base/core/java/android/widget/TextView.java
88b5953ab2f63ed6f820bb13845cf8fecb2d57e3 24-Jan-2011 Gilles Debunne <debunne@google.com> Merge "NULL inputType text fields should never show the IME." into honeycomb
705a27a97ccd8e363944083d948b7f5204916b85 24-Jan-2011 Gilles Debunne <debunne@google.com> Merge "Non-editable TextViews should not display a cursor." into honeycomb
98dbfd4940fb7f1e3ae11ec73aeb7a9dd26a24ee 24-Jan-2011 Gilles Debunne <debunne@google.com> Non-editable TextViews should not display a cursor.

Bug 3381320

The tests were inconsistent between makeBlink and onDraw.
If the text is non-editable, do not draw the cursor.

Change-Id: I0405e59444261a553e868b3ae5bdddd278f60bb2
/frameworks/base/core/java/android/widget/TextView.java
8cbb4c6e30cff706a243599634aeb8fd9a818d92 24-Jan-2011 Gilles Debunne <debunne@google.com> NULL inputType text fields should never show the IME.

Bug 3381317

Changes made in https://android-git.corp.google.com/g/#change,91880
displayed the IME onFocus. However, the test was not consistent to what
is done in touch event. textIsEditable is now checked too.

Change-Id: If11382c1c90a557839b87d62494253470c42b621
/frameworks/base/core/java/android/widget/TextView.java
daf98e941e140e8739458126640183b9f296a2ab 10-Jan-2011 Chet Haase <chet@google.com> Use optimized display lists for all hwaccelerated rendering

Previously, display lists were used only if hardware acceleration
was enabled for an application (hardwareAccelerated=true) *and* if
setDrawingCacheEnabled(true) was called. This change makes the framework
use display lists for all views in an application if hardware acceleration
is enabled.

In addition, display list renderering has been optimized so that
any view's recreation of its own display list (which is necessary whenever
the visuals of that view change) will not cause any other display list
in its parent hierarchy to change. Instead, when there are any visual
changes in the hierarchy, only those views which need to have new
display list content will recreate their display lists.

This optimization works by caching display list references in each
parent display list (so the container of some child will refer to its
child's display list by a reference to the child's display list). Then when
a view needs to recreate its display list, it will do so inside the same
display list object. This will cause the content to get refreshed, but not
the reference to that content. Then when the view hierarchy is redrawn,
it will automatically pick up the new content from the old reference.

This optimization will not necessarily improve performance when applications
need to update the entire view hierarchy or redraw the entire screen, but it does
show significant improvements when redrawing only a portion of the screen,
especially when the regions that are not refreshed are complex and time-
consuming to redraw.

Change-Id: I68d21cac6a224a05703070ec85253220cb001eb4
/frameworks/base/core/java/android/widget/TextView.java
c3e85a712b7a2cc02624d1483b846c16ac85f091 21-Jan-2011 Gilles Debunne <debunne@google.com> Tapping inside an EditText should always pop up the IME.

Bug 3374062

When the tap in slightly off the EditText, it receives focus from its parent layout
which dispatches the event. However, the touch event is (correctly) not propagated
in that case.

onFocusChanged should hence do actions similar to what is done on touch up events.

Change-Id: Ia5c04546674fc6239aa4d0b8d051f4951ca91352
/frameworks/base/core/java/android/widget/TextView.java
e60e1e597b85ce2cc94818a42ff9e30547af94f8 20-Jan-2011 Gilles Debunne <debunne@google.com> Paste popup window is displayed on the side when it would be clipped on top of screen.

Bug 3259774

Change-Id: I6ea20452a3a235e264c91c112f52da7230657708
/frameworks/base/core/java/android/widget/TextView.java
a85467bc8da8d4cecd47ed30da04c72c4f7bd842 20-Jan-2011 Gilles Debunne <debunne@google.com> Error popup no longer flickers in TextViews.

The removed lines were committed by the Android Open Source Project.
Their intent was probably: the message was there before, it is identical
after a text change, let's remove it to not annoy the user who already saw it.

The behavior however is that the message is displayed then hidden, then displayed
as the user types.

Bug 3365016

Change-Id: Ie820f8e5465ad8ab5890272c42627686e0d7961b
/frameworks/base/core/java/android/widget/TextView.java
aba62a5925e807f30e3abb1e348738eb342a9888 18-Jan-2011 Gilles Debunne <debunne@google.com> Merge "Added a touch up filter in text selection handles." into honeycomb
aa8d73bfc32eae0340ba5236f3580d88558359ab 17-Jan-2011 Gilles Debunne <debunne@google.com> Added a touch up filter in text selection handles.

This filters the touch up event, so that in case the handles'
position is altered when the finger is lifted up, this unwanted
movement is discarded.

Bug 3282095

Change-Id: Ibfe8f49d979091ba49139449ecc13f47050608d9
/frameworks/base/core/java/android/widget/TextView.java
327fbd2c8fa294b919475feb4c74a74ee1981e02 17-Jan-2011 Dianne Hackborn <hackbod@google.com> Fix a bunch of API review bugs.

3362464 API REVIEW: android.content potpourri
3362445 API REVIEW: Fragment transaction stuff
3362428 API REVIEW: Fragment stuff
3362418 API REVIEW: Loader stuff
3362414 API REVIEW: android.content.pm.ActivityInfo

Change-Id: I6475421a4735759b458acb67df4380cc6234f147
/frameworks/base/core/java/android/widget/TextView.java
fb81703ab11c653a587b652b90ec3b550f500ccf 13-Jan-2011 Gilles Debunne <debunne@google.com> fix for cts DuplicateParentStateEnabled bug with TextViews.

Bug 3347206

Do not add an extra slot in the drawable state for multiline if it
is not needed.

Updated setDuplicateParentStateEnabled documentation.

Change-Id: I95f74284721e25b483e12e9b861e810a55c260b6
/frameworks/base/core/java/android/widget/TextView.java
02d2b3ba9ba830a8147db2739613f7bbb2d0fcbf 11-Jan-2011 Christopher Tate <ctate@google.com> API CHANGE: startDrag() now takes "int flags" instead of "boolean localOnly"

There will be, in the future, a flag (View.DRAG_FLAG_GLOBAL) that means
for the drag to be cross-application. For now that flag constant is @hide
and furthermore the server-side implementation strips it, enforcing
local-only drags.

Change-Id: I8db840480ab90e18a5b8ecf29d62b4e6eafd405e
/frameworks/base/core/java/android/widget/TextView.java
7014b12873068f109f58b9d0ad4116fd8d4bf22f 11-Jan-2011 Leon Scroggins <scroggo@google.com> Find when pressing enter. Call onClickListener in TextView.

Bug:3313519

In Find ActionMode, Enter should call find on page (rather than
advancing focus to the WebView).

In TextView, pass and Enter key down to super, so that the
pressed state can get called properly, and the
onClickListener will fire.

Change-Id: Ia875fa6b5cf02565a0d066a009e68ce97718b032
/frameworks/base/core/java/android/widget/TextView.java
d94f8c5055713a62dcea0b24a56273fb12442fc0 10-Jan-2011 Gilles Debunne <debunne@google.com> Stop text selection mode when new text replaces selection.

Rationalized the use of hideControllers and stopSelectionActionMode.

Hiding the selection controller should be done exclusively by stoping text selection
mode.

Bug 3322636

Change-Id: I30b4a651aa5fb5a865d636bec495a2b96ef114cd
/frameworks/base/core/java/android/widget/TextView.java
b0db5940c9c444d79f0bcae6526f390a99c01037 04-Jan-2011 Gilles Debunne <debunne@google.com> Fix for an NPE in Account settings on long press.

Bug 3333512

Change-Id: Ief79e824b86b964598f00ef74c6b5c61c0730242
/frameworks/base/core/java/android/widget/TextView.java
36d4c3f02b4c3366b965896bc3da8bb332db1a64 07-Jan-2011 Christopher Tate <ctate@google.com> Rename drag "thumbnail" to the drag "shadow"

No functional changes; just a rename of the relevant class/method/parameters.

Change-Id: I55d9ef7c2c17892b0bc99f5da622c281e006b53e
/frameworks/base/core/java/android/widget/TextView.java
79ff914f2183a5f0a4121ef06112409e1c699ae7 07-Jan-2011 Gilles Debunne <debunne@google.com> Added support for Unicode surrogate characters in word selection

Inspired by https://review.source.android.com/#change,16606

Change-Id: I896354f5aba83c1919c008f07b6d0b2abf0b8e01
/frameworks/base/core/java/android/widget/TextView.java
3dbf55c3a2d993b89d0947885061cf8421930639 16-Dec-2010 Gilles Debunne <debunne@google.com> TextView's color transparency is taken into account.

Unless it has a background, the TextView will be able to support
alpha (text, cursor and highlighted text colors).

Background colored spans should be detected and should also multiply
their alpha by mCurrentAlpha.

Bug 3144861

Change-Id: If640895b8c0b25dc00b909a0a118b68fac0cfd76
/frameworks/base/core/java/android/widget/TextView.java
87380bcaebe63bdcd44828f137b2b2b0ba952f0a 04-Jan-2011 Gilles Debunne <debunne@google.com> Added support for asian characters in text selection.

Inspired by https://review.source.android.com/#change,16606

Test class has been revamped to mimic new behavior: selectCurrentWord
is no longer used to add words to the dictionary. We rely on the suggestion
bar in the IME for that.

Change-Id: I1cb88df54dffb166c75f75fefb743ff55a33519b
/frameworks/base/core/java/android/widget/TextView.java
c0752ee7ce70ee0ebc537a67117e9f5d3b852d2e 23-Dec-2010 Gilles Debunne <debunne@google.com> No spaces are inserted around pasted text when there are already new lines.

Bug 3304489

Change-Id: I3c1bf915a2e20f87ed3cec3c30dbcc884bf6b46f
/frameworks/base/core/java/android/widget/TextView.java
da0a3f03a1eef3fd93266d00aa94f2e1a4f65236 22-Dec-2010 Gilles Debunne <debunne@google.com> Multi-line EditText background is set using a state. Step 2.

See change 86347 for Step 1.

New state_multiline state flag, handled in TextView drawable background drawables.

Change-Id: I230df16c7ddee3296da180fd80ef341a4ac17dc0
/frameworks/base/core/java/android/widget/TextView.java
b2316968cfb96148ebcff268afd32f98150a8869 22-Dec-2010 Gilles Debunne <debunne@google.com> Multi-line EditText background is set using a state.

Step 1/2: remove the previous code that relied on a specific theme attribute.

Bug 3214105

Change-Id: Ib4fc55a9093d64e69ac798ec56503ccdb284cbec
/frameworks/base/core/java/android/widget/TextView.java
c01f3feeb09b96f666c35fa1858ab3034599a452 23-Dec-2010 Gilles Debunne <debunne@google.com> Text selection is preserved upon device rotation.

Note that this used to create problems with ExtractEditText. These potential issues
were not handled in that CL.

Bug 3236848

Change-Id: I4b83ce8f66eba04f34c2faa8e38b83eb992637f0
/frameworks/base/core/java/android/widget/TextView.java
82d731ac5d28fb54c49948116786813a62b07b8b 24-Dec-2010 Ken Wakasa <kwakasa@google.com> Add TYPE_NUMBER_VARIATION_PASSWORD for entering a numeric password.

Also, bug fix in EditoInfo.makeCompatible().

bug: 3296883
Change-Id: Icc663b375cffbe1f4506d1758d624a1acca3576b
/frameworks/base/core/java/android/widget/TextView.java
c1df907e3950fd8d2efac110edd72ea07b3b441e 22-Dec-2010 Jeff Brown <jeffbrown@google.com> Support invoking key shortcuts using Control.

This enables Select All, Cut, Copy and Paste behavior in TextViews
and provides a general pattern for implementing additional keyboard
accelerators based on Control key shortcuts. The same shortcuts
also apply to menu accelerators.

Bug: 3286262
Change-Id: I7d458ee26abf51e0de1735ce490ce3baf504b471
/frameworks/base/core/java/android/widget/TextView.java
f3895edf4b21e1083b58cdb36b93223ecaa98ca8 21-Dec-2010 Gilles Debunne <debunne@google.com> Links are clickable in TextView when textIsSelectable.

Bug 3299410

Change-Id: I921c9eecbfef1d81b0d0e2ad2129400c58f165a1
/frameworks/base/core/java/android/widget/TextView.java
4e6319b73c85082e18d1c532b86336ddd1f8cfaa 13-Dec-2010 Jeff Brown <jeffbrown@google.com> Add initial support for TAB navigation.

Bug: 3286652
Change-Id: I813a0318b3b8d9c9bc791ea6a2427be11c08de00
/frameworks/base/core/java/android/widget/TextView.java
4dfe08632f32a21650b030886e823988b900ed3f 18-Dec-2010 Gilles Debunne <debunne@google.com> AutoLink identified spans are selected when long pressed.

Do not rely on standard word detection for these (which does not work because
of / or . in URL or - in phone numbers).

Various other bug fixes for text selection with autolinks.

Change-Id: I482e99efa980281086ce761b27b3a36579e7cf76
/frameworks/base/core/java/android/widget/TextView.java
cbcb345ccddf8cbb61d58a9f2ecbe0cc9e6d3a6b 18-Dec-2010 Gilles Debunne <debunne@google.com> Made text selectable even when autolinks are activated.

Refactor for canSelectText.

Moved test from onCreate to startTextSelection.

Restored setFocusableInTouchMode needed to start a selection in touch mode.

Bug 3296490

Change-Id: I5c0c31dbebed79fd1f9d80f930cba1019d74f710
/frameworks/base/core/java/android/widget/TextView.java
e12f99984e0a7f0efaab0e221a6b881b8be8d720 17-Dec-2010 Gilles Debunne <debunne@google.com> Removed focusableInTouchMode flag for selectable text.

Change-Id: I7aaa08328cc22d6cd920b3bc2661de79c5fb1402
/frameworks/base/core/java/android/widget/TextView.java
066460f3ba78ed22634939e8eaf0544ca9f56380 16-Dec-2010 Gilles Debunne <debunne@google.com> Fix for testAccessTransformationMethod cts test.

Single line textView should impose their number of lines and their
transformation method.

Bug 3289818

Change-Id: If1f1252ded1250e2aff85f1c615cc2e17026ba1d
/frameworks/base/core/java/android/widget/TextView.java
33a8cfb0af2e1d5983bc128007ded21bcc4f2da9 10-Dec-2010 Gilles Debunne <debunne@google.com> Show keyboard when user starts a text selection.

Bug 3266297

Change-Id: I1985ab52ae867c4a6c92279986cd6d0654614118
/frameworks/base/core/java/android/widget/TextView.java
96e6b8bfc82e04d06923c372657768b4866e4fb9 14-Dec-2010 Gilles Debunne <debunne@google.com> Remove line height attribute from TextView.

This attribute was introduced in HC and is only partially supported. It should
actually also be used by the layout to be meaningful.

Bug 3223987

Change-Id: Idb47be319a236326f7624fd865466356c19bc342
/frameworks/base/core/java/android/widget/TextView.java
31d48946534c27390916f6ce62e47962a61216ce 14-Dec-2010 Gilles Debunne <debunne@google.com> Removed no longer used longPressCallback in TextView

Change-Id: Iadac5579764ef14c2ec7a677c686a396cedc31fa
/frameworks/base/core/java/android/widget/TextView.java
2bc248b698b17fd333beae828039a8bff7604a9f 14-Dec-2010 Gilles Debunne <debunne@google.com> Off by one index error in word selection

Change-Id: Ia6b14b22cc5cf65a235bcdf7cbec48bd76f74460
/frameworks/base/core/java/android/widget/TextView.java
a3ae4a06569afbbf135692b8d55289117c42b205 14-Dec-2010 Gilles Debunne <debunne@google.com> Make TextView respect the maxLines attribute.

Bug 3186626

Restore some of the changes introduced in CL 78854.

Also added a few comments to the documentation.

Change-Id: I775be85c33ebe4a2384a40b21eec57f34fddcd33
/frameworks/base/core/java/android/widget/TextView.java
6f100f3895a4b572e2f1d031867b23ca733e3570 14-Dec-2010 Gilles Debunne <debunne@google.com> setTextIsSelectable documentation updated.

Change-Id: Ib48c3b8bba606d8874b92fe56da99eab4f335056
/frameworks/base/core/java/android/widget/TextView.java
7eeba5fad54f7bd043bc1629b2f506e5d6780607 11-Dec-2010 Gilles Debunne <debunne@google.com> TextView's runnable are stopped when the View is detached.

Stopping all Runnable thread that would otherwise keep a reference on the context,
thus preventing the activity to be recycled.

All Runnable are now also lazily created.

Change-Id: Idb93603c20cb3e847ae56eb842c64af6c5b82523
/frameworks/base/core/java/android/widget/TextView.java
aa85a4c8b7abf82c54ecbad29e4266581c65c3f9 07-Dec-2010 Gilles Debunne <debunne@google.com> A long press on the insertion handles triggers the selection.

The distance threshold has to be tuned before this feature can be validated.

Change-Id: I233ebc4a1d2d495279818d34496e8b17bbd76752
/frameworks/base/core/java/android/widget/TextView.java
07a11f4967911cb5fc332b6a73304f20ebf94566 10-Dec-2010 Gilles Debunne <debunne@google.com> Selecting text from a punctuation sign selects previous word.

Cherry picked from a revert in https://android-git.corp.google.com/g/#change,82252

Change-Id: I141bbff2a0f9a8ab40f10c59fc1280b94b38e4b6
/frameworks/base/core/java/android/widget/TextView.java
12d91ce8e3e9b96329860e9fecdf3573ef17b0a1 10-Dec-2010 Gilles Debunne <debunne@google.com> Added visual feedback to text correction.

Change-Id: Id2b85b7b649a59a2666157c7ff540858b1ad403c
/frameworks/base/core/java/android/widget/TextView.java
cf9cf2f40efc4ccf3f73e6fdb07725d9c00c4f91 09-Dec-2010 Gilles Debunne <debunne@google.com> New API in InputConnection to signal IME's text correction.

Scafolding so that the IME team can start working on this feature.

The animation part in the TextView is missing.

Change-Id: I8225538564370fba1500e3539742a8ab79bdd199
/frameworks/base/core/java/android/widget/TextView.java
f7ae52585538b50617a9057d7579403d49a463a1 09-Dec-2010 Gilles Debunne <debunne@google.com> SelectAllOnFocus text fields do not display the insertion handle when focused.

Change-Id: Ieb0dfe37498a339a781098134f4a0dd7f40193ec
/frameworks/base/core/java/android/widget/TextView.java
6da7e935f9a36ae2246a5e4ad713e495880b3dea 07-Dec-2010 Gilles Debunne <debunne@google.com> No NPE in Browser when pasting in WebTextView.

Bug 3258790

Change-Id: I25d67ee85babb1bb3e4d05ea7b4e4d3756c60411
/frameworks/base/core/java/android/widget/TextView.java
f48e83b328d47ab8ae8a0bd9bc1a87b127bfb865 07-Dec-2010 Gilles Debunne <debunne@google.com> Fix for Blink in TextView.

The callback is removed when the window is detached. Prevents weak references to
the TextView from being kept.

No longer created for non editable texts (!).

Hiding the cursor handle when cursor is hidden.

Change-Id: Ic92f6cfc5b6ef6460f1edc6b9a564e4153d9c40f
/frameworks/base/core/java/android/widget/TextView.java
1cafde04c5003fb58585afa212a103fb96757783 03-Dec-2010 Gilles Debunne <debunne@google.com> Moved Paste popup window up in TextView

Bug 3228601

A tap on the insertion handle displays the paste popup immediately.
Tapping again hides the popup.
Bug 3248651

Change-Id: I5a501b3ebe36e23cbbf0f1b3d588884c6ecd1d56
/frameworks/base/core/java/android/widget/TextView.java
aaa8479a97742c71a1be0c003b725becda68f76b 03-Dec-2010 Gilles Debunne <debunne@google.com> Made TextView use the new localState API for drag info

Change-Id: I5448bd45d20fab5a541382e101556f5c9d8ea1e4
/frameworks/base/core/java/android/widget/TextView.java
f4dceb19465dd708bc87e82cd071d56d370acdeb 02-Dec-2010 Gilles Debunne <debunne@google.com> Customized text selection action mode.

Refactored to use a custom Callback instance instead.

This instance can be shared by different TextView, which no longer have to
be overloaded.

Change-Id: I4749905d8e2057dab2b3ded62bd7c388d13d4e57
/frameworks/base/core/java/android/widget/TextView.java
407b4e91fe7627545b8110e683953353236b4543 01-Dec-2010 Christopher Tate <ctate@google.com> API CHANGE: drags can now carry an originator-only object payload

When calling startDrag(), the app can now supply an Object to be passed
along in every DragEvent that the app winds up receiving itself. This
object is *not* passed to any other applications; it's strictly app-
local. The purpose is to allow state tracking/management to be done
directly through the drag mechanism rather than requiring out-of-band
code.

An example of the utility here might be TextEdit widgets. A drag that
starts in one TextEdit but ends in a different one should be treated as
a copy/paste operation, where the originating TextEdit is not altered.
However, a drag that starts and ends in the *same* TextEdit is a 'move'
operation within that TextEdit; the text is removed from its original
position and inserted at the drop point. To support this easily, the
drag/drop code in TextEdit can now pass a pointer to the originating
view as the local state object. Then, the drop recipient could tell
whether the drag started within the same TextEdit without needing to
implement any other out-of-band state tracking.

This CL (and its accompanying CLs in a few other packages where the
startDrag() API is being used) adds the new local-state parameter to
the API, but does not actually change the behavior of any existing
clients.

Change-Id: Icba73b2ab4a650b7a94485a19633065b0ef9058c
/frameworks/base/core/java/android/widget/TextView.java
2825366c5653659939db1e98aaf8e130cdfd9d96 01-Dec-2010 Gilles Debunne <debunne@google.com> A double tap starts selection when done on text only.

Change-Id: Id758645d1ebf482a09e35b158e8665d1153db498
/frameworks/base/core/java/android/widget/TextView.java
2226a19f7001d5fc807bfd2284cc7eb7715605ce 01-Dec-2010 Gilles Debunne <debunne@google.com> Refactor onDrop in TextView

Change-Id: Ied80565852a452c15c7b7a66cbb05965bead04cd
/frameworks/base/core/java/android/widget/TextView.java
0eb704ca7a0844186e0755e86bc4afc23297797d 30-Nov-2010 Gilles Debunne <debunne@google.com> Tap inside text selection dismisses selection.

Change-Id: I8ccc952940d3f1b3a52d506f750019a892380f40
/frameworks/base/core/java/android/widget/TextView.java
8e06a63099ffe55f49c5a81aa13113c5c24f78cf 30-Nov-2010 Gilles Debunne <debunne@google.com> Selection in URL, email, phone, date, numbers selects all

Change-Id: Ide3603404f356564e294b7698b52c2d55e314db9
/frameworks/base/core/java/android/widget/TextView.java
d803cdef9a3d41d26fbc39aceec94f15199f56e6 30-Nov-2010 Gilles Debunne <debunne@google.com> Selection handles no longer fade out.

This fade out was mainly introduced for forms with selectAllOnFocus fields, where
is hide some content. These no longer trigger selection mode and hence do not display
the handles.

Handles will be visible as long as selection mode goes on.

Change-Id: Ib8c2cc97308a91722f69aa0bb0caccb21d94c2c4
/frameworks/base/core/java/android/widget/TextView.java
d1dc72a08193f3e74b21473541379b74124d68a8 30-Nov-2010 Gilles Debunne <debunne@google.com> Long press in empty space stops text selection

Bug 3240058

Change-Id: I888ee691a0fdc89895db43f9ed01acebf7a0b6d3
/frameworks/base/core/java/android/widget/TextView.java
4ae0f29d26825b468ad9d38ef12a121572410646 29-Nov-2010 Gilles Debunne <debunne@google.com> Dragging inside the same TextView is a move instead of a copy.

Change-Id: I0edbe601455a951354e8671b8bd4d7e6afd6f439
/frameworks/base/core/java/android/widget/TextView.java
6d95662f98f4d61e31df8a01ac2e84870a21439e 29-Nov-2010 Romain Guy <romainguy@google.com> Put @ViewDebug.ExportedProperty back on TextView.mText

Change-Id: I68d36ebad07b4ad828c245e1d57ebe0effcc4239
/frameworks/base/core/java/android/widget/TextView.java
8df09a0906f2b5307864eee6294eabbae11c7804 29-Nov-2010 Gilles Debunne <debunne@google.com> SelectAllOnFocus switches to highlighted mode, not text selection mode

Change-Id: Ia0adf561f207e0a82d9588471823da7f5b2f1799
/frameworks/base/core/java/android/widget/TextView.java
f076eebd0537561e3d7888c92edaa8b98d82b11c 29-Nov-2010 Gilles Debunne <debunne@google.com> Restore isTextEditable() method meaning.

Change-Id: I52a4e71026396b27ed804d94e8373487a2645212
/frameworks/base/core/java/android/widget/TextView.java
0a2aa4036382c1fc42f7cde5fd10049c9f247b21 25-Nov-2010 Gilles Debunne <debunne@google.com> Paste popup shows up after a delay on tap. Immediately if there is a recent copy/cut.

Change-Id: Ib13f7731eb9b25c39c1b962763b3d16310fe2923
/frameworks/base/core/java/android/widget/TextView.java
2a7f346ff110bf2588c27036fd1c86db8e4ea9a8 25-Nov-2010 Gilles Debunne <debunne@google.com> Handle hiding timer reset on every move.

updatePosition is the centralized place where this should happen.

Change-Id: If4aab404ab0f3988af96b8d2cb1b41f39f4afa50
/frameworks/base/core/java/android/widget/TextView.java
c4440f039e82d44628146a9f39be7c1fb2d7b792 24-Nov-2010 Gilles Debunne <debunne@google.com> Lazy creation of selection and insertion handles.

Change-Id: I960f6988e8f4c6f933a40fca7dc860e58a6b67d3
/frameworks/base/core/java/android/widget/TextView.java
2880294cc6c7dad418b553f856b85aef112c6432 24-Nov-2010 Gilles Debunne <debunne@google.com> Lazily create the paste popup window.

Change-Id: I271a790bd652cdcdc221896ede9f99858a24cc7a
/frameworks/base/core/java/android/widget/TextView.java
9948ad7b374a152e9794e6800e55872a8f69708b 24-Nov-2010 Gilles Debunne <debunne@google.com> Long press in empty space moves cursor and shows Paste affordance.

Change-Id: I487e9028201a90da76dff5390a64d2d57e7723ea
/frameworks/base/core/java/android/widget/TextView.java
e587d838e9c7163ffd0a36f242f73c11e991e924 24-Nov-2010 Gilles Debunne <debunne@google.com> Comments on lazy controllers initialization.

Also a couple of bug fixes where the field value was used instead of the
get method().

Change-Id: Ia2c63158febc136065a6e12755c88e6d23ce6cc1
/frameworks/base/core/java/android/widget/TextView.java
710a910e73c2b62d55296be53f4576d53ed2ff97 24-Nov-2010 Gilles Debunne <debunne@google.com> Long press starts a new selection if one is already started.

Change-Id: Ide525ff0021cf145bb5d2b8db2d09b7b7909289b
/frameworks/base/core/java/android/widget/TextView.java
1ca562635117e10fae0888689909e6c39d66b0a4 18-Nov-2010 Leon Scroggins <scroggo@google.com> Alter the Layout of WebTextView to match webkit.

Bug:3085564

In order to treat the selection handles properly, the text in
WebTextView needs to line up with the text in webkit. Use the
line spacing style, or the paint if none provided, to determine
the spacing for WebTextView's Layout. When no line spacing is
provided, use the floating point values of ascent and descent,
rather than the rounded result, to determine spacing.

Requires a change in external/webkit:
https://android-git.corp.google.com/g/#change,80641

Change-Id: I51081835e128a0e938028c7c7aeb5111aa5f072c
/frameworks/base/core/java/android/widget/TextView.java
77b25a34a2ada61ec796fd1dc2ae3b75e0c039bb 19-Nov-2010 Gilles Debunne <debunne@google.com> Keyboard is not displayed when selecting read-only text.

Change-Id: Id8d1fb7ebd85a36a1e587b4e2bbbabf82aa1bdd7
/frameworks/base/core/java/android/widget/TextView.java
6b53e8daa69cba1a2a5a7c95a01e37ce9c53226c 11-Nov-2010 Jeff Brown <jeffbrown@google.com> Added support for full PC-style keyboards.

BREAKING CHANGE: Redesigned the key character map format to
accomodate full keyboards with more comprehensive suite of modifiers.
Old key character maps will not work anymore and must be updated.
The new format is plain text only and it not compiled to a binary
file (so the "kcm" tool will be removed in a subsequent check-in).

Added FULL keyboard type to support full PC-style keyboards.

Added SPECIAL_FUNCTION keyboard type to support special function
keypads that do not have any printable keys suitable for typing
and only have keys like HOME and POWER

Added a special VIRTUAL_KEYBOARD device id convention that maps
to a virtual keyboard with a fixed known layout. This is designed
to work around issues injecting input events on devices whose
built-in keyboard does not have a useful key character map (ie.
when the built-in keyboard is a special function keyboard only.)

Modified several places where events were being synthesized
to use the virtual keyboard.

Removed support for the "qwerty" default layout.
The new default layout is "Generic". For the most part "qwerty"
was being used as a backstop in case the built-in keyboard did
not have a key character map (probably because it was a special
function keypad) and the framework needed to be able to inject
key events anyways. The latter issue is resolved by using the
special VIRTUAL_KEYBOARD device instead of BUILT_IN_KEYBOARD.

Added the concept of a key modifier behavior so that
MetaKeyKeyListener can distinguish between keyboards that use
chorded vs. toggled modifiers.

Wrote more robust key layout and key character map parsers
to enable support for new keyboard features and user installable
key maps.

Fixed a bug in InputReader generating key ups when keys
are released out of sequence.

Updated tons of documentation.

Currently QwertyKeyListener is being used for full keyboards
with autotext and capitalization disabled. This mostly works
but causes some problems with character pickers, etc.
These issues will be resolved in subsequent changes.

Change-Id: Ica48f6097a551141c215bc0d2c6f7b3fb634d354
/frameworks/base/core/java/android/widget/TextView.java
4a0d0b34b244b5b730e861d875e7ae289cbb3311 17-Nov-2010 Gilles Debunne <debunne@google.com> Fix for disappearing background in buttons.

Change-Id: I7c7058ee8a292e73c25ba8c3e8d46899b7296c1e
/frameworks/base/core/java/android/widget/TextView.java
1d1e1105ad2497ba51930b75eea0a5e819044b43 17-Nov-2010 Svetoslav Ganov <svetoslavganov@google.com> 3049240 TalkBack on Accessibility Options reads out passwords entered in during Lock screen

Change-Id: I70b29611d798df1da10e0e950154ef5f49aba7c5
/frameworks/base/core/java/android/widget/TextView.java
fe4d5defd07962d622182bcc9a4eb8027ba23e8d 01-Nov-2010 Gilles Debunne <debunne@google.com> Multiline EditText have top and bottom brackets to differentiate from single line.

Change-Id: Iab6da75e7a823018221399c0b03dd47f7f768f21
/frameworks/base/core/java/android/widget/TextView.java
965b9699f1f21b5e6236b194f4601134106e6b53 22-Oct-2010 Adam Powell <adamp@google.com> Cherry-pick Ib76a95d9e7669016cf11b8b0add8843b438068ea from gingerbread

DO NOT MERGE Fix bug 3121030 - Text handles erroneously appear over
extract mode IME window

Make the SelectionModifierCursorController track its show/hide state
more accurately in the presence of an extract mode IME.

Lazily initialize CursorControllers so that we don't end up creating
them for various TextViews where they are not needed.

Change-Id: I3dce7535db3a1bd25ed9899406de47b00058e665
/frameworks/base/core/java/android/widget/TextView.java
86b9c78e3e4ecf56cd999faaf3f67d66137b2f05 11-Nov-2010 Gilles Debunne <debunne@google.com> Added a flag for TextView that allows for text selection in read-only TextViews.

Bug 3101642

Change-Id: I5538e507043c89b02c07f3e1c1abc74a93467427
/frameworks/base/core/java/android/widget/TextView.java
d7483bfffcbbd4715a9e3cc2c704fb702ec529bf 10-Nov-2010 Gilles Debunne <debunne@google.com> Lock screen should not display password.

Bug 3179062

Problem was introduced in CL 78854: changing the keyListener should not
change the transformation method.

mInputType changes are brittle. It is often reset to TYPE_CLASS_TEXT or to
mInput.getInputType(). The TYPE_TEXT_FLAG_MULTI_LINE and TYPE_TEXT_VARIATION_PASSWORD
variation are then added back based on the previous state. But this is not consistent,
and sometimes, only one of those is set.

This should be refactored if a bug is found in what seems to work correclty at the moment.

Change-Id: Ie251ec7db0ce0af4a07564b0dbb53465e6f361c6
/frameworks/base/core/java/android/widget/TextView.java
f170a345b3effa57a545938f4624d9c7142694f5 11-Nov-2010 Gilles Debunne <debunne@google.com> Added drag and drop functionality in TextViews

Basic implementation. The finger is currently hiding the insertion position.
An offset has to be added in DragThumbnailBuilder to prevent this.

Change-Id: I4207c337a2a31162063fba191a5eb5d5856b24cf
/frameworks/base/core/java/android/widget/TextView.java
91a08cfc4f8111ed66e51f9471e956d201cc8b60 09-Nov-2010 Gilles Debunne <debunne@google.com> Rationalized singleLine in TextView, take 2.

Same as CL 77435, but without the default singleLine value change.

Change-Id: I04794ed72716bbe5a285d2bbbb3f536308e5972f
/frameworks/base/core/java/android/widget/TextView.java
f95449dc383f617d597db5a8b23682ff18ffcac0 05-Nov-2010 Gilles Debunne <debunne@google.com> Revert "Rationalized the single/multiple line initialization in TextViews."

This reverts commit 10644106b819acad4f88c3882d5688638951728c.

Conflicts:

core/java/android/widget/TextView.java

Change-Id: I597314363f6ee06dbc475583ffe5dcc7eb543f88
/frameworks/base/core/java/android/widget/TextView.java
e213677037f836529efcc0ac201fc61dd95481c5 04-Nov-2010 Dianne Hackborn <hackbod@google.com> Push the jumpDrawablesToCurrentState() thing off everywhere it should be.

Also add a new interface that items in AbsListView can implement to
adjust the bounds of the selection shown for them. This will allow
contacts to use list view's regular selection facility rather than
implementing something special in their item views.

Change-Id: I29cbdbc7122111ee97e47fe7d6ec55ff07be79cc
/frameworks/base/core/java/android/widget/TextView.java
b5ce0e05327b4b76da49d2bd3944e66c38c8cb69 01-Nov-2010 Leon Scroggins <scroggo@google.com> Use the new web email and password variations.

Bug:2460543
Bug:3094312
Bug:2692655
Bug:2710595

Use the NEXT flag when there is a following
textfield.

In TextView, treat the new variations like email and password
variations.

Requires a change in LatinIME so that these fields work propely:
https://android-git.corp.google.com/g/#change,77721

Change-Id: Id6517a016db7d50b77570ff77f2635027796da4a
/frameworks/base/core/java/android/widget/TextView.java
10644106b819acad4f88c3882d5688638951728c 01-Nov-2010 Gilles Debunne <debunne@google.com> Rationalized the single/multiple line initialization in TextViews.

The TYPE_TEXT_FLAG_MULTI_LINE was set directly, instead of calling
setSingleLine, which has some side effects, like correctly updating
the mSingleLine field.

Generalized the use of setSingleLine everywhere. This may change some
behavior, but is probably fixing more state inconsistencies.

Change-Id: I6b4da2e140a8dc75481cff9e44473daa6b3a83c4
/frameworks/base/core/java/android/widget/TextView.java
e1c14e6a9444b1a90aefec801a3aaf4e8bb43543 04-Nov-2010 Gilles Debunne <debunne@google.com> Tapping on paste popup with an empty clipboard does not crash in TextView.

Change-Id: I5730ec46582862c6233a9e3a2d4bf695cd2c3e69
/frameworks/base/core/java/android/widget/TextView.java
3c5e94335af44d862c6c936fb1f5f41141571038 03-Nov-2010 Gilles Debunne <debunne@google.com> Tapping in a empty textEdit shows the handle.

So that the user can paste in that field, by tapping on the handle.

Change-Id: Ib43291fb78ded7c9b41c52cf3030fe0144d085c3
/frameworks/base/core/java/android/widget/TextView.java
c826a69355623ed0e812faa1947259464a4364dd 01-Nov-2010 Leon Scroggins <scroggo@google.com> Merge commit '55381217' into manualmerge

Conflicts:
core/java/android/webkit/WebView.java

Change-Id: I1e93881a55c1d81c1142db03498c68196649b69c
553812178ad3dccc467a6a96ff0a7e246da52e8e 01-Nov-2010 Leon Scroggins <scroggo@google.com> am 3073646f: Merge "Update insertion handler for WebTextView." into gingerbread

* commit '3073646f61dcbbfe5c9e65b8e3a1d9266c3f7276':
Update insertion handler for WebTextView.
5642625cfb065de38440408c1e2e8a8c6f8fa32d 01-Nov-2010 Leon Scroggins <scroggo@google.com> Update insertion handler for WebTextView.

Bug:3152629
Change-Id: If2a33eb5456493fb9b3b2c54fcc4f5348fe129e1
/frameworks/base/core/java/android/widget/TextView.java
dea3ef7967228f0ddcc03f2455a4f1254758e584 28-Oct-2010 Dianne Hackborn <hackbod@google.com> Add new resize mode to not resize, new web input types.

Change-Id: Ib098c03793d08532c3c099b59d0cc6b567e54900
/frameworks/base/core/java/android/widget/TextView.java
7b9652b66b76b90fd95952c42a4f82965ed80d72 27-Oct-2010 Gilles Debunne <debunne@google.com> New Paste view on top of insertion point in TextViews.

Tapping on the insertion handle displays a new pop-up dialog that allows to paste.

Select all icon removed.

Change-Id: I6b8c088dd5930c3f67b38928fd43cdd5c9da0904
/frameworks/base/core/java/android/widget/TextView.java
5347c588465b66ee7cc6169c87928d22d347bae3 27-Oct-2010 Gilles Debunne <debunne@google.com> Text selection can be started with a double tap in TextView

Cherry picked from CL 73484 in GB.

Change-Id: Ieb6ee5b4bf85226a8c488f78f5ff00a57fc031b8
/frameworks/base/core/java/android/widget/TextView.java
44c1473c03a0021224fa94af9b1e3579ec244b12 19-Oct-2010 Gilles Debunne <debunne@google.com> New Holo style for Tabs.

Holo theme with new assets and style for TabWidgets.

Legacy Themes still use GB style.

Assets added in a previous bluk update were removed.

Change-Id: Ia4a612678561fa5047bbd2a72488086c0f3d61a1
/frameworks/base/core/java/android/widget/TextView.java
77f18b0b83cfdb49c5b115b1c8285f975065366b 22-Oct-2010 Gilles Debunne <debunne@google.com> Fix for 3124993. Crash in Browser on long press.

Change-Id: I88c50e3abd3e3a25f92bcc51163b1ef9e62d2afb
/frameworks/base/core/java/android/widget/TextView.java
276bb3a32794097918671780ea9d39aea522aa41 21-Oct-2010 Jean-Baptiste Queru <jbq@google.com> am 843ff92b: resolved conflicts for merge of 5d919b43 to gingerbread-plus-aosp

Merge commit '843ff92bb0f2ff259145fd90333b0a50d8bbf342'

* commit '843ff92bb0f2ff259145fd90333b0a50d8bbf342':
Make disabled TextViews uneditable
843ff92bb0f2ff259145fd90333b0a50d8bbf342 21-Oct-2010 Jean-Baptiste Queru <jbq@google.com> resolved conflicts for merge of 5d919b43 to gingerbread-plus-aosp

Change-Id: I8b8a8dfdd99052f3d43a0feb47168876b41e336d
b82213d54bec0b11625e96d105763562ad78c258 19-Oct-2010 Gilles Debunne <debunne@google.com> resolved conflicts for merge of 6775754a to master

Change-Id: Ib03417aa3f13839b7fdf24f7d66b2d449589d41e
d7d3ad477cce27bf968b5f07691b958bfea22c34 18-Oct-2010 Gilles Debunne <debunne@google.com> Fix for text selection at end of line.

Bug 3106935

Change-Id: Ieee7f50385baae359db45472ffc800a01956cb40
/frameworks/base/core/java/android/widget/TextView.java
6775754ae3b765e50466048ab02a8d43d0ea6c61 18-Oct-2010 Gilles Debunne <debunne@google.com> am 3d01cb93: Merge "Removed "Select word" option on password fields." into gingerbread

Merge commit '3d01cb934ba2c5161689834d49f520313e554571' into gingerbread-plus-aosp

* commit '3d01cb934ba2c5161689834d49f520313e554571':
Removed "Select word" option on password fields.
042856c1de6cdce854641aaecd68a689c5ba64f3 15-Oct-2010 Janos Levai <digistyl3@gmail.com> Make disabled TextViews uneditable

Fixes Issue 2771
From now on:
disabling a TextView closes the associated on-screen keyboard
selecting a disabled TextView does not open the on-screen keyboard
can't edit contents if the disabled TextView focus is gained by the directional keys

Change-Id: I44e3c0aff2a0ce1e6426818bfe16c1d19c7c18ac
/frameworks/base/core/java/android/widget/TextView.java
0dcad2bd017227b5cc186e657b5b24b52a00a1c8 16-Oct-2010 Gilles Debunne <debunne@google.com> Removed "Select word" option on password fields.

It would return an arbitrary selection around current position.
Rely on select all instead.

Bug: 3100750
Change-Id: I73d995e6481d7c230cc9f334c72fbfb7e9828007
/frameworks/base/core/java/android/widget/TextView.java
65f604100627eae6d71df41e427fe74f7994e00e 16-Oct-2010 Gilles Debunne <debunne@google.com> Fix for broken build with stopTextSelectionMode

Change-Id: I1a235db0a0373fed16b62a85df3a0f1411e412be
/frameworks/base/core/java/android/widget/TextView.java
672a2531ae69f3a9bc14bd534ad33e540a38672a 15-Oct-2010 Gilles Debunne <debunne@google.com> am 4fa7f4f4: am 53ea7f58: Merge "Really leave text selection mode when using the trackball." into gingerbread

Merge commit '4fa7f4f4963568258a6b4179176de8386cb5d3db'

* commit '4fa7f4f4963568258a6b4179176de8386cb5d3db':
Really leave text selection mode when using the trackball.
4fa7f4f4963568258a6b4179176de8386cb5d3db 14-Oct-2010 Gilles Debunne <debunne@google.com> am 53ea7f58: Merge "Really leave text selection mode when using the trackball." into gingerbread

Merge commit '53ea7f58c071563b7c5dd0061df39d3b4bf38a63' into gingerbread-plus-aosp

* commit '53ea7f58c071563b7c5dd0061df39d3b4bf38a63':
Really leave text selection mode when using the trackball.
a8b6dad8e5c23f6ade3ccc6010a8915a41d6fbf9 14-Oct-2010 Adam Powell <adamp@google.com> am 4af1de39: am fb6431c0: Merge "Fix bug 3064135 - do not allow text handles on TextViews in sub windows." into gingerbread

Merge commit '4af1de39ab36cbff08075e654db516526ff9038d'

* commit '4af1de39ab36cbff08075e654db516526ff9038d':
Fix bug 3064135 - do not allow text handles on TextViews in sub windows.
d97b7f20b84d3e2f9131329a2deb417ccd5f3004 14-Oct-2010 Gilles Debunne <debunne@google.com> Really leave text selection mode when using the trackball.

Bug 3086617

Change-Id: I04c7f5b59d41ed294ac10c20588d2ea476f9d7f6
/frameworks/base/core/java/android/widget/TextView.java
909cbaf8f92d69f507bbdba9e5aa960d1e6c7a1f 14-Oct-2010 Romain Guy <romainguy@google.com> Don't draw TextView's alpha layers when not needed.

Change-Id: Iedf42cbc62d727f18500c78fcccf2d081a761fec
/frameworks/base/core/java/android/widget/TextView.java
d8404b23739b135060ab9a04317a9f8b990cf8ca 13-Oct-2010 Adam Powell <adamp@google.com> Allow icon+text action buttons

Change-Id: I96d1f3958de3ac13cadbab108b87d6bae96e9473
/frameworks/base/core/java/android/widget/TextView.java
78996c9376ec8568e2bf9fbdee07f618936a7667 13-Oct-2010 Gilles Debunne <debunne@google.com> Changed Cut/Copy/Paste assets.

New assets, in dark/light version.

Made public attributes of the Theme, so that they can be customized.

Select_all was not included in that change. It is supposed to be represented
as text instead of an icon. Waiting for a CL that enables this feature.

Change-Id: Icc912b2eb582295c60c0a409760d2c3d65989fc6
/frameworks/base/core/java/android/widget/TextView.java
4af1de39ab36cbff08075e654db516526ff9038d 13-Oct-2010 Adam Powell <adamp@google.com> am fb6431c0: Merge "Fix bug 3064135 - do not allow text handles on TextViews in sub windows." into gingerbread

Merge commit 'fb6431c0298747d240fcdc025575e5f46db95132' into gingerbread-plus-aosp

* commit 'fb6431c0298747d240fcdc025575e5f46db95132':
Fix bug 3064135 - do not allow text handles on TextViews in sub windows.
8c8293bc4dc1930d5b6a74e3abfe955a433af725 12-Oct-2010 Adam Powell <adamp@google.com> Fix bug 3064135 - do not allow text handles on TextViews in sub windows.

Change-Id: I35db64d0a5c92c8ad184b36d243e45c91d4ac46e
/frameworks/base/core/java/android/widget/TextView.java
fe14293f58c47a69a0f0427163e27e8f748f03b7 11-Oct-2010 Gilles Debunne <debunne@google.com> resolved conflicts for merge of 2da9338c to master

Change-Id: I0a5d667b578e23c064ebe7bacc898125fbf40cc2
be4d68e7b238b8ee879de0481e39c40d3f1683b6 09-Oct-2010 Adam Powell <adamp@google.com> Updated styles and metrics.

* Added preliminary ButtonGroup support for buttons that display as a unit.
* Fixed a bug with MenuBuilder that caused old-style icon menus to fail.
* Added support for explicitly setting line height in text.

Change-Id: I1ba65f09dd9e1bc833d247ebe72052a21e3f99f0
/frameworks/base/core/java/android/widget/TextView.java
569a4bbae11789dd00412355f238b0a32d75a8df 11-Oct-2010 Gilles Debunne <debunne@google.com> resolved conflicts for merge of 42dd7ec9 to master

Change-Id: Id388745d7ec22c48b34b744d5a4c07097cf2650b
a20e87347605a625d557c4b9c721fb2e560573ee 11-Oct-2010 Gilles Debunne <debunne@google.com> resolved conflicts for merge of d7d47941 to master

Change-Id: I4ec47b9461c5ba350adfc257bc1820ee079b751e
7499a1ca68ba115efcf53f6a06520c579c44364d 11-Oct-2010 Gilles Debunne <debunne@google.com> resolved conflicts for merge of 5d146549 to master

Change-Id: I96c720b9afd4a28d27ed00020551f791e8aefa2b
0acb0d7a4b9cb684bff6e70b4c41002fb45adc04 10-Oct-2010 Gilles Debunne <debunne@google.com> am b72a335a: Merge "Voice input replaces selected text." into gingerbread

Merge commit 'b72a335a7f11176838d2d12e7295344c092c62ac' into gingerbread-plus-aosp

* commit 'b72a335a7f11176838d2d12e7295344c092c62ac':
Voice input replaces selected text.
a89af70cdcc3ace1d1d641fa302c6162f4132339 10-Oct-2010 Gilles Debunne <debunne@google.com> resolved conflicts for merge of bd38710b to master

Change-Id: I3489b6909ce2a215318d45f809b82579503fd733
e507a9e4af9cd8a7333e2951649ac106829f7a45 10-Oct-2010 Gilles Debunne <debunne@google.com> Voice input replaces selected text.

Bug 3068128

Hiding controllers no longer stops text selection.

Change-Id: Ie00c99948b3a14ce8a4a2a93c064c0635cadc993
/frameworks/base/core/java/android/widget/TextView.java
707fb0e0e56997a33ae59ffc001344602f3b7b14 10-Oct-2010 Adam Powell <adamp@google.com> am b3616395: am f15dfbec: Merge "Fix bug 3071869 - text anchors are now treated as application sub-panels." into gingerbread

Merge commit 'b3616395660498ecfd2099b5ffcb9ff74e5aeaee'

* commit 'b3616395660498ecfd2099b5ffcb9ff74e5aeaee':
Fix bug 3071869 - text anchors are now treated as application sub-panels.
d856b1ce92b0d14b4e5b87d02f746e0d6ae7dc87 09-Oct-2010 Adam Powell <adamp@google.com> resolved conflicts for merge of 86b50028 to master

Change-Id: I3468e67ac17f861c5491717337c27cd49bd5287e
42dd7ec9f03f169d373c3753d52eb5632ab5b142 09-Oct-2010 Gilles Debunne <debunne@google.com> am a827d7bc: Merge "Other improvements to text cursor movement." into gingerbread

Merge commit 'a827d7bc347ce6f1a0074dd9fe515919a35a38a9' into gingerbread-plus-aosp

* commit 'a827d7bc347ce6f1a0074dd9fe515919a35a38a9':
Other improvements to text cursor movement.
380b604a033268992017a248d1c74058e8ba9541 09-Oct-2010 Gilles Debunne <debunne@google.com> Other improvements to text cursor movement.

Paste happened on pressed position instead of current cursor location
when triggered by a long touch.

Change-Id: I86900f2bbb93390d3efa756aeebb424c4ae7e19b
/frameworks/base/core/java/android/widget/TextView.java
d7d47941a92137fa5c1ba04ba67ad87911347b6b 08-Oct-2010 Gilles Debunne <debunne@google.com> am 50662f5f: Merge "TextView cursor and selection improvements." into gingerbread

Merge commit '50662f5f04d69b9ec0335f17cfbf6c035bd86577' into gingerbread-plus-aosp

* commit '50662f5f04d69b9ec0335f17cfbf6c035bd86577':
TextView cursor and selection improvements.
528c64887e01dd6a9d802d657838499b9fac0cb2 08-Oct-2010 Gilles Debunne <debunne@google.com> TextView cursor and selection improvements.

Insertion cursor handle no longer appears on empty text views (Bug 3075988).

Tapping on an unfocused TextView moves the insertion point at tapped position.

Bug fixes for trackball initiated text selection.

Change-Id: Ief246fd9a9f1eb745dcf9f0605e2ce53b5563f01
/frameworks/base/core/java/android/widget/TextView.java
5d1465490c1b2c18b5425cfc14b405f45b61e281 08-Oct-2010 Gilles Debunne <debunne@google.com> am 56e9b8eb: Merge "Long press with trackball selects word under cursor." into gingerbread

Merge commit '56e9b8ebb20a992a80696f933a2225544670ef8b' into gingerbread-plus-aosp

* commit '56e9b8ebb20a992a80696f933a2225544670ef8b':
Long press with trackball selects word under cursor.
c8731128108ece45cb8e1b359b8badea3a750346 08-Oct-2010 Gilles Debunne <debunne@google.com> Long press with trackball selects word under cursor.

Bug 3068305

Change-Id: Ib37fc98a61efdf3fbfccbb2174e2dbdbcb1a240e
/frameworks/base/core/java/android/widget/TextView.java
cf1e925aa1691fc1daa94e763be7cd8804ea7481 08-Oct-2010 Gilles Debunne <debunne@google.com> resolved conflicts for merge of ba04dbc6 to master

Change-Id: I175aa21ef01b98b0c3c46aea0b754d14984128b9
bd38710bdef93d9a1b48a1f608b6e6184f43bb51 08-Oct-2010 Gilles Debunne <debunne@google.com> am 3ecceb5b: Merge "TextView refactoring to ease future merges in HC." into gingerbread

Merge commit '3ecceb5b94233320ed88825759d6118fed7add2c' into gingerbread-plus-aosp

* commit '3ecceb5b94233320ed88825759d6118fed7add2c':
TextView refactoring to ease future merges in HC.
cbfbb524af3271d987a2c8dd8c3a1087ac134466 08-Oct-2010 Gilles Debunne <debunne@google.com> TextView refactoring to ease future merges in HC.

Change-Id: I979324b28fa4ca787e5836271c9014bca590c595
/frameworks/base/core/java/android/widget/TextView.java
b3616395660498ecfd2099b5ffcb9ff74e5aeaee 07-Oct-2010 Adam Powell <adamp@google.com> am f15dfbec: Merge "Fix bug 3071869 - text anchors are now treated as application sub-panels." into gingerbread

Merge commit 'f15dfbec5df911f4cedd3e302864496d77ce295b' into gingerbread-plus-aosp

* commit 'f15dfbec5df911f4cedd3e302864496d77ce295b':
Fix bug 3071869 - text anchors are now treated as application sub-panels.
574b37ecc20a5358cb6147dae6d633385467ab55 07-Oct-2010 Adam Powell <adamp@google.com> Fix bug 3071869 - text anchors are now treated as application sub-panels.

This places text anchors on a layer above normal application panels,
ensuring that they stay above things like the browser autocompletion
list.

Change-Id: I4ee0aea7416a2dafd7e48a7a39acf949af5db3e9
/frameworks/base/core/java/android/widget/TextView.java
86b500289bffd8ce51e57e17d42741a202dd9ffd 07-Oct-2010 Adam Powell <adamp@google.com> am fbb3b476: Fix bug 3066313 - integrate new text anchor assets.

Merge commit 'fbb3b4768e858f004fe9a87e83b066244c829d87' into gingerbread-plus-aosp

* commit 'fbb3b4768e858f004fe9a87e83b066244c829d87':
Fix bug 3066313 - integrate new text anchor assets.
fbb3b4768e858f004fe9a87e83b066244c829d87 07-Oct-2010 Adam Powell <adamp@google.com> Fix bug 3066313 - integrate new text anchor assets.

This adds the differentiated left/right anchors for hdpi and further
tweaks the behavior of text anchors.

Highlights:
* New assets are translucent - increased visibility for whatever is
beneath.
* Start and end anchors may not cross one another.
* Minimum selection size is now 1.
* Touch targeting tweaked.

Change-Id: I601361323916ee19149562a23dc3242d908da45c
/frameworks/base/core/java/android/widget/TextView.java
6ed895a4fa729f6673e11336a1d3bf8db51b2502 07-Oct-2010 Adam Powell <adamp@google.com> am 41170a1a: am abcbb1a1: Fix bug 3061544 and some clipping errors.

Merge commit '41170a1a05830e6c9ec631d73043ccf1878dc0f9'

* commit '41170a1a05830e6c9ec631d73043ccf1878dc0f9':
Fix bug 3061544 and some clipping errors.
ba04dbc6cd9ea2f504b76657c85e476a795e9b5b 06-Oct-2010 Gilles Debunne <debunne@google.com> am 671b2a57: Merge "Fix for IndexOutOfBounds in text pasting." into gingerbread

Merge commit '671b2a57bb5a2a8669d1dabe65b4080804ee350a' into gingerbread-plus-aosp

* commit '671b2a57bb5a2a8669d1dabe65b4080804ee350a':
Fix for IndexOutOfBounds in text pasting.
330e263c4af03c6f6413e0199a2e78125ffbc185 05-Oct-2010 Gilles Debunne <debunne@google.com> Fix for IndexOutOfBounds in text pasting.

Made paste safe even in case of replace problems due to filters.

Bug 3042016

Change-Id: I9be34fa41fa6117502bbd959f91c562f28fb4237
/frameworks/base/core/java/android/widget/TextView.java
41170a1a05830e6c9ec631d73043ccf1878dc0f9 05-Oct-2010 Adam Powell <adamp@google.com> am abcbb1a1: Fix bug 3061544 and some clipping errors.

Merge commit 'abcbb1a1989e8c6adec607b3964dc187f5526e66' into gingerbread-plus-aosp

* commit 'abcbb1a1989e8c6adec607b3964dc187f5526e66':
Fix bug 3061544 and some clipping errors.
abcbb1a1989e8c6adec607b3964dc187f5526e66 05-Oct-2010 Adam Powell <adamp@google.com> Fix bug 3061544 and some clipping errors.

Change-Id: I124d0bcae080c27e2978be7eecfbb131f101a35f
/frameworks/base/core/java/android/widget/TextView.java
8556efe5a34d8fc6ed99f1fdae60fa41b7647920 05-Oct-2010 Gilles Debunne <debunne@google.com> am a29643a6: Merge "DO NOT MERGE. Select word no longer selects spaces between words." into gingerbread

Merge commit 'a29643a6455df7d3d615cdc45e11c437fe4b6cee' into gingerbread-plus-aosp

* commit 'a29643a6455df7d3d615cdc45e11c437fe4b6cee':
DO NOT MERGE. Select word no longer selects spaces between words.
8c03723da745f44a05b2bc234d4651474071345d 05-Oct-2010 Gilles Debunne <debunne@google.com> DO NOT MERGE. Select word no longer selects spaces between words.

Bug 3000870

This feature was useful to paste between two words. To do this, all you
have to do now in to first position the cursor between the words, and then
long pressing anywhere to get the pop-up menu with paste.

Not merged into HC since the paste story in HC still has to be determined.

Change-Id: Iea8d87e09b7ad43658ec5526110e609b9735c27a
/frameworks/base/core/java/android/widget/TextView.java
152c7c4091bf7c545b6a5a037cc02f55c4f126e9 04-Oct-2010 Gilles Debunne <debunne@google.com> resolved conflicts for merge of 115b9dc3 to master

Change-Id: I37ee3a50fcafbaa7de510b3af8e133a89bd9e339
115b9dc3972ce52cd774856093f8c49a53a962c2 04-Oct-2010 Gilles Debunne <debunne@google.com> am 4d3baaf5: Merge "Bug fixes in Text selection." into gingerbread

Merge commit '4d3baaf5308ddee43c1cd742497a38806cec6320' into gingerbread-plus-aosp

* commit '4d3baaf5308ddee43c1cd742497a38806cec6320':
Bug fixes in Text selection.
baaace59f68eb7baf6d6526b6678de6cb6de6543 02-Oct-2010 Gilles Debunne <debunne@google.com> Bug fixes in Text selection.

"Select word" is displayed only when the text field is not empty.

Paste is always displayed in first menu.
Bug #3001438

Cut/copy works
Bug #3052005 fixed in 3047653

Change-Id: I573f04818683f9b1c78ecb4613570b738d30ba09
/frameworks/base/core/java/android/widget/TextView.java
937a6f635715f24c4e586d87d093faf86208838d 03-Oct-2010 Adam Powell <adamp@google.com> am 7e53f3d7: am 624380a1: Fix bug 3047653 - Text select handles stick around when they shouldn\'t

Merge commit '7e53f3d70994cfef255953e1df1881d057477d06'

* commit '7e53f3d70994cfef255953e1df1881d057477d06':
Fix bug 3047653 - Text select handles stick around when they shouldn't
7e53f3d70994cfef255953e1df1881d057477d06 03-Oct-2010 Adam Powell <adamp@google.com> am 624380a1: Fix bug 3047653 - Text select handles stick around when they shouldn\'t

Merge commit '624380a14def6c2acdb473e09c36139acbcefbf9' into gingerbread-plus-aosp

* commit '624380a14def6c2acdb473e09c36139acbcefbf9':
Fix bug 3047653 - Text select handles stick around when they shouldn't
624380a14def6c2acdb473e09c36139acbcefbf9 03-Oct-2010 Adam Powell <adamp@google.com> Fix bug 3047653 - Text select handles stick around when they shouldn't

Text select handles will now fade out on their own after a few seconds
since many apps expect a selection to be persistent while a text field
stays focused in touch mode. The user may tap within the selection to
bring the anchors back.

Text select handles will also disappear upon leaving touch mode.

Fix a bug that impaired cut/paste from the context menu.

Change-Id: I8f431e2d261aec02581150125d11324a3ee11656
/frameworks/base/core/java/android/widget/TextView.java
d4b8cad13b94657ed374e6c5228eb6b093dcd533 03-Oct-2010 Adam Powell <adamp@google.com> am 077c79cb: am 03876c90: Fix text anchor fade-out positioning

Merge commit '077c79cb43c3b6059a92ba1eb51af94972adadef'

* commit '077c79cb43c3b6059a92ba1eb51af94972adadef':
Fix text anchor fade-out positioning
077c79cb43c3b6059a92ba1eb51af94972adadef 03-Oct-2010 Adam Powell <adamp@google.com> am 03876c90: Fix text anchor fade-out positioning

Merge commit '03876c905f3874f3ac8deb5a23ee0f77d4c04bab' into gingerbread-plus-aosp

* commit '03876c905f3874f3ac8deb5a23ee0f77d4c04bab':
Fix text anchor fade-out positioning
03876c905f3874f3ac8deb5a23ee0f77d4c04bab 03-Oct-2010 Adam Powell <adamp@google.com> Fix text anchor fade-out positioning

Change-Id: I5660481fb883c28c88e384be2f26e67aa854ec8e
/frameworks/base/core/java/android/widget/TextView.java
ef29bb5bc97490dda76c43c8984cbad3b388c1e4 03-Oct-2010 Adam Powell <adamp@google.com> am 0d843dc4: am ea32f94e: Fix bug 3058082 - text anchor positioning within moving dialogs

Merge commit '0d843dc47929ff6e3dbaa4cc1d07de7fbdba8506'

* commit '0d843dc47929ff6e3dbaa4cc1d07de7fbdba8506':
Fix bug 3058082 - text anchor positioning within moving dialogs
0d843dc47929ff6e3dbaa4cc1d07de7fbdba8506 03-Oct-2010 Adam Powell <adamp@google.com> am ea32f94e: Fix bug 3058082 - text anchor positioning within moving dialogs

Merge commit 'ea32f94ec4c14fe21b536139762c5332d1b5484c' into gingerbread-plus-aosp

* commit 'ea32f94ec4c14fe21b536139762c5332d1b5484c':
Fix bug 3058082 - text anchor positioning within moving dialogs
ea32f94ec4c14fe21b536139762c5332d1b5484c 03-Oct-2010 Adam Powell <adamp@google.com> Fix bug 3058082 - text anchor positioning within moving dialogs

Change-Id: I8f0b515c73d2b3055b4072425418f837eb021d4f
/frameworks/base/core/java/android/widget/TextView.java
e2dc5260d9fc28b6169054aaf99e8006dd1b9803 30-Sep-2010 Leon Scroggins III <scroggo@google.com> Create dummy assets for text selection actions.

The new assets are just copies of old assets. However, now
the code is set up properly, and when we do get final
assets no new code needs to be written, and both TextView
and the select action mode for the browser will be updated.

Change-Id: I9a1461bf447f6bbc2782d8f948d873cbeeccbcb0
/frameworks/base/core/java/android/widget/TextView.java
64e2b7189389118bb5309de3060c856377c0d6de 30-Sep-2010 Adam Powell <adamp@google.com> resolved conflicts for merge of 6e9a021e to master

Change-Id: I5ea823b752e78cb9d2ef7ccec68addbaa9ca66e9
6e9a021e961b3c317e92d354e99b963c85fd8952 30-Sep-2010 Adam Powell <adamp@google.com> am bc87ada1: Merge "Fix text anchors" into gingerbread

Merge commit 'bc87ada10de34c2d7b1301af86d94ed7c4801120' into gingerbread-plus-aosp

* commit 'bc87ada10de34c2d7b1301af86d94ed7c4801120':
Fix text anchors
ba0a2c383ffe4be1fe33a5aa57bc3148c4fd0b7c 29-Sep-2010 Adam Powell <adamp@google.com> Fix text anchors

Change-Id: Iddd5434a1dbeb1adc2143db73ed27df6b575319e
/frameworks/base/core/java/android/widget/TextView.java
464fb74e28b6d76d5e741abcdbb714eea2d9b4d1 27-Sep-2010 Jeff Brown <jeffbrown@google.com> am 9785bf0f: am 14a288da: Merge "Add suuport for splitting touch events across windows." into gingerbread

Merge commit '9785bf0f2b6b8758aed7ded3b996a2ef0be89919'

* commit '9785bf0f2b6b8758aed7ded3b996a2ef0be89919':
Add suuport for splitting touch events across windows.
9785bf0f2b6b8758aed7ded3b996a2ef0be89919 27-Sep-2010 Jeff Brown <jeffbrown@google.com> am 14a288da: Merge "Add suuport for splitting touch events across windows." into gingerbread

Merge commit '14a288da6a372230d9af41da12241fe500eec837' into gingerbread-plus-aosp

* commit '14a288da6a372230d9af41da12241fe500eec837':
Add suuport for splitting touch events across windows.
01ce2e9eee41cc0c24b0d16465710a28ea337d5d 27-Sep-2010 Jeff Brown <jeffbrown@google.com> Add suuport for splitting touch events across windows.

This feature is currently used to enable dragging the start and end
selection handles of a TextView at the same time. Could be used for
other things later.

Deleted some dead code in ArrowKeyMovementMethod and CursorControllers.

Change-Id: I930accd97ca1ca1917aab8a807db2c950fc7b409
/frameworks/base/core/java/android/widget/TextView.java
625ac271f80777668f832a344486a6fcdc06d0ae 18-Sep-2010 Dianne Hackborn <hackbod@google.com> Work on fragments in layouts.

- Change semantics if IDs associated with these fragments, to
work correctly when placed in a container. If the container
has an ID or you have supplied a tag, the fragment's ID is
optional.

- To do this, there is a new LayoutInflater API that allows code
creating views to access the parent container that view will
be in.

- Fix issues with state management around these fragments. Now
correctly retains state when switching to a layout that doesn't
include the fragment.

Also:

- Add new simple list layouts for items that want to show an
activated state.
- Add new Activity.dump() that can be invoked with adb shell
dumpsys; the default implementation dumps fragment state.

Change-Id: I192f35e3ea8c53fbd26cf909095f2a994abfc1b6
/frameworks/base/core/java/android/widget/TextView.java
879fb6b5d66bec90d3420fad12a2a9b2fe9592f3 20-Sep-2010 Adam Powell <adamp@google.com> Text selection anchors changed to use windows

Manually cherry-picked

Change-Id: Id080dfad0e2f324fef3a5175abc78f76c8bad4c8
/frameworks/base/core/java/android/widget/TextView.java
770a681b2f5b00e699920317bff04a24676ae143 22-Sep-2010 Adam Powell <adamp@google.com> am 9aed3002: Text selection anchors changed to use windows

Merge commit '9aed300279db6953356aed5ef24a42291f5829cb' into gingerbread-plus-aosp

* commit '9aed300279db6953356aed5ef24a42291f5829cb':
Text selection anchors changed to use windows
9aed300279db6953356aed5ef24a42291f5829cb 20-Sep-2010 Adam Powell <adamp@google.com> Text selection anchors changed to use windows

Change-Id: I14f138039f5e3175a8c07f21985715b8447708e5
/frameworks/base/core/java/android/widget/TextView.java
5d8f9dd3572c9d3b3d57985c31427dc9ca2a7f4a 18-Sep-2010 Adam Powell <adamp@google.com> am 99f0f367: am 4258bfb7: Merge "Fix some drawing artifacts/bugs around overlays/text anchors" into gingerbread

Merge commit '99f0f3676f50640dbb22bd12960f771fc414862e'

* commit '99f0f3676f50640dbb22bd12960f771fc414862e':
Fix some drawing artifacts/bugs around overlays/text anchors
99f0f3676f50640dbb22bd12960f771fc414862e 18-Sep-2010 Adam Powell <adamp@google.com> am 4258bfb7: Merge "Fix some drawing artifacts/bugs around overlays/text anchors" into gingerbread

Merge commit '4258bfb7a9fb18907fbfbe79ec0a937b4e7382b1' into gingerbread-plus-aosp

* commit '4258bfb7a9fb18907fbfbe79ec0a937b4e7382b1':
Fix some drawing artifacts/bugs around overlays/text anchors
23bd5f50759c54224a2620cbed4614e434437265 18-Sep-2010 Adam Powell <adamp@google.com> Fix some drawing artifacts/bugs around overlays/text anchors

Change-Id: I28170d4e120506c09a1cfea721244fbcd3c2576a
/frameworks/base/core/java/android/widget/TextView.java
f37df070ea84c353ff8bed4b2591932126d7e2ca 18-Sep-2010 Adam Powell <adamp@google.com> resolved conflicts for merge of b39470b5 to master

Change-Id: If441c8684c576b6cbc485a37088d6869ad3fb23f
4a4a53ae07bb8f760d1e3c588262f56b3a72a7f4 18-Sep-2010 Adam Powell <adamp@google.com> am 25945ca2: Merge "Fix silly touch bug in TextView. Oops." into gingerbread

Merge commit '25945ca2e67c0e46ff2ad46590cd71ca5b4b4266' into gingerbread-plus-aosp

* commit '25945ca2e67c0e46ff2ad46590cd71ca5b4b4266':
Fix silly touch bug in TextView. Oops.
4d4d62b23aa84e740c2abc543a4198863e103476 18-Sep-2010 Adam Powell <adamp@google.com> Fix silly touch bug in TextView. Oops.

Change-Id: Ib256154124c05944c7f2125edfd38ee6799412be
/frameworks/base/core/java/android/widget/TextView.java
b39470b57d2e4e0bf5abb43729ef9e43eb0ad5f2 17-Sep-2010 Adam Powell <adamp@google.com> am b08013c3: Added overlay support for drawing/responding to text anchors.

Merge commit 'b08013c312e3d849029a2f4c11889274c00f438d' into gingerbread-plus-aosp

* commit 'b08013c312e3d849029a2f4c11889274c00f438d':
Added overlay support for drawing/responding to text anchors.
b08013c312e3d849029a2f4c11889274c00f438d 17-Sep-2010 Adam Powell <adamp@google.com> Added overlay support for drawing/responding to text anchors.

Overlays let views draw and respond to touch events outside of their
bounds. This allows selection anchors to be friendlier and easier to
grab. This is currently private API, pending further evaluation.

Added themes/styles for text selection anchors.

Added assets for text selection anchors as provided by UX. The
left/right anchors are currently not suitable for use. They are here
for bookkeeping and replacement later. The theme currently uses the
'middle' anchor asset for all three. This will be changed once assets
are ready.

Change-Id: I01b21e5ae90cab201f86f38f2f5eeaf2bd7f6bcd
/frameworks/base/core/java/android/widget/TextView.java
406f0522e54ab42f49e810e1f52b4b25bc4b6a96 16-Sep-2010 Michael Jurka <mikejurka@google.com> fixing bug where changing alpha on one textview
changed alpha on all other textviews with the
same drawable

Change-Id: I19c808c59654da9ed907d1356bbefe3d9926add0
/frameworks/base/core/java/android/widget/TextView.java
2bffd268f135df8308c9e67af110525a5c463424 13-Sep-2010 Romain Guy <romainguy@google.com> Fix text rendering issue with text scaling.

Change-Id: I1f3ae40025697e8f8ca0616ee6550fe215cadcc8
/frameworks/base/core/java/android/widget/TextView.java
0706f5058cacbbe5f7572ad530d666a038352d82 09-Sep-2010 Gilles Debunne <debunne@google.com> am 2b88c5c7: am 47fa8e80: Fix for an IndentOutOfBounds in TextField.

Merge commit '2b88c5c70d3a70afb02c9ef32c8cd902a12e9434'

* commit '2b88c5c70d3a70afb02c9ef32c8cd902a12e9434':
Fix for an IndentOutOfBounds in TextField.
a3dac8b1dc8c5e02c2177b417f6c1d84fd2ae3dd 09-Sep-2010 Gilles Debunne <debunne@google.com> am ca1b2615: am 87e215fd: Merge "Made context menu appear when tapping inside selection." into gingerbread

Merge commit 'ca1b26150943829a296bf38e55ff9c55dbd98182'

* commit 'ca1b26150943829a296bf38e55ff9c55dbd98182':
Made context menu appear when tapping inside selection.
6eea4cd1872bcc205b1f44a6ccaf410c23eb0aee 09-Sep-2010 Gilles Debunne <debunne@google.com> resolved conflicts for merge of ff545380 to master

Change-Id: Ida3b6cec13b03d734bb1ba4e31554eb5226da749
2b88c5c70d3a70afb02c9ef32c8cd902a12e9434 09-Sep-2010 Gilles Debunne <debunne@google.com> am 47fa8e80: Fix for an IndentOutOfBounds in TextField.

Merge commit '47fa8e800ca3ce56733f7b3a54bace86ad37a1f4' into gingerbread-plus-aosp

* commit '47fa8e800ca3ce56733f7b3a54bace86ad37a1f4':
Fix for an IndentOutOfBounds in TextField.
47fa8e800ca3ce56733f7b3a54bace86ad37a1f4 08-Sep-2010 Gilles Debunne <debunne@google.com> Fix for an IndentOutOfBounds in TextField.

Bug http://b/issue?id=2971995

Change-Id: Id6a40e81b26e14c1e5f06ed1bd70ee419c501c69
/frameworks/base/core/java/android/widget/TextView.java
ca1b26150943829a296bf38e55ff9c55dbd98182 09-Sep-2010 Gilles Debunne <debunne@google.com> am 87e215fd: Merge "Made context menu appear when tapping inside selection." into gingerbread

Merge commit '87e215fd54559935649fb07264ece600bbabbdf9' into gingerbread-plus-aosp

* commit '87e215fd54559935649fb07264ece600bbabbdf9':
Made context menu appear when tapping inside selection.
b18924973500e0169784a21db5b296ab3be4eaef 09-Sep-2010 Gilles Debunne <debunne@google.com> Made context menu appear when tapping inside selection.

Change-Id: I7ca274b007f4daea7d37a3d6b10b9504874b3c49
/frameworks/base/core/java/android/widget/TextView.java
ff5453809692a86093d65b8943186ac12890d123 09-Sep-2010 Gilles Debunne <debunne@google.com> am ab86b782: Merge "Fix for text selection in horizontally scrolled TextViews." into gingerbread

Merge commit 'ab86b782fd2c8c7b1e6b50d30482aa2b8f890e80' into gingerbread-plus-aosp

* commit 'ab86b782fd2c8c7b1e6b50d30482aa2b8f890e80':
Fix for text selection in horizontally scrolled TextViews.
03789e8d598f24519b8eeb7415a96715f2d6cc01 08-Sep-2010 Gilles Debunne <debunne@google.com> Smart word detection in text selection. Manual merge in HC of 63569.

Selecting between words selects the spaces instead of the closest word, facilitating
paste insertion vs word replacement.

Pasting adds/removes space before and after if needed so that pasted text is not appended to
existing text.

Change-Id: Iffa0fb573d3535af72b639d05c5dc0721e80bda5
/frameworks/base/core/java/android/widget/TextView.java
44c1e4c72dea2d7ce077cc6fdc46e01bd863a642 09-Sep-2010 Gilles Debunne <debunne@google.com> Fix for text selection in horizontally scrolled TextViews.

A left padding and scroll was not taken into account in cursor position.

Bug http://b/issue?id=2970142

Change-Id: Ie76e8d97f3dd5fe3a750aa82cd4b97c98892cb48
/frameworks/base/core/java/android/widget/TextView.java
d4fd86d19a070a355255b51742075fbf8e69fa4a 08-Sep-2010 Gilles Debunne <debunne@google.com> am 468394fc: Text Selection: smart word detection. DO NOT MERGE.

Merge commit '468394fc6d1cb0c9078c2f98aa056860f7e0d743' into gingerbread-plus-aosp

* commit '468394fc6d1cb0c9078c2f98aa056860f7e0d743':
Text Selection: smart word detection. DO NOT MERGE.
468394fc6d1cb0c9078c2f98aa056860f7e0d743 27-Aug-2010 Gilles Debunne <debunne@google.com> Text Selection: smart word detection. DO NOT MERGE.

Selecting between words selects the spaces instead of the closest word, facilitating
paste insertion vs word replacement.

Pasting adds/removes space before and after if needed so that pasted text is not appended to
existing text.

Cut and copy not available when selection is empty.

Change-Id: I331413bdef341a4eceffe76fa2957f388d540b6e
/frameworks/base/core/java/android/widget/TextView.java
64e54a6e1fcb4a9603b3b86e1fb883ce49eadc92 08-Sep-2010 Gilles Debunne <debunne@google.com> Made text selection work in ExtractEditText. Manual merge of Gingerbread 64947.

Change-Id: I2bbd4cd7abbc77212fb4df256c345f95232de127
/frameworks/base/core/java/android/widget/TextView.java
2ae3718b448cdc5e94b4686795301a01f54640e4 08-Sep-2010 Gilles Debunne <debunne@google.com> am dbd25cdb: Made text selection work in ExtractEditText. DO NOT MERGE

Merge commit 'dbd25cdbc3dcad573aaeaf493bc186006bce3d8e' into gingerbread-plus-aosp

* commit 'dbd25cdbc3dcad573aaeaf493bc186006bce3d8e':
Made text selection work in ExtractEditText. DO NOT MERGE
dbd25cdbc3dcad573aaeaf493bc186006bce3d8e 08-Sep-2010 Gilles Debunne <debunne@google.com> Made text selection work in ExtractEditText. DO NOT MERGE

Change insertion point on tap is no longer handled by the CommitSelectionReceiver
(as it is not called by ExtractEditText).

Fixed a bug to handle drawing positions when the internal TextView scroller is used.

Change-Id: I87398c7109c5527d21dee6abbdb925848244d594
/frameworks/base/core/java/android/widget/TextView.java
9e0a9d84e688f4103dd73018076e47c713823bbd 01-Sep-2010 Gilles Debunne <debunne@google.com> am ff46a5c9: am d2fbabad: Merge "Fixed single line state on TextView." into gingerbread

Merge commit 'ff46a5c9bd55c492925ffcb608510a0a3dd8a969'

* commit 'ff46a5c9bd55c492925ffcb608510a0a3dd8a969':
Fixed single line state on TextView.
ff46a5c9bd55c492925ffcb608510a0a3dd8a969 01-Sep-2010 Gilles Debunne <debunne@google.com> am d2fbabad: Merge "Fixed single line state on TextView." into gingerbread

Merge commit 'd2fbabad1e1fa8de1f0809ec5a2653f8af25dbb3' into gingerbread-plus-aosp

* commit 'd2fbabad1e1fa8de1f0809ec5a2653f8af25dbb3':
Fixed single line state on TextView.
e67b58a347109b444070a34e86e81ce119f266b3 01-Sep-2010 Gilles Debunne <debunne@google.com> Fixed single line state on TextView.

singleLine flag is set to false by default. However, when no singleLine or input
type is provided, the inputType of the TextView is not set to
EditorInfo.TYPE_TEXT_FLAG_MULTI_LINE for edit texts.

Change-Id: Id747d3319afcddb3ab6ae0463947e8b3e470ef73
/frameworks/base/core/java/android/widget/TextView.java
aeaf2830f5ab81e6f95062514239081af65a914f 27-Aug-2010 Gilles Debunne <debunne@google.com> am e69b2860: Merge "DO NOT MERGE Removed "Stop selecting text" option." into gingerbread

Merge commit 'e69b286005b0b543e274f523d894e069811215a6' into gingerbread-plus-aosp

* commit 'e69b286005b0b543e274f523d894e069811215a6':
DO NOT MERGE Removed "Stop selecting text" option.
1040dc465cbf5ca8f834a87c949e476abefa3f76 27-Aug-2010 Dianne Hackborn <hackbod@google.com> Improve clipboard API.

- Rename ClippedData to ClipData.
- Introudce ClipDescription subclass.
- Add convenience APIs for creating a ClipData.
- Add ClipboardManager API to get just the ClipDescription.
- Define MIME types associated with a clip.

Change-Id: If97ef91aa99a4dd0ec74ccaea504345c9ef12b5c
/frameworks/base/core/java/android/widget/TextView.java
d2420248faa261d596028ffe1593cdc8afd81e45 27-Aug-2010 Gilles Debunne <debunne@google.com> DO NOT MERGE Removed "Stop selecting text" option.

Change-Id: Ic553d099664d1703a39139e7440d583cfec20d76
/frameworks/base/core/java/android/widget/TextView.java
dfad42760f3c9c3b8439ff4b365256474471abe4 27-Aug-2010 Gilles Debunne <debunne@google.com> am 225ad9cb: Merge "DO NOT MERGE Text selection: tapping on selection opens context menu" into gingerbread

Merge commit '225ad9cb184c94e29e4e0fb89d5e7d043e399ca4' into gingerbread-plus-aosp

* commit '225ad9cb184c94e29e4e0fb89d5e7d043e399ca4':
DO NOT MERGE Text selection: tapping on selection opens context menu
45b2d699e10474f0167691774c0cfb93cfe2dae9 27-Aug-2010 Gilles Debunne <debunne@google.com> DO NOT MERGE Text selection: tapping on selection opens context menu

Back key exit selection mode. No more "Stop selecting text" in second context menu.

A tap on one of the handles also triggers the second context menu.

Paste is only available on long press in first menu for empty text fields.

Change-Id: Ic4fa00458d4f617a81885436b53d4fc923347609
/frameworks/base/core/java/android/widget/TextView.java
511d444be07905b0e45b51a43cc9eed499285c81 27-Aug-2010 Gilles Debunne <debunne@google.com> am b318ef79: am 62dbd82a: Fix for IndexOutOfBounds in TextView getWordLimitsAt.

Merge commit 'b318ef79d5018fdf492ba254438e2d9f1c0fff4c'

* commit 'b318ef79d5018fdf492ba254438e2d9f1c0fff4c':
Fix for IndexOutOfBounds in TextView getWordLimitsAt.
fc2563ba4e9c93ed803f3ce540f92f199f848036 26-Aug-2010 Gilles Debunne <debunne@google.com> resolved conflicts for merge of f309c7a8 to master

Change-Id: I80dfe8a0b142fa95fa83d46f3b60223c2991fce3
b318ef79d5018fdf492ba254438e2d9f1c0fff4c 26-Aug-2010 Gilles Debunne <debunne@google.com> am 62dbd82a: Fix for IndexOutOfBounds in TextView getWordLimitsAt.

Merge commit '62dbd82aad0f84c88212566321e3fb370affaf7c' into gingerbread-plus-aosp

* commit '62dbd82aad0f84c88212566321e3fb370affaf7c':
Fix for IndexOutOfBounds in TextView getWordLimitsAt.
62dbd82aad0f84c88212566321e3fb370affaf7c 26-Aug-2010 Gilles Debunne <debunne@google.com> Fix for IndexOutOfBounds in TextView getWordLimitsAt.

Bug http://b/issue?id=2948904

Change-Id: I10008374da92d5a98ec567cc76732383e66c4c5b
/frameworks/base/core/java/android/widget/TextView.java
f309c7a869b968465619077c78922cf3f95a629d 26-Aug-2010 Gilles Debunne <debunne@google.com> am 1b400c77: Merge "Fix for NPE in TextView." into gingerbread

Merge commit '1b400c7763e63505bafd496953764c3e97c2be5b' into gingerbread-plus-aosp

* commit '1b400c7763e63505bafd496953764c3e97c2be5b':
Fix for NPE in TextView.
df4ee43062281ee9cf908a7c45b269738bd017d3 26-Aug-2010 Gilles Debunne <debunne@google.com> Fix for NPE in TextView.

Bug http://b/issue?id=2941549

Change-Id: Id5cbf0a3b2b68f450a9271333b96d41b01aa9f5c
/frameworks/base/core/java/android/widget/TextView.java
925f2f909649dd0cbf93674201430879c2e03f99 25-Aug-2010 Gilles Debunne <debunne@google.com> resolved conflicts for merge of 9765b2a0 to master

Change-Id: Ic37a443fff0425e9d7c8395f71665d56c38d7e53
b32d0f23a82452d6f7fa8c513e179f1287621905 24-Aug-2010 Gilles Debunne <debunne@google.com> am e2978c8d: Merge "Fix for an NPE in TextView." into gingerbread

Merge commit 'e2978c8dcafdf20c2b49999ec423cb5f76d4a583' into gingerbread-plus-aosp

* commit 'e2978c8dcafdf20c2b49999ec423cb5f76d4a583':
Fix for an NPE in TextView.
4e765e002f135e2c4c30aff9e94d40e296a74d60 24-Aug-2010 Gilles Debunne <debunne@google.com> Fix for an NPE in TextView.

Change-Id: I0fca8f839cd444d9b70174078063efff5be499a3
/frameworks/base/core/java/android/widget/TextView.java
8db59adccf3e07b9597a69858e8e4de4f7f233e7 24-Aug-2010 Kenny Root <kroot@google.com> resolved conflicts for merge of b037da40 to master

Change-Id: I591f80f613870a4b1557f17d1c8574f661ed8121
9765b2a01d32ea6f2f955170ef7d0185e2252b0a 24-Aug-2010 Gilles Debunne <debunne@google.com> am 2703a42d: When an EditText gains focus by tapping, move the insertion point where tapped.

Merge commit '2703a42d16af0e62da1bba02b6c935d98debf936' into gingerbread-plus-aosp

* commit '2703a42d16af0e62da1bba02b6c935d98debf936':
When an EditText gains focus by tapping, move the insertion point where tapped.
2703a42d16af0e62da1bba02b6c935d98debf936 24-Aug-2010 Gilles Debunne <debunne@google.com> When an EditText gains focus by tapping, move the insertion point where tapped.

The previous behavior was to move cursor at the end of the first line,
which feels weird.

Change-Id: I5a72f9871ed79ee2c521698ea642ba126537f4f9
/frameworks/base/core/java/android/widget/TextView.java
b037da401ad76843c32e7d732d43d452e0e6f978 24-Aug-2010 Gilles Debunne <debunne@google.com> am 3e05a0be: Hysteresis effect in Text selection.

Merge commit '3e05a0beb2fad0b21558019d2adf6805da70e10e' into gingerbread-plus-aosp

* commit '3e05a0beb2fad0b21558019d2adf6805da70e10e':
Hysteresis effect in Text selection.
3e05a0beb2fad0b21558019d2adf6805da70e10e 23-Aug-2010 Gilles Debunne <debunne@google.com> Hysteresis effect in Text selection.

Vertical movement requires going over a given threshold to change line.
Makes it easier to move down without changing line, so that one can see the
cursor better. Also simplifies long line selection.

Change-Id: I791da500232c6e510af64c637ed994c5da9a4fea
/frameworks/base/core/java/android/widget/TextView.java
27113f86461fb19005900b8d6cebf264ecf77409 23-Aug-2010 Gilles Debunne <debunne@google.com> Merge conflict due to wrong import paths.

Change-Id: I3bba20b26036de53b29bb0b30885fe33832ba3e3
/frameworks/base/core/java/android/widget/TextView.java
252b36379fedd0c91125679170a56d080d05ae9f 21-Aug-2010 Gilles Debunne <debunne@google.com> resolved conflicts for merge of a842d143 to master

Change-Id: I60bba17630d4a4aff5cb8ac9c8b81a2a1fddcd3b
a842d143d2dcad07906830a30deaf0ffce86f5d9 20-Aug-2010 Gilles Debunne <debunne@google.com> am d018a0ce: Merge "Text selection without trackball." into gingerbread

Merge commit 'd018a0ce72124f668d859b19fe3e73f5637d3c7c' into gingerbread-plus-aosp

* commit 'd018a0ce72124f668d859b19fe3e73f5637d3c7c':
Text selection without trackball.
b0d6ba1ec4f71b96cab7d1ff62b846d5cf162c4f 18-Aug-2010 Gilles Debunne <debunne@google.com> Text selection without trackball.

Backported from HC.

Squashed commit of the following:

commit af214a595c7a9fdd11a2dc384f7d4665abf751c0
Fixes in TextView's selection.

commit eb9fd59ebe6500a66c2003d46b5802299970ae8d
TextView with Selection Contextual Mode

commit 4c4c338ef355b369ce4b57d6c6fba7ee8f9dddf4
Cosmetic changes around TextView.

commit d4b4b054e87480d984ad18766f5e76553e3080d8
Double and one and a half tap removed from TextView.

commit 897c2847ba1fca8ef01eadadd1bc3de007af3ee5
Selection handlers in TextView

commit 832be74a5394649e28927484d9a86c6d53b430e7
New cursor controller in TextViews.

Change-Id: I01cc64736e2abea605317ee53907a1713617fc17
/frameworks/base/core/java/android/widget/TextView.java
ed279f8f19098aef31aba43663ab7b3fa43f1999 19-Aug-2010 Gilles Debunne <debunne@google.com> Fix for a bug that prevents text selection on initially empty text edits.

Change-Id: I0346b632e7de32b082c0ed7e605873946e3eb554
/frameworks/base/core/java/android/widget/TextView.java
c4d8eb6fb7c88c5c4da38b0b113c24cc4b78c0b7 19-Aug-2010 Romain Guy <romainguy@google.com> Speedup TextView fades (no more layers required.)

Also fixes a crash in the drop shadows cache and improves
drop shadows caching.

Change-Id: I9c0208a49467f9201d786ae0c129194b8d423923
/frameworks/base/core/java/android/widget/TextView.java
8b55f377655d13a445b08a0a8ed09b6e95c752b0 19-Aug-2010 Romain Guy <romainguy@google.com> Fix drawing issues with layers.

Prior to this change layers would clip their content incorrectly. They would
also not apply alpha properly.

Change-Id: Id7b3aaa7dbdc51de68fe050e64458f68e40503fd
/frameworks/base/core/java/android/widget/TextView.java
a6d7ee19cc1f72f279b338bddcee3a1648c6c84c 13-Aug-2010 Gilles Debunne <debunne@google.com> Fixes in TextView's selection.

Handles are now centered on selection corners.
Touch regions tuned, especially for the one line / last line case.
Selection mode is stopped when text is entered or modified.
New temporary assets.
New selection background color.
Using references to theme for some hard-coded colors.

Change-Id: I820ec39bb6d5a3c6598c7c34b9c8f90b848da9f3
/frameworks/base/core/java/android/widget/TextView.java
ecb1d5ded9afee63735dc91cfb08ada2c639d237 11-Aug-2010 Konstantin Lopyrev <klopyrev@google.com> resolved conflicts for merge of f00ee0f7 to master

Change-Id: I13b968bde37fad8fffdaa9bb94a0f1da9b2e6e0c
f00ee0f76260a660cd9648d3bda9863e133cb401 11-Aug-2010 Konstantin Lopyrev <klopyrev@google.com> am f39d5987: Merge "Categorizing exported view properties." into gingerbread

Merge commit 'f39d5987b977fdff8c34a2ddabaec31d1e909db3' into gingerbread-plus-aosp

* commit 'f39d5987b977fdff8c34a2ddabaec31d1e909db3':
Categorizing exported view properties.
bea95162ca25bd00b0479d93739b6283795c3986 11-Aug-2010 Konstantin Lopyrev <klopyrev@google.com> Categorizing exported view properties.

Change-Id: I79c42019836973d80662c21d195d088ae01537a0
/frameworks/base/core/java/android/widget/TextView.java
23fdaf6fb62a9b5154b2508916a21c678462c5d0 06-Aug-2010 Dianne Hackborn <hackbod@google.com> Add new ContentProvider for doing conversions to data streams.

This introduces basic infrastructure that should allow content
providers holding complex data to perform on-demand conversion
of their data to streams of various types. It is achieved through
two new content provider APIs, one to interrogate the possible
stream MIME types the provider can return, and the other to
request a stream of data in a particular MIME type.

Because implementations of this will often need to do on-demand
data conversion, there is also a utility intoduced in ContentProvider
for subclasses to easily run a function to write data into a
pipe that is read by the client.

This feature is mostly intended for cut and paste and drag and
drop, as the complex data interchange allowing the source and
destination to negotiate data types and copy (possible large)
data between them. However because it is fundamental facility
of ContentProvider, it can be used in other places, such as for
more advanced GET_CONTENT data exchanges.

An example implementation of this would be in ContactsProvider,
which can now provider a data stream when a client opens certain
pieces of it data, to return data as flat text, a vcard, or other
format.

Change-Id: I58627ea4ed359aa7cf2c66274adb18306c209cb2
/frameworks/base/core/java/android/widget/TextView.java
f788a9fccd9cdb662527aa375af24b8868069108 22-Jul-2010 Gilles Debunne <debunne@google.com> TextView with Selection Contextual Mode

Context menu entries have been moved to a contextual mode in the action bar.

Change Input Method has been removed and *should be added to the system bar instead*.

Add word to dictionnary has also been removed and should now be done using the suggestioni
bar "tap on word to add" feature.

Change-Id: I767373f53515b2d6a06500321b4b12ed0b05a9b6
/frameworks/base/core/java/android/widget/TextView.java
2d0e87b64402459d89adfd004083a748f81a0391 13-Jul-2010 Gilles Debunne <debunne@google.com> Cosmetic changes around TextView.

Fixed some warnings in the code.

Change-Id: Id19395031a1ab41edcc47e3dc8cd9479c6e19f83
/frameworks/base/core/java/android/widget/TextView.java
05336274dd8e7ababfe5b253069653abbba20c3c 10-Jul-2010 Gilles Debunne <debunne@google.com> Selection handlers in TextView

Long press on text view triggers selection mode. Two handles can be used to
adjust selection.

Change-Id: I45bb5fd62cae910570cff34920e45c4383160179
/frameworks/base/core/java/android/widget/TextView.java
cc3ec6cdb2b892eb29513e72d8b205acbe997b25 23-Jun-2010 Gilles Debunne <debunne@google.com> New cursor controller in TextViews.

Editable TextView now display a cursor controller under the insertion
point so that it can be precisely moved.

Change-Id: Ia2e6ddc57d249647ff6683e10e4226db3df27223
/frameworks/base/core/java/android/widget/TextView.java
dac5f9f3caea71e9e0002582ee90ffddadb70d8f 08-Jul-2010 Romain Guy <romainguy@google.com> Do not draw the fade areas when it's not necessary.

Prior to this change, every singleLine TextView would create, draw
and compose a layer on every draw dispatch. This was unnecessary and
expensive.

Change-Id: Ia4f79d7fc8f485784fe6b795f0f196d38d579838
/frameworks/base/core/java/android/widget/TextView.java
b6ca72314211e5f23cb2a4b3f17acc54ab6e8b87 24-Jun-2010 Gilles Debunne <debunne@google.com> Fixed bug 2795971 IME doesn't appear on touching a text field

Refactoring in CL 55138 added an extra condition to display the IME.

Change-Id: I2a4cc83bb39bd2c87ad3bd75ef234cdbdfdad74f
/frameworks/base/core/java/android/widget/TextView.java
57f4e5bcf56752053815a755fee4867e722ce2b8 22-Jun-2010 Gilles Debunne <debunne@google.com> Fixed scrolling issue when moving cursor in long TextViews.

Previous CL https://android-git.corp.google.com/g/55138 was submitted
before the suggested change was uploaded.

setSelection() was called twice by onTouchEvent, once to the previous
position, and then to the new position (unless the IME got displayed,
so that in that case the cursor is not moved).

The second call was actually triggering a call for a scroll of 0 since
the view is already displaying the cursor. This scroll is filtered out by a
shortcut in ScrollView. The first setSelection's scroll does not have
the same issue (since the previous cursor's position is out of screen
and requires a scroll) and it is then applied, effectively moving the cursor
to a new position but scrolling to the previous position.

The fix is to call setSelection only once, after the IME has been asked
to display. The cursor is moved to the old/new position depending on the
resultCode in onReceiveResult in CommitSelectionReceiver.

Bug: http://b/issue?id=2778954
Change-Id: I157d7ae451574e8a6fffb894eb1d6880acfe01d1
/frameworks/base/core/java/android/widget/TextView.java
bbb5d6e256675199c21f0bb621e6233acc3418a6 22-Jun-2010 Gilles Debunne <debunne@google.com> Fixed scrolling issue when moving cursor in long TextViews.

setSelection() was called twice by onTouchEvent, once to the previous
position, and then to the new position (unless the IME got displayed,
so that in that case the cursor is not moved).

The second call was actually triggering a call for a scroll of 0 since
view is already displaying the cursor. This scroll is filtered out by a
shortcut in ScrollView. The first setSelection's scroll does not have
the same issue (since the previous cursor's position is out of screen
and requires a scroll) and it then applied, effectively moving the cursor
to a new position but the scrolling to the previous position.

The fix is to call setSelection only once, after the IME has been asked
to display. The cursor is moved to the old/new position depending on the
resultCode in onReceiveResult in CommitSelectionReceiver.

Bug: http://b/issue?id=2778954
Change-Id: I0983fdf18993e63b230e093e703f95efe6e2d7a8
/frameworks/base/core/java/android/widget/TextView.java
e15b35891f5d767f82d407960fbeb5c9f0a5c340 17-Jun-2010 Gilles Debunne <debunne@google.com> Suppressed warnings in TextView.

Change-Id: Icaa4b6d28649559b8acee970e483d50e4c00e25d
/frameworks/base/core/java/android/widget/TextView.java
0c702b88c5d0d4380930b920f5be6e66dd95a0d8 14-May-2010 Doug Felt <dougfelt@google.com> Move shaping to native.

Add internal API (getTextRunAdvances) to Paint, use when measuring.
Add internal API (getTextRunCursor) to Paint, use when determining
valid cursor positions.

Remove java-level shaping code. Remove 'prep' code in TextLine
(except for replacement text) since shaping now is done on the fly as
needed in native.

Provide explicit shaping context bounds to internal text measuring,
cursor movement, and rendering APIs.

Update for to changes in external API in ushape.h.

Change-Id: I146958b624802ce8553125e5c3c6c03031bc9608
/frameworks/base/core/java/android/widget/TextView.java
e4031a3780ad3560d540e87e543a316b0b50a945 10-Jun-2010 Jean-Baptiste Queru <jbq@google.com> am 030b0ebe: merge from froyo-plus-aosp
3c259d3247d4798f2328c4064d6970f07e0763aa 09-Jun-2010 The Android Open Source Project <initial-contribution@android.com> merge from open-source master

Change-Id: Iaf90d2aaa3cb3a435336c2ccd08b587d9fc3690b
964be41e9eacb7011c80cf348ef6de52a5d0a18a 17-Feb-2010 Viktor Yakovel <viktor.yakovel@sonyericsson.com> Fix incorrect calculation of start and end indices of changed text

- The problem is taht the calculation of indices does not take the
difference in original and modified text lengths into account.
- If reportExtractedText() is called from the onDraw() function,
mInputMethodState is not reset.

The error can occur when the user is editing formatted text using a full screen editor.
One example of formatted text is phone numbers (e.g. dashes are added to North American
numbers by the PhoneNumberFormattingTextWatcher class).
If the two first digits are removed from the number 555-666-777, the new number becomes 566--777.
This is due incorrect calculation of start and end indices of the changed text. The error is in
the TextView class and the problem is that the calculation does not take the difference in original
and modified text lengths into account.

Change-Id: If12d0f571873a6f1874102377432affb64ee21e8
/frameworks/base/core/java/android/widget/TextView.java
c982f60e982c1d2df9f115ed9a5c3ef3643d0892 25-May-2010 Doug Felt <dougfelt@google.com> Fix alignment issues with RTL paragraphs.

Also remove unused debugging code that depends on junit.
Remove trailing whitespace in changed code.

Change-Id: Ie02d1b8220c599a672ee6e91af0fba634e0f620c
/frameworks/base/core/java/android/widget/TextView.java
75095f693acccada3712375e7bba3b0f29d02683 19-May-2010 The Android Open Source Project <initial-contribution@android.com> am 34b1c116: am b39b0f32: am faf9a783: merge from open-source master
faf9a78363b0c773b95c9b43263d788aee313054 19-May-2010 The Android Open Source Project <initial-contribution@android.com> merge from open-source master

Change-Id: I970684d917ea2024871b45abe532c52bb45673c6
f47d7405bbcb25d7cdf89ebb059f41520fe9ab87 22-Apr-2010 Doug Felt <dougfelt@google.com> Modify Canvas drawText to run bidi and shape.

Adds drawTextRun as internal API on Canvas and GraphicsOperations.
Adds implementation to implementors of GraphicsOperations.

Adds state and API on Paint to control the bidi algorithm when used
by Canvas. This API is currently hidden.

The drawText changes are incomplete since shaping is not yet available
in the native code.

Change-Id: I4368048aef9545df0953a349381771603e04b619
/frameworks/base/core/java/android/widget/TextView.java
970a138c9730b3763171d7dc297a6372388b569f 12-Feb-2010 Viktor Yakovel <viktor.yakovel@sonyericsson.com> Text disappears when selecting text in text editor.

The problem appears when the user selects, copies and paste text
and then selects text again. The second time text is selected,
the copied text becomes visible in the text field.

Change-Id: Iae19d1659f58ad2e1c6f1a98bdef8bbedabd447f
/frameworks/base/core/java/android/widget/TextView.java
be75659485d809b5f52e32d2bd81acffd4baeb67 10-Mar-2010 Svetoslav Ganov <svetoslavganov@google.com> Fixing bug 2502522 - Accessibility events contain text of invisible views

Change-Id: I0eccc82ad9f3139e46942cb61212bb83f992c173
/frameworks/base/core/java/android/widget/TextView.java
8e618e54ef0f009cac15972af9d9a72d6f6b6f94 08-Mar-2010 Romain Guy <romainguy@android.com> Report scroll events from ScrollView and HorizontalScrollView.
Bug #2342763

Also fix typos in TextView.

Change-Id: I58ab906b9bebe562c1a913977e2d6970bfcf3788
/frameworks/base/core/java/android/widget/TextView.java
2a4f254d53c065da16114a84bcfe95f57ccb2587 26-Feb-2010 Kenny Root <kroot@google.com> Remove misleading method comment on TextView#setHint

Comment incorrectly specified that the setHint(...) methods were
deprecated and suggested instead using different methods that did not
exist.

Change-Id: I5e7a1570beb8f1cd807853c6d9de8072afa5123e
/frameworks/base/core/java/android/widget/TextView.java
dcc490f20103a4bbd879ea040ce67779d211c2d7 25-Feb-2010 Romain Guy <romainguy@android.com> Fix the build.
/frameworks/base/core/java/android/widget/TextView.java
a440b002aa59e1455bdfa2c5a1ca51c74bbc19ac 25-Feb-2010 Romain Guy <romainguy@android.com> Prevents ListView items children to modify properties of other children.
Bug #2464502

This fix introduce a new dispatch mechanism to tell views when they are temporary
detached/reattached from/to a ListView. This is very important to remove pending
callbacks or cleanup temporary states.

This change also modifies TextView which was relying on that callback in a very
particular case: a focused EditText in a ListView. The modified code acts only
when in that case, not if onStart/FinishTemporaryDetach() is called via
dispatch*() (== recycled views in ListView.)
/frameworks/base/core/java/android/widget/TextView.java
2a399f066d4f3870385002cdcda8082a0eeeb770 24-Feb-2010 The Android Open Source Project <initial-contribution@android.com> am 563d3a62: merge from open-source master

Merge commit '563d3a62f3762b312a4c0a9d9af15a2333beaede'

* commit '563d3a62f3762b312a4c0a9d9af15a2333beaede':
These changes add access to some status values in widgets listed below:
9a352305f86db9782e474dc09bcf3d09511abf56 24-Feb-2010 The Android Open Source Project <initial-contribution@android.com> merge from open-source master
7a36788f4a69b3ddaf8fb8e250e1a13bee7238fa 24-Feb-2010 Steve Zeigler <sfzeigler@gmail.com> These changes add access to some status values in widgets listed below:

widget/CheckedTextView.java: report if the item is checked or not.

widget/CompoundButton.java: report if the item is checked or not.

widget/ProgressBar.java: isIndeterminate(), getProgress(), getSecondaryProgress(), and getMax() report what
sliders and progress bars are showing

widget/TextView.java: report the current selection: getSelectionStart() and getSelectionEnd()
/frameworks/base/core/java/android/widget/TextView.java
bd6f964da1fc764d0681e7ce528ea6b1808623d2 22-Jan-2010 Amith Yamasani <yamasani@google.com> am 658dc0d4: am b35b8c13: Merge "Security fix in accessibility - don\'t read out password. # 2371557" into eclair

Merge commit '658dc0d4b03015eb4a692968b82b664e24aa605a'

* commit '658dc0d4b03015eb4a692968b82b664e24aa605a':
Security fix in accessibility - don't read out password. # 2371557
658dc0d4b03015eb4a692968b82b664e24aa605a 19-Jan-2010 Amith Yamasani <yamasani@google.com> am b35b8c13: Merge "Security fix in accessibility - don\'t read out password. # 2371557" into eclair

Merge commit 'b35b8c1334b8bb8c4fb8b679fdb0b9bcbd5b41fe' into eclair-plus-aosp

* commit 'b35b8c1334b8bb8c4fb8b679fdb0b9bcbd5b41fe':
Security fix in accessibility - don't read out password. # 2371557
91ccdb5f10456d7e47e5307515766e875a521802 15-Jan-2010 Amith Yamasani <yamasani@google.com> Security fix in accessibility - don't read out password. # 2371557

Check for password type before send accessibility event.
[Submitting for Svet]
/frameworks/base/core/java/android/widget/TextView.java
980a938c1c9a6a5791a8240e5a1e6638ab28dc77 09-Jan-2010 Romain Guy <romainguy@android.com> Deprecate fill_parent and introduce match_parent.
Bug: #2361749.
/frameworks/base/core/java/android/widget/TextView.java
7bbb199912bd4bc7b4827358bcdd90acc826e7fa 15-Dec-2009 Eric Fischer <enf@google.com> am 72521860: Merge change I8f657a99 into eclair

Merge commit '725218602e8505cd6fe3075253fcb792727e2431' into eclair-plus-aosp

* commit '725218602e8505cd6fe3075253fcb792727e2431':
Avoid a crash trying to get a substring whose start is after its end.
32929413ffb54b9338a889e764e5cc0608cb2be6 15-Dec-2009 Eric Fischer <enf@google.com> Avoid a crash trying to get a substring whose start is after its end.

Constrain the start of the extracted text, not just the end, to the length
of the content.

Approver: ryanpc
Bug: 2323813
/frameworks/base/core/java/android/widget/TextView.java
190a80ceb5e3102e578b0f0ea292f0c0e23ec594 03-Dec-2009 Dianne Hackborn <hackbod@google.com> am 8693f82d: Merge change If1f0bf33 into eclair

Merge commit '8693f82d02fd9b3a805e076fa1eafacd1737446d' into eclair-plus-aosp

* commit '8693f82d02fd9b3a805e076fa1eafacd1737446d':
Some work on issue #2286804: sometimes text field doesn't accept input
27d377221c7970a5205c83f8a9f62f755dc1fa5d 02-Dec-2009 Dianne Hackborn <hackbod@google.com> Some work on issue #2286804: sometimes text field doesn't accept input

This doesn't really fix the problem being brought up here, but fixes a
related issue I found while investigating it -- if you tap a text view
enough to cause it to try to scroll, this will cause the touch to become
a scroll instead of a click, even if there is nothing to scroll. So
often quick taps to bring up the IME would be canceled because they
became a non-scroll.

Unfortuntately after syncing the latest build, I was having a lot of
trouble reproducing the original problem. I think I need to punt it to
MR2 at this point.

Change-Id: If1f0bf33de1b4d71c9f677cdad07639b7a3fb772
/frameworks/base/core/java/android/widget/TextView.java
478de466ce0504b9af639c3338b883893670a8e8 15-Nov-2009 Jean-Baptiste Queru <jbq@google.com> merge from eclair
9db3d07b9620b4269ab33f78604a36327e536ce1 13-Nov-2009 Jean-Baptiste Queru <jbq@google.com> eclair snapshot
/frameworks/base/core/java/android/widget/TextView.java
5613fcb674716822de9981be959d36811382ff0e 04-Nov-2009 Romain Guy <romainguy@android.com> am e1e0dc8e: Make sure we relayout the TextView when the text changes and marquee is enabled.

Merge commit 'e1e0dc8e6eaec052ebb6b88f5b1223075ce5a356' into eclair-plus-aosp

* commit 'e1e0dc8e6eaec052ebb6b88f5b1223075ce5a356':
Make sure we relayout the TextView when the text changes and marquee is enabled.
e1e0dc8e6eaec052ebb6b88f5b1223075ce5a356 04-Nov-2009 Romain Guy <romainguy@android.com> Make sure we relayout the TextView when the text changes and marquee is enabled.

Bug #2192881.

Change-Id: Iffc2d15947a11974d9dc175740e3a5489cd43d21
/frameworks/base/core/java/android/widget/TextView.java
b7463eb0c739d3d28c96c644f98f7f685027b62e 14-Oct-2009 Jean-Baptiste Queru <jbq@google.com> merge from open-source master
1d05c7cae5ee21e0a9dde4cebf0274a3be8fd943 12-Oct-2009 Christoffer Gurell <chgur@tat.se> Fixes scroll/measure bug in EditText

Bug and fix described in:
http://code.google.com/p/android/issues/detail?id=4184
/frameworks/base/core/java/android/widget/TextView.java
afa78967b8553443aa32579d78970a076d7581f6 29-Sep-2009 Dianne Hackborn <hackbod@google.com> Hack to fix issue #2125365: Sports Trivia compatability with Eclair

Adds a mechanism to tell Paint the scaling factor its target
canvas will have, for it to compute font metrics based on the
correct font size. Only TextView uses this, but that is enough
for the large majority of apps.

Change-Id: I6cacaa0dd26d40ee3ad959bed0028678d6e9016e
/frameworks/base/core/java/android/widget/TextView.java
a8c0edb8fb10a2deb86eec619fd813e4caa766e4 28-Sep-2009 Amith Yamasani <yamasani@google.com> Fix 2143297: Fix transition from password -> visible password
/frameworks/base/core/java/android/widget/TextView.java
f116bf8884b5b58aae261d148003811aa4a7c6e9 28-Sep-2009 Mike Cleron <mcleron@google.com> Fading scrollbars return. But you have to opt in.
/frameworks/base/core/java/android/widget/TextView.java
ad8da91895afa7e8a97a9d681471d51924461cff 17-Sep-2009 Bjorn Bringert <bringert@android.com> Reset typeface when changing from visible password inputType

Before, when changing a TextView from TYPE_TEXT_VARIATION_VISIBLE_PASSWORD
to a non-password input type, the typeface remained monospaced.

Fixes http://b/issue?id=2126708
"TextView does not restore typeface when changing inputType
from password to text"

Change-Id: Iad704640f69beed10a4b3deec7c38f3eba7b91ee
/frameworks/base/core/java/android/widget/TextView.java
fa0d253b77cf6e6d15c8195f206ae54e91296823 18-Sep-2009 Eric Fischer <enf@google.com> Make the EditText error popup correctly resize when the view resizes.

It was calling PopupWindow.update() with -1 arguments for the width
and height under the impression that that would cause it to use the
new values that had already been set with setWidth() and setHeight().
But in fact this caused it not to change at all.
/frameworks/base/core/java/android/widget/TextView.java
7ed6ee5692c808cf0ebb3ee208fc8ee1314622c2 11-Sep-2009 Dianne Hackborn <hackbod@google.com> Fix issue #1983406: Soft keyboard doesn't show up in an EditText with "digits" attribute set

Also pretend to fix #2054990 (com.android.frameworktest: java.lang.NullPointerException
at android.accessibilityservice.AccessibilityService$IEventListenerWrapper.executeMessage(
AccessibilityService.java:215))... simply by making the variable that apparently was
null final, to assure myself that there is no possible way in the world for it to be
null. :p

Change-Id: I73e337d65b8360721896a0296691257b3e47564b
/frameworks/base/core/java/android/widget/TextView.java
be8e36e32b9cb2bb37e28e4c0d414ee0e46c84a2 04-Sep-2009 Jean-Baptiste Queru <jbq@google.com> merge from donut
72b1f379d5c97c8ff31d2201e78215af777d6bda 31-Aug-2009 Jean-Baptiste Queru <jbq@google.com> donut snapshot
/frameworks/base/core/java/android/widget/TextView.java
688b0f1235aba0e82ff4eec4d935b494d9c4754d 22-Aug-2009 Eric Fischer <enf@google.com> am 36d5aaec: Merge change 22322 into donut

Merge commit '36d5aaec2ee1f11ea80639c8194e4aac2be3892d' into eclair

* commit '36d5aaec2ee1f11ea80639c8194e4aac2be3892d':
Add FLAG_ACTIVITY_NEW_TASK flag when adding a word to the dictionary.
cc5dfa9ed0142aa52e293da30ad3d31ee358970d 21-Aug-2009 Eric Fischer <enf@google.com> Add FLAG_ACTIVITY_NEW_TASK flag when adding a word to the dictionary.

Without this, the runtime would restart when you tried to add a word
from the search widget.

Bug 2069689
/frameworks/base/core/java/android/widget/TextView.java
a9f1dd021f8f6ee777bc4d27913bd40c42e753af 13-Aug-2009 Eric Fischer <enf@google.com> Make <font size> and <font height> in string resources respect density.

This unfortunately requires API changes because the existing text markup
classes had no access to the screen density.

TextPaint gains a "density" field so that TextView can pass the density
along. AbsoluteSizeSpan gains a new flag to indicate that its argument
is in dip instead of in physical pixels. LineHeightSpan gains an inner
interface whose chooseHeight() method includes a TextPaint argument so
it can get at the density. And when StringBlock creates the markup
objects, it now uses the density-aware versions.

Bug 1976971, Bug 2031746
/frameworks/base/core/java/android/widget/TextView.java
56cf7889d2d084ddc3960accb099913267f1db9b 30-Jul-2009 Eric Fischer <enf@google.com> Don't offer to add numbers to the dictionary.

Only show the "add to dictionary" context menu item if the current word
contains at least one letter.

Bug 1877803
/frameworks/base/core/java/android/widget/TextView.java
61e4248f8f6ae8a8f40550cc0800e5190cd1dc09 29-Jul-2009 Jean-Baptiste Queru <jbq@google.com> merge from donut
a8675f67e33bc7337d148358783b0fd138b501ff 29-Jul-2009 Jean-Baptiste Queru <jbq@google.com> donut snapshot
/frameworks/base/core/java/android/widget/TextView.java
2af1b3db3d4f687d008db74b150f149e956b4bc6 26-Jul-2009 Jean-Baptiste Queru <jbq@google.com> Merge korg/donut into korg/master
55616f95af2263f879475885a30b37d397340c02 22-Jul-2009 Android (Google) Code Review <android-gerrit@google.com> am 74cb705f: Merge change 8121 into donut

Merge commit '74cb705f0c1ee5ccb598b2b676aa50a36e6af7f9'

* commit '74cb705f0c1ee5ccb598b2b676aa50a36e6af7f9':
Fixes #1818201. Do not attempt to display the popup until after the first layout.
9bc9fa1538e3a5be0b80a8f6900d147f0ad3f9e5 22-Jul-2009 Romain Guy <romainguy@android.com> Fixes #1818201. Do not attempt to display the popup until after the first layout.
/frameworks/base/core/java/android/widget/TextView.java
cf4550c3198d6b3d92cdc52707fe70d7cc0caa9f 21-Jul-2009 Jean-Baptiste Queru <jbq@google.com> donut snapshot
/frameworks/base/core/java/android/widget/TextView.java
e855d130aea57018daf93d85ced2fcde7fbcb045 11-Jun-2009 Kenny Root <kenny@the-b.org> Fix spelling mistakes in Javadoc
/frameworks/base/core/java/android/widget/TextView.java
076dc9fa57d58261d8edf26b1905019a1f8464d3 25-Jun-2009 Romain Guy <romainguy@android.com> Fix TextView's fading edge when compound drawables are setup.

TextView was not correctly taking into account the extra space taken
by compound drawable when drawing the fading edge of a marquee'd
text.
/frameworks/base/core/java/android/widget/TextView.java
a465a170ce5d7155580fd308d1e50092365117e4 22-Jun-2009 Dianne Hackborn <hackbod@google.com> Fix bugs 1827027, 1808979, 1820700.

These are all variations of needing to validate ranges on editing operations
coming from the IME, to account for the underlying text changing (usually being
deleted) asynchronously with the IME.
/frameworks/base/core/java/android/widget/TextView.java
4dc4f73cabcfe685761326b79e75455970b6bc5e 20-Jun-2009 Romain Guy <romainguy@android.com> Fixes #1926784. Setting android:ellipsize on an EditText now ellipsizes the hint.

It doesn't make much sense to ellipsize the text entered by the user, so we
just ellipsize the hint. This avoids introducing a new XML attribute/Java API
just for the particular case of ellipsizing the hint.
/frameworks/base/core/java/android/widget/TextView.java
1b194b14fe958b11cf06f50bdbf243c9df83e056 11-Jun-2009 Kenny Root <kenny@the-b.org> Fix spelling mistakes in Javadoc
/frameworks/base/core/java/android/widget/TextView.java
d6a463a9f23b3901bf729f2f27a6bb8f78b95248 22-May-2009 Romain Guy <romainguy@android.com> Add a new API to ListView: setGestures(int). This allows developers to enable gestures to jump inside the list or filter it. This change also introduces a new XML attribute to control this API. It also adds the ability to theme the GestureOverlayView from the gestures library. Finally, this adds a new VERSION header to the binary format used to store the letters for the recognizer.
/frameworks/base/core/java/android/widget/TextView.java
a6cd4e03e6bde0c4b76ad7290eb2c527398478d1 21-May-2009 Romain Guy <romainguy@android.com> Fix NPE at boot.
/frameworks/base/core/java/android/widget/TextView.java
843ef36f7b96cc19ea7d2996b7c8661b41ec3452 20-May-2009 Jean-Baptiste Queru <jbq@google.com> donut snapshot
/frameworks/base/core/java/android/widget/TextView.java
3c77d39ee8b1c3c5a1b59be65953f73570a42511 20-May-2009 Romain Guy <romainguy@android.com> Fixes #1866819.\nTextView sets the bounds of its compound drawables to contain only the width and the height of the drawables. This causes View.invalidateDrawable() to invalidate the compound drawables at location (0, 0) within the view, thus invalidating the wrong part of the View. This prevents animation from running correctly when using animated drawable. This change overrides invalidateDrawable() in TextView to take into account the real position of the compound drawable.
/frameworks/base/core/java/android/widget/TextView.java
48540eb8537b501b70ff96858b77b37c3f930603 20-May-2009 Romain Guy <romainguy@android.com> TextView was not setting the callback on its compound drawables, thus preventing them from refreshing the view when updating their internal state. This would for instance prevent animated drawables from actually animating. Quite infuriating.
/frameworks/base/core/java/android/widget/TextView.java
75986cf9bc57ef11ad70f36fb77fbbf5d63af6ec 15-May-2009 svetoslavganov <svetoslavganov@google.com> Accessibility feature - framework changes (replacing 698, 699, 700, 701 and merging with the latest Donut)
/frameworks/base/core/java/android/widget/TextView.java
9ea923174c2daffd9b6a1cd630018d3fdfe91f62 15-May-2009 Marco Nelissen <marcone@google.com> Rearrange some code so it makes more sense. Thanks, findbugs.
/frameworks/base/core/java/android/widget/TextView.java
3373ed62d1de643d3a56e3f4ece2154efa455ecc 04-May-2009 Romain Guy <romainguy@android.com> Fixes #1827988. Prevent marquee text from constantly rescaling itself in Market
/frameworks/base/core/java/android/widget/TextView.java
939151f1eb3d2522ed952d14a9bb79235a5d7126 08-Apr-2009 Romain Guy <> AI 145188: Fixes #1580949. Compress text when marquee is enabled but the text is too big by only a few percent of the TextView's width.
BUG=1580949

Automated import of CL 145188
/frameworks/base/core/java/android/widget/TextView.java
c23031933ff785c9edd50ccec7577f8a728e8b8f 04-Apr-2009 Romain Guy <> AI 144562: First pass at #1580949. Changes the marquee animation to make it less weird and jarring when the text overflows by a few pixels only. The next change will take care of compressing the text when the text is longer than the TextView by only a few % of its width.
BUG=1580949

Automated import of CL 144562
/frameworks/base/core/java/android/widget/TextView.java
986003d46add147714ce7e16c9fefa8c18042fc8 26-Mar-2009 Romain Guy <> Automated import from //branches/donutburger/...@142790,142790
/frameworks/base/core/java/android/widget/TextView.java
3661101005c6527dfd384d0c88c4a3b68ee208af 26-Mar-2009 Romain Guy <> Automated import from //branches/cupcake/...@142788,142788
/frameworks/base/core/java/android/widget/TextView.java
49a1a9b5a9d467411067207b4714068084a910ee 25-Mar-2009 Dianne Hackborn <> Automated import from //branches/donutburger/...@141347,141347
/frameworks/base/core/java/android/widget/TextView.java
38e98fccfab9592f871f3066f8569c559f1ee226 25-Mar-2009 Dianne Hackborn <> Automated import from //branches/donutburger/...@140714,140714
/frameworks/base/core/java/android/widget/TextView.java
c2ad241504fcaa12d4579d3b0b4038d1ca8d08c9 20-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake_rel/...@141571
/frameworks/base/core/java/android/widget/TextView.java
105925376f8d0f6b318c9938c7b83ef7fef094da 19-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake_rel/...@140373
/frameworks/base/core/java/android/widget/TextView.java
ba87e3e6c985e7175152993b5efcc7dd2f0e1c93 13-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake_rel/...@138607
/frameworks/base/core/java/android/widget/TextView.java
c39a6e0c51e182338deb8b63d07933b585134929 11-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@137873
/frameworks/base/core/java/android/widget/TextView.java
b2a3dd88a53cc8c6d19f6dc8ec4f3d6c4abd9b54 09-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@137197
/frameworks/base/core/java/android/widget/TextView.java
4df2423a947bcd3f024cc3d3a1a315a8dc428598 05-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@136594
/frameworks/base/core/java/android/widget/TextView.java
9066cfe9886ac131c34d59ed0e2d287b0e3c0087 04-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@135843
/frameworks/base/core/java/android/widget/TextView.java
d83a98f4ce9cfa908f5c54bbd70f03eec07e7553 04-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@135843
/frameworks/base/core/java/android/widget/TextView.java
076357b8567458d4b6dfdcf839ef751634cd2bfb 03-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@132589
/frameworks/base/core/java/android/widget/TextView.java
3dec7d563a2f3e1eb967ce2054a00b6620e3558c 03-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@137055
/frameworks/base/core/java/android/widget/TextView.java
15ab3eae2ec3d73b3e8aa60b33ae41445bf83f4b 20-Feb-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@132569
/frameworks/base/core/java/android/widget/TextView.java
3001a035439d8134a7d70d796376d1dfbff3cdcd 19-Feb-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@132276
/frameworks/base/core/java/android/widget/TextView.java
da996f390e17e16f2dfa60e972e7ebc4f868f37e 13-Feb-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@131421
/frameworks/base/core/java/android/widget/TextView.java
d24b8183b93e781080b2c16c487e60d51c12da31 11-Feb-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@130745
/frameworks/base/core/java/android/widget/TextView.java
f1e484acb594a726fb57ad0ae4cfe902c7f35858 22-Jan-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@127436
/frameworks/base/core/java/android/widget/TextView.java
9266c558bf1d21ff647525ff99f7dadbca417309 16-Jan-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@126645
/frameworks/base/core/java/android/widget/TextView.java
b798689749c64baba81f02e10cf2157c747d6b46 10-Jan-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@125939
/frameworks/base/core/java/android/widget/TextView.java
f013e1afd1e68af5e3b868c26a653bbfb39538f8 18-Dec-2008 The Android Open Source Project <initial-contribution@android.com> Code drop from //branches/cupcake/...@124589
/frameworks/base/core/java/android/widget/TextView.java
54b6cfa9a9e5b861a9930af873580d6dc20f773c 21-Oct-2008 The Android Open Source Project <initial-contribution@android.com> Initial Contribution
/frameworks/base/core/java/android/widget/TextView.java