Commit Graph

65051 Commits

Author SHA1 Message Date
Mihai Popa
272285b0bd Merge changes from topic "am-2d17369d-a241-482f-bad0-edb5147de00b" into nyc-dr1-dev
* changes:
  [automerger] Optimise the hit test algorithm am: 71ecf5bd5c
  Optimise the hit test algorithm
2018-06-06 16:21:21 +00:00
Android Build Merger (Role)
42eaa8f932 [automerger] Optimise the hit test algorithm am: 71ecf5bd5c
Change-Id: If1c91f3bc1e785434f153c5bc0d14befbc75e6cb
2018-05-31 16:46:17 +00:00
Mihai Popa
71ecf5bd5c Optimise the hit test algorithm
Layout#getOffsetForHorizontal was running in O(n^2) time, where n is the
length of the current line. The method is used when a touch event
happens on a text line, to compute the cursor offset (and the character)
where it happened. Although this is not an issue in common usecases,
where the number of characters on a line is relatively small, this can
be very inefficient as a consequence of Unicode containing 0-width
(invisible) characters. Specifically, there are characters defining the
text direction (LTR or RTL), which cause our algorithm to touch the
worst case quadratic runtime. For example, a person is able to send a
message containing a few visible characters, and also a lot of these
direction changing invisible ones. When the receiver touches the message
(causing the Layout#getOffsetForHorizontal method to be called), the
receiver's application would become not responsive.

This CL optimizes the method to run in O(n) worst case. This is achieved
by computing the measurements of all line prefixes at first, which can
be done in a single pass. Then, all the prefix measurement queries will
be answered in O(1), rather than O(n) as it was happening before.

Bug: 79215201
Test: manual testing
Change-Id: Ib66ef392c19c937718e7101f6d48fac3abe51ad0
Merged-In: Ib66ef392c19c937718e7101f6d48fac3abe51ad0
2018-05-31 17:45:42 +01:00
Android Build Merger (Role)
05086b1008 [automerger] Make safe label more safe am: 2263da9539
Change-Id: If833354e5ae2b056de124fe23f0414c7654f6c33
2018-05-22 21:59:24 +00:00
Todd Kennedy
2263da9539 Make safe label more safe
* limit the absolute maximum size of the label to 50000 characters
[which is probably far more than necessary, but, can be dialed down]

* use a string buffer while processing the string [instead of creating
multiple string objects]

Bug: 62537081
Test: Manual. Install APK in bug and see that it can be uninstalled
Change-Id: Ibf63c2691ad7438a123e92110d95b1f50050f8b1
Merged-In: Ibf63c2691ad7438a123e92110d95b1f50050f8b1
2018-05-22 21:59:22 +00:00
Android Build Merger (Role)
97f7498c18 [automerger] Nullcheck to fix Autofill CTS am: 6c68a69288 am: 743abb939a am: a99414f51f am: 6b95503960 am: 9e291fe8c2
Change-Id: Ia6ba75b4938ab6d9ec0ffe1bc39b6ce6995a808e
2018-05-09 17:19:32 +00:00
Android Build Merger (Role)
9e291fe8c2 [automerger] Nullcheck to fix Autofill CTS am: 6c68a69288 am: 743abb939a am: a99414f51f am: 6b95503960
Change-Id: Ia3658c17dc890ca2de951da5c701e953ce8c969b
2018-05-09 17:19:18 +00:00
Android Build Merger (Role)
6b95503960 [automerger] Nullcheck to fix Autofill CTS am: 6c68a69288 am: 743abb939a am: a99414f51f
Change-Id: I7aaceff0646a5e738ed862c34645e548aabf62f1
2018-05-09 17:19:12 +00:00
Android Build Merger (Role)
a99414f51f [automerger] Nullcheck to fix Autofill CTS am: 6c68a69288 am: 743abb939a
Change-Id: Ia89ea1adb47be3b70f5db292677c4c19194a04db
2018-05-09 17:19:07 +00:00
Android Build Merger (Role)
743abb939a [automerger] Nullcheck to fix Autofill CTS am: 6c68a69288
Change-Id: I379d54d926e01da53b637bba6b3b1ee8577cbdbb
2018-05-09 17:19:02 +00:00
Eugene Susla
6c68a69288 Nullcheck to fix Autofill CTS
Test: presubmit
Fixes: 70506475
Bug: 69981755
Change-Id: I187bed4889a4901a7137a2995178ea651ed09186
2018-05-09 17:18:59 +00:00
Android Build Merger (Role)
b906043c81 [automerger] DO NOT MERGE Truncate newline and tab characters in BluetoothDevice name am: b6cde9ecc1
Change-Id: I3f951fac78c6e2da84eac511d3b0e19141e90153
2018-04-26 21:18:47 +00:00
Hansong Zhang
b6cde9ecc1 DO NOT MERGE Truncate newline and tab characters in BluetoothDevice name
Test: manual
Bug: 73173182
Change-Id: I3c25af233742e63351a68e8c5a279b51a94e49e2
2018-04-26 21:18:46 +00:00
Android Build Merger (Role)
365fb1c844 [automerger] DO NOT MERGE Truncate newline and tab characters in BluetoothDevice name am: 984dfe074c am: 8fbe4bce1e am: 0cd0cef08f
Change-Id: I937e2d9a676b38f6a18cda70f42d06eaa22ce051
2018-04-26 21:18:27 +00:00
Android Build Merger (Role)
0cd0cef08f [automerger] DO NOT MERGE Truncate newline and tab characters in BluetoothDevice name am: 984dfe074c am: 8fbe4bce1e
Change-Id: If7693b2ff5785a1a09920061b318aaac33f5d6b6
2018-04-26 21:18:21 +00:00
Android Build Merger (Role)
8fbe4bce1e [automerger] DO NOT MERGE Truncate newline and tab characters in BluetoothDevice name am: 984dfe074c
Change-Id: Iac403f5118d55d9919745d98eba260dd2929d56c
2018-04-26 21:18:14 +00:00
Hansong Zhang
984dfe074c DO NOT MERGE Truncate newline and tab characters in BluetoothDevice name
Test: manual
Bug: 73173182
Change-Id: I3c25af233742e63351a68e8c5a279b51a94e49e2
2018-04-26 14:17:52 -07:00
Android Build Merger (Role)
93d9547b61 [automerger] RESTRICT AUTOMERGE: Prevent reporting fake package name - framework (backport to nyc-dev) am: 33c37cb37c
Change-Id: I793b787b6275262f1df6caa9262054e15c94840f
2018-04-09 22:24:08 +00:00
akirilov
33c37cb37c RESTRICT AUTOMERGE: Prevent reporting fake package name - framework (backport to nyc-dev)
Test: added AccessibilityEndToEndTest#testPackageNameCannotBeFaked
      cts-tradefed run cts -m CtsAccessibilityServiceTestCases
      cts-tradefed run cts -m CtsAccessibilityTestCases

Bug: 69981755
Change-Id: I187e3e9839f654cea9e06e5de93e10e4d1de3109
2018-04-09 22:24:05 +00:00
Android Build Merger (Role)
0df0b30be9 [automerger] RESTRICT AUTOMERGE: Prevent reporting fake package name - framework (backport to mnc-dev) am: de71ee469a am: d672eef559 am: 86f5488521
Change-Id: I9f6c6fedfdc987a2acf1978a71fb0bdcd034e9e0
2018-04-09 21:00:20 +00:00
Android Build Merger (Role)
86f5488521 [automerger] RESTRICT AUTOMERGE: Prevent reporting fake package name - framework (backport to mnc-dev) am: de71ee469a am: d672eef559
Change-Id: Ib50692050fd4e62ad80f24531818a378c75dfe25
2018-04-09 21:00:15 +00:00
Android Build Merger (Role)
d672eef559 [automerger] RESTRICT AUTOMERGE: Prevent reporting fake package name - framework (backport to mnc-dev) am: de71ee469a
Change-Id: I000fae45e723679ba44b378a36a85daef20ae96d
2018-04-09 21:00:08 +00:00
akirilov
de71ee469a RESTRICT AUTOMERGE: Prevent reporting fake package name - framework (backport to mnc-dev)
Test: added AccessibilityEndToEndTest#testPackageNameCannotBeFaked
      cts-tradefed run cts --package android.accessibilityservice
      cts-tradefed run cts --package android.accessibility

BUG:69981755

Change-Id: Id9990ccf1e88cea441f9b8927e849e67a059cfe4
2018-04-09 21:00:05 +00:00
Android Build Merger (Role)
9d13b0f6ca [automerger] DO NOT MERGE Rework thumbnail cleanup am: b514ce9b38 am: b8dad6c644 am: 019eec3923
Change-Id: I9f69b090824a6c91bf11dbc0929ba5988a06af52
2018-03-15 19:59:37 +00:00
Android Build Merger (Role)
019eec3923 [automerger] DO NOT MERGE Rework thumbnail cleanup am: b514ce9b38 am: b8dad6c644
Change-Id: I8539a02510ed9a61b683c66c66de7d1b319c2603
2018-03-15 19:59:32 +00:00
Android Build Merger (Role)
b8dad6c644 [automerger] DO NOT MERGE Rework thumbnail cleanup am: b514ce9b38
Change-Id: I5cb1316547ced23a1259e068d1ea34631d105608
2018-03-15 19:59:26 +00:00
Marco Nelissen
b514ce9b38 DO NOT MERGE Rework thumbnail cleanup
Bug: 63766886
Test: ran CTS tests
Change-Id: I1f92bb014e275eafe3f42aef1f8c817f187c6608
Merged-In: I1f92bb014e275eafe3f42aef1f8c817f187c6608
2018-03-15 19:58:42 +00:00
Android Build Merger (Role)
93f8bfa5c4 [automerger] DO NOT MERGE Fix build with SDK 24-like implementation of constructor am: f3c2e0b3ab am: 1b6f3f9a97 am: d0fcb49352
Change-Id: Ib890ce7495c1d5e64968cc9177ce3785bcfdedde
2018-03-14 15:23:39 +00:00
Android Build Merger (Role)
d0fcb49352 [automerger] DO NOT MERGE Fix build with SDK 24-like implementation of constructor am: f3c2e0b3ab am: 1b6f3f9a97
Change-Id: I49de968aa0daa18b60921af1a381f77d13a8ff0e
2018-03-14 15:23:32 +00:00
Android Build Merger (Role)
1b6f3f9a97 [automerger] DO NOT MERGE Fix build with SDK 24-like implementation of constructor am: f3c2e0b3ab
Change-Id: I87dcb4ce2fc52e0ed6ce5f79d15ab49084d088e3
2018-03-14 15:23:19 +00:00
Alan Viverette
f3c2e0b3ab DO NOT MERGE Fix build with SDK 24-like implementation of constructor
Bug: 71992105
Test: manual
Change-Id: I106760ada9c85adde29fd143e5dfcd924fd95f54
2018-03-14 11:22:10 -04:00
Android Build Merger (Role)
75767d1e3c [automerger] Rework thumbnail cleanup am: 0dc23f95a1
Change-Id: Ia3a740184191990fa43ca705b5eae8ea572fb6c1
2018-03-13 00:23:52 +00:00
Marco Nelissen
0dc23f95a1 Rework thumbnail cleanup
Bug: 63766886
Test: ran CTS tests
Change-Id: I1f92bb014e275eafe3f42aef1f8c817f187c6608
Merged-In: I1f92bb014e275eafe3f42aef1f8c817f187c6608
2018-03-13 00:23:51 +00:00
Alan Viverette
f26c5dbcdb Merge changes from topic "viewpager_state" into mnc-dr1.5-dev
* changes:
  [automerger] Update internal ViewPager's SavedState to match Support Library version am: 187964aca1 am: 4c24e4d831 am: fece305de0
  [automerger] Update internal ViewPager's SavedState to match Support Library version am: 187964aca1 am: 4c24e4d831
  [automerger] Update internal ViewPager's SavedState to match Support Library version am: 187964aca1
  Update internal ViewPager's SavedState to match Support Library version
2018-03-09 18:43:02 +00:00
Alan Viverette
1ecf5c9185 Merge changes from topic "viewpager_state" into cw-e-dev
* changes:
  [automerger] Update internal ViewPager's SavedState to match Support Library version am: 187964aca1 am: 4c24e4d831
  [automerger] Update internal ViewPager's SavedState to match Support Library version am: 187964aca1
  Update internal ViewPager's SavedState to match Support Library version
2018-03-09 18:43:02 +00:00
Alan Viverette
558166043c Merge changes from topic "viewpager_state" into mnc-dr-dev
* changes:
  [automerger] Update internal ViewPager's SavedState to match Support Library version am: 187964aca1
  Update internal ViewPager's SavedState to match Support Library version
2018-03-09 18:43:02 +00:00
Alan Viverette
38e9a0a934 Merge "Update internal ViewPager's SavedState to match Support Library version" into mnc-dev 2018-03-09 18:43:02 +00:00
Alan Viverette
b857f46bfb Merge changes from topic "viewpager_state" into nyc-dr1-dev
* changes:
  [automerger] Update internal ViewPager's SavedState to match Support Library version am: 187964aca1 am: 4c24e4d831 am: fece305de0 am: cb362192e8 am: bc42f76941
  [automerger] Update internal ViewPager's SavedState to match Support Library version am: 187964aca1 am: 4c24e4d831 am: fece305de0 am: cb362192e8
  [automerger] Update internal ViewPager's SavedState to match Support Library version am: 187964aca1 am: 4c24e4d831 am: fece305de0
  [automerger] Update internal ViewPager's SavedState to match Support Library version am: 187964aca1 am: 4c24e4d831
  [automerger] Update internal ViewPager's SavedState to match Support Library version am: 187964aca1
  Update internal ViewPager's SavedState to match Support Library version
2018-03-09 18:43:02 +00:00
Alan Viverette
2c72729428 Merge changes from topic "viewpager_state" into nyc-dev
* changes:
  [automerger] Update internal ViewPager's SavedState to match Support Library version am: 187964aca1 am: 4c24e4d831 am: fece305de0 am: cb362192e8
  [automerger] Update internal ViewPager's SavedState to match Support Library version am: 187964aca1 am: 4c24e4d831 am: fece305de0
  [automerger] Update internal ViewPager's SavedState to match Support Library version am: 187964aca1 am: 4c24e4d831
  [automerger] Update internal ViewPager's SavedState to match Support Library version am: 187964aca1
  Update internal ViewPager's SavedState to match Support Library version
2018-03-09 18:43:02 +00:00
Android Build Merger (Role)
a1ad0de1f7 [automerger] [DO NOT MERGE] Copy PermissionChecker from support lib and use in RcognitionService am: 5a28e533fe am: b91acca082 am: 26aaadd3b5
Change-Id: Icf7b82e7dfbdebeb382c56e2c1db061abd87a3e9
2018-03-09 00:35:53 +00:00
Android Build Merger (Role)
26aaadd3b5 [automerger] [DO NOT MERGE] Copy PermissionChecker from support lib and use in RcognitionService am: 5a28e533fe am: b91acca082
Change-Id: I0cbca14aed609ab81556ee1deb72ef1e0e294256
2018-03-09 00:35:48 +00:00
Android Build Merger (Role)
b91acca082 [automerger] [DO NOT MERGE] Copy PermissionChecker from support lib and use in RcognitionService am: 5a28e533fe
Change-Id: I09ac593ade4e725b560384042304f93f451b5be5
2018-03-09 00:35:42 +00:00
Eugene Susla
5a28e533fe [DO NOT MERGE] Copy PermissionChecker from support lib and use in RcognitionService
Fixes: 73511076, 73311729
Test: presubmit
Change-Id: Ie98f67ffee4744050ac85d8b229370a16a76a194
(cherry picked from commit 726b51a26e)
2018-03-09 00:35:39 +00:00
Android Build Merger (Role)
71478241eb [automerger] Verify last array's length in readFromParcel am: 3b8bc2e450
Change-Id: If09aad1fa86dbc5c6223d06f67b81d45660ca2d3
2018-02-21 20:26:56 +00:00
Fyodor Kupolov
3b8bc2e450 Verify last array's length in readFromParcel
Length of the last array in readFromParcel should be the same as
value of mNextIndex.

Test: PoC app in the bug
Bug: 73252178
Change-Id: I69f935949e945c3a036b19b4f88684d906079ea5
2018-02-21 20:26:52 +00:00
Android Build Merger (Role)
c42091667c [automerger] Update internal ViewPager's SavedState to match Support Library version am: 187964aca1 am: 4c24e4d831 am: fece305de0 am: cb362192e8 am: bc42f76941
Change-Id: Id69b35c6cc53b6cea1666d724813ae21634c0b4c
2018-02-16 19:45:57 +00:00
Android Build Merger (Role)
bc42f76941 [automerger] Update internal ViewPager's SavedState to match Support Library version am: 187964aca1 am: 4c24e4d831 am: fece305de0 am: cb362192e8
Change-Id: Ie379f04b1e570ebc94a9e5c37ab3ddbf469acb93
2018-02-16 19:45:41 +00:00
Android Build Merger (Role)
cb362192e8 [automerger] Update internal ViewPager's SavedState to match Support Library version am: 187964aca1 am: 4c24e4d831 am: fece305de0
Change-Id: Ie54af74e2ab273be07c4cd73881010ee952997ef
2018-02-16 19:45:36 +00:00
Android Build Merger (Role)
fece305de0 [automerger] Update internal ViewPager's SavedState to match Support Library version am: 187964aca1 am: 4c24e4d831
Change-Id: I33e06bfcad6941fd8845f443991dfbcbd4167348
2018-02-16 19:45:30 +00:00
Android Build Merger (Role)
4c24e4d831 [automerger] Update internal ViewPager's SavedState to match Support Library version am: 187964aca1
Change-Id: Ia2d011a3e2c705e82ab11dbf571f6f52cf05bae8
2018-02-16 19:45:24 +00:00