Skip to content

Commit

Permalink
Settings: Fix selinux status after About Phone revamp
Browse files Browse the repository at this point in the history
 * convert to BasePreferenceController
  • Loading branch information
adithya2306 committed Jun 20, 2021
1 parent 75a26e1 commit 542b15b
Show file tree
Hide file tree
Showing 2 changed files with 15 additions and 28 deletions.
2 changes: 1 addition & 1 deletion res/xml/firmware_version.xml
Original file line number Diff line number Diff line change
Expand Up @@ -75,7 +75,7 @@
<Preference
android:key="selinux_status"
android:title="@string/selinux_status"
android:summary="@string/selinux_status_enforcing"
android:summary="@string/unknown"
settings:enableCopying="false"
settings:controller="com.android.settings.deviceinfo.firmwareversion.SELinuxStatusPreferenceController"/>

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,48 +17,35 @@

import android.content.Context;
import android.os.SELinux;
import android.os.SystemProperties;
import androidx.preference.Preference;
import androidx.preference.PreferenceScreen;
import android.text.TextUtils;

import com.android.settings.R;
import com.android.settings.core.PreferenceControllerMixin;
import com.android.settingslib.core.AbstractPreferenceController;
import com.android.settings.core.BasePreferenceController;

public class SELinuxStatusPreferenceController extends AbstractPreferenceController implements
PreferenceControllerMixin {
public class SELinuxStatusPreferenceController extends BasePreferenceController {

private static final String KEY_SELINUX_STATUS = "selinux_status";
private static final String TAG = "SELinuxStatusPreferenceController";

public SELinuxStatusPreferenceController(Context context) {
super(context);
public SELinuxStatusPreferenceController(Context context, String key) {
super(context, key);
}

@Override
public boolean isAvailable() {
return true;
public int getAvailabilityStatus() {
return AVAILABLE;
}

@Override
public String getPreferenceKey() {
return KEY_SELINUX_STATUS;
}

@Override
public void displayPreference(PreferenceScreen screen) {
super.displayPreference(screen);
final Preference pref = screen.findPreference(KEY_SELINUX_STATUS);
if (pref == null) {
return;
}
public CharSequence getSummary() {
if (!SELinux.isSELinuxEnabled()) {
String status = mContext.getResources().getString(R.string.selinux_status_disabled);
pref.setSummary(status);
} else if (!SELinux.isSELinuxEnforced()) {
String status = mContext.getResources().getString(R.string.selinux_status_permissive);
pref.setSummary(status);
return mContext.getResources().getString(R.string.selinux_status_disabled);
} else if (SELinux.isSELinuxEnforced()) {
return mContext.getResources().getString(R.string.selinux_status_enforcing);
} else {
return mContext.getResources().getString(R.string.selinux_status_permissive);
}
}
}

}

0 comments on commit 542b15b

Please sign in to comment.