[Provider Model] Fix the panel non responsive issue

Bug: 187340277
Test: manual test
atest -c ProviderModelSliceTest

Change-Id: Ie27a5049b2cab05b7c7936395d0db85c3c594d96
This commit is contained in:
Weng Su
2021-06-09 00:35:53 +08:00
parent df0a84f08a
commit 8c29ff0a27
2 changed files with 23 additions and 0 deletions

View File

@@ -46,6 +46,7 @@ import com.android.settings.network.telephony.MobileNetworkUtils;
import com.android.settings.network.telephony.NetworkProviderWorker;
import com.android.settings.slices.CustomSliceable;
import com.android.settings.slices.SliceBackgroundWorker;
import com.android.settings.slices.SliceBroadcastReceiver;
import com.android.settings.slices.SliceBuilderUtils;
import com.android.settings.wifi.WifiUtils;
import com.android.settings.wifi.slice.WifiSlice;
@@ -163,6 +164,18 @@ public class ProviderModelSlice extends WifiSlice {
return listBuilder.build();
}
@Override
public PendingIntent getBroadcastIntent(Context context) {
final Intent intent = new Intent(getUri().toString())
// The FLAG_RECEIVER_FOREGROUND flag is necessary to avoid the intent delay of
// the first sending after the device restarts
.addFlags(Intent.FLAG_RECEIVER_FOREGROUND)
.setData(getUri())
.setClass(context, SliceBroadcastReceiver.class);
return PendingIntent.getBroadcast(context, 0 /* requestCode */, intent,
PendingIntent.FLAG_UPDATE_CURRENT | PendingIntent.FLAG_MUTABLE);
}
/**
* Update the current carrier's mobile data status.
*/