Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit e48cf70a authored by Matthew Fritze's avatar Matthew Fritze Committed by android-build-merger
Browse files

Merge "Hide SettingsSlice provider" into pi-dev

am: 041bfbd2

Change-Id: I9e9f0cfc71a6352f7adfa3072a097dd126f38a29
parents 611d8241 041bfbd2
Loading
Loading
Loading
Loading
+9 −4
Original line number Diff line number Diff line
@@ -3314,10 +3314,15 @@
        </provider>

        <receiver
            android:name=".slices.SliceBroadcastReceiver" >
            <intent-filter>
                <action android:name="com.android.settings.slice.action.WIFI_CHANGED"/>
            </intent-filter>
            android:name=".slices.SliceBroadcastReceiver"
            android:exported="false">
        </receiver>

        <receiver
            android:name=".slices.SliceRelayReceiver"
            android:permission="android.permission.MANAGE_SLICE_PERMISSIONS"
            android:exported="true">

        </receiver>

        <!-- Couldn't be triggered from outside of settings. Statsd can trigger it because we send
+1 −1
Original line number Diff line number Diff line
@@ -382,7 +382,7 @@ public class SettingsSliceProvider extends SliceProvider {
    void registerIntentToUri(IntentFilter intentFilter, Uri sliceUri) {
        Log.d(TAG, "Registering Uri for broadcast relay: " + sliceUri);
        mRegisteredUris.add(sliceUri);
        SliceBroadcastRelay.registerReceiver(getContext(), sliceUri, SliceBroadcastReceiver.class,
        SliceBroadcastRelay.registerReceiver(getContext(), sliceUri, SliceRelayReceiver.class,
                intentFilter);
    }

+0 −7
Original line number Diff line number Diff line
@@ -44,7 +44,6 @@ import com.android.settings.core.TogglePreferenceController;
import com.android.settings.notification.ZenModeSliceBuilder;
import com.android.settings.overlay.FeatureFactory;
import com.android.settings.wifi.WifiSliceBuilder;
import com.android.settingslib.SliceBroadcastRelay;

/**
 * Responds to actions performed on slices and notifies slices of updates in state changes.
@@ -84,12 +83,6 @@ public class SliceBroadcastReceiver extends BroadcastReceiver {
            case ACTION_ZEN_MODE_SLICE_CHANGED:
                ZenModeSliceBuilder.handleUriChange(context, intent);
                break;
            default:
                final String uriString = intent.getStringExtra(SliceBroadcastRelay.EXTRA_URI);
                if (!TextUtils.isEmpty(uriString)) {
                    final Uri uri = Uri.parse(uriString);
                    context.getContentResolver().notifyChange(uri, null /* observer */);
                }
        }
    }

+39 −0
Original line number Diff line number Diff line
/*
 * Copyright (C) 2018 The Android Open Source Project
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License
 */

package com.android.settings.slices;

import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.net.Uri;
import android.text.TextUtils;
import com.android.settingslib.SliceBroadcastRelay;

/**
 * Receives broadcasts to notify that Settings Slices are potentially stale.
 */
public class SliceRelayReceiver extends BroadcastReceiver {

    @Override
    public void onReceive(Context context, Intent intent) {
        final String uriString = intent.getStringExtra(SliceBroadcastRelay.EXTRA_URI);
        if (!TextUtils.isEmpty(uriString)) {
            final Uri uri = Uri.parse(uriString);
            context.getContentResolver().notifyChange(uri, null /* observer */);
        }
    }
}
 No newline at end of file
+6 −2
Original line number Diff line number Diff line
@@ -159,8 +159,12 @@ public class SliceBroadcastReceiverTest {

        assertThat(fakeToggleController.isChecked()).isFalse();

        final Uri expectedUri = SliceBuilderUtils.getUri(
                SettingsSlicesContract.PATH_SETTING_ACTION + "/" + key, false);
        final Uri expectedUri = new Uri.Builder()
                .scheme(ContentResolver.SCHEME_CONTENT)
                .authority(SettingsSliceProvider.SLICE_AUTHORITY)
                .appendPath(SettingsSlicesContract.PATH_SETTING_ACTION)
                .appendPath(key)
                .build();
        verify(resolver).notifyChange(eq(expectedUri), eq(null));
    }

Loading