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

Commit 561a88cf authored by Sudheer Shanka's avatar Sudheer Shanka Committed by Android (Google) Code Review
Browse files

Merge "Add disabled by policy empty views to more screens." into nyc-dev

parents 14df5607 f1e78d35
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -1791,6 +1791,8 @@
    <string name="wifi_saved_access_points_label">Saved networks</string>
    <!-- Wifi Advanced settings.  Used as a label under the shortcut icon that goes to Wifi advanced settings. [CHAR LIMIT=20] -->
    <string name="wifi_advanced_settings_label">IP settings</string>
    <!-- Error message for users that aren't allowed to see or modify WiFi advanced settings [CHAR LIMIT=NONE] -->
    <string name="wifi_advanced_not_available">Wi\u2011Fi advanced settings are not available for this user</string>
    <!-- Menu item to save the IP settings -->
    <string name="wifi_ip_settings_menu_save">Save</string>
    <!-- Menu ietm to cancel the IP settings -->
+11 −17
Original line number Diff line number Diff line
@@ -60,7 +60,7 @@ import com.android.internal.telephony.uicc.UiccController;

import java.util.ArrayList;

public class ApnSettings extends SettingsPreferenceFragment implements
public class ApnSettings extends RestrictedSettingsFragment implements
        Preference.OnPreferenceChangeListener {
    static final String TAG = "ApnSettings";

@@ -103,8 +103,6 @@ public class ApnSettings extends SettingsPreferenceFragment implements
    private String mMvnoType;
    private String mMvnoMatchData;

    private UserManager mUm;

    private String mSelectedKey;

    private IntentFilter mMobileStateFilter;
@@ -114,6 +112,10 @@ public class ApnSettings extends SettingsPreferenceFragment implements
    private boolean mHideImsApn;
    private boolean mAllowAddingApns;

    public ApnSettings() {
        super(UserManager.DISALLOW_CONFIG_MOBILE_NETWORKS);
    }

    private final BroadcastReceiver mMobileStateReceiver = new BroadcastReceiver() {
        @Override
        public void onReceive(Context context, Intent intent) {
@@ -154,14 +156,10 @@ public class ApnSettings extends SettingsPreferenceFragment implements
        final int subId = activity.getIntent().getIntExtra(SUB_ID,
                SubscriptionManager.INVALID_SUBSCRIPTION_ID);

        mUm = (UserManager) getSystemService(Context.USER_SERVICE);

        mMobileStateFilter = new IntentFilter(
                TelephonyIntents.ACTION_ANY_DATA_CONNECTION_STATE_CHANGED);

        if (!mUm.hasUserRestriction(UserManager.DISALLOW_CONFIG_MOBILE_NETWORKS)) {
            setHasOptionsMenu(true);
        }
        setIfOnlyAvailableForAdmins(true);

        mSubscriptionInfo = SubscriptionManager.from(activity).getActiveSubscriptionInfo(subId);
        mUiccController = UiccController.getInstance();
@@ -177,16 +175,12 @@ public class ApnSettings extends SettingsPreferenceFragment implements
    public void onActivityCreated(Bundle savedInstanceState) {
        super.onActivityCreated(savedInstanceState);

        TextView empty = (TextView) getView().findViewById(android.R.id.empty);
        if (empty != null) {
            empty.setText(R.string.apn_settings_not_available);
            setEmptyView(empty);
        }

        if (mUm.hasUserRestriction(UserManager.DISALLOW_CONFIG_MOBILE_NETWORKS)
                || !mUm.isAdminUser()) {
            mUnavailable = true;
        getEmptyTextView().setText(R.string.apn_settings_not_available);
        mUnavailable = isUiRestricted();
        setHasOptionsMenu(!mUnavailable);
        if (mUnavailable) {
            setPreferenceScreen(new PreferenceScreen(getPrefContext(), null));
            getPreferenceScreen().removeAll();
            return;
        }

+27 −8
Original line number Diff line number Diff line
@@ -20,6 +20,7 @@ import android.app.ActionBar;
import android.content.Context;
import android.nfc.NfcAdapter;
import android.os.Bundle;
import android.os.UserHandle;
import android.os.UserManager;
import android.view.LayoutInflater;
import android.view.Menu;
@@ -33,7 +34,11 @@ import com.android.settings.HelpUtils;
import com.android.settings.InstrumentedFragment;
import com.android.settings.R;
import com.android.settings.SettingsActivity;
import com.android.settings.ShowAdminSupportDetailsDialog;
import com.android.settings.widget.SwitchBar;
import com.android.settingslib.RestrictedLockUtils;

import static com.android.settingslib.RestrictedLockUtils.EnforcedAdmin;

public class AndroidBeam extends InstrumentedFragment
        implements SwitchBar.OnSwitchChangeListener {
@@ -41,7 +46,8 @@ public class AndroidBeam extends InstrumentedFragment
    private NfcAdapter mNfcAdapter;
    private SwitchBar mSwitchBar;
    private CharSequence mOldActivityTitle;
    private boolean mBeamDisallowed;
    private boolean mBeamDisallowedByBase;
    private boolean mBeamDisallowedByAdmin;

    @Override
    public void onCreate(Bundle savedInstanceState) {
@@ -53,8 +59,6 @@ public class AndroidBeam extends InstrumentedFragment
        actionBar.setTitle(R.string.android_beam_settings_title);

        mNfcAdapter = NfcAdapter.getDefaultAdapter(getActivity());
        mBeamDisallowed = ((UserManager) getActivity().getSystemService(Context.USER_SERVICE))
                .hasUserRestriction(UserManager.DISALLOW_OUTGOING_BEAM);
        setHasOptionsMenu(true);
    }

@@ -68,8 +72,19 @@ public class AndroidBeam extends InstrumentedFragment
    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
            Bundle savedInstanceState) {
        final EnforcedAdmin admin = RestrictedLockUtils.checkIfRestrictionEnforced(
                getActivity(), UserManager.DISALLOW_OUTGOING_BEAM, UserHandle.myUserId());
        final UserManager um = UserManager.get(getActivity());
        mBeamDisallowedByBase = RestrictedLockUtils.hasBaseUserRestriction(getActivity(),
                UserManager.DISALLOW_OUTGOING_BEAM, UserHandle.myUserId());
        if (!mBeamDisallowedByBase && admin != null) {
            View view = inflater.inflate(R.layout.admin_support_details_empty_view, null);
            ShowAdminSupportDetailsDialog.setAdminSupportDetails(getActivity(), view, admin, false);
            view.setVisibility(View.VISIBLE);
            mBeamDisallowedByAdmin = true;
            return view;
        }
        mView = inflater.inflate(R.layout.android_beam, container, false);

        return mView;
    }

@@ -80,11 +95,15 @@ public class AndroidBeam extends InstrumentedFragment
        SettingsActivity activity = (SettingsActivity) getActivity();

        mSwitchBar = activity.getSwitchBar();
        mSwitchBar.setChecked(!mBeamDisallowed && mNfcAdapter.isNdefPushEnabled());
        if (!mBeamDisallowedByBase && mBeamDisallowedByAdmin) {
            mSwitchBar.hide();
        } else {
            mSwitchBar.setChecked(!mBeamDisallowedByBase && mNfcAdapter.isNdefPushEnabled());
            mSwitchBar.addOnSwitchChangeListener(this);
        mSwitchBar.setEnabled(!mBeamDisallowed);
            mSwitchBar.setEnabled(!mBeamDisallowedByBase);
            mSwitchBar.show();
        }
    }

    @Override
    public void onDestroyView() {
+30 −4
Original line number Diff line number Diff line
@@ -22,14 +22,18 @@ import android.content.Context;
import android.content.Intent;
import android.net.wifi.WpsInfo;
import android.os.Bundle;
import android.os.UserManager;
import android.security.Credentials;
import android.support.v7.preference.Preference;
import android.support.v7.preference.Preference.OnPreferenceClickListener;
import android.support.v7.preference.PreferenceScreen;

import com.android.internal.logging.MetricsProto.MetricsEvent;
import com.android.settings.R;
import com.android.settings.SettingsPreferenceFragment;
import com.android.settings.RestrictedSettingsFragment;
import com.android.settingslib.RestrictedLockUtils;

public class AdvancedWifiSettings extends SettingsPreferenceFragment {
public class AdvancedWifiSettings extends RestrictedSettingsFragment {
    private static final String TAG = "AdvancedWifiSettings";

    private static final String KEY_INSTALL_CREDENTIALS = "install_credentials";
@@ -37,6 +41,12 @@ public class AdvancedWifiSettings extends SettingsPreferenceFragment {
    private static final String KEY_WPS_PUSH = "wps_push_button";
    private static final String KEY_WPS_PIN = "wps_pin_entry";

    private boolean mUnavailable;

    public AdvancedWifiSettings() {
        super(UserManager.DISALLOW_CONFIG_WIFI);
    }

    @Override
    protected int getMetricsCategory() {
        return MetricsEvent.WIFI_ADVANCED;
@@ -45,14 +55,30 @@ public class AdvancedWifiSettings extends SettingsPreferenceFragment {
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        if (isUiRestricted()) {
            mUnavailable = true;
            setPreferenceScreen(new PreferenceScreen(getPrefContext(), null));
        } else {
            addPreferencesFromResource(R.xml.wifi_advanced_settings);
        }
    }

    @Override
    public void onActivityCreated(Bundle savedInstanceState) {
        super.onActivityCreated(savedInstanceState);
        getEmptyTextView().setText(R.string.wifi_advanced_not_available);
        if (mUnavailable) {
            getPreferenceScreen().removeAll();
        }
    }

    @Override
    public void onResume() {
        super.onResume();
        if (!mUnavailable) {
            initPreferences();
        }
    }

    private void initPreferences() {
        final Context context = getActivity();