Fix the consistency of connection status displayed on Wi-Fi card
- Refresh slice in WifiTracker.onConnectedChanged - Only expose notifySliceChange to child in SliceBackgroundWorker Fixes: 123270015 Test: make RunSettingsRoboTests -j ROBOTEST_FILTER=com.android.settings.wifi.slice Change-Id: Id5540ebae2746e58e14924665c5e62bf437ebcf0
This commit is contained in:
@@ -30,16 +30,11 @@ public class BluetoothUpdateWorker extends SliceBackgroundWorker implements Blue
|
||||
|
||||
private static final String TAG = "BluetoothUpdateWorker";
|
||||
|
||||
private final Context mContext;
|
||||
private final Uri mUri;
|
||||
private final LocalBluetoothManager mLocalBluetoothManager;
|
||||
|
||||
public BluetoothUpdateWorker(Context context, Uri uri) {
|
||||
super(context, uri);
|
||||
|
||||
mContext = context;
|
||||
mUri = uri;
|
||||
mLocalBluetoothManager = Utils.getLocalBtManager(mContext);
|
||||
mLocalBluetoothManager = Utils.getLocalBtManager(context);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -89,8 +84,4 @@ public class BluetoothUpdateWorker extends SliceBackgroundWorker implements Blue
|
||||
int bluetoothProfile) {
|
||||
notifySliceChange();
|
||||
}
|
||||
|
||||
private void notifySliceChange() {
|
||||
mContext.getContentResolver().notifyChange(mUri, null);
|
||||
}
|
||||
}
|
@@ -59,10 +59,6 @@ public abstract class SliceBackgroundWorker<E> implements Closeable {
|
||||
mUri = uri;
|
||||
}
|
||||
|
||||
protected Uri getUri() {
|
||||
return mUri;
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the singleton instance of the {@link SliceBackgroundWorker} for specified {@link Uri}
|
||||
* if exists
|
||||
@@ -148,7 +144,14 @@ public abstract class SliceBackgroundWorker<E> implements Closeable {
|
||||
|
||||
if (needNotify) {
|
||||
mCachedResults = results;
|
||||
notifySliceChange();
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Notify that data was updated and attempt to sync changes to the Slice.
|
||||
*/
|
||||
protected void notifySliceChange() {
|
||||
mContext.getContentResolver().notifyChange(mUri, null);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@@ -292,11 +292,12 @@ public class WifiSlice implements CustomSliceable {
|
||||
|
||||
@Override
|
||||
public void onWifiStateChanged(int state) {
|
||||
mContext.getContentResolver().notifyChange(getUri(), null);
|
||||
notifySliceChange();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onConnectedChanged() {
|
||||
notifySliceChange();
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@@ -139,4 +139,11 @@ public class WifiSliceTest {
|
||||
|
||||
verify(mResolver).notifyChange(WIFI_SLICE_URI, null);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void onConnectedChanged_shouldNotifyChange() {
|
||||
mWifiScanWorker.onConnectedChanged();
|
||||
|
||||
verify(mResolver).notifyChange(WIFI_SLICE_URI, null);
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user