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

Commit 0534d81c authored by mqi's avatar mqi Committed by Linux Build Service Account
Browse files

SystemUI: Customize StatusBar for China carriers

1. Show carrier label in notification panel.
2. Support monitor locale change and display for radio tech.
3. Update Chinese roaming string.
4. Show wifi activity in status bar.
5. Show indicator for Wifi on but not connected.
6. Show rsrp level for LTE.
7. Redesign the scheme of selecting icons on signal cluster.
   Customized SigalClusterView and MobileSignalController to adapt
   requirement from China carriers. The customization is controller
   by config values defined in overlayed config.xml.
8. Add customized China carriers resoure files

CRs-Fixed: 916021
Change-Id: Id71a0c98f1a65f31d9a81ddba61d78570e7a96ba
parent 43674ec6
Loading
Loading
Loading
Loading
+92 −0
Original line number Diff line number Diff line
/*
 * Copyright (C) 2015-2016, The Linux Foundation. All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions are
 * met:
 *     * Redistributions of source code must retain the above copyright
 *       notice, this list of conditions and the following disclaimer.
 *     * Redistributions in binary form must reproduce the above
 *       copyright notice, this list of conditions and the following
 *       disclaimer in the documentation and/or other materials provided
 *       with the distribution.
 *     * Neither the name of The Linux Foundation nor the names of its
 *       contributors may be used to endorse or promote products derived
 *       from this software without specific prior written permission.
 *
 * THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED
 * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
 * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT
 * ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS
 * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
 * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
 * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
 * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
 * IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 */
package android.util;

import android.content.Context;

/**
 *@hide
 */
public class NativeTextHelper {

    /**
     * parse the string to current language.
     *
     * @param context base context of the application
     * @param originalString original string
     * @param defPackage the target package where the local language strings
     *            defined
     * @param originNamesId the id of the original string array.
     * @param localNamesId the id of the local string keys.
     * @return local language string
     */
    private static final String getLocalString(Context context, String originalString,
            String defPackage, int originNamesId, int localNamesId) {
        String[] origNames = context.getResources().getStringArray(originNamesId);
        String[] localNames = context.getResources().getStringArray(localNamesId);
        for (int i = 0; i < origNames.length; i++) {
            if (origNames[i].equalsIgnoreCase(originalString)) {
                return context.getString(context.getResources().getIdentifier(localNames[i],
                        "string", defPackage));
            }
        }
        return originalString;
    }

    /**
     * parse the string to current language string in public resources.
     *
     * @param context base context of the application
     * @param originalString original string
     * @param originNamesId the id of the original string array.
     * @param localNamesId the id of the local string keys.
     * @return local language string
     */
    public static final String getLocalString(Context context, String originalString,
            int originNamesId, int localNamesId) {
        return getLocalString(context, originalString, "android", originNamesId, localNamesId);
    }

    /**
     * parse the string to current language string in current resources.
     *
     * @param context base context of the application
     * @param originalString original string
     * @param originNamesId the id of the original string array.
     * @param localNamesId the id of the local string keys.
     * @return local language string
     */
    public static final String getInternalLocalString(Context context, String originalString,
            int originNamesId,
            int localNamesId) {
        return getLocalString(context, originalString, context.getPackageName(), originNamesId,
                localNamesId);
    }

}
+6 −0
Original line number Diff line number Diff line
@@ -1629,6 +1629,7 @@
      <item quantity="other">已选择 <xliff:g id="COUNT_1">%1$d</xliff:g></item>
      <item quantity="one">已选择 <xliff:g id="COUNT_0">%1$d</xliff:g></item>
    </plurals>

    <string name="importance_from_user" msgid="7318955817386549931">"这些通知的重要程度由您来设置。"</string>
    <string name="importance_from_person" msgid="9160133597262938296">"这条通知涉及特定的人,因此被归为重要通知。"</string>
    <string name="user_creation_account_exists" msgid="1942606193570143289">"允许<xliff:g id="APP">%1$s</xliff:g>使用 <xliff:g id="ACCOUNT">%2$s</xliff:g> 创建新用户吗?"</string>
