title: Selectively setting voice input constraints on submenu items
body: <p>As I found <a href="https://developers.google.com/glass/develop/gdk/input/voice#setting_constraints" rel="nofollow">on a Glass Developers page</a>, it is possible to set voice constraints to disable your voice trigger if certain features are unavailable. I thought this would work for the disambiguation submenu as well, so I tried putting a constraint on one Activity in the submenu but not the others. Instead of just disabling that one submenu item ("Choose from list"), however, this disabled the entire menu ("Make a request"). Here's my manifest and voice trigger xml resources:</p>
  
  <p>AndroidManifest.xml:</p>
  
  <pre><code>&lt;?xml version="1.0" encoding="utf-8"?&gt;
  &lt;manifest xmlns:android="http://schemas.android.com/apk/res/android"
      package="com.twintitanium.glassapps.decisionmaker"
      android:versionCode="1"
      android:versionName="1.0" &gt;
  
      &lt;uses-sdk
          android:minSdkVersion="15"
          android:targetSdkVersion="15" /&gt;
  
      &lt;uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /&gt;
      &lt;uses-permission android:name="android.permission.INTERNET" /&gt;
  
      &lt;application
          android:allowBackup="true"
          android:icon="@drawable/ic_launcher"
          android:label="@string/app_name" &gt;
          &lt;service
              android:name="com.twintitanium.glassapps.decisionmaker.DecisionMakerService"
              android:enabled="true"
              android:exported="true"
              android:icon="@drawable/ic_launcher"
              android:label="@string/app_name" &gt;
          &lt;/service&gt;
  
          &lt;activity
              android:name="com.twintitanium.glassapps.decisionmaker.MenuActivity"
              android:enabled="true"
              android:theme="@style/MenuTheme" &gt;
          &lt;/activity&gt;
          &lt;activity
              android:name="com.twintitanium.glassapps.decisionmaker.ChooseFromListActivity"
              android:label="@string/choice_from_list"
              android:icon="@drawable/ic_choose_from_list" &gt;
              &lt;intent-filter&gt;
                  &lt;action android:name="com.google.android.glass.action.VOICE_TRIGGER" /&gt;
              &lt;/intent-filter&gt;
              &lt;meta-data
                  android:name="com.google.android.glass.VoiceTrigger"
                  android:resource="@xml/make_a_request_with_network_constraint_trigger" /&gt;
          &lt;/activity&gt;
          &lt;activity
              android:name="com.twintitanium.glassapps.decisionmaker.RollDieActivity"
              android:label="@string/die_roll"
              android:icon="@drawable/ic_roll_die" &gt;
              &lt;intent-filter&gt;
                  &lt;action android:name="com.google.android.glass.action.VOICE_TRIGGER" /&gt;
              &lt;/intent-filter&gt;
              &lt;meta-data
                  android:name="com.google.android.glass.VoiceTrigger"
                  android:resource="@xml/make_a_request_trigger" /&gt;
          &lt;/activity&gt;
          &lt;activity
              android:name="com.twintitanium.glassapps.decisionmaker.FlipCoinActivity"
              android:label="@string/coin_flip"
              android:icon="@drawable/ic_flip_coin" &gt;
              &lt;intent-filter&gt;
                  &lt;action android:name="com.google.android.glass.action.VOICE_TRIGGER" /&gt;
              &lt;/intent-filter&gt;
              &lt;meta-data
                  android:name="com.google.android.glass.VoiceTrigger"
                  android:resource="@xml/make_a_request_trigger" /&gt;
          &lt;/activity&gt;
          &lt;activity
              android:name="com.twintitanium.glassapps.decisionmaker.YesNoActivity"
              android:label="@string/yes_or_no"
              android:icon="@drawable/ic_yes_no" &gt;
              &lt;intent-filter&gt;
                  &lt;action android:name="com.google.android.glass.action.VOICE_TRIGGER" /&gt;
              &lt;/intent-filter&gt;
              &lt;meta-data
                  android:name="com.google.android.glass.VoiceTrigger"
                  android:resource="@xml/make_a_request_trigger" /&gt;
          &lt;/activity&gt;
      &lt;/application&gt;
  
  &lt;/manifest&gt;
  </code></pre>
  
  <p>As you can see, I use make_a_request_with_network_constraint_trigger for ChooseFromListActivity but make_a_request_trigger for the other Activities.</p>
  
  <p>make_a_request_with_network_constraint_trigger.xml:</p>
  
  <pre><code>&lt;?xml version="1.0" encoding="utf-8"?&gt;
  &lt;trigger keyword="@string/glass_voice_trigger"&gt;
      &lt;constraints
          network="true" /&gt;
  &lt;/trigger&gt;
  </code></pre>
  
  <p>make_a_request_trigger.xml:</p>
  
  <pre><code>&lt;?xml version="1.0" encoding="utf-8"?&gt;
  &lt;trigger keyword="@string/glass_voice_trigger" /&gt;
  </code></pre>
  
  <p>(Just to clarify, "@string/glass_voice_trigger" is "Make a request".)</p>
  
  <p>Is there a reason that the network constraint given to one Activity disables the entire menu, even though the other Activities don't have the same constraint? Is there another way to selectively constrain one Activity and not the others?</p>