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 static final String TAG = "BluetoothUpdateWorker";
|
||||||
|
|
||||||
private final Context mContext;
|
|
||||||
private final Uri mUri;
|
|
||||||
private final LocalBluetoothManager mLocalBluetoothManager;
|
private final LocalBluetoothManager mLocalBluetoothManager;
|
||||||
|
|
||||||
public BluetoothUpdateWorker(Context context, Uri uri) {
|
public BluetoothUpdateWorker(Context context, Uri uri) {
|
||||||
super(context, uri);
|
super(context, uri);
|
||||||
|
mLocalBluetoothManager = Utils.getLocalBtManager(context);
|
||||||
mContext = context;
|
|
||||||
mUri = uri;
|
|
||||||
mLocalBluetoothManager = Utils.getLocalBtManager(mContext);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -89,8 +84,4 @@ public class BluetoothUpdateWorker extends SliceBackgroundWorker implements Blue
|
|||||||
int bluetoothProfile) {
|
int bluetoothProfile) {
|
||||||
notifySliceChange();
|
notifySliceChange();
|
||||||
}
|
}
|
||||||
|
|
||||||
private void notifySliceChange() {
|
|
||||||
mContext.getContentResolver().notifyChange(mUri, null);
|
|
||||||
}
|
|
||||||
}
|
}
|
@@ -59,10 +59,6 @@ public abstract class SliceBackgroundWorker<E> implements Closeable {
|
|||||||
mUri = uri;
|
mUri = uri;
|
||||||
}
|
}
|
||||||
|
|
||||||
protected Uri getUri() {
|
|
||||||
return mUri;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns the singleton instance of the {@link SliceBackgroundWorker} for specified {@link Uri}
|
* Returns the singleton instance of the {@link SliceBackgroundWorker} for specified {@link Uri}
|
||||||
* if exists
|
* if exists
|
||||||
@@ -148,7 +144,14 @@ public abstract class SliceBackgroundWorker<E> implements Closeable {
|
|||||||
|
|
||||||
if (needNotify) {
|
if (needNotify) {
|
||||||
mCachedResults = results;
|
mCachedResults = results;
|
||||||
mContext.getContentResolver().notifyChange(mUri, null);
|
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
|
@Override
|
||||||
public void onWifiStateChanged(int state) {
|
public void onWifiStateChanged(int state) {
|
||||||
mContext.getContentResolver().notifyChange(getUri(), null);
|
notifySliceChange();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onConnectedChanged() {
|
public void onConnectedChanged() {
|
||||||
|
notifySliceChange();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@@ -139,4 +139,11 @@ public class WifiSliceTest {
|
|||||||
|
|
||||||
verify(mResolver).notifyChange(WIFI_SLICE_URI, null);
|
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