@@ -1658,4 +1659,9 @@
    <string name="audit_safemode_notification" msgid="6416076898350685856">"恢复出厂设置即可正常使用此设备,不受任何限制"</string>
    <string name="audit_safemode_notification_details" msgid="1860601176690176413">"触摸即可了解详情。"</string>
    <string name="suspended_widget_accessibility" msgid="6712143096475264190">"已停用的<xliff:g id="LABEL">%1$s</xliff:g>"</string>

    <!-- Carrier Name -->
    <string name="China_Mobile">中国移动</string>
    <string name="China_Unicom">中国联通</string>
    <string name="China_Telecom">中国电信</string>
</resources>
+6 −0
Original line number Diff line number Diff line
@@ -1625,6 +1625,7 @@
      <item quantity="other">已選取 <xliff:g id="COUNT_1">%1$d</xliff:g> 個項目</item>
      <item quantity="one">已選取 <xliff:g id="COUNT_0">%1$d</xliff:g> 個項目</item>
    </plurals>

    <string name="importance_from_user" msgid="7318955817386549931">"您可以設定這些通知的重要性。"</string>
    <string name="importance_from_person" msgid="9160133597262938296">"列為重要的原因:涉及的人。"</string>
    <string name="user_creation_account_exists" msgid="1942606193570143289">"要允許 <xliff:g id="APP">%1$s</xliff:g> 使用 <xliff:g id="ACCOUNT">%2$s</xliff:g> 建立新使用者嗎?"</string>
@@ -1654,4 +1655,9 @@
    <string name="audit_safemode_notification" msgid="6416076898350685856">"將此裝置回復至原廠設定後,使用將不受限制"</string>
    <string name="audit_safemode_notification_details" msgid="1860601176690176413">"輕觸以瞭解詳情。"</string>
    <string name="suspended_widget_accessibility" msgid="6712143096475264190">"「<xliff:g id="LABEL">%1$s</xliff:g>」已停用"</string>

    <!-- Carrier Name -->
    <string name="China_Mobile">中國移動</string>
    <string name="China_Unicom">中國聯通</string>
    <string name="China_Telecom">中國電信</string>
</resources>

core/res/res/values/config.xml

100644 → 100755
+42 −0
Original line number Diff line number Diff line
@@ -2536,4 +2536,46 @@

    <!-- Configuartion to support SIM contact batch operation.-->
    <bool name="config_sim_phonebook_batch_operation">true</bool>
    <string-array name="origin_carrier_names">
        <item>CHINA\u0020\u0020MOBILE</item>
        <item>CMCC</item>
        <item>CHN-UNICOM</item>
        <item>China Mobile</item>
        <item>China Unicom</item>
        <item>China Telecom</item>
        <item>中国移动</item>
        <item>中国联通</item>
        <item>中国电信</item>
        <item>中國移動</item>
        <item>中國聯通</item>
        <item>中國電信</item>
        <item>Searching for Service</item>
    </string-array>

    <string-array name="locale_carrier_names">
        <item>China_Mobile</item>
        <item>China_Mobile</item>
        <item>China_Unicom</item>
        <item>China_Mobile</item>
        <item>China_Unicom</item>
        <item>China_Telecom</item>
        <item>China_Mobile</item>
        <item>China_Unicom</item>
        <item>China_Telecom</item>
        <item>China_Mobile</item>
        <item>China_Unicom</item>
        <item>China_Telecom</item>
        <item>roamingTextSearching</item>
    </string-array>

    <!-- monitor locale change -->
    <bool name="config_monitor_locale_change">false</bool>

    <!-- display for radio tech -->
    <bool name="config_display_rat">false</bool>

    <!-- config 2G/3G/4G RAT strings for carriers -->
    <string name="config_rat_2g" translatable="false">2G</string>
    <string name="config_rat_3g" translatable="false">3G</string>
    <string name="config_rat_4g" translatable="false">4G</string>
</resources>
+4 −0
Original line number Diff line number Diff line
@@ -4390,4 +4390,8 @@
    <!-- Accessibilty string added to a widget that has been suspended [CHAR LIMIT=20] -->
    <string name="suspended_widget_accessibility">Disabled <xliff:g id="label" example="Calendar">%1$s</xliff:g></string>

    <!-- Carrier Name -->
    <string name="China_Mobile">China Mobile</string>
    <string name="China_Unicom">China Unicom</string>
    <string name="China_Telecom">China Telecom</string>
</resources>
Loading