Commit Graph

16 Commits

Author SHA1 Message Date
Tim Peng
cfd862db37 Tapping on Play media can have up to a 1 minute delay
-Set Output Switcher activity in PendingIntent
-Broadcast is super lagged right after reboot
-Not to send broadcast to itself in order to launch Output Switcher
-Add test case

Bug: 152909957
Test: make -j42 RunSettingsRoboTests
Change-Id: I17280a3bb9e47aa6050cfaf1463c780cd9849ad7
2020-04-13 14:44:53 +08:00
Tim Peng
2f87c336da Settings crashed by a null worker
-Add worker checker
-Add test case

Bug: 153356562
Test: make -j42 RunSettingsRoboTests
Change-Id: I129ff63a48b3785aacc846fe1dd67a926a8e5e1f
2020-04-07 07:48:38 +00:00
Tim Peng
e4ccbbec67 PendingIntent in MediaOutputIndicatorSlice could be Hijacked
-Add setPackage() to prevent local information disclosure

Bug: 151645695
Test: make -j42 RunSettingsRoboTests
Change-Id: I74c058a381fceb85695dd76d354fb49f878f9142
2020-03-30 03:53:02 +00:00
Tim Peng
9d3092cb7f Add zero state in output switcher
-Update visibility of switcher preference in SoundSetting
-Update visibility of indicator slice in Volume Panel
-Add test case

Bug: 152357002
Test: make -j50 RunSettingsRoboTests
Change-Id: I8aa4e960b72f2c3c26ced78153c4ff620a123f40
2020-03-27 12:31:26 +00:00
Tim Peng
9c2968ab21 Update rule to display output switcher Slice
-Display when Cast device is available
-Add test case

Bug: 150907688
Test: make -j42 RunSettingsRoboTests
Change-Id: I1aa2fbe7b77a0274816af47bbc372eae9d7944c9
2020-03-09 16:29:53 +08:00
Tim Peng
14d0d125b4 Launch output switcher with media package information
-Output switcher would include transferable devices when media is active
-Output switcher would only include system devices when no media is active
-Add test cases

Bug: 150179490
Test: make -j42 RunSettingsRoboTests
Change-Id: Ice0048d3a0b78e02ec21dd3664efc0239abbb9cb
2020-02-25 15:45:56 +08:00
timhypeng
da96aeb33d Update preferenceSlice layout rule for new volume panel design
-show icon at left side of Slice if the mapping preference contains icon
-align MediaOutputIndicatorSlice layout with other volume slice

Bug: 148821795
Test: make -j42 RunSettingsRoboTests
Change-Id: I5b0cf7f32f355503942cb62ccf36f77ceeb1b30d
2020-02-05 14:20:03 +00:00
Rahul Sabnis
c5a039a89f Merge "Refactor usages of getAliasName to use getAlias in Settings" am: eed0f8816b am: 4f85f36e7d
am: 2a60040d29

Change-Id: If24afc1a316da64fbf49ad08ee761e5af7dde4b7
2019-11-05 11:47:05 -08:00
Rahul Sabnis
c96469f2bd Refactor usages of getAliasName to use getAlias in Settings
Bug: 142352567
Test: Manual
Change-Id: I40af1b1e0453900fd888317ae46b20ef359db473
2019-10-22 15:34:40 -07:00
Raff Tsai
d9cfbaf3b5 Fix volume panel hang
SliceLiveData changed its behavior, if slice is null, it will not
notify LiveData observer but callback to onErrorListener. We only
reduce PanelSlicesLoaderCountdownLatch in LiveData observer.
Therefore the error slice caused PanelSlicesLoaderCountdownLatch
never count to 0, the UI was not displayed. It is solved by reducing
PanelSlicesLoaderCountdownLatch in onErrorListener and also not return
null in MediaOutputIndicatorSlice.

Test: manual
Fixes: 141084035
Change-Id: Iddb2dbdc0e0d2ac3e26071960bb667937f181121
2019-09-18 11:40:46 +08:00
hughchen
059cb397cd Update slice states when on Voip calling
This CL is used to register intent of AudioManager.STREAM_DEVICES_CHANGED_ACTION
to know that phone is on VOIP call. When received this intent, media slice will
to update UI. Then if audio mode is on-going call, we will hide the slice UI.

Bug: 132198606
Test: Test: make -j42 RunSettingsRoboTests
Change-Id: Ic17ebd319b3da8f42089d36ba530cfb57c93c4c6
2019-09-09 11:01:44 +08:00
Tim Peng
c007158819 Hide audio switcher entry-point in the volume slice when in call
- update test case

Bug: 132385707
Test: make -j42 RunSettingsRoboTests
Change-Id: Ibfd12e75f584b6884d1025018772ac9c19673156
2019-05-13 01:38:39 +00:00
lindatseng
2943c1de7a Set panel launch mode to singleInstance and fix animation
Set panel launch mode to singleInstance to avoid panel can show up
infinite time when user keep launching panels (Easy repro by
pressing volume hard key > settings again and again).

After changing launch mode to singleInstance, we will need to do
some refactors, to avoid weirdness when adding/changing/closing
panels:
1. Move and refactor logic in SettingsPanelActivity#onCreate.
   We will need onNewIntent here to handle Panel launching, since
   we only have one instance of SettingsPanelActivity now.

   Also do refactor here to reuse the PanelFragment instead of
   creating one every single time, to better handle the exit
   animation, avoid janky exit behavior from the old PanelFragment

2. Move logic from PanelFragment#onCreateView, to reuse it when
   updating panel content.

   Also add exiting animation when we are transitioning the panel
   from one to another.  Also add alpha animation to make it move
   more smoothly.

3. Adding flags to launch see more intent in settings.

Fixes: 131225920
Fixes: 131254399
Test: manual
Change-Id: I93d3708bd02a2d736e38685475f2d9988ef62d31
2019-05-10 07:14:13 +00:00
Tim Peng
99ed023ca4 Remove "Play media to" when no connected device
Bug: 130251782
Test: make -j42 RunSettingsRoboTests
Change-Id: Id40199a67aef48b99f59cf6e04f93be2abe5e8fc
2019-04-22 06:09:36 +00:00
timhypeng
9afd28fcb4 [Fix] Unable to show output device indicator after reboot
- To fix the NPE in MediaOutputIndicatorWorker
- To get Bluetooth device status in Slice, not in Worker
- To purify Worker to be an event receiver

Bug: 128945026
Test: make -j42 RunSettingsRoboTests
Change-Id: I9360202870c7a43a79641c5b84210c1bfad4b9a6
2019-03-27 05:32:52 +00:00
hughchen
6feb55546d Sound + Output Switcher on Volume Slice
- Show "play media to" item when Previously Connected device is available
- Click "Play media to" to launch output slice
- Update test case

Bug: 127729340
Test: make -j50 RunSettingsRoboTests
Change-Id: Ic00b309f87bc16f540b22b5a43fecb86f76caeb2
2019-03-16 07:04:43 +08:00