Convert the Make file to a Soong one
Bug: 186778349
Test: compared the two apk files built by Make and Soong
Test: TreeHugger
Change-Id: I92d9b412fb3c0ae85dd1a76497cb6cdb359eaae3
With c4e90ac, the android:exported flag has to be explicitly defined
if an intent filter is defined.
Bug: 171447284
Test: install IntentPlayground
Change-Id: I4f86ceeef70e7572707f548f0583011a0f0823ad
StartActivity with a null intent lead to the NPE when execute
the Intent testing.
This CL make sure the intent is good before run the testing
Bug: 154568140
Test: Manual to run the intent tesing.
Change-Id: I8d8bc8e1347ae5f095e01f4a718f2ab936574fcc
androidx.design_design was a target created temporarily while
the com.google.android.material_material was being added.
This migrated to the final material design class packages.
Test: make -j IntentPlayground MultiDisplay
Change-Id: I0e9dabb222e19530c3a558cf4fce4d54e81f8e47
Intent builderview currently had a hierarchy consiting of:
RadioGroup -> LinearLayout -> RadioButton. However if the RadioButton is
not directly inside the RadioGroup, the RadioGroup has no effect on the
button.
Instead keep a list of all the RadioButtons we have and deselect all
others when a new button gets clicked.
Test: Manual
Change-Id: I65b9e1165ae3abc23b10f7eb8770a60f144aac82
Code to access the ActivityInstanceInfo api through reflection is no
longer needed, because we have the lifecycle tracking.
There were some resources for the snackbar that used to be shown during
the launching of the preset activities however that has been removed.
Finally there was a bunch of code in TestBase, that was trying to
predict the outcome of intent flags that never did anything.
Test: Build module
Change-Id: I73e0f172b605cff2433c8c386ef9b1672130f349
The radio buttons were added to thew view depending on the iteration
order of a hashmap. This the iteration order is not fixed causing the
radio buttons to be in different places all the time.
Test: Manual
Change-Id: Id0ed0fcc97d7f79474f266d5ea3a8a1df1ed15bb
Since adding a public api for the playground app was problematic,
we now keep track of onResume and onDestroy calls globally inside the
app. This fixes a few bugs in cases where tasks would be hidden from the
ActivityManger#.getAppTasks() method and allows us to listen for changes
allowing us to do without a periodic refresh of the UI.
Test: Manual
Change-Id: Idb834cbdc7aad6442dd962c95b5321e1d75695fe
This greatly reduces the amount of scrolling needed to switch between
the overview-view and the launch-view. When launching the next activity
the launch view is dismissed and the user return to the overview-view
if they press back.
Test: Manual
Change-Id: I051ba98b29d666cf56753feebfaa87d2e181a3ab
Instead of asking at startup, the prompt now launches from a menu item.
This also get's rid of the snackbar because it was causing bugs with
rotation.
Furthermore now the android.permission.SYSTEM_ALERT_WINDOW permission is
no longer needed.
Test: Manual
Change-Id: I566e58d4844aecf127b5198c050ff115de7e4919
This gives the user a clearer overview of the current state of the
application, without having to expand all the tasks.
Padding has been reduced to better utilize available screen space.
The bring to front and remove buttons are currently always hidden.
Test: Manual
Change-Id: Ifcda0ff31fd5adb89a12ff6a024842c0e7a7ab29
MATCH_EXTERNAL was introduced in api level 28, which was after the
initial version of this application.
This caused a bug for suggestions which assumed the enumeration was
total. This also includes a defensive check + log warning for unkown
flags.
Test: Build and Run
Change-Id: I153985b5fd576baf80545b4737648745b421f11e
The app allows a user to explore the behaviour of different
launch modes, task affinities and intent flags.
It displays the current state of all tasks in the application
and their corresponding flags.
It allows the user to launch a set amount of activities on launch.
This bring the user directly into a state where many options for
exploration are available, rather than having to go through a
complicated setup first.
Access the activity field of RecentTaskInfo using reflection and mirror
the ActivityInstanceInfo into our own value object. This breaks
the compile time dependency on the ActivityInstanceInfo api and turns
it into a runtime dependency.
If the api is missing on the device we can still show the task structure
and log an error with the missing activity instance info.
Known bug: The enable suggestion button crashes the application.
Test: Build and Run
Change-Id: Id0274bae159c16aee6dccd805deb53851ffcf21d