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

Commit eca05692 authored by Deepanshu Gupta's avatar Deepanshu Gupta
Browse files

Load ICU data in LayoutLib

Also return the correct version numbers for ICU data.

Change-Id: I7de973b5553c73948870b97bdc12a880bb2fdd85
parent d77b9ed7
Loading
Loading
Loading
Loading
+1 −1
Original line number Original line Diff line number Diff line
@@ -3,7 +3,7 @@
    <extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea" />
    <extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea" />
    <option name="MAIN_CLASS_NAME" value="com.android.tools.layoutlib.create.Main" />
    <option name="MAIN_CLASS_NAME" value="com.android.tools.layoutlib.create.Main" />
    <option name="VM_PARAMETERS" value="" />
    <option name="VM_PARAMETERS" value="" />
    <option name="PROGRAM_PARAMETERS" value="out/host/common/obj/JAVA_LIBRARIES/temp_layoutlib_intermediates/javalib.jar out/target/common/obj/JAVA_LIBRARIES/core-libart_intermediates/classes.jar out/target/common/obj/JAVA_LIBRARIES/framework_intermediates/classes.jar out/target/common/obj/JAVA_LIBRARIES/ext_intermediates/classes.jar out/target/common/obj/JAVA_LIBRARIES/ext_intermediates/javalib.jar" />
    <option name="PROGRAM_PARAMETERS" value="out/host/common/obj/JAVA_LIBRARIES/temp_layoutlib_intermediates/javalib.jar out/target/common/obj/JAVA_LIBRARIES/core-libart_intermediates/classes.jar out/target/common/obj/JAVA_LIBRARIES/framework_intermediates/classes.jar out/target/common/obj/JAVA_LIBRARIES/icu4j-icudata-jarjar_intermediates/javalib.jar out/target/common/obj/JAVA_LIBRARIES/icu4j-icutzdata-jarjar_intermediates/javalib.jar out/target/common/obj/JAVA_LIBRARIES/ext_intermediates/classes.jar out/target/common/obj/JAVA_LIBRARIES/ext_intermediates/javalib.jar" />
    <option name="WORKING_DIRECTORY" value="file://$PROJECT_DIR$/../../../../" />
    <option name="WORKING_DIRECTORY" value="file://$PROJECT_DIR$/../../../../" />
    <option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
    <option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
    <option name="ALTERNATIVE_JRE_PATH" value="" />
    <option name="ALTERNATIVE_JRE_PATH" value="" />
+10 −0
Original line number Original line Diff line number Diff line
@@ -37,6 +37,12 @@ built_ext_dep := $(call java-lib-deps,ext)
built_ext_classes := $(call java-lib-files,ext)
built_ext_classes := $(call java-lib-files,ext)
built_ext_data := $(call intermediates-dir-for, \
built_ext_data := $(call intermediates-dir-for, \
			JAVA_LIBRARIES,ext,,COMMON)/javalib.jar
			JAVA_LIBRARIES,ext,,COMMON)/javalib.jar
built_icudata_dep := $(call java-lib-deps,icu4j-icudata-jarjar)
built_icudata_data := $(call intermediates-dir-for, \
                        JAVA_LIBRARIES,icu4j-icudata-jarjar,,COMMON)/javalib.jar
built_icutzdata_dep := $(call java-lib-deps,icu4j-icutzdata-jarjar)
built_icutzdata_data := $(call intermediates-dir-for, \
                        JAVA_LIBRARIES,icu4j-icutzdata-jarjar,,COMMON)/javalib.jar


built_layoutlib_create_jar := $(call intermediates-dir-for, \
built_layoutlib_create_jar := $(call intermediates-dir-for, \
			JAVA_LIBRARIES,layoutlib_create,HOST)/javalib.jar
			JAVA_LIBRARIES,layoutlib_create,HOST)/javalib.jar
