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

Commit aa1e2527 authored by Tom Hsu's avatar Tom Hsu Committed by Android (Google) Code Review
Browse files

Merge "[Languages] Add new information to system language page."

parents 5163ae16 f33ac498
Loading
Loading
Loading
Loading
+11 −0
Original line number Diff line number Diff line
@@ -56,6 +56,17 @@
        android:layout_toStartOf="@+id/dragHandle"
        android:layout_below="@id/label"/>

    <TextView
        android:id="@+id/default_locale"
        style="@style/LanguageCheckboxAndLabel"
        android:layout_marginTop="-28dp"
        android:paddingStart="56dp"
        android:textAppearance="?android:attr/textAppearanceListItemSecondary"
        android:textColor="?android:textColorSecondary"
        android:text="@string/desc_current_default_language"
        android:layout_toStartOf="@+id/dragHandle"
        android:layout_below="@id/label"/>

    <ImageView
        android:id="@+id/dragHandle"
        android:layout_width="wrap_content"
+21 −3
Original line number Diff line number Diff line
@@ -312,6 +312,12 @@
    <!-- Title for the locale picker activity. [CHAR LIMIT=30]-->
    <string name="language_picker_title">Languages</string>
    <!-- Title for category of the locale picker . [CHAR LIMIT=50]-->
    <string name="language_picker_category_title">Preferred language order</string>
    <!-- Description for indication of current system default language. [CHAR LIMIT=50]-->
    <string name="desc_current_default_language">System language</string>
    <!-- Menu item in the locale menu. Will remove the selected locales. [CHAR LIMIT=30] -->
    <string name="locale_remove_menu">Remove</string>
@@ -325,13 +331,13 @@
    <string name="locale_picker_category_title">Preferred Language</string>
    <!-- Title for the Apps' locale menu entry [CHAR LIMIT=50]-->
    <string name="app_locales_picker_menu_title">App Languages</string>
    <string name="app_locales_picker_menu_title">App languages</string>
    <!-- Summary for the app's locale picker activity. [CHAR LIMIT=50]-->
    <string name="app_locale_picker_summary">Set the language for each app</string>
    <!-- Title for the App's locale picker activity. [CHAR LIMIT=50]-->
    <string name="app_locale_picker_title">App Language</string>
    <string name="app_locale_picker_title">App language</string>
    <!-- Category for the suggested app's locales. [CHAR LIMIT=50]-->
    <string name="suggested_app_locales_title">Suggested languages</string>
@@ -354,6 +360,18 @@
    <!-- Description for introduction of the locale selection supported of app list [CHAR LIMIT=NONE]-->
    <string name="desc_app_locale_selection_supported">Only apps that support language selection are shown here.</string>
    <!-- Description for the introduction to language picker activity. [CHAR LIMIT=NONE]-->
    <string name="desc_introduction_of_language_picker">Your system, apps, and websites use the first supported language from your preferred languages.</string>
    <!-- Description for the notice of language picker. [CHAR LIMIT=NONE]-->
    <string name="desc_notice_of_language_picker">To select a language for each app, go to app language settings.</string>
    <!-- Title for locale helper page [CHAR LIMIT=NONE] -->
    <string name="desc_locale_helper_footer_general">Learn more about languages</string>
    <!-- Link for Locale helper page. [CHAR LIMIT=NONE]-->
    <string name="link_locale_picker_footer_learn_more" translatable="false">https://support.google.com/android?p=per_language_app_settings</string>
    <!-- Regional Preferences begin -->
    <!-- The title of the menu entry of regional preferences. [CHAR LIMIT=50] -->
    <string name="regional_preferences_title">Regional preferences</string>
@@ -407,7 +425,7 @@
    <string name="dlg_remove_locales_error_message">Keep at least one preferred language</string>
    <!-- This text shows in the language picker when the system is not translated into that languages [CHAR LIMIT=80] -->
    <string name="locale_not_translated">May not be available in some apps</string>
    <string name="locale_not_translated">Not available as system language</string>
    <!-- Label for an accessibility action that moves a language up in the ordered language list [CHAR LIMIT=20] -->
    <string name="action_drag_label_move_up">Move up</string>

res/xml/languages.xml

0 → 100644
+42 −0
Original line number Diff line number Diff line
<?xml version="1.0" encoding="utf-8"?>
<!--
  Copyright (C) 2022 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.
  -->

<PreferenceScreen
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:settings="http://schemas.android.com/apk/res-auto"
    android:title="@string/language_settings">

    <com.android.settingslib.widget.TopIntroPreference
        android:title="@string/desc_introduction_of_language_picker"
        android:persistent="false"
        android:selectable="false"/>

    <PreferenceCategory
        android:title="@string/language_picker_category_title">
        <com.android.settingslib.widget.LayoutPreference
            android:key="languages_picker"
            android:layout="@layout/locale_order_list" />
    </PreferenceCategory>

    <com.android.settingslib.widget.FooterPreference
        android:key="footer_languages_picker"
        android:title="@string/desc_notice_of_language_picker"
        android:persistent="false"
        android:selectable="false"
        settings:controller="com.android.settings.localepicker.LocaleHelperPreferenceController"/>

</PreferenceScreen>
+2 −1
Original line number Diff line number Diff line
@@ -43,7 +43,6 @@ import java.util.ArrayList;
import java.util.List;
import java.util.Locale;


class LocaleDragAndDropAdapter
        extends RecyclerView.Adapter<LocaleDragAndDropAdapter.CustomViewHolder> {

@@ -154,8 +153,10 @@ class LocaleDragAndDropAdapter
        final LocaleDragCell dragCell = holder.getLocaleDragCell();
        final String label = feedItem.getFullNameNative();
        final String description = feedItem.getFullNameInUiLanguage();

        dragCell.setLabelAndDescription(label, description);
        dragCell.setLocalized(feedItem.isTranslated());
        dragCell.setCurrentDefault(feedItem.getLocale().equals(Locale.getDefault()));
        dragCell.setMiniLabel(mNumberFormatter.format(i + 1));
        dragCell.setShowCheckbox(mRemoveMode);
        dragCell.setShowMiniLabel(!mRemoveMode);
+10 −0
Original line number Diff line number Diff line
@@ -33,6 +33,7 @@ class LocaleDragCell extends RelativeLayout {
    private CheckBox mCheckbox;
    private TextView mMiniLabel;
    private TextView mLocalized;
    private TextView mCurrentDefault;
    private ImageView mDragHandle;

    public LocaleDragCell(Context context, AttributeSet attrs) {
@@ -44,6 +45,7 @@ class LocaleDragCell extends RelativeLayout {
        super.onFinishInflate();
        mLabel = (TextView) findViewById(R.id.label);
        mLocalized = (TextView) findViewById(R.id.l10nWarn);
        mCurrentDefault = (TextView) findViewById(R.id.default_locale);
        mMiniLabel = (TextView) findViewById(R.id.miniLabel);
        mCheckbox = (CheckBox) findViewById(R.id.checkbox);
        mDragHandle = (ImageView) findViewById(R.id.dragHandle);
@@ -100,6 +102,14 @@ class LocaleDragCell extends RelativeLayout {
        invalidate();
    }

    /**
     * Indicate current locale is system default.
     */
    public void setCurrentDefault(boolean isCurrentDefault) {
        mCurrentDefault.setVisibility(isCurrentDefault ? VISIBLE : GONE);
        invalidate();
    }

    public ImageView getDragHandle() {
        return mDragHandle;
    }
Loading