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

Commit b5d4138a authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Android (Google) Code Review
Browse files

Merge "Add Slices for WifiCalling"

parents d68a1647 6885d85a
Loading
Loading
Loading
Loading
+11 −0
Original line number Diff line number Diff line
@@ -2345,6 +2345,17 @@
    <!-- Message of private dns that provides a help link. [CHAR LIMIT=NONE] -->
    <string name="private_dns_help_message"><annotation id="url">Learn more</annotation> about Private DNS features</string>
    <!-- Message to display when setting wifi calling are not editable [CHAR LIMIT=NONE] -->
    <string name="wifi_calling_pref_managed_by_carrier">Setting managed by carrier</string>
    <!-- Message to display when wifi calling needs activation [CHAR LIMIT=NONE] -->
    <string name="wifi_calling_settings_activation_instructions">Activate Wi\u2011Fi Calling</string>
    <!-- Message to display when wifi calling should be on [CHAR LIMIT=NONE] -->
    <string name="wifi_calling_turn_on">Turn on Wi\u2011Fi calling</string>
    <!-- Message to display when carrier does not support wifi calling or doesn't want the user
         to modify the settings [CHAR LIMIT=NONE] -->
    <string name="wifi_calling_not_supported">Wi\u2011Fi calling is not supported for %1$s</string>
    <!-- Carrier string to use in other messages -->
    <string name="carrier">Carrier</string>
    <!-- Sound and alerts settings -->
    <skip/>
    <string name="display_settings_title">Display</string>
+13 −0
Original line number Diff line number Diff line
@@ -18,6 +18,8 @@ package com.android.settings.slices;

import static android.Manifest.permission.READ_SEARCH_INDEXABLES;

import static com.android.settings.wifi.calling.WifiCallingSliceHelper.PATH_WIFI_CALLING;

import android.app.PendingIntent;
import android.app.slice.SliceManager;
import android.content.ContentResolver;
@@ -32,7 +34,13 @@ import android.text.TextUtils;
import android.util.Log;
import android.util.Pair;

import androidx.slice.Slice;
import androidx.slice.SliceProvider;
import androidx.slice.builders.ListBuilder;
import androidx.slice.builders.SliceAction;

import com.android.settings.R;
import com.android.settings.overlay.FeatureFactory;
import com.android.settingslib.utils.ThreadUtils;

import java.net.URISyntaxException;
@@ -160,6 +168,11 @@ public class SettingsSliceProvider extends SliceProvider {
        switch (path) {
            case "/" + PATH_WIFI:
                return createWifiSlice(sliceUri);
            case "/" + PATH_WIFI_CALLING:
                return FeatureFactory.getFactory(getContext())
                        .getSlicesFeatureProvider()
                        .getNewWifiCallingSliceHelper(getContext())
                        .createWifiCallingSlice(sliceUri);
        }

        SliceData cachedSliceData = mSliceWeakDataCache.get(sliceUri);
+7 −0
Original line number Diff line number Diff line
@@ -21,6 +21,7 @@ import static com.android.settings.slices.SettingsSliceProvider.ACTION_TOGGLE_CH
import static com.android.settings.slices.SettingsSliceProvider.ACTION_WIFI_CHANGED;
import static com.android.settings.slices.SettingsSliceProvider.EXTRA_SLICE_KEY;
import static com.android.settings.slices.SettingsSliceProvider.EXTRA_SLICE_PLATFORM_DEFINED;
import static com.android.settings.wifi.calling.WifiCallingSliceHelper.ACTION_WIFI_CALLING_CHANGED;

import android.app.slice.Slice;
import android.content.BroadcastReceiver;
@@ -79,6 +80,12 @@ public class SliceBroadcastReceiver extends BroadcastReceiver {
                    context.getContentResolver().notifyChange(uri, null);
                }, 1000);
                break;
            case ACTION_WIFI_CALLING_CHANGED:
                FeatureFactory.getFactory(context)
                      .getSlicesFeatureProvider()
                      .getNewWifiCallingSliceHelper(context)
                      .handleWifiCallingChanged(intent);
                break;
        }
    }

+8 −1
Original line number Diff line number Diff line
@@ -2,6 +2,8 @@ package com.android.settings.slices;

import android.content.Context;

import com.android.settings.wifi.calling.WifiCallingSliceHelper;

/**
 * Manages Slices in Settings.
 */
@@ -24,4 +26,9 @@ public interface SlicesFeatureProvider {
     * If the data is already indexed, the data will not change.
     */
    void indexSliceData(Context context);

    /**
     * Gets new WifiCallingSliceHelper object
     */
    WifiCallingSliceHelper getNewWifiCallingSliceHelper(Context context);
}
+7 −1
Original line number Diff line number Diff line
@@ -2,6 +2,7 @@ package com.android.settings.slices;

import android.content.Context;

import com.android.settings.wifi.calling.WifiCallingSliceHelper;
import com.android.settingslib.utils.ThreadUtils;

/**
@@ -39,4 +40,9 @@ public class SlicesFeatureProviderImpl implements SlicesFeatureProvider {
        SlicesIndexer indexer = getSliceIndexer(context);
        indexer.indexSliceData();
    }

    @Override
    public WifiCallingSliceHelper getNewWifiCallingSliceHelper(Context context) {
        return new WifiCallingSliceHelper(context);
    }
}
Loading