Settings: Add LineageOS legal info
Open up the LineageOS legal info in the browser. Change-Id: I263ccc0509e275d17512528deb606341d58e7a0d Ticket-Id: CYNGNOS-1895 Signed-off-by: Roman Birg <roman@cyngn.com>
This commit is contained in:
committed by
Michael Bestas
parent
3a00671373
commit
d58f018299
@@ -22,4 +22,7 @@
|
||||
<!-- Backup Transport selection settings menu and activity title -->
|
||||
<string name="backup_transport_setting_label">Change backup provider</string>
|
||||
<string name="backup_transport_title">Select backup provider</string>
|
||||
|
||||
<!-- Device Info screen. LineageOS legal. -->
|
||||
<string name="lineagelicense_title">LineageOS legal</string>
|
||||
</resources>
|
||||
|
||||
@@ -35,6 +35,12 @@
|
||||
android:title="@string/license_title"
|
||||
settings:controller="com.android.settings.deviceinfo.legal.LicensePreferenceController" />
|
||||
|
||||
<!-- LineageOS License information -->
|
||||
<Preference
|
||||
android:key="lineage_license"
|
||||
android:title="@string/lineagelicense_title"
|
||||
settings:controller="com.android.settings.deviceinfo.legal.LineageLicensePreferenceController" />
|
||||
|
||||
<!-- Terms and conditions -->
|
||||
<Preference
|
||||
android:key="terms"
|
||||
|
||||
@@ -0,0 +1,63 @@
|
||||
/*
|
||||
* Copyright (C) 2021 The LineageOS 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.deviceinfo.legal;
|
||||
|
||||
import android.content.Context;
|
||||
import android.content.Intent;
|
||||
import android.net.Uri;
|
||||
import android.os.SystemProperties;
|
||||
|
||||
import androidx.preference.Preference;
|
||||
import androidx.preference.PreferenceScreen;
|
||||
|
||||
import com.android.settings.core.BasePreferenceController;
|
||||
|
||||
public class LineageLicensePreferenceController extends BasePreferenceController {
|
||||
|
||||
private static final String PROPERTY_LINEAGE_LICENSE_URL = "ro.lineagelegal.url";
|
||||
|
||||
public LineageLicensePreferenceController(Context context, String key) {
|
||||
super(context, key);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void displayPreference(PreferenceScreen screen) {
|
||||
super.displayPreference(screen);
|
||||
|
||||
Preference preference = screen.findPreference(getPreferenceKey());
|
||||
if (preference != null) {
|
||||
preference.setOnPreferenceClickListener(pref -> {
|
||||
mContext.startActivity(getIntent());
|
||||
return true;
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getAvailabilityStatus() {
|
||||
if (getIntent().resolveActivity(mContext.getPackageManager()) != null) {
|
||||
return AVAILABLE;
|
||||
} else {
|
||||
return UNSUPPORTED_ON_DEVICE;
|
||||
}
|
||||
}
|
||||
|
||||
private Intent getIntent() {
|
||||
return new Intent(Intent.ACTION_VIEW,
|
||||
Uri.parse(SystemProperties.get(PROPERTY_LINEAGE_LICENSE_URL)));
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user