@@ -56,6 +62,8 @@ $(LOCAL_BUILT_MODULE): $(built_core_dep) \
                       $(built_framework_dep) \
                       $(built_framework_dep) \
                       $(built_ext_dep) \
                       $(built_ext_dep) \
                       $(built_ext_data) \
                       $(built_ext_data) \
		       $(built_icudata_dep) \
		       $(built_icutzdata_dep) \
                       $(built_layoutlib_create_jar)
                       $(built_layoutlib_create_jar)
	$(hide) echo "host layoutlib_create: $@"
	$(hide) echo "host layoutlib_create: $@"
	$(hide) mkdir -p $(dir $@)
	$(hide) mkdir -p $(dir $@)
@@ -66,6 +74,8 @@ $(LOCAL_BUILT_MODULE): $(built_core_dep) \
	             $(built_core_classes) \
	             $(built_core_classes) \
	             $(built_framework_classes) \
	             $(built_framework_classes) \
	             $(built_ext_classes) \
	             $(built_ext_classes) \
		     $(built_icudata_data) \
		     $(built_icutzdata_data) \
	             $(built_ext_data)
	             $(built_ext_data)
	$(hide) ls -l $(built_framework_classes)
	$(hide) ls -l $(built_framework_classes)


+7 −5
Original line number Original line Diff line number Diff line
@@ -21,6 +21,7 @@ import com.android.tools.layoutlib.annotations.LayoutlibDelegate;
import android.icu.text.DateTimePatternGenerator;
import android.icu.text.DateTimePatternGenerator;
import android.icu.util.Currency;
import android.icu.util.Currency;
import android.icu.util.ULocale;
import android.icu.util.ULocale;
import android.icu.util.VersionInfo;


import java.util.Locale;
import java.util.Locale;


@@ -54,18 +55,19 @@ public class ICU_Delegate {
    }
    }


    @LayoutlibDelegate
    @LayoutlibDelegate
    @SuppressWarnings("deprecation")
    /*package*/ static String getCldrVersion() {
    /*package*/ static String getCldrVersion() {
        return "22.1.1";      // TODO: check what the right value should be.
        return VersionInfo.ICU_DATA_VERSION.toString();
    }
    }


    @LayoutlibDelegate
    @LayoutlibDelegate
    /*package*/ static String getIcuVersion() {
    /*package*/ static String getIcuVersion() {
        return "unknown_layoutlib";
        return VersionInfo.ICU_VERSION.toString();
    }
    }


    @LayoutlibDelegate
    @LayoutlibDelegate
    /*package*/ static String getUnicodeVersion() {
    /*package*/ static String getUnicodeVersion() {
        return "5.2";
        return VersionInfo.UNICODE_7_0.toString();
    }
    }


    @LayoutlibDelegate
    @LayoutlibDelegate
@@ -182,8 +184,8 @@ public class ICU_Delegate {
    /*package*/ static boolean initLocaleDataNative(String locale, LocaleData result) {
    /*package*/ static boolean initLocaleDataNative(String locale, LocaleData result) {


        // Used by Calendar.
        // Used by Calendar.
        result.firstDayOfWeek = Integer.valueOf(1);
        result.firstDayOfWeek = 1;
        result.minimalDaysInFirstWeek = Integer.valueOf(1);
        result.minimalDaysInFirstWeek = 1;


        // Used by DateFormatSymbols.
        // Used by DateFormatSymbols.
        result.amPm = new String[] { "AM", "PM" };
        result.amPm = new String[] { "AM", "PM" };
+1 −0
Original line number Original line Diff line number Diff line
@@ -123,6 +123,7 @@ public class Main {
                    excludeClasses,
                    excludeClasses,
                    new String[] {
                    new String[] {
                        "com/android/i18n/phonenumbers/data/*",
                        "com/android/i18n/phonenumbers/data/*",
                        "android/icu/impl/data/**"
                    });
                    });
            aa.analyze();
            aa.analyze();
            agen.generate();
            agen.generate();