summaryrefslogtreecommitdiff
path: root/java
AgeCommit message (Collapse)Author
2024-12-13An experimental interactive Chooser session implementation Andrey Yepin
Bug: 378493324 Test: manual testing with a test app Test: atest IntentResolver-tests-unit Test: atest IntentResolver-tests-activity Flag: com.android.intentresolver.interactive_session Change-Id: I15b303dd3912c63538930d39b7743e290adb480c
2024-12-12A feature flag removal Andrey Yepin
Remove 24Q4-released 'fix_missing_drawer_offset_calculation' feature flag. Bug: 347316548 Test: presubmits Flag: EXEMPT flag removal Change-Id: Id03271034a81015d77b6bd4164073671feb50e9b
2024-12-12A feature flag removal Andrey Yepin
fix_drawer_offset_on_config_change was released in 24Q4; removed. Bug: 344057117 Test: presubmits Flag: EXEMPT flag removal Change-Id: I20c2488e3a8d08fa349af9a05299745d32f8c9c2
2024-12-12Remove flag 'fix_empty_state_padding_bug' Mark Renouf
And the other original (unused) flag without the '_bug' suffix. Bug: 377522331 Flag: NONE released flag removal Test: NONE no functional change Change-Id: I6109a91a87c95681951cd254c0e470047c5b1741
2024-12-12Removes the flag 'fix_private_space_locked_on_restart' Mark Renouf
Bug: 377521592 Flag: NONE released flag removal Test: NONE no functional change Change-Id: Ic21fa9975e58d0ae35d60cda5a2975ab028eac69
2024-12-12Replace injection of 'FeatureFlags' with static flag references Mark Renouf
Flag methods should be statically imported and called directly. This aligns usage with SystemUI best practices. For tests, flags are overridden using the @EnableFlags or @DisableFlags test method annotations. Bug: NONE simple cleanup Flag: NONE no functional change Test: NONE no functional change Change-Id: I7213ad2dc969d8c1e1eacd88e00ee702face7cda
2024-12-12Remove flag 'modular_framework' Mark Renouf
Bug: 377522152 Flag: NONE flag removal Test: NONE removing released flag Change-Id: I690082b7b98f2fe3cf1bcc390613eaa31f105e23
2024-12-10Import translations. DO NOT MERGE ANYWHERE Bill Yi
Auto-generated-cl: translation import Change-Id: Iba05f0d0388dd2c76d6a06e59fde582ba51a6082
2024-12-02Merge "Add a11y role to the text preview copy action widget" into main Andrey Yepin
2024-11-27Add a11y role to the text preview copy action widget Andrey Yepin
Fix: 377643104 Test: manual testing Flag: EXEMPT bug fix Change-Id: Id8454df01e4ca891f85ba8e1ff3979156673ed3d
2024-11-27Import translations. DO NOT MERGE ANYWHERE Bill Yi
Auto-generated-cl: translation import Change-Id: I18d8caa6ffbb0c13830a30f4b12460318338fcef
2024-11-26Merge "ChooserActivity refreshes creator token" into main Nan Wu
2024-11-22Skip "last-chosen" query for Chooser Joshua Trask
`getLastChosen()` is invoked in the course of the generic/"base-class" `ResolverListAdapter::rebuildList()`, and the result is cached as `mLastChosen`. By inspection, `mLastChosen` is *only* ever read by `ResolverListAdapter` methods that are gated on `mFilterLastUsed` (except when it's used internally to derive `mLastChosenPosition`, but that field is *also* only used in conjunction with `mFilterLastUsed`). `mFilterLastUsed` is final and false in all instances of the `ChooserListAdapter` subclass (i.e., any `ChooserActivity` configuration): go/chooser-mfilterlastused-false. In some cases (for unknown reason, b/335196436), the call to `getLastChosen()` crashes in Chooser; this CL should safely workaround that problem. Even if it wasn't failing, we could expect some performance boost by omitting the unnecessary system call. Note that Chooser configurations will still call `setLastChosen()` (via the base `ResolverActivity::onTargetSelected()`) to *write* this setting in the system, so it'll still be reflected in subsequent *ResolverActivity* sessions -- it's just never *read* in Chooser. Writing from Chooser probably has only "marginal" user value, but there's no need to change that legacy behavior at this time. Test: existing `IntentForwarder` & CTS tests. Bug: 335196436 Flag: EXEMPT bugfix Change-Id: Ieaf4bc713d51494a6a3ada89810f232b8875108f
2024-11-20Merge "Import translations. DO NOT MERGE ANYWHERE" into main Bill Yi
2024-11-19Merge "Migrate materialColor* attributes into colors" into main Marcelo Arteiro
2024-11-18Import translations. DO NOT MERGE ANYWHERE Bill Yi
Auto-generated-cl: translation import Change-Id: I2bbd3a8af75113c62074fbb92be7fc929e497d2d
2024-11-15Merge "Fix Shareousel not always centering initial selection" into main Treehugger Robot
2024-11-15Migrate materialColor* attributes into colors Marcelo Arteiro
TLDR: * This change should not break anything or change any color. * Simplifies theming and styling while improving developer experience. * With this developers can often skip styling for color entirely, while ensuring consistency and preventing accidental overrides. Bug: 374273611 Test: presubmit Flag: EXEMPT bugfix Change-Id: Ibf06926ca0489a5daed54dd234f3eb4dd557ada0
2024-11-14ChooserActivity refreshes creator token Nan Wu
ChooserActivity has to refresh creator tokens for the intent it launches. Bug: 369856138 Test: Manual test Flag: android.security.prevent_intent_redirect Change-Id: I1874c2197577939ee60c4c058366ba8c7aac23ca
2024-11-12Merge "Remove deduplication from Shareousel" into main Treehugger Robot
2024-11-12Merge "Send content URI from sharesheet" into main Miranda Kephart
2024-11-10Import translations. DO NOT MERGE ANYWHERE Bill Yi
Auto-generated-cl: translation import Change-Id: I46d379788a1fbf89ff1d5035f1a3962e0509e765
2024-11-08Fix Shareousel not always centering initial selection Govinda Wasserman
Makes starting index correctly update as pages load/unload. This allows us to correctly initialize the scroll without using a LaunchedEffect. Also consolidates measurement-related logic into a helper class for consistency. Test: atest com.android.intentresolver Test: manual test using Sharetest with 5 images and selected index 3 or 4 BUG: 351911089 FIX: 351911089 flag: EXEMPT Bugfix Change-Id: I5a10b5d50f393958b3574bf0a7742b5af93d4a67
2024-11-08Remove deduplication from Shareousel Govinda Wasserman
Test: atest com.android.intentresolver BUG: 351911089 Flag: EXEMPT bugfix Change-Id: I5eb5d93b61891e8f91928361f375b1ca6562f724
2024-11-08Send content URI from sharesheet Miranda Kephart
Leaving out the content URIs means that the quick actions component is no longer able to match sharesheet actions with the screenshots that were taking, breaking screenshot quickshare functionality. Method used is the same as in the old version of the sharesheet. Bug: 340867497 Test: manual (verify that quick share option shows up in screenshots) Flag: EXEMPT (minor change, restoring previous functionality) Change-Id: Id0e6b0e02071aa8c6e0c969d3e5bd81bbc200552
2024-11-07Apply window inset specing for new adapters Andrey Yepin
Fix: 377897948 Test: manual Shareousel testing with 3-button system naviagation Flag: EXEMPT bug fix Change-Id: I74f20d91113bcc9ad038fa157e807f2354dc8b15
2024-11-06Merge "Import translations. DO NOT MERGE ANYWHERE" into main Treehugger Robot
2024-11-06Reload targets by recreating adapters in response to target pinning. Andrey Yepin
Use Shareousel's target list updating logic in response to target pinning and application changed broadcasts. Create new adapters and attach them to the views after data is loaded, resulting in a cleaner visual update. Fix: 230703572 Test: manual testing Test: atest IntentResolver-tests-unit Flag: com.android.intentresolver.rebuild_adapters_on_target_pinning Change-Id: I1e7e2fd820195134ec4940f2e76bf7b3eac9e086
2024-11-06Import translations. DO NOT MERGE ANYWHERE Bill Yi
Auto-generated-cl: translation import Change-Id: I937947af2ef05fcd567cc1082448d23a5008d552
2024-11-01Fix shortcut icon loading. Andrey Yepin
The SimpleIconFactory constructor fails when invoked with a context returned by Context.createContextAsUser(). Previously, shortcut icons were loaded due to the reuse of cached icon factory instances from prior tasks. This change introduces SimpleIconFactory as a dependency to ensure correct instance creation. Fix: 376891146 Test: Disable SimpleIconFactory instance pooling through an injecetd debug code and verify that shortcut icons are loaded. Test: atest IntentResolver-tests-unit Flag: EXEMPT bugfix Change-Id: I2ad2a2bda2e4e152b11be852a04873d3c8104166
2024-10-30Set a11y role description for the edit, modify share, and action buttons Andrey Yepin
Use Button instead of TextView for the action button and the modify share widgets. Set a11y role description for the edit chip with a custom a11y delegate. Fix: 374035886 Test: manual testing Flag: EXEMPT bugfix Change-Id: I69dd97cb8cb6a847849a1a7b272f0877745e62a0
2024-10-30Merge "Import translations. DO NOT MERGE ANYWHERE" into main Bill Yi
2024-10-29Make DefaultTargetDataLoader assist-injectable Andrey Yepin
A preparation step for an alternative implementation. Bug: 349847176 Test: atest IntentResolver-tests-activity Flag: EXEMPT refactoring Change-Id: I2b23a27edb6d2d9711af79f06643413861403add
2024-10-29Import translations. DO NOT MERGE ANYWHERE Bill Yi
Auto-generated-cl: translation import Change-Id: If110ed1d332b4f9fc59024f5641dd573094347b9
2024-10-28Remove android.service.chooser.chooser_payload_toggling flag Andrey Yepin
Bug: 302691505 Test: presubmits Flag: EXEMPT flag removal Change-Id: I5250ac14301e09274d5e971349d3e44cd25545ef
2024-10-17Merge "Import translations. DO NOT MERGE ANYWHERE" into main Bill Yi
2024-10-16Import translations. DO NOT MERGE ANYWHERE Bill Yi
Auto-generated-cl: translation import Change-Id: I4d1e3c28cd041a02166aea53ad6b0f64e5485a14
2024-10-16Save Shareousel state. Andrey Yepin
Fix: 362347212 Test: manual testing with injected debug logging Flag: com.android.intentresolver.save_shareousel_state Change-Id: Ibe393e84c0d7884fb1b7611e72df0c7779afce34
2024-10-14Add keboard focus outline for Chooser targets Andrey Yepin
This change applies the same focus outline as Launcher but the end result still needs more polishing. Some noticeable issues are: * the outline may overlap with a long label; * targets with a one-line labels look adjusted to the top and not centered; * with the light system ui theme, the outer online frame is barely visible compare to the inner outline (this is also true for Launcher). Bug: 295175912 Test: visual effect testing Flag: com.android.intentresolver.target_hover_and_keyboard_focus_states Change-Id: I1d22b187e0cc4b95c385d4f5b956effa31fd4505
2024-10-09Add Launcher hover effect Andrey Yepin
Use Launcher iconlib's FastBitmapDrawable for chooser item icons to enable the Launcher pointer hover effect. Add a custom ChooserTargetItemView to dispatch hover events. Modify the chooser item layout to use the new view and replace image view margins with paddings to accommodate scaled-up icons on hover. Bug: 295175912 Test: atest IntentResolver-tests-unit Test: manual testing for icons hover effect including the case of disabled icons when no selections is made in Shareousel Flag: com.android.intentresolver.target_hover_and_keyboard_focus_states Change-Id: I9bc468895b72dc6770b8c4c7eeac7673b4d6a8b4
2024-10-08CachingTargetDataLoader to cache bitmaps and not drawables Andrey Yepin
A preparation refactoring. Make ChachingTargetDataLoader to cache icon bitmaps instead of the end drawables. Drawables carry state and the same drawable can be used in two places in the target grid (i.e. in the ranked targets row and in the all-target grid) yet the new hover effect needs to be provided independently for each position. Bug: 295175912 Test: manual basic functinality testing including Shareousel selection change. Test: atest IntentResolver-tests-unit Flag: EXEMPT refactoring Change-Id: I1c5e6333310e0984e39e22cab8cf162f2f31d6e8 Change-Id: I4a3b5dff8fcfcffe7742be8ea3bd348351332c9e
2024-10-01Retrieve URI title metadata through separate query calls Andrey Epin
As a file name accessed independently from preview-related metadata and also asynchronously, make it be retrieved through a separate provider calls. This way an error during preview metadata call won't affect the file name reading. Bug: 365748223 Test: atest IntentResolver-tests-unit Test: manual testing with a test app that shares a MediaProvider video Flag: com.android.intentresolver.individual_metadata_title_read Change-Id: I2e87913149e679fee22e4371d2b42f485c8b04e4
2024-10-01Merge "Remove FLAG_ENABLE_CHOOSER_RESULT (IntentResolver)" into main Treehugger Robot
2024-09-30Merge "Add other null check in decorateActionFactoryWithRefinement" into main Joshua Trask
2024-09-27Merge "Import translations. DO NOT MERGE ANYWHERE" into main Bill Yi
2024-09-27Add other null check in decorateActionFactoryWithRefinement Joshua Trask
The nullability for `getEditButtonRunnable()` was addressed in ag/28555982 but a similar fix is still needed for the copy button. Bug: 353397828 Flag: EXEMPT bugfix Test: manual Change-Id: I193eaeba55abded5f4726976dc0839d44215726c
2024-09-26Import translations. DO NOT MERGE ANYWHERE Bill Yi
Auto-generated-cl: translation import Change-Id: Ia2b5441e7d8e44ec12812a930d4528ccb22efde7
2024-09-26Merge "Fix keyboard naviagation for the nested preview scrolling" into main Andrey Yepin
2024-09-25Fix keyboard naviagation for the nested preview scrolling Andrey Epin
NestedScrollView is copied into the project from the prebuilt sources and trivially refactored (the differerence is saved in NestedScrollView.java.patch file). ChooserNestedScrollView extends the copied NestedScrollView and disabled scolling to the child that requests focus. Bug: 325259478 Test: attach keboard and test that keyboard navigation is working Flag: com.android.intentresolver.keyboard_navigation_fix Change-Id: I759f3a21aad9197148df31c55ed1534021072bd9
2024-09-25Merge "Import translations. DO NOT MERGE ANYWHERE" into main Treehugger Robot