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

Commit 9fa8789f authored by Daniel Huang's avatar Daniel Huang Committed by Android (Google) Code Review
Browse files

Merge "Modify App languages entry" into main

parents 29bb7485 f54048ad
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -470,6 +470,8 @@
    <string name="country_selection_title">Region preference</string>
    <!-- Hint text in a search edit box (used to filter long language / country lists) [CHAR LIMIT=25] -->
    <string name="search_language_hint">Type language name</string>
    <!-- Category for more language settings. [CHAR LIMIT=NONE]-->
    <string name="more_language_settings_category">More language settings</string>
    <!-- Regional Preferences begin -->
    <!-- The title of the menu entry of regional preferences. [CHAR LIMIT=50] -->
+18 −1
Original line number Diff line number Diff line
@@ -28,12 +28,13 @@
            android:title="@string/system_language"
            android:fragment="com.android.settings.localepicker.LocaleListEditor"
            settings:controller="com.android.settings.language.PhoneLanguagePreferenceController" />

        <Preference
            android:key="apps_language"
            android:title="@string/app_locales_picker_menu_title"
            android:summary="@string/app_locale_picker_summary"
            android:fragment="com.android.settings.applications.manageapplications.ManageApplications"
            settings:controller="com.android.settings.applications.appinfo.ManageAppLocalePreferenceController">
            settings:controller="com.android.settings.applications.appinfo.AppsLocalePreferenceController">
            <extra
                android:name="classname"
                android:value="com.android.settings.applications.appinfo.AppLocaleDetails" />
@@ -48,6 +49,22 @@

    </PreferenceCategory>

    <PreferenceCategory
        android:key="more_language_settings_category"
        android:title="@string/more_language_settings_category"
        settings:controller="com.android.settings.language.MoreLanguagesSettingsCategoryController">
        <Preference
            android:key="apps_language_in_more_language_settings"
            android:title="@string/app_locales_picker_menu_title"
            android:summary="@string/app_locale_picker_summary"
            android:fragment="com.android.settings.applications.manageapplications.ManageApplications"
            settings:controller="com.android.settings.applications.appinfo.NewAppsLocalePreferenceController">
            <extra
                android:name="classname"
                android:value="com.android.settings.applications.appinfo.AppLocaleDetails" />
        </Preference>
    </PreferenceCategory>

    <PreferenceCategory
        android:key="regional_preferences_category"
        android:title="@string/regional_preferences_category_title"
+42 −0
Original line number Diff line number Diff line
/*
 * Copyright (C) 2024 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.applications.appinfo;

import android.content.Context;

import androidx.annotation.NonNull;

import com.android.settings.core.BasePreferenceController;
import com.android.settings.flags.Flags;

/**
 * A controller to update current locale information of application
 * and a entry to launch {@link ManageApplications}.
 */
public class AppsLocalePreferenceController extends BasePreferenceController {
    public AppsLocalePreferenceController(@NonNull Context context, @NonNull String key) {
        super(context, key);
    }

    @Override
    public int getAvailabilityStatus() {
        if (!Flags.regionalPreferencesApiEnabled()) {
            return AVAILABLE;
        }
        return CONDITIONALLY_UNAVAILABLE;
    }
}
+44 −0
Original line number Diff line number Diff line
/*
 * Copyright (C) 2024 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.applications.appinfo;

import android.content.Context;

import androidx.annotation.NonNull;

import com.android.settings.core.BasePreferenceController;
import com.android.settings.flags.Flags;

/**
 * A controller to update current locale information of application
 * and a entry to launch {@link ManageApplications}.
 */
public class NewAppsLocalePreferenceController extends BasePreferenceController {

    public NewAppsLocalePreferenceController(@NonNull Context context, @NonNull String key) {
        super(context, key);
    }

    @Override
    public int getAvailabilityStatus() {
        // TODO(b/381011808) After feature release, this class may be renamed.
        if (Flags.regionalPreferencesApiEnabled()) {
            return AVAILABLE;
        }
        return CONDITIONALLY_UNAVAILABLE;
    }
}
+42 −0
Original line number Diff line number Diff line
/*
 * Copyright (C) 2024 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.language;

import android.content.Context;

import androidx.annotation.NonNull;

import com.android.settings.flags.Flags;
import com.android.settings.widget.PreferenceCategoryController;

/**
 * Controller for the "More language settings" category in the Language & region settings.
 */
public class MoreLanguagesSettingsCategoryController extends PreferenceCategoryController {

    public MoreLanguagesSettingsCategoryController(@NonNull Context context, @NonNull String key) {
        super(context, key);
    }

    @Override
    public int getAvailabilityStatus() {
        if (Flags.regionalPreferencesApiEnabled()) {
            return AVAILABLE;
        }
        return CONDITIONALLY_UNAVAILABLE;
    }
}