diff options
author | Josh Guilfoyle <Josh.Guilfoyle@T-Mobile.com> | 2009-11-19 17:43:25 -0800 |
---|---|---|
committer | Josh Guilfoyle <Josh.Guilfoyle@T-Mobile.com> | 2009-11-24 13:29:47 -0800 |
commit | 6fff487e464c7cb044ffac0e1dd73d353c82f2ee (patch) | |
tree | 2dd74850f731150b32759a1ee47c1341e72550bd /tools | |
parent | 9db3d07b9620b4269ab33f78604a36327e536ce1 (diff) | |
parent | 9effa6dbd3c7d95e243fcc694f80f2628eac95ca (diff) | |
download | frameworks_base-6fff487e464c7cb044ffac0e1dd73d353c82f2ee.zip frameworks_base-6fff487e464c7cb044ffac0e1dd73d353c82f2ee.tar.gz frameworks_base-6fff487e464c7cb044ffac0e1dd73d353c82f2ee.tar.bz2 |
Merge branch 'themes-1.5r2' into themes-eclair
Conflicts:
api/current.xml
core/java/android/app/ActivityThread.java
core/java/android/app/ApplicationContext.java
core/java/android/app/Dialog.java
core/java/android/app/SearchDialog.java
core/java/android/content/Context.java
core/java/android/content/Intent.java
core/java/android/content/pm/PackageInfo.java
core/java/android/content/pm/PackageParser.java
core/java/android/content/res/Configuration.java
core/java/android/content/res/Resources.java
core/java/android/widget/RemoteViews.java
core/java/android/widget/TabWidget.java
core/java/com/android/internal/os/ZygoteInit.java
core/jni/android_util_AssetManager.cpp
core/res/AndroidManifest.xml
core/res/res/layout/search_dropdown_item_2line.xml
core/res/res/layout/select_dialog_item.xml
core/res/res/layout/select_dialog_multichoice.xml
core/res/res/layout/select_dialog_singlechoice.xml
core/res/res/layout/tab_indicator.xml
core/res/res/values/attrs.xml
core/res/res/values/public.xml
core/res/res/values/strings.xml
core/res/res/values/themes.xml
libs/utils/Android.mk
libs/utils/AssetManager.cpp
media/java/android/media/RingtoneManager.java
services/java/com/android/server/PackageManagerService.java
services/java/com/android/server/SystemServer.java
services/java/com/android/server/am/ActivityManagerService.java
services/java/com/android/server/status/StatusBarService.java
tools/aapt/Main.cpp
Diffstat (limited to 'tools')
-rw-r--r-- | tools/aapt/Bundle.h | 5 | ||||
-rw-r--r-- | tools/aapt/Main.cpp | 13 | ||||
-rw-r--r-- | tools/aapt/ResourceTable.cpp | 11 | ||||
-rw-r--r-- | tools/layoutlib/bridge/src/com/android/layoutlib/bridge/BridgeXmlBlockParser.java | 5 |
4 files changed, 30 insertions, 4 deletions
diff --git a/tools/aapt/Bundle.h b/tools/aapt/Bundle.h index 1ac13f2..649d97f 100644 --- a/tools/aapt/Bundle.h +++ b/tools/aapt/Bundle.h @@ -35,7 +35,7 @@ public: Bundle(void) : mCmd(kCommandUnknown), mVerbose(false), mAndroidList(false), mForce(false), mGrayscaleTolerance(0), mMakePackageDirs(false), - mUpdate(false), mExtending(false), + mUpdate(false), mExtending(false), mExtendedPackageId(0), mRequireLocalization(false), mPseudolocalize(false), mValues(false), mCompressionMethod(0), mOutputAPKFile(NULL), @@ -72,6 +72,8 @@ public: void setUpdate(bool val) { mUpdate = val; } bool getExtending(void) const { return mExtending; } void setExtending(bool val) { mExtending = val; } + int getExtendedPackageId(void) const { return mExtendedPackageId; } + void setExtendedPackageId(int val) { mExtendedPackageId = val; } bool getRequireLocalization(void) const { return mRequireLocalization; } void setRequireLocalization(bool val) { mRequireLocalization = val; } bool getPseudolocalize(void) const { return mPseudolocalize; } @@ -159,6 +161,7 @@ private: bool mMakePackageDirs; bool mUpdate; bool mExtending; + int mExtendedPackageId; bool mRequireLocalization; bool mPseudolocalize; bool mValues; diff --git a/tools/aapt/Main.cpp b/tools/aapt/Main.cpp index 98286c0..735751c 100644 --- a/tools/aapt/Main.cpp +++ b/tools/aapt/Main.cpp @@ -14,6 +14,7 @@ #include <stdlib.h> #include <getopt.h> #include <assert.h> +#include <ctype.h> using namespace android; @@ -55,7 +56,7 @@ void usage(void) " xmltree Print the compiled xmls in the given assets.\n" " xmlstrings Print the strings of the given compiled xml assets.\n\n", gProgName); fprintf(stderr, - " %s p[ackage] [-d][-f][-m][-u][-v][-x][-z][-M AndroidManifest.xml] \\\n" + " %s p[ackage] [-d][-f][-m][-u][-v][-x[ extending-resource-id]][-z][-M AndroidManifest.xml] \\\n" " [-0 extension [-0 extension ...]] [-g tolerance] [-j jarfile] \\\n" " [--min-sdk-version VAL] [--target-sdk-version VAL] \\\n" " [--max-sdk-version VAL] [--app-version VAL] \\\n" @@ -106,7 +107,7 @@ void usage(void) #endif " -u update existing packages (add new, replace older, remove deleted files)\n" " -v verbose output\n" - " -x create extending (non-application) resource IDs\n" + " -x either create or assign (if specified) extending (non-application) resource IDs\n" " -z require localization of resource attributes marked with\n" " localization=\"suggested\"\n" " -A additional directory in which to find raw asset files\n" @@ -253,6 +254,14 @@ int main(int argc, char* const argv[]) break; case 'x': bundle.setExtending(true); + argc--; + argv++; + if (!argc || !isdigit(argv[0][0])) { + argc++; + argv--; + } else { + bundle.setExtendedPackageId(atoi(argv[0])); + } break; case 'z': bundle.setRequireLocalization(true); diff --git a/tools/aapt/ResourceTable.cpp b/tools/aapt/ResourceTable.cpp index 19b9b01..1d4459b 100644 --- a/tools/aapt/ResourceTable.cpp +++ b/tools/aapt/ResourceTable.cpp @@ -3557,7 +3557,16 @@ sp<ResourceTable::Package> ResourceTable::getPackage(const String16& package) mHaveAppPackage = true; p = new Package(package, 127); } else { - p = new Package(package, mNextPackageId); + int extendedPackageId = mBundle->getExtendedPackageId(); + if (extendedPackageId != 0) { + if ((uint32_t)extendedPackageId < mNextPackageId) { + fprintf(stderr, "Package ID %d already in use!\n", mNextPackageId); + return NULL; + } + p = new Package(package, extendedPackageId); + } else { + p = new Package(package, mNextPackageId); + } } //printf("*** NEW PACKAGE: \"%s\" id=%d\n", // String8(package).string(), p->getAssignedId()); diff --git a/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/BridgeXmlBlockParser.java b/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/BridgeXmlBlockParser.java index d842a66..e6791cb 100644 --- a/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/BridgeXmlBlockParser.java +++ b/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/BridgeXmlBlockParser.java @@ -193,6 +193,11 @@ public class BridgeXmlBlockParser implements XmlResourceParser { return mParser.getAttributeNamespace(index); } + /** @hide */ + public int getAttributeDataType(int index) { + throw new RuntimeException("getAttributeDataType not supported"); + } + public String getAttributeName(int index) { return mParser.getAttributeName(index); } |