am 369978fd: am 62437b99: Windows SDK: copy SDK Setup.exe at root of SDK.

Merge commit '369978fd3167a19f3e2e303c8874b66e8429f25f'

* commit '369978fd3167a19f3e2e303c8874b66e8429f25f':
  Windows SDK: copy SDK Setup.exe at root of SDK.
diff --git a/ide/emacs/android-common.el b/ide/emacs/android-common.el
new file mode 100644
index 0000000..7bf82a2
--- /dev/null
+++ b/ide/emacs/android-common.el
@@ -0,0 +1,173 @@
+;;; android-common.el --- Common functions/variables to dev Android in Emacs.
+;;
+;; Copyright (C) 2009 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.
+
+;;; Commentary:
+;;
+;; Variables to customize and common functions for the Android build
+;; support in Emacs.
+;; There should be no interactive function in this module.
+;;
+;; You need to have a proper buildspec.mk file in your root directory
+;; for this module to work (see $TOP/build/buildspec.mk.default).
+;; If the path the product's files/image uses an a product alias, you
+;; need to add a mapping in `android-product-alias-map'. For instance
+;; if TARGET_PRODUCT is foo but the build directory is out/target/product/bar,
+;; you need to add a mapping Target:foo -> Alias:bar
+;;
+
+;;; Code:
+
+(defgroup android nil
+  "Support for android development in Emacs."
+  :prefix "android-"                    ; Currently unused.
+  :tag    "Android"
+  :group  'tools)
+
+;;;###autoload
+(defcustom android-compilation-jobs 2
+  "Number of jobs used to do a compilation (-j option of make)."
+  :type 'integer
+  :group 'android)
+
+;;;###autoload
+(defcustom android-product-alias-map nil
+  "Alist between product targets (declared in buildspec.mk) and actual
+ product build directory used by `android-product'.
+
+For instance if TARGET_PRODUCT is 'foo' but the build directory
+ is 'out/target/product/bar', you need to add a mapping Target:foo -> Alias:bar."
+  :type '(repeat (list (string :tag "Target")
+                       (string :tag "Alias")))
+  :group 'android)
+
+(defconst android-output-buffer-name "*Android Output*"
+  "Name of the default buffer for the output of the commands.
+There is only one instance of such a buffer.")
+
+(defun android-find-build-tree-root ()
+  "Ascend the current path until the root of the android build tree is found.
+Similarly to the shell functions in envsetup.sh, for the root both ./Makefile
+and ./build/core/envsetup.mk are exiting files.
+Return the root of the build tree.  Signal an error if not found."
+  (let ((default-directory default-directory))
+    (while (and (> (length default-directory) 2)
+                (not (file-exists-p (concat default-directory
+                                            "Makefile")))
+                (not (file-exists-p (concat default-directory
+                                            "build/core/envsetup.mk"))))
+      (setq default-directory
+            (substring default-directory 0
+                       (string-match "[^/]+/$" default-directory))))
+    (if (> (length default-directory) 2)
+        default-directory
+      (error "Not in a valid android tree"))))
+
+(defun android-project-p ()
+  "Return nil if not in an android build tree."
+  (condition-case nil
+      (android-find-build-tree-root)
+    (error nil)))
+
+(defun android-host ()
+  "Return the <system>-<arch> string (e.g linux-x86).
+Only linux and darwin on x86 architectures are supported."
+  (or (string-match "x86" system-configuration)
+      (string-match "i386" system-configuration)
+      (error "Unknown arch"))
+  (or (and (string-match "darwin" system-configuration) "darwin-x86")
+      (and (string-match "linux" system-configuration) "linux-x86")
+      (error "Unknown system")))
+
+(defun android-product ()
+  "Return the product built according to the buildspec.mk.
+You must have buildspec.mk file in the top directory.
+
+Additional product aliases can be listed in `android-product-alias-map'
+if the product actually built is different from the one listed
+in buildspec.mk"
+  (save-excursion
+    (let* ((buildspec (concat (android-find-build-tree-root) "buildspec.mk"))
+           (product (with-current-buffer (find-file-noselect buildspec)
+                      (goto-char (point-min))
+                      (search-forward "TARGET_PRODUCT:=")
+                      (buffer-substring-no-properties (point)
+                                                      (scan-sexps (point) 1))))
+           (alias (assoc product android-product-alias-map)))
+      ; Post processing, adjust the names.
+      (if (not alias)
+          product
+        (nth 1 alias)))))
+
+(defun android-product-path ()
+  "Return the full path to the product directory.
+
+Additional product aliases can be added in `android-product-alias-map'
+if the product actually built is different from the one listed
+in buildspec.mk"
+  (let ((path (concat (android-find-build-tree-root) "out/target/product/"
+                      (android-product))))
+    (when (not (file-exists-p path))
+      (error (format "%s does not exist. If product %s maps to another one,
+add an entry to android-product-map." path (android-product))))
+    path))
+
+(defun android-find-host-bin (binary)
+  "Return the full path to the host BINARY.
+Binaries don't depend on the device, just on the host type.
+Try first to locate BINARY in the out/host tree.  Fallback using
+the shell exec PATH setup."
+  (if (android-project-p)
+      (let ((path (concat (android-find-build-tree-root) "out/host/"
+                          (android-host) "/bin/" binary)))
+        (if (file-exists-p path)
+            path
+          (error (concat binary " is missing."))))
+    (executable-find binary)))
+
+(defun android-adb ()
+  "Return the path to the adb executable.
+If not in the build tree use the PATH env variable."
+  (android-find-host-bin "adb"))
+
+(defun android-fastboot ()
+  "Return the path to the fastboot executable.
+If not in the build tree use the PATH env variable."
+  ; For fastboot -p is the name of the product, *not* the full path to
+  ; its directory like adb requests sometimes.
+  (concat (android-find-host-bin "fastboot") " -p " (android-product)))
+
+(defun android-adb-command (command &optional product)
+  "Execute 'adb COMMAND'.
+If the optional PRODUCT is not nil, -p (android-product-path) is used
+when adb is invoked."
+  (when (get-buffer android-output-buffer-name)
+    (with-current-buffer android-output-buffer-name
+      (erase-buffer)))
+  (if product
+      (shell-command (concat (android-adb) " -p " (android-product-path)
+                             " " command)
+                     android-output-buffer-name)
+    (shell-command (concat (android-adb) " " command)
+                   android-output-buffer-name)))
+
+(defun android-adb-shell-command (command)
+  "Execute 'adb shell COMMAND'."
+  (android-adb-command (concat " shell " command)
+                       android-output-buffer-name))
+
+(provide 'android-common)
+
+;;; android-common.el ends here
diff --git a/ide/emacs/android-compile.el b/ide/emacs/android-compile.el
new file mode 100644
index 0000000..d0a2b7b
--- /dev/null
+++ b/ide/emacs/android-compile.el
@@ -0,0 +1,105 @@
+;;; android-compile.el --- Compile the Android source tree.
+;;
+;; Copyright (C) 2009 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.
+
+;;; Commentary:
+;;
+;; Helper functions to compile Android file within emacs.
+;; This module ignores 'build/envsetup.sh' and any enviroment set by the
+;; 'lunch' shell function.
+;; Instead it relies solely on 'buildspec.mk', remember that when you
+;; switch configuration.
+;;
+;; The only interactive function is 'android-compile'.
+;; In your .emacs load this file (e.g (require 'android-compile)) then:
+;;
+;;   (add-hook 'c++-mode-hook 'android-compile)
+;;   (add-hook 'java-mode-hook 'android-compile)
+;; and/or
+;;   (global-set-key [f9] 'android-compile)
+;;
+;;
+;; TODO: Maybe we could cache the result of the compile function in
+;; buffer local vars.
+
+;;; Code:
+
+(require 'compile)
+(require 'android-common)
+
+(defun android-makefile-exists-p (directory)
+  "Return t if an Android makefile exists in DIRECTORY."
+  ; Test for Android.mk first: more likely.
+  (or (file-exists-p (concat directory "Android.mk"))
+      (file-exists-p (concat directory "Makefile"))))
+
+(defun android-find-makefile (topdir)
+  "Ascend the current path until an Android makefile is found.
+Makefiles are named Android.mk except in the root directory where
+the file is named Makefile.
+TOPDIR is the root directory of the build.
+Return a list with 2 elements (MAKEFILE_PATH IS_ROOT_MAKEFILE).
+MAKEFILE_PATH is the relative path of the makefile wrt TOPDIR.
+Signal an error if no Makefile was found."
+  ;; TODO: Could check that topdir is the start of default-directory.
+  (unless (> (length topdir) 2)
+    (error "Topdir invalid %s for current dir %s" topdir default-directory))
+  (let ((default-directory default-directory)
+        file)
+    ;; Ascend the path.
+    (while (and (> (length default-directory) (length topdir))
+                (not (android-makefile-exists-p default-directory)))
+      (setq default-directory
+            (substring default-directory 0
+                       (string-match "[^/]+/$" default-directory))))
+
+    (when (not (android-makefile-exists-p default-directory))
+      (error "Not in a valid android tree"))
+
+    (if (string= default-directory topdir)
+        (list "Makefile" t)
+      ;; Remove the root dir at the start of the filename
+      (setq default-directory (substring default-directory (length topdir) nil))
+      (setq file (concat default-directory "Android.mk"))
+      (list file nil))))
+
+
+(defun android-compile ()
+  "Elisp equivalent of mm shell function.
+Walk up the path until a makefile is found and build it.
+You need to have a proper buildspec.mk in your top dir.
+
+Use `android-compilation-jobs' to control the number of jobs used
+in a compilation."
+  (interactive)
+  (if (android-project-p)
+      (let* ((topdir (android-find-build-tree-root))
+             (makefile (android-find-makefile topdir))
+             (options
+              (concat " -j " (number-to-string android-compilation-jobs))))
+        (unless (file-exists-p (concat topdir "buildspec.mk"))
+          (error "buildspec.mk missing in %s." topdir))
+        (set (make-local-variable 'compile-command)
+             (if (cadr makefile)
+                 ;; The root Makefile is not invoked using ONE_SHOT_MAKEFILE.
+                 (concat "make -C " topdir options) ; Build the whole image.
+               (concat "ONE_SHOT_MAKEFILE=" (car makefile)
+                       " make -C " topdir options " files ")))
+        (if (interactive-p)
+            (call-interactively 'compile)))))
+
+(provide 'android-compile)
+
+;;; android-compile.el ends here
diff --git a/ide/emacs/android-host.el b/ide/emacs/android-host.el
new file mode 100644
index 0000000..d310e3a
--- /dev/null
+++ b/ide/emacs/android-host.el
@@ -0,0 +1,118 @@
+;;; android-host.el --- Module to use host binaries from an Android dev tree.
+;;
+;; Copyright (C) 2009 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.
+
+;;; Commentary:
+;;
+;; This module defines interactive functions to send the most common
+;; commands to a device.
+;;
+;; Currently only one device is supported.
+;;
+;; In your .emacs load this file (e.g (require 'android-host)) then
+;; you can either create new shortcuts e.g:
+;;
+;;   (global-set-key [f8] 'android-adb-sync)
+;;
+;; or rely on autocompletion M-x and-sync will expand to
+;; M-x  android-adb-sync
+;;
+;; By default the following key bindings are active:
+;; C-x a a android-adb-root
+;; C-x a r android-adb-remount
+;; C-x a s android-adb-sync
+;; C-x a b android-adb-shell-reboot-bootloader
+;; C-x a f android-fastboot-flashall
+;;
+;; android-fastboot-flashall is still work in progress, check the
+;; associated buffer (*Android Output*) for errors when you use it.
+
+;;; Code:
+
+(require 'android-common)
+
+(defvar android-host-command-map (make-sparse-keymap))
+
+(defun android-host-key-prefix-set (var val)
+  "Bind the keys shortcuts to the functions.i"
+  ;; TODO: This should go in a minor mode keymap instead of
+  ;; messing with the global one.
+  (define-key global-map (read-kbd-macro val) android-host-command-map)
+  (custom-set-default var val))
+
+(let ((map android-host-command-map))
+  (define-key map (kbd "a") 'android-adb-root)
+  (define-key map (kbd "r") 'android-adb-remount)
+  (define-key map (kbd "s") 'android-adb-sync)
+  (define-key map (kbd "b") 'android-adb-shell-reboot-bootloader)
+  (define-key map (kbd "f") 'android-fastboot-flashall))
+
+(defcustom android-host-key-prefix "C-x a"
+  "Prefix keystrokes for Android commands."
+  :group 'android
+  :type 'string
+  :set 'android-host-key-prefix-set)
+
+(defun android-adb-remount ()
+  "Execute 'adb remount'."
+  (interactive)
+  (android-adb-command "remount"))
+
+(defun android-adb-root ()
+  "Execute 'adb root'."
+  (interactive)
+  (android-adb-command "root"))
+
+(defun android-adb-shell-reboot-bootloader ()
+  "Execute 'adb shell reboot bootloader'."
+  (interactive)
+  (android-adb-shell-command "reboot bootloader"))
+
+(defun android-adb-sync ()
+  "Execute 'adb sync'."
+  (interactive)
+  (android-adb-command "sync" 'p))
+
+(defun android-fastboot-sentinel (process event)
+  "Called when the fastboot process is done."
+  ;; TODO: Should barf if the last lines are not:
+  ;;   OKAY
+  ;;   rebooting...
+  (princ
+   (format "Process: %s had the event `%s'" process event)))
+
+(defun android-fastboot-flashall (arg)
+  "Execute 'fastboot -p <product> flashall'.
+
+With no ARG, don't wipe the user data.
+With ARG, wipe the user data."
+  (interactive "P")
+  (when (get-buffer android-output-buffer-name)
+    (with-current-buffer android-output-buffer-name
+      (erase-buffer)))
+  (let ((proc
+         (if arg
+             (start-process-shell-command
+              "fastboot"
+              android-output-buffer-name
+              (concat (android-fastboot) " flashall -w"))
+           (start-process-shell-command
+            "fastboot" android-output-buffer-name
+            (concat (android-fastboot) " flashall")))))
+    (set-process-sentinel proc 'android-fastboot-sentinel)))
+
+
+(provide 'android-host)
+;;; android-host.el ends here
diff --git a/pdk/docs/compatibility/compatibility_toc.cs b/pdk/docs/compatibility/compatibility_toc.cs
new file mode 100644
index 0000000..3952495
--- /dev/null
+++ b/pdk/docs/compatibility/compatibility_toc.cs
@@ -0,0 +1,31 @@
+<script type="text/javascript" language="JavaScript">
+<!--
+function nothing() {}
+-->
+</script>
+
+<ul>
+  <li> <h2>Program Details </h2>
+  <ul>
+    <li><a href="">Program Overview</a></li>
+    <li><a href="">Getting Started</a></li>
+    <li><a href="">Contact Us</a></li>
+  </ul>
+  </li>
+
+  <li> <h2>Compatibility Tools </h2>
+  <ul>
+    <li><a href="">Compatibility Definition</a></li>
+    <li><a href="">Compatibility Test Suite</a></li>
+    <li><a href="">Compatibility FAQ</a></li>
+    <li><a href="">Downloads</a></li>
+  </ul>
+  </li>
+
+</ul>
+
+<script type="text/javascript">
+<!--
+    buildToggleLists();
+//-->
+</script>
diff --git a/pdk/docs/compatibility/index.jd b/pdk/docs/compatibility/index.jd
new file mode 100644
index 0000000..964fdf7
--- /dev/null
+++ b/pdk/docs/compatibility/index.jd
@@ -0,0 +1,11 @@
+home=true
+doc.type=compatibility
+@jd:body
+
+<div id="mainBodyFixed">
+
+<p>
+Compatibility start page goes here
+</p>
+
+</div>
diff --git a/pdk/docs/getsource/getsource_toc.cs b/pdk/docs/getsource/getsource_toc.cs
new file mode 100644
index 0000000..5332cdf
--- /dev/null
+++ b/pdk/docs/getsource/getsource_toc.cs
@@ -0,0 +1,26 @@
+<script type="text/javascript" language="JavaScript">
+<!--
+function nothing() {}
+-->
+</script>
+
+<ul>
+  <li> <h2>Work with the Code </h2>
+  <ul>
+    <li><a href="">...</a></li>
+  </ul>
+  </li>
+
+  <li> <h2>About the project </h2>
+  <ul>
+    <li><a href="">...</a></li>
+  </ul>
+  </li>
+
+</ul>
+
+<script type="text/javascript">
+<!--
+    buildToggleLists();
+//-->
+</script>
diff --git a/pdk/docs/getsource/index.jd b/pdk/docs/getsource/index.jd
new file mode 100644
index 0000000..08d1c25
--- /dev/null
+++ b/pdk/docs/getsource/index.jd
@@ -0,0 +1,11 @@
+home=true
+doc.type=getsource
+@jd:body
+
+<div id="mainBodyFixed">
+
+<p>
+Some new content about getting source goes here
+</p>
+
+</div>
diff --git a/pdk/docs/index.jd b/pdk/docs/index.jd
index 4175db7..d7077d5 100644
--- a/pdk/docs/index.jd
+++ b/pdk/docs/index.jd
@@ -36,25 +36,6 @@
                               <tr>
                                       <td colspan="2"><div class="seperator">&nbsp;</div></td>
                               </tr>
-                              <tr>
-                                      <td class="imageCell"><a href="http://source.android.com"><img src="{@docRoot}assets/images/icon_contribute.jpg" style="padding:0" /></a></td>
-                                      <td>
-                                              <h2 class="green">Contribute</h2>
-                                              <p>Android Open Source Project gives you access to the entire platform source.</p>
-                                              <p><a href="http://source.android.com">Learn more &raquo;</a></p>
-                                      </td>
-                              </tr>
-                              <tr>
-                                      <td colspan="2"><div class="seperator">&nbsp;</div></td>
-                              </tr>
-                              <tr>
-                                      <td class="imageCell"><a href="http://www.youtube.com/user/androiddevelopers"><img src="{@docRoot}assets/images/video-droid.png" style="padding:0" /></a></td>
-                                      <td>
-                                              <h2 class="green">Watch</h2>
-                                              <object width="150" height="140"><param name="movie" value="http://www.youtube.com/v/GARMe7Km_gk&hl=en&fs=1"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/GARMe7Km_gk&hl=en&fs=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="150" height="140"></embed></object>
-                                              <p style="margin-top:1em"><a href="{@docRoot}videos/index.html">More Android videos &raquo;</a></p>
-                                      </td>
-                              </tr>
 
                       </table>
               </div>
diff --git a/samples/ApiDemos/res/layout/alert_dialog.xml b/samples/ApiDemos/res/layout/alert_dialog.xml
index ddd5cb6..741be33 100644
--- a/samples/ApiDemos/res/layout/alert_dialog.xml
+++ b/samples/ApiDemos/res/layout/alert_dialog.xml
@@ -41,6 +41,9 @@
         <Button android:id="@+id/checkbox_button"
             android:layout_width="fill_parent" android:layout_height="wrap_content"
             android:text="@string/alert_dialog_multi_choice"/>
+        <Button android:id="@+id/checkbox_button2"
+            android:layout_width="fill_parent" android:layout_height="wrap_content"
+            android:text="@string/alert_dialog_multi_choice_cursor"/>
         <Button android:id="@+id/text_entry_button"
             android:layout_width="fill_parent" android:layout_height="wrap_content"
             android:text="@string/alert_dialog_text_entry"/>
diff --git a/samples/ApiDemos/res/values/strings.xml b/samples/ApiDemos/res/values/strings.xml
index 2800bff..28267a5 100644
--- a/samples/ApiDemos/res/values/strings.xml
+++ b/samples/ApiDemos/res/values/strings.xml
@@ -270,6 +270,7 @@
     <string name="alert_dialog_select_button">List dialog</string>
     <string name="alert_dialog_single_choice">Single choice list</string>
     <string name="alert_dialog_multi_choice">Repeat alarm</string>
+    <string name="alert_dialog_multi_choice_cursor">Send Call to VoiceMail</string>
     <string name="alert_dialog_progress_button">Progress dialog</string>
     <string name="alert_dialog_text_entry">Text Entry dialog</string>
     <string name="alert_dialog_username">Name:</string>
diff --git a/samples/ApiDemos/src/com/example/android/apis/app/AlertDialogSamples.java b/samples/ApiDemos/src/com/example/android/apis/app/AlertDialogSamples.java
index fabdfc1..0ef79b3 100644
--- a/samples/ApiDemos/src/com/example/android/apis/app/AlertDialogSamples.java
+++ b/samples/ApiDemos/src/com/example/android/apis/app/AlertDialogSamples.java
@@ -28,6 +28,9 @@
 import android.view.View;
 import android.view.View.OnClickListener;
 import android.widget.Button;
+import android.widget.Toast;
+import android.database.Cursor;
+import android.provider.Contacts;
 
 import com.example.android.apis.R;
 
@@ -60,6 +63,7 @@
     private static final int DIALOG_SINGLE_CHOICE = 5;
     private static final int DIALOG_MULTIPLE_CHOICE = 6;
     private static final int DIALOG_TEXT_ENTRY = 7;
+    private static final int DIALOG_MULTIPLE_CHOICE_CURSOR = 8;
 
     private static final int MAX_PROGRESS = 100;
     
@@ -193,6 +197,28 @@
                     }
                 })
                .create();
+            case DIALOG_MULTIPLE_CHOICE_CURSOR:
+                String[] projection = new String[] {
+                        Contacts.People._ID,
+                        Contacts.People.NAME,
+                        Contacts.People.SEND_TO_VOICEMAIL
+                };
+                Cursor cursor = managedQuery(Contacts.People.CONTENT_URI, projection, null, null, null);
+                return new AlertDialog.Builder(AlertDialogSamples.this)
+                    .setIcon(R.drawable.ic_popup_reminder)
+                    .setTitle(R.string.alert_dialog_multi_choice_cursor)
+                    .setMultiChoiceItems(cursor,
+                            Contacts.People.SEND_TO_VOICEMAIL,
+                            Contacts.People.NAME,
+                            new DialogInterface.OnMultiChoiceClickListener() {
+                                public void onClick(DialogInterface dialog, int whichButton,
+                                        boolean isChecked) {
+                                    Toast.makeText(AlertDialogSamples.this,
+                                            "Readonly Demo Only - Data will not be updated",
+                                            Toast.LENGTH_SHORT).show();
+                                }
+                            })
+                   .create();
         case DIALOG_TEXT_ENTRY:
             // This example shows how to add a custom layout to an AlertDialog
             LayoutInflater factory = LayoutInflater.from(this);
@@ -281,6 +307,14 @@
             }
         });
         
+        /* Display a list of checkboxes, backed by a cursor */
+        Button checkBox2 = (Button) findViewById(R.id.checkbox_button2);
+        checkBox2.setOnClickListener(new OnClickListener() {
+            public void onClick(View v) {
+                showDialog(DIALOG_MULTIPLE_CHOICE_CURSOR);
+            }
+        });
+
         /* Display a text entry dialog */
         Button textEntry = (Button) findViewById(R.id.text_entry_button);
         textEntry.setOnClickListener(new OnClickListener() {
diff --git a/samples/LunarLander/AndroidManifest.xml b/samples/LunarLander/AndroidManifest.xml
index 7fdc572..301291a 100644
--- a/samples/LunarLander/AndroidManifest.xml
+++ b/samples/LunarLander/AndroidManifest.xml
@@ -22,11 +22,11 @@
 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
     package="com.example.android.lunarlander">
     <application android:icon="@drawable/app_lunar_lander" android:label="@string/app_name">
-        <activity android:name="LunarLander">
+        <activity android:name="LunarLander" android:theme="@android:style/Theme.NoTitleBar">
             <intent-filter>
                 <action android:name="android.intent.action.MAIN" />
                 <category android:name="android.intent.category.LAUNCHER" />
             </intent-filter>
-		</activity>
+        </activity>
     </application>
 </manifest>
diff --git a/samples/LunarLander/src/com/example/android/lunarlander/LunarLander.java b/samples/LunarLander/src/com/example/android/lunarlander/LunarLander.java
index 7f54ff6..a4ffef5 100644
--- a/samples/LunarLander/src/com/example/android/lunarlander/LunarLander.java
+++ b/samples/LunarLander/src/com/example/android/lunarlander/LunarLander.java
@@ -124,9 +124,6 @@
     protected void onCreate(Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
 
-        // turn off the window's title bar
-        requestWindowFeature(Window.FEATURE_NO_TITLE);
-
         // tell system to use the layout defined in our XML file
         setContentView(R.layout.lunar_layout);
 
diff --git a/samples/Snake/AndroidManifest.xml b/samples/Snake/AndroidManifest.xml
index 174e8b4..36a9939 100644
--- a/samples/Snake/AndroidManifest.xml
+++ b/samples/Snake/AndroidManifest.xml
@@ -23,6 +23,7 @@
     package="com.example.android.snake">
     <application android:label="Snake on a Phone">
       <activity android:name="Snake"
+        android:theme="@android:style/Theme.NoTitleBar"
         android:screenOrientation="portrait"
         android:configChanges="keyboardHidden|orientation">
             <intent-filter>
diff --git a/samples/Snake/src/com/example/android/snake/Snake.java b/samples/Snake/src/com/example/android/snake/Snake.java
index 5fdc024..6306693 100644
--- a/samples/Snake/src/com/example/android/snake/Snake.java
+++ b/samples/Snake/src/com/example/android/snake/Snake.java
@@ -45,9 +45,6 @@
     public void onCreate(Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
 
-        // No Title bar
-        requestWindowFeature(Window.FEATURE_NO_TITLE);
-
         setContentView(R.layout.snake_layout);
 
         mSnakeView = (SnakeView) findViewById(R.id.snake);
diff --git a/simulator/app/PropertyServer.cpp b/simulator/app/PropertyServer.cpp
index c94aa75..7a211ea 100644
--- a/simulator/app/PropertyServer.cpp
+++ b/simulator/app/PropertyServer.cpp
@@ -121,7 +121,6 @@
         { "init.svc.dbus", "running" },
         { "init.svc.pppd_gprs", "running" },
         { "adb.connected", "0" },
-        //{ "use-adb-networking", "1" },
         /*
         { "status.battery.state", "Slow" },
         { "status.battery.level", "5" },
diff --git a/tools/traceview/etc/traceview b/tools/traceview/etc/traceview
index 3d1771f..caac726 100755
--- a/tools/traceview/etc/traceview
+++ b/tools/traceview/etc/traceview
@@ -64,7 +64,7 @@
 fi
 
 while expr "x$1" : 'x-J' >/dev/null; do
-    opt=`expr "$1" : '-J\(.*\)'`
+    opt=`expr "x$1" : 'x-J\(.*\)'`
     javaOpts="${javaOpts} -${opt}"
     shift
 done