1 <?xml version="1.0" encoding="utf-8"?> 2 <!-- Copyright (C) 2010 The Android Open Source Project 3 4 Licensed under the Apache License, Version 2.0 (the "License"); 5 you may not use this file except in compliance with the License. 6 You may obtain a copy of the License at 7 8 http://www.apache.org/licenses/LICENSE-2.0 9 10 Unless required by applicable law or agreed to in writing, software 11 distributed under the License is distributed on an "AS IS" BASIS, 12 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 See the License for the specific language governing permissions and 14 limitations under the License. 15 --> 16 <!-- All ids in this layout must be in wifi_dialog.xml --> 17 <LinearLayout 18 xmlns:android="http://schemas.android.com/apk/res/android" 19 android:orientation="vertical" 20 android:layout_width="match_parent" 21 android:layout_height="match_parent"> 22 <!-- UI components that should be shown appropriately --> 23 <FrameLayout 24 android:id="@+id/eap_not_supported" 25 android:layout_width="match_parent" 26 android:layout_height="wrap_content" 27 android:minHeight="360dip" 28 android:orientation="vertical" 29 android:visibility="gone"> 30 <TextView 31 android:layout_width="match_parent" 32 android:layout_height="wrap_content" 33 android:lineSpacingExtra="12dip" 34 android:text="@string/wifi_setup_eap_not_supported" 35 android:textAppearance="?android:attr/textAppearanceMedium" 36 android:textSize="20sp" /> 37 </FrameLayout> 38 <!-- In "add network" flow, we have security type field (@id/security below) below 39 this View, so need a bit different layout than the other flow, in which we'll use 40 @id/eap_not_supported. --> 41 <FrameLayout 42 android:id="@+id/eap_not_supported_for_add_network" 43 android:layout_width="match_parent" 44 android:layout_height="wrap_content" 45 android:orientation="vertical" 46 android:visibility="gone"> 47 <TextView 48 android:layout_width="match_parent" 49 android:layout_height="wrap_content" 50 android:lineSpacingExtra="12dip" 51 android:text="@string/wifi_setup_eap_not_supported" 52 android:textAppearance="?android:attr/textAppearanceMedium" 53 android:textSize="20sp" /> 54 </FrameLayout> 55 <TableLayout 56 android:layout_width="match_parent" 57 android:layout_height="wrap_content" 58 android:layout_marginBottom="16dip"> 59 <!-- To accomodate @id/type into TableLayout, we splitted the layout into two: 60 @id/type_ssid and @id/type_security. --> 61 <TableRow 62 android:id="@+id/type_ssid" 63 android:minHeight="56dip" 64 android:visibility="gone"> 65 <TextView 66 android:id="@+id/ssid_text" 67 android:layout_width="wrap_content" 68 android:minWidth="128dip" 69 android:layout_height="wrap_content" 70 android:minHeight="56dip" 71 android:paddingEnd="16dip" 72 android:layout_alignParentStart="true" 73 android:text="@string/wifi_ssid" 74 android:textAppearance="?android:attr/textAppearanceMedium" 75 android:textSize="20sp" 76 android:gravity="start|center_vertical" /> 77 78 <FrameLayout 79 android:id="@+id/ssid_layout" 80 android:layout_width="wrap_content" 81 android:layout_height="wrap_content" 82 android:layout_alignBottom="@id/ssid_text" 83 android:layout_toEndOf="@id/ssid_text"> 84 <EditText 85 android:id="@+id/ssid" 86 android:layout_width="368dip" 87 android:layout_height="wrap_content" 88 android:singleLine="true" 89 android:hint="@string/wifi_ssid_hint" 90 android:inputType="textNoSuggestions" 91 android:textAppearance="?android:attr/textAppearanceMedium" 92 android:textSize="20sp" /> 93 </FrameLayout> 94 </TableRow> 95 96 <TableRow 97 android:id="@+id/security_fields" 98 android:minHeight="56dip" 99 android:visibility="gone"> 100 <TextView 101 android:id="@+id/password_text" 102 android:layout_width="wrap_content" 103 android:minWidth="128dip" 104 android:layout_height="wrap_content" 105 android:minHeight="56dip" 106 android:text="@string/wifi_password" 107 android:textAppearance="?android:attr/textAppearanceMedium" 108 android:textSize="20sp" 109 android:gravity="start|center_vertical" /> 110 111 <LinearLayout 112 android:id="@+id/password_layout" 113 android:layout_width="wrap_content" 114 android:layout_height="wrap_content" 115 android:gravity="bottom"> 116 <EditText 117 android:id="@+id/password" 118 android:layout_width="368dip" 119 android:layout_height="wrap_content" 120 android:minHeight="56dip" 121 android:singleLine="true" 122 android:password="true" 123 android:textAppearance="?android:attr/textAppearanceMedium" 124 android:textSize="20sp" /> 125 </LinearLayout> 126 127 <!-- It looks CheckBox isn't aligned well with TableRow --> 128 <FrameLayout 129 android:layout_width="wrap_content" 130 android:layout_height="wrap_content"> 131 <CheckBox 132 android:id="@+id/show_password" 133 android:layout_width="match_parent" 134 android:layout_height="wrap_content" 135 android:minHeight="56dip" 136 android:text="@string/wifi_show_password" 137 android:textAppearance="?android:attr/textAppearanceMedium" 138 android:textSize="20sp" /> 139 </FrameLayout> 140 </TableRow> 141 142 <TableRow 143 android:id="@+id/type_security" 144 android:minHeight="56dip" 145 android:visibility="gone"> 146 <TextView 147 android:id="@+id/security_text" 148 android:layout_width="wrap_content" 149 android:minWidth="128dip" 150 android:layout_height="wrap_content" 151 android:minHeight="56dip" 152 android:text="@string/wifi_security" 153 android:textAppearance="?android:attr/textAppearanceMedium" 154 android:textSize="20sp" 155 android:gravity="bottom"/> 156 157 <FrameLayout 158 android:layout_width="wrap_content" 159 android:layout_height="wrap_content" 160 android:gravity="bottom"> 161 <Spinner 162 android:id="@+id/security" 163 android:layout_width="368dip" 164 android:layout_height="wrap_content" 165 android:minHeight="56dip" 166 android:paddingStart="4dip"/> 167 </FrameLayout> 168 </TableRow> 169 </TableLayout> 170 171 <!-- All the views below are "gone". 172 We want them as data storage, not as UI components. --> 173 <LinearLayout 174 android:orientation="vertical" 175 android:layout_width="match_parent" 176 android:layout_height="match_parent" 177 android:visibility="gone"> 178 179 <LinearLayout android:id="@+id/info" 180 android:layout_width="match_parent" 181 android:layout_height="wrap_content" 182 android:orientation="vertical"/> 183 184 <!-- android:id="@+id/security_fields" --> 185 <LinearLayout 186 android:layout_width="match_parent" 187 android:layout_height="wrap_content" 188 android:orientation="vertical" 189 android:visibility="gone"> 190 191 <LinearLayout android:id="@+id/eap" 192 android:layout_width="match_parent" 193 android:layout_height="wrap_content" 194 android:orientation="vertical" 195 android:visibility="gone"> 196 197 <TextView 198 android:layout_width="match_parent" 199 android:layout_height="wrap_content" 200 android:text="@string/wifi_eap_method" /> 201 202 <Spinner android:id="@+id/method" 203 android:layout_width="match_parent" 204 android:layout_height="wrap_content" 205 android:prompt="@string/wifi_eap_method" 206 android:entries="@array/wifi_eap_method" /> 207 208 <TextView 209 android:layout_width="match_parent" 210 android:layout_height="wrap_content" 211 android:text="@string/please_select_phase2" /> 212 213 <Spinner android:id="@+id/phase2" 214 android:layout_width="match_parent" 215 android:layout_height="wrap_content" 216 android:prompt="@string/please_select_phase2" 217 android:entries="@array/wifi_phase2_entries" /> 218 219 <TextView 220 android:layout_width="match_parent" 221 android:layout_height="wrap_content" 222 android:text="@string/wifi_eap_ca_cert" /> 223 224 <Spinner android:id="@+id/ca_cert" 225 android:layout_width="match_parent" 226 android:layout_height="wrap_content" 227 android:prompt="@string/wifi_eap_ca_cert" /> 228 229 <TextView 230 android:layout_width="match_parent" 231 android:layout_height="wrap_content" 232 android:text="@string/wifi_eap_user_cert" /> 233 234 <Spinner android:id="@+id/user_cert" 235 android:layout_width="match_parent" 236 android:layout_height="wrap_content" 237 android:prompt="@string/wifi_eap_user_cert" /> 238 239 <TextView 240 android:layout_width="match_parent" 241 android:layout_height="wrap_content" 242 android:text="@string/wifi_eap_identity" /> 243 244 <EditText android:id="@+id/identity" 245 android:layout_width="match_parent" 246 android:layout_height="wrap_content" 247 android:singleLine="true" 248 android:inputType="textNoSuggestions" /> 249 250 <TextView 251 android:layout_width="match_parent" 252 android:layout_height="wrap_content" 253 android:text="@string/wifi_eap_anonymous" /> 254 255 <EditText android:id="@+id/anonymous" 256 android:layout_width="match_parent" 257 android:layout_height="wrap_content" 258 android:singleLine="true" 259 android:inputType="textNoSuggestions" /> 260 </LinearLayout> <!-- android:id="@+id/eap" --> 261 262 <!-- <TextView android:layout_width="match_parent" 263 android:layout_height="wrap_content" 264 android:text="@string/wifi_password" /> 265 266 <EditText android:id="@+id/password" 267 android:layout_width="match_parent" 268 android:layout_height="wrap_content" 269 android:singleLine="true" 270 android:password="true" /> 271 272 <CheckBox android:id="@+id/show_password" 273 android:layout_width="match_parent" 274 android:layout_height="wrap_content" 275 android:text="@string/wifi_show_password" /> --> 276 </LinearLayout> <!-- android:id="@+id/security_fields" --> 277 278 <LinearLayout android:id="@+id/proxy_settings_fields" 279 android:layout_width="match_parent" 280 android:layout_height="wrap_content" 281 android:orientation="vertical" 282 android:visibility="gone"> 283 284 <TextView android:id="@+id/proxy_settings_title" 285 android:layout_width="match_parent" 286 android:layout_height="wrap_content" 287 android:text="@string/proxy_settings_title" /> 288 289 <Spinner android:id="@+id/proxy_settings" 290 android:layout_width="match_parent" 291 android:layout_height="wrap_content" 292 android:prompt="@string/proxy_settings_title" 293 android:entries="@array/wifi_proxy_settings" /> 294 </LinearLayout> 295 296 <LinearLayout android:id="@+id/proxy_warning_limited_support" 297 android:layout_width="match_parent" 298 android:layout_height="wrap_content" 299 android:orientation="vertical" 300 android:visibility="gone"> 301 302 <!-- Dummy to enable right-justification of warning --> 303 <TextView 304 android:layout_width="match_parent" 305 android:layout_height="wrap_content" /> 306 307 <TextView 308 android:layout_width="match_parent" 309 android:layout_height="wrap_content" 310 android:text="@string/proxy_warning_limited_support" /> 311 </LinearLayout> 312 313 <LinearLayout android:id="@+id/proxy_fields" 314 android:layout_width="match_parent" 315 android:layout_height="wrap_content" 316 android:orientation="vertical" 317 android:visibility="gone"> 318 <TextView android:layout_width="match_parent" 319 android:layout_height="wrap_content" 320 android:text="@string/proxy_hostname_label" /> 321 322 <EditText android:id="@+id/proxy_hostname" 323 android:layout_width="match_parent" 324 android:layout_height="wrap_content" 325 android:singleLine="true" 326 android:inputType="textNoSuggestions" /> 327 328 <TextView android:layout_width="match_parent" 329 android:layout_height="wrap_content" 330 android:text="@string/proxy_port_label" /> 331 332 <EditText android:id="@+id/proxy_port" 333 android:layout_width="match_parent" 334 android:layout_height="wrap_content" 335 android:singleLine="true" 336 android:inputType="textNoSuggestions" /> 337 338 <TextView android:layout_width="match_parent" 339 android:layout_height="wrap_content" 340 android:text="@string/proxy_exclusionlist_label" /> 341 342 <EditText android:id="@+id/proxy_exclusionlist" 343 android:layout_width="match_parent" 344 android:layout_height="wrap_content" 345 android:singleLine="true" 346 android:inputType="textNoSuggestions" /> 347 348 </LinearLayout> 349 350 <LinearLayout android:id="@+id/ip_fields" 351 android:layout_width="match_parent" 352 android:layout_height="wrap_content" 353 android:orientation="vertical" 354 android:visibility="gone"> 355 356 <TextView 357 android:layout_width="match_parent" 358 android:layout_height="wrap_content" 359 android:text="@string/wifi_ip_settings" /> 360 361 <Spinner android:id="@+id/ip_settings" 362 android:layout_width="match_parent" 363 android:layout_height="wrap_content" 364 android:prompt="@string/wifi_ip_settings" 365 android:entries="@array/wifi_ip_settings" /> 366 </LinearLayout> 367 368 <LinearLayout android:id="@+id/staticip" 369 android:layout_width="match_parent" 370 android:layout_height="wrap_content" 371 android:orientation="vertical" 372 android:visibility="gone"> 373 <TextView 374 android:layout_width="match_parent" 375 android:layout_height="wrap_content" 376 android:text="@string/wifi_ip_address" /> 377 378 <EditText android:id="@+id/ipaddress" 379 android:layout_width="match_parent" 380 android:layout_height="wrap_content" 381 android:singleLine="true" 382 android:inputType="textNoSuggestions" /> 383 384 <TextView 385 android:layout_width="match_parent" 386 android:layout_height="wrap_content" 387 android:text="@string/wifi_gateway" /> 388 389 <EditText android:id="@+id/gateway" 390 android:layout_width="match_parent" 391 android:layout_height="wrap_content" 392 android:singleLine="true" 393 android:inputType="textNoSuggestions" /> 394 395 <TextView 396 android:layout_width="match_parent" 397 android:layout_height="wrap_content" 398 android:text="@string/wifi_network_prefix_length" /> 399 400 <EditText android:id="@+id/network_prefix_length" 401 android:layout_width="match_parent" 402 android:layout_height="wrap_content" 403 android:singleLine="true" 404 android:inputType="textNoSuggestions" /> 405 406 <TextView 407 android:layout_width="match_parent" 408 android:layout_height="wrap_content" 409 android:text="@string/wifi_dns1" /> 410 411 <EditText android:id="@+id/dns1" 412 android:layout_width="match_parent" 413 android:layout_height="wrap_content" 414 android:singleLine="true" 415 android:inputType="textNoSuggestions" /> 416 417 <TextView 418 android:layout_width="match_parent" 419 android:layout_height="wrap_content" 420 android:text="@string/wifi_dns2" /> 421 422 <EditText android:id="@+id/dns2" 423 android:layout_width="match_parent" 424 android:layout_height="wrap_content" 425 android:singleLine="true" 426 android:inputType="textNoSuggestions" /> 427 428 </LinearLayout> 429 </LinearLayout> 430 </LinearLayout> 431