auto import from //branches/cupcake/...@137873
diff --git a/cleanspec.mk b/cleanspec.mk
index 7c178ec..ab1e5f1 100644
--- a/cleanspec.mk
+++ b/cleanspec.mk
@@ -69,6 +69,7 @@
$(call add-clean-step, rm -rf $(OUT_DIR)/target/product/*/obj/SHARED_LIBRARIES/libjni_andpyime_intermediates)
$(call add-clean-step, rm -rf $(OUT_DIR)/target/product/*/obj/SHARED_LIBRARIES/share)
$(call add-clean-step, rm -rf $(OUT_DIR)/target/product/*/obj/SHARED_LIBRARIES/libwebcore_intermediates)
+$(call add-clean-step, rm -rf $(OUT_DIR)/target/common/obj/JAVA_LIBRARIES/framework_intermediates)
# ************************************************
# NEWER CLEAN STEPS MUST BE AT THE END OF THE LIST
diff --git a/core/armelf.x b/core/armelf.x
index 766fe88..d38dc1d 100644
--- a/core/armelf.x
+++ b/core/armelf.x
@@ -188,9 +188,15 @@
.debug_funcnames 0 : { *(.debug_funcnames) }
.debug_typenames 0 : { *(.debug_typenames) }
.debug_varnames 0 : { *(.debug_varnames) }
+ /* Adding the word ABSOLUTE below, so that the _stack below won't float
+ into a random section. If _stack is not absolutely with .stack section,
+ we saw that sometimes _stack got inserted into the .debug_frame section
+ because it's processed by the linker at that moment. As a result, _stack
+ symbol will get wrongly moved and gelf_update_symshndx() will return
+ invalid data. */
.stack 0x80000 :
{
- _stack = .;
+ _stack = ABSOLUTE(.);
*(.stack)
}
.note.gnu.arm.ident 0 : { KEEP (*(.note.gnu.arm.ident)) }
diff --git a/core/armelf.xsc b/core/armelf.xsc
index 4253054..9fac3d2 100644
--- a/core/armelf.xsc
+++ b/core/armelf.xsc
@@ -190,9 +190,15 @@
.debug_funcnames 0 : { *(.debug_funcnames) }
.debug_typenames 0 : { *(.debug_typenames) }
.debug_varnames 0 : { *(.debug_varnames) }
+ /* Adding the word ABSOLUTE below, so that the _stack below won't float
+ into a random section. If _stack is not absolutely with .stack section,
+ we saw that sometimes _stack got inserted into the .debug_frame section
+ because it's processed by the linker at that moment. As a result, _stack
+ symbol will get wrongly moved and gelf_update_symshndx() will return
+ invalid data. */
.stack 0x80000 :
{
- _stack = .;
+ _stack = ABSOLUTE(.);
*(.stack)
}
.note.gnu.arm.ident 0 : { KEEP (*(.note.gnu.arm.ident)) }
diff --git a/core/main.mk b/core/main.mk
index 454527d..a19beba 100644
--- a/core/main.mk
+++ b/core/main.mk
@@ -174,6 +174,9 @@
ifeq ($(TARGET_BUILD_VARIANT),eng)
tags_to_install := user debug eng
+ # Don't require the setup wizard on eng builds
+ ADDITIONAL_BUILD_PROPERTIES := $(filter-out ro.setupwizard.mode=%,\
+ $(call collapse-pairs, $(ADDITIONAL_BUILD_PROPERTIES)))
endif
## tests ##
diff --git a/core/tasks/cts.mk b/core/tasks/cts.mk
index 8cea2c5..4c3f0fc 100644
--- a/core/tasks/cts.mk
+++ b/core/tasks/cts.mk
@@ -32,8 +32,10 @@
CtsContentTestCases \
CtsDatabaseTestCases \
CtsGraphicsTestCases \
+ CtsHardwareTestCases \
CtsLocationTestCases \
CtsOsTestCases \
+ CtsPermissionTestCases \
CtsProviderTestCases \
CtsTextTestCases \
CtsUtilTestCases \
@@ -110,7 +112,7 @@
$(CORE_VM_TEST_PLAN): PRIVATE_CUSTOM_TOOL := java $(PRIVATE_JAVAOPTS) \
-classpath $(PRIVATE_CLASSPATH) \
$(PRIVATE_PARAMS) CollectAllTests $(CORE_VM_TEST_PLAN) \
- cts/tests/vm-tests/AndroidManifest.xml dot.junit.AllJunitHostTests
+ cts/tests/vm-tests/AndroidManifest.xml dot.junit.AllJunitHostTests cts/tools/vm-tests/Android.mk
# Please see big comment above on why this line depends on javalib.jar instead of classes.jar
$(CORE_VM_TEST_PLAN): vm-tests $(HOST_OUT_JAVA_LIBRARIES)/descGen.jar $(CORE_INTERMEDIATES)/javalib.jar $(VMTESTS_INTERMEDIATES)/android.core.vm-tests.jar $(TESTS_INTERMEDIATES)/javalib.jar $(cts_dir)/all_cts_files_stamp | $(ACP)
@echo "Generate the CTS vm-test plan: $@"
@@ -119,7 +121,7 @@
$(ACP) -fv $(VMTESTS_INTERMEDIATES)/android.core.vm-tests.jar $(PRIVATE_DIR)/repository/testcases/android.core.vm-tests.jar
# Generate the default test plan for User.
-$(DEFAULT_TEST_PLAN): $(cts_dir)/all_cts_files_stamp $(cts_tools_src_dir)/utils/genDefaultTestPlan.sh
+$(DEFAULT_TEST_PLAN): $(cts_dir)/all_cts_files_stamp $(cts_tools_src_dir)/utils/genDefaultTestPlan.sh $(CORE_VM_TEST_PLAN) $(CORE_TEST_PLAN)
$(hide) bash $(cts_tools_src_dir)/utils/genDefaultTestPlan.sh cts/tests/tests/ \
$(PRIVATE_DIR) $(TMP_DIR) $(TOP) $(TARGET_COMMON_OUT_ROOT) $(OUT_DIR)
diff --git a/tools/droiddoc/templates/assets/android-developer-docs.js b/tools/droiddoc/templates/assets/android-developer-docs.js
index a84d5a6..2a8c3bf 100644
--- a/tools/droiddoc/templates/assets/android-developer-docs.js
+++ b/tools/droiddoc/templates/assets/android-developer-docs.js
@@ -9,7 +9,7 @@
var NAV_PREF_PANELS = "panels";
var nav_pref;
var toRoot;
-
+var isMobile = false; // true if mobile, so we can adjust some layout
function addLoadEvent(newfun) {
var current = window.onload;
@@ -23,8 +23,25 @@
}
}
+var agent = navigator['userAgent'];
+if ((agent.indexOf("Mobile") != -1) ||
+ (agent.indexOf("BlackBerry") != -1) ||
+ (agent.indexOf("Mini") != -1)) {
+ isMobile = true;
+ addLoadEvent(mobileSetup);
+}
+
window.onresize = resizeAll;
+function mobileSetup() {
+ $("body").css({'overflow':'auto'});
+ $("html").css({'overflow':'auto'});
+ $("#body-content").css({'position':'relative', 'top':'0'});
+ $("#doc-content").css({'overflow':'visible', 'border-left':'3px solid #DDD'});
+ $("#side-nav").css({'padding':'0'});
+ $("#nav-tree").css({'overflow-y': 'auto'});
+}
+
function setToRoot(root) {
toRoot = root;
// note: toRoot also used by carousel.js
@@ -83,9 +100,6 @@
}
function init() {
- $("#resize-packages-nav").resizable({handles: "s", resize: function(e, ui) { resizeHeight(); } });
- $(".side-nav-resizable").resizable({handles: "e", resize: function(e, ui) { resizeWidth(); } });
-
$("#side-nav").css({position:"absolute",left:0});
content = $("#doc-content");
resizePackagesNav = $("#resize-packages-nav");
@@ -98,17 +112,22 @@
} else if (location.href.indexOf("/guide/") != -1) {
var cookiePath = "guide_";
}
- var cookieWidth = getCookie(cookiePath+'width');
- var cookieHeight = getCookie(cookiePath+'height');
- if (cookieWidth) {
- restoreWidth(cookieWidth);
- } else if ($(".side-nav-resizable").length) {
- resizeWidth();
- }
- if (cookieHeight) {
- restoreHeight(cookieHeight);
- } else {
- resizeHeight();
+
+ if (!isMobile) {
+ $("#resize-packages-nav").resizable({handles: "s", resize: function(e, ui) { resizeHeight(); } });
+ $(".side-nav-resizable").resizable({handles: "e", resize: function(e, ui) { resizeWidth(); } });
+ var cookieWidth = getCookie(cookiePath+'width');
+ var cookieHeight = getCookie(cookiePath+'height');
+ if (cookieWidth) {
+ restoreWidth(cookieWidth);
+ } else if ($(".side-nav-resizable").length) {
+ resizeWidth();
+ }
+ if (cookieHeight) {
+ restoreHeight(cookieHeight);
+ } else {
+ resizeHeight();
+ }
}
if (devdocNav.length) { // only dev guide and sdk
@@ -175,9 +194,11 @@
}
function resizeAll() {
- resizeHeight();
- if ($(".side-nav-resizable").length) {
- resizeWidth();
+ if (!isMobile) {
+ resizeHeight();
+ if ($(".side-nav-resizable").length) {
+ resizeWidth();
+ }
}
}
diff --git a/tools/droiddoc/templates/macros.cs b/tools/droiddoc/templates/macros.cs
index fe89045..aec9c22 100644
--- a/tools/droiddoc/templates/macros.cs
+++ b/tools/droiddoc/templates/macros.cs
@@ -283,16 +283,20 @@
</div><!-- end swapper -->
</div> <!-- end side-nav -->
<script>
- $("<a href='#' id='nav-swap' onclick='swapNav();return false;' style='font-size:10px;line-height:9px;margin-left:1em;text-decoration:none;'><span id='tree-link'>Use Tree Navigation</span><span id='panel-link' style='display:none'>Use Panel Navigation</span></a>").appendTo("#side-nav");
- chooseDefaultNav();
- if ($("#nav-tree").is(':visible')) init_navtree("nav-tree", "<?cs var:toroot ?>", NAVTREE_DATA);
- else {
- addLoadEvent(function() {
- scrollIntoView("packages-nav");
- scrollIntoView("classes-nav");
- });
+ if (!isMobile) {
+ $("<a href='#' id='nav-swap' onclick='swapNav();return false;' style='font-size:10px;line-height:9px;margin-left:1em;text-decoration:none;'><span id='tree-link'>Use Tree Navigation</span><span id='panel-link' style='display:none'>Use Panel Navigation</span></a>").appendTo("#side-nav");
+ chooseDefaultNav();
+ if ($("#nav-tree").is(':visible')) init_navtree("nav-tree", "<?cs var:toroot ?>", NAVTREE_DATA);
+ else {
+ addLoadEvent(function() {
+ scrollIntoView("packages-nav");
+ scrollIntoView("classes-nav");
+ });
+ }
+ $("#swapper").css({borderBottom:"2px solid #aaa"});
+ } else {
+ swapNav(); // tree view should be used on mobile
}
- $("#swapper").css({borderBottom:"2px solid #aaa"});
</script><?cs
/def ?>