summaryrefslogtreecommitdiff
path: root/core/java/android/text/AndroidBidi.java
Commit message (Collapse)AuthorAgeFilesLines
* Add maxTargetSdk restriction to unused APIs.Mathew Inwood2020-10-291-1/+2
| | | | | | | | | | | | | | | | | | | These are APIs that have @UnsupportedAppUsage but for which we don't have any evidence of them currently being used, so should be safe to remove from the unsupported list. This is a resubmit of ag/12929664 with some APIs excluded that caused test failures; see bugs 171886397, 171888296, 171864568. APIs excluded: Landroid/bluetooth/le/ScanRecord;->parseFromBytes([B)Landroid/bluetooth/le/ScanRecord; Landroid/os/Process;->myPpid()I Landroid/os/SharedMemory;->getFd()I Landroid/hardware/input/InputManager;->INJECT_INPUT_EVENT_MODE_WAIT_FOR_FINISH:I Bug: 170729553 Test: Treehugger Change-Id: I8285daa8530260251ecad6f3f38f98e263629ca7
* Revert "Add maxTargetSdk restriction to unused APIs."Hongwei Wang2020-10-281-2/+1
| | | | | | | | | This reverts commit 72f07d6a8a32db4a0dedd7682a0b3385be2b9cd6. Reason for revert: Droidcop-triggered revert due to breakage https://android-build.googleplex.com/builds/quarterdeck?testMethod=testAppZygotePreload&testClass=android.app.cts.ServiceTest&atpConfigName=suite%2Ftest-mapping-presubmit-retry_cloud-tf&testModule=CtsAppTestCases&fkbb=6936597&lkbb=6936969&lkgb=6936551&testResults=true&branch=git_master&target=cf_x86_phone-userdebug>, bug b/171886397 Bug: 171886397 Change-Id: Ibe0f0430a3451477c1ee8ef56a596e91ea1e7672
* Add maxTargetSdk restriction to unused APIs.Mathew Inwood2020-10-271-1/+2
| | | | | | | | | | These are APIs that have @UnsupportedAppUsage but for which we don't have any evidence of them currently being used, so should be safe to remove from the unsupported list. Bug: 170729553 Test: Treehugger Change-Id: I4c8fd0006f950de9955242e93968fb0996ceb372
* Update frameworks/base Emoji.java to Unicode 13.Rod S2020-03-161-32/+2
| | | | | | | As ICU is updated, delete special cases. Test: atest core/tests/coretests/src/android/text/EmojiTest.java Change-Id: I89032c22e5464d257866d926062db34c65943572
* Use new UnsupportedAppUsage annotation.Artur Satayev2020-01-071-1/+1
| | | | | | | | Existing annotations in libcore/ and frameworks/ will deleted after the migration. This also means that any java library that compiles @UnsupportedAppUsage requires a direct dependency on "unsupportedappusage" java_library. Bug: 145132366 Test: m && diff unsupportedappusage_index.csv Change-Id: I288969b0c22fa3a63bc2e71bb5009fe4a927e154
* Add @UnsupportedAppUsage annotationsMathew Inwood2018-08-151-0/+2
| | | | | | | | | | | | | | | | | | | | For packages: android.text.util android.text.style android.text.method android.text.format android.text This is an automatically generated CL. See go/UnsupportedAppUsage for more details. Exempted-From-Owner-Approval: Mechanical changes to the codebase which have been approved by Android API council and announced on android-eng@ Bug: 110868826 Test: m Change-Id: I9afbd4ca8826c37cb70db43252e39b9a674e5ae0
* Update utility class Emoji.java for Emoji 11Siyamed Sinir2018-04-131-2/+6
| | | | | | | | | | | | This CL removes the Emoji 5.0 info from Emoji.java since they are supported by ICU. It adds emoji added in Emoji 11. Test: atest android.text.EmojiTest Test: Verified that ICU handles Emoji 5.0 emoji Test: Verified hardware keyboard backspace with hair color emoji Test: Visually verified cursor moves with hardware keyboard Bug: 77148691 Change-Id: I40b290fcea201cf5e35ad4c461f8d8056b8c3739
* Replace JNI portion of AndroidBidi with calls to ICU4JRoozbeh Pournader2017-10-191-14/+48
| | | | | | | | We no longer need the native calls to ICU since we have ICU4J. Fixes: 67786879 Test: bit FrameworksCoreTests:android.text. Change-Id: Ib2ec93017000b4f0343756814ca388bd31457849
* Visibility fixes for text related tests.Siyamed Sinir2016-06-291-1/+4
| | | | | | | | | Some of the text and text layout related tests fail because of the visibility of parameters/functions they use. This CL updates annotations and visibility of related classes. Bug: 29871441 Change-Id: Ia06072815261379ff839c440482d94570ec05a80
* Fix for AIOBE at android.text.AndroidBidi.directionsRaph Levien2013-09-121-0/+3
| | | | | | | | | | | This fixes bug 9900288: Multiple apps crashing; AIOBE at android.text.AndroidBidi.directions. The AndroidBidi.directions() method was not correctly handling the case of a run of length 0, causing ArrayIndexOutOfBoundsException. This patch simply avoids accessing the levels array in that case. Change-Id: I036a85b7792ea3364725a87033ca74b94f0e93a1
* Refactor Styled utility functions into reusable objects.Doug Felt2010-04-071-0/+129
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This takes utility functions from Styled and a few other classes and incorporates them into two new utility classes, TextLine and MeasuredText. The main point of this is to support shaping by skia, to experiment with how this will look, this also introduces character-based Arabic shaping. MeasuredText is used by code that determines line breaks by generating and examining character widths in logical order. Factoring the code in this way makes it usable by the ellipsize functions in TextUtils as well as by StaticLayout. This class takes over the caching of widths and chars arrays that was previously performed by StyledText. A small number of MeasuredText objects are themselves cached by the class and accesed using static obtain and recycle methods. Generally only these few cached instances are ever created. TextLine is used by code that draws or measures text on a line. This unifies the line measuring and rendering code, and pushes assumptions about how rtl text is treated closer to the points where skia code is invoked. TextLine implements the functions that were previously provided by Styled, working on member arrays rather than explicitly-passed arguments. It implements the same kind of static cache as MeasuredText. TextLine and MeasureText simulate arabic glyph generation and shaping by using ArabicShaping, ported with very minor changes from ICU4J's ArabicShaping. This class generates shaped Arabic glyphs and Lam-Alef ligatures using Unicode presentation forms. ArabicShaping is not intended to be permanent, but to be replaced by real shaping from the skia layer. It is introduced in order to emulate the behavior of real shaping so that higher level code dealing with rendering shaped text and cursor movement over ligatures can be developed and tested; it also provides basic-level support for Arabic. Since cursor movement depends on conjuncts whose formation is font-dependent, cursor movement code that was formerly in Layout and StaticLayout was moved into TextLine so that it can work on the shaped text. Other than these changes, the other major change is a rework of the ellipsize utility functions to combine multiple branches into fewer branches with additional state. Updated copyright notices on new files. Change-Id: I492cb58b51f5aaf6f14cb1419bdbed49eac5ba29
* Add support for accessing native bidi implementation via jni.Doug Felt2010-02-241-0/+48
Include a simple test to verify that the bidi code works.