Merge change 23345 into donut

* changes:
  Fix an emoji-measuring bug that caused an exception when editing a contact.
diff --git a/docs/html/guide/guide_toc.cs b/docs/html/guide/guide_toc.cs
index ef1a1ea..a5dadbc 100644
--- a/docs/html/guide/guide_toc.cs
+++ b/docs/html/guide/guide_toc.cs
@@ -375,7 +375,7 @@
     </ul>
     <ul>
     <?cs if:android.whichdoc != "online" ?>
-      <li><a href="<?cs var:toroot ?>../samples">
+      <li><a href="<?cs var:toroot ?>../platforms/android-<?cs var:sdk.version ?>/samples">
             <span class="en">Sample Code</span>
           &raquo;</a></li>
     <?cs else ?>
diff --git a/docs/html/guide/topics/manifest/uses-feature-element.jd b/docs/html/guide/topics/manifest/uses-feature-element.jd
index 2626735..0248985 100644
--- a/docs/html/guide/topics/manifest/uses-feature-element.jd
+++ b/docs/html/guide/topics/manifest/uses-feature-element.jd
@@ -6,7 +6,8 @@
 <dt>syntax:</dt>
 <dd>
 <pre class="stx">
-&lt;uses-feature android:<a href="#glEsVersion">glEsVersion</a>=["true" | "false"] /&gt;
+&lt;uses-feature android:<a href="#glEsVersion">glEsVersion</a>="<em>integer</em>"
+              android:<a href="#name">name</a>="<em>string</em>" /&gt;
 </pre>
 </dd>
 
@@ -14,7 +15,7 @@
 <dd><code><a href="{@docRoot}guide/topics/manifest/manifest-element.html">&lt;manifest&gt;</a></code></dd>
 
 <dt>description:</dt>
-<dd>This element specifies specific features used by the application.
+<dd>This element specifies a specific feature used by the application.
 Android provides some features that may not be equally supported by all
 Android devices. In a manner similar to the <code><a href="uses-sdk-element.html">&lt;uses-sdk></a></code> 
 element, this element allows an application to specify which potentially variable
@@ -23,6 +24,11 @@
 
 <p>For example, an application might specify that it requires a certain version of Open GL.
 If a device does not support that version of Open GL, then it will not allow installation of the application.</p>
+
+<p class="note"><strong>Note:</strong>
+For each feature required by your application, you must include a new {@code
+&lt;uses-feature>} element. Multiple features cannot be declared in one 
+instance of this element.</p>
 </dd> 
 
 
@@ -38,6 +44,30 @@
 </dl>
 </dd>
 
+<dd>
+<dl class="attr"><dt><a name="name"></a>{@code android:name}</dt>
+  <dd>The name of a feature required by the application. 
+  The value must be one of the following accepted strings:
+  
+  <table> 
+    <tr> 
+       <th>Value</th> 
+       <th>Description</th> 
+    </tr><tr> 
+       <td>"{@code android.hardware.camera}"</td> 
+       <td>The application requires a camera.</td> 
+    </tr><tr> 
+       <td>"{@code android.hardware.camera.autofocus}"</td> 
+       <td>The application requires a camera with auto-focus capability.
+       As a prerequisite, "{@code android.hardware.camera}" must also be declared
+       with a separate {@code &lt;uses-feature>} element.</td> 
+    </tr>
+  </table>
+  
+  </dd>
+</dl>
+</dd>
+
 <!-- ##api level indication## -->
 <dt>introduced in:</dt>
 <dd>API Level 4</dd>