OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "chrome/browser/chromeos/status/network_menu.h" | 5 #include "chrome/browser/chromeos/status/network_menu.h" |
6 | 6 |
7 #include <algorithm> | 7 #include <algorithm> |
8 | 8 |
9 #include "ash/shell.h" | 9 #include "ash/shell.h" |
10 #include "ash/shell_delegate.h" | 10 #include "ash/shell_delegate.h" |
11 #include "ash/system/chromeos/network/network_connect.h" | 11 #include "ash/system/chromeos/network/network_connect.h" |
12 #include "ash/system/chromeos/network/network_icon.h" | 12 #include "ash/system/chromeos/network/network_icon.h" |
13 #include "base/bind.h" | 13 #include "base/bind.h" |
14 #include "base/logging.h" | 14 #include "base/logging.h" |
15 #include "base/strings/stringprintf.h" | 15 #include "base/strings/stringprintf.h" |
16 #include "base/strings/utf_string_conversions.h" | 16 #include "base/strings/utf_string_conversions.h" |
17 #include "chrome/browser/chromeos/choose_mobile_network_dialog.h" | 17 #include "chrome/browser/chromeos/choose_mobile_network_dialog.h" |
18 #include "chrome/browser/chromeos/login/user_manager.h" | 18 #include "chrome/browser/chromeos/login/user_manager.h" |
19 #include "chrome/browser/chromeos/mobile_config.h" | 19 #include "chrome/browser/chromeos/mobile_config.h" |
20 #include "chrome/browser/chromeos/options/network_config_view.h" | 20 #include "chrome/browser/chromeos/options/network_config_view.h" |
21 #include "chrome/browser/chromeos/sim_dialog_delegate.h" | 21 #include "chrome/browser/chromeos/sim_dialog_delegate.h" |
22 #include "chrome/browser/defaults.h" | 22 #include "chrome/browser/defaults.h" |
23 #include "chrome/browser/profiles/profile_manager.h" | 23 #include "chrome/browser/profiles/profile_manager.h" |
24 #include "chrome/common/url_constants.h" | 24 #include "chrome/common/url_constants.h" |
25 #include "chromeos/network/device_state.h" | 25 #include "chromeos/network/device_state.h" |
26 #include "chromeos/network/network_state.h" | 26 #include "chromeos/network/network_state.h" |
27 #include "chromeos/network/network_state_handler.h" | 27 #include "chromeos/network/network_state_handler.h" |
| 28 #include "chromeos/network/shill_property_util.h" |
28 #include "grit/ash_resources.h" | 29 #include "grit/ash_resources.h" |
29 #include "grit/ash_strings.h" | 30 #include "grit/ash_strings.h" |
30 #include "grit/generated_resources.h" | 31 #include "grit/generated_resources.h" |
31 #include "third_party/cros_system_api/dbus/service_constants.h" | 32 #include "third_party/cros_system_api/dbus/service_constants.h" |
32 #include "ui/base/l10n/l10n_util.h" | 33 #include "ui/base/l10n/l10n_util.h" |
33 #include "ui/base/models/menu_model.h" | 34 #include "ui/base/models/menu_model.h" |
34 #include "ui/base/resource/resource_bundle.h" | 35 #include "ui/base/resource/resource_bundle.h" |
35 #include "ui/gfx/image/image_skia.h" | 36 #include "ui/gfx/image/image_skia.h" |
36 | 37 |
37 namespace chromeos { | 38 namespace chromeos { |
(...skipping 14 matching lines...) Expand all Loading... |
52 found = str.find('&', found + 2); | 53 found = str.find('&', found + 2); |
53 } | 54 } |
54 return str; | 55 return str; |
55 } | 56 } |
56 | 57 |
57 // Highlight any connected or connecting networks in the UI. | 58 // Highlight any connected or connecting networks in the UI. |
58 bool ShouldHighlightNetwork(const NetworkState* network) { | 59 bool ShouldHighlightNetwork(const NetworkState* network) { |
59 return network->IsConnectedState() || network->IsConnectingState(); | 60 return network->IsConnectedState() || network->IsConnectingState(); |
60 } | 61 } |
61 | 62 |
62 void ToggleTechnology(const std::string& technology) { | 63 void ToggleTechnology(const NetworkTypePattern& technology) { |
63 NetworkStateHandler* handler = NetworkHandler::Get()->network_state_handler(); | 64 NetworkStateHandler* handler = NetworkHandler::Get()->network_state_handler(); |
64 bool is_enabled = handler->IsTechnologyEnabled(technology); | 65 bool is_enabled = handler->IsTechnologyEnabled(technology); |
65 ash::network_connect::SetTechnologyEnabled(technology, !is_enabled); | 66 ash::network_connect::SetTechnologyEnabled(technology, !is_enabled); |
66 } | 67 } |
67 | 68 |
68 } // namespace | 69 } // namespace |
69 | 70 |
70 class NetworkMenuModel : public ui::MenuModel { | 71 class NetworkMenuModel : public ui::MenuModel { |
71 public: | 72 public: |
72 struct MenuItem { | 73 struct MenuItem { |
(...skipping 225 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
298 | 299 |
299 void NetworkMenuModel::ActivatedAt(int index) { | 300 void NetworkMenuModel::ActivatedAt(int index) { |
300 // When we are refreshing the menu, ignore menu item activation. | 301 // When we are refreshing the menu, ignore menu item activation. |
301 if (owner_->refreshing_menu_) | 302 if (owner_->refreshing_menu_) |
302 return; | 303 return; |
303 | 304 |
304 int flags = menu_items_[index].flags; | 305 int flags = menu_items_[index].flags; |
305 if (flags & FLAG_OPTIONS) { | 306 if (flags & FLAG_OPTIONS) { |
306 owner_->delegate()->OpenButtonOptions(); | 307 owner_->delegate()->OpenButtonOptions(); |
307 } else if (flags & FLAG_TOGGLE_WIFI) { | 308 } else if (flags & FLAG_TOGGLE_WIFI) { |
308 ToggleTechnology(flimflam::kTypeWifi); | 309 ToggleTechnology(NetworkTypePattern::WiFi()); |
309 } else if (flags & FLAG_TOGGLE_MOBILE) { | 310 } else if (flags & FLAG_TOGGLE_MOBILE) { |
310 ToggleTechnology(NetworkStateHandler::kMatchTypeMobile); | 311 ToggleTechnology(NetworkTypePattern::Mobile()); |
311 } else if (flags & FLAG_ETHERNET) { | 312 } else if (flags & FLAG_ETHERNET) { |
312 owner_->delegate()->OnConnectToNetworkRequested( | 313 owner_->delegate()->OnConnectToNetworkRequested( |
313 menu_items_[index].service_path); | 314 menu_items_[index].service_path); |
314 } else if (flags & (FLAG_WIFI | FLAG_WIMAX | FLAG_CELLULAR)) { | 315 } else if (flags & (FLAG_WIFI | FLAG_WIMAX | FLAG_CELLULAR)) { |
315 ConnectToNetworkAt(index); | 316 ConnectToNetworkAt(index); |
316 owner_->delegate()->OnConnectToNetworkRequested( | 317 owner_->delegate()->OnConnectToNetworkRequested( |
317 menu_items_[index].service_path); | 318 menu_items_[index].service_path); |
318 } else if (flags & FLAG_ADD_WIFI) { | 319 } else if (flags & FLAG_ADD_WIFI) { |
319 ShowOther(flimflam::kTypeWifi); | 320 ShowOther(flimflam::kTypeWifi); |
320 } else if (flags & FLAG_ADD_CELLULAR) { | 321 } else if (flags & FLAG_ADD_CELLULAR) { |
(...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
380 void MainMenuModel::InitMenuItems(bool should_open_button_options) { | 381 void MainMenuModel::InitMenuItems(bool should_open_button_options) { |
381 menu_items_.clear(); | 382 menu_items_.clear(); |
382 | 383 |
383 NetworkStateHandler* handler = NetworkHandler::Get()->network_state_handler(); | 384 NetworkStateHandler* handler = NetworkHandler::Get()->network_state_handler(); |
384 | 385 |
385 // Populate our MenuItems with the current list of networks. | 386 // Populate our MenuItems with the current list of networks. |
386 string16 label; | 387 string16 label; |
387 | 388 |
388 // Ethernet | 389 // Ethernet |
389 // Only display an ethernet icon if enabled, and an ethernet network exists. | 390 // Only display an ethernet icon if enabled, and an ethernet network exists. |
390 bool ethernet_enabled = handler->IsTechnologyEnabled(flimflam::kTypeEthernet); | 391 bool ethernet_enabled = |
| 392 handler->IsTechnologyEnabled(NetworkTypePattern::Ethernet()); |
391 const NetworkState* ethernet_network = | 393 const NetworkState* ethernet_network = |
392 handler->FirstNetworkByType(flimflam::kTypeEthernet); | 394 handler->FirstNetworkByType(NetworkTypePattern::Ethernet()); |
393 if (ethernet_enabled && ethernet_network) { | 395 if (ethernet_enabled && ethernet_network) { |
394 bool ethernet_connecting = ethernet_network->IsConnectingState(); | 396 bool ethernet_connecting = ethernet_network->IsConnectingState(); |
395 if (ethernet_connecting) { | 397 if (ethernet_connecting) { |
396 label = l10n_util::GetStringFUTF16( | 398 label = l10n_util::GetStringFUTF16( |
397 IDS_STATUSBAR_NETWORK_DEVICE_STATUS, | 399 IDS_STATUSBAR_NETWORK_DEVICE_STATUS, |
398 l10n_util::GetStringUTF16(IDS_STATUSBAR_NETWORK_DEVICE_ETHERNET), | 400 l10n_util::GetStringUTF16(IDS_STATUSBAR_NETWORK_DEVICE_ETHERNET), |
399 l10n_util::GetStringUTF16(IDS_STATUSBAR_NETWORK_DEVICE_CONNECTING)); | 401 l10n_util::GetStringUTF16(IDS_STATUSBAR_NETWORK_DEVICE_CONNECTING)); |
400 } else { | 402 } else { |
401 label = l10n_util::GetStringUTF16(IDS_STATUSBAR_NETWORK_DEVICE_ETHERNET); | 403 label = l10n_util::GetStringUTF16(IDS_STATUSBAR_NETWORK_DEVICE_ETHERNET); |
402 } | 404 } |
403 int flag = FLAG_ETHERNET; | 405 int flag = FLAG_ETHERNET; |
404 if (ShouldHighlightNetwork(ethernet_network)) | 406 if (ShouldHighlightNetwork(ethernet_network)) |
405 flag |= FLAG_ASSOCIATED; | 407 flag |= FLAG_ASSOCIATED; |
406 const gfx::ImageSkia icon = ash::network_icon::GetImageForNetwork( | 408 const gfx::ImageSkia icon = ash::network_icon::GetImageForNetwork( |
407 ethernet_network, ash::network_icon::ICON_TYPE_LIST); | 409 ethernet_network, ash::network_icon::ICON_TYPE_LIST); |
408 menu_items_.push_back(MenuItem(ui::MenuModel::TYPE_COMMAND, | 410 menu_items_.push_back(MenuItem(ui::MenuModel::TYPE_COMMAND, |
409 label, icon, std::string(), flag)); | 411 label, icon, std::string(), flag)); |
410 } | 412 } |
411 | 413 |
412 // Get the list of all networks. | 414 // Get the list of all networks. |
413 NetworkStateHandler::NetworkStateList network_list; | 415 NetworkStateHandler::NetworkStateList network_list; |
414 handler->GetNetworkList(&network_list); | 416 handler->GetNetworkList(&network_list); |
415 | 417 |
416 // Cellular Networks | 418 // Cellular Networks |
417 if (handler->IsTechnologyEnabled(flimflam::kTypeCellular)) { | 419 if (handler->IsTechnologyEnabled(NetworkTypePattern::Cellular())) { |
418 // List Cellular networks. | 420 // List Cellular networks. |
419 for (NetworkStateHandler::NetworkStateList::const_iterator iter = | 421 for (NetworkStateHandler::NetworkStateList::const_iterator iter = |
420 network_list.begin(); iter != network_list.end(); ++iter) { | 422 network_list.begin(); iter != network_list.end(); ++iter) { |
421 const NetworkState* network = *iter; | 423 const NetworkState* network = *iter; |
422 if (network->type() != flimflam::kTypeCellular) | 424 if (network->type() != flimflam::kTypeCellular) |
423 continue; | 425 continue; |
424 std::string activation_state = network->activation_state(); | 426 std::string activation_state = network->activation_state(); |
425 | 427 |
426 // This is only used in the login screen; do not show unactivated | 428 // This is only used in the login screen; do not show unactivated |
427 // networks. | 429 // networks. |
(...skipping 18 matching lines...) Expand all Loading... |
446 flag |= FLAG_ASSOCIATED; | 448 flag |= FLAG_ASSOCIATED; |
447 const gfx::ImageSkia icon = ash::network_icon::GetImageForNetwork( | 449 const gfx::ImageSkia icon = ash::network_icon::GetImageForNetwork( |
448 network, ash::network_icon::ICON_TYPE_LIST); | 450 network, ash::network_icon::ICON_TYPE_LIST); |
449 menu_items_.push_back( | 451 menu_items_.push_back( |
450 MenuItem(ui::MenuModel::TYPE_COMMAND, | 452 MenuItem(ui::MenuModel::TYPE_COMMAND, |
451 label, icon, network->path(), flag)); | 453 label, icon, network->path(), flag)); |
452 } | 454 } |
453 | 455 |
454 // For GSM add cellular network scan. | 456 // For GSM add cellular network scan. |
455 const DeviceState* cellular_device = | 457 const DeviceState* cellular_device = |
456 handler->GetDeviceStateByType(flimflam::kTypeCellular); | 458 handler->GetDeviceStateByType(NetworkTypePattern::Cellular()); |
457 if (cellular_device && cellular_device->support_network_scan()) { | 459 if (cellular_device && cellular_device->support_network_scan()) { |
458 const gfx::ImageSkia icon = | 460 const gfx::ImageSkia icon = |
459 ash::network_icon::GetImageForDisconnectedNetwork( | 461 ash::network_icon::GetImageForDisconnectedNetwork( |
460 ash::network_icon::ICON_TYPE_LIST, flimflam::kTypeCellular); | 462 ash::network_icon::ICON_TYPE_LIST, flimflam::kTypeCellular); |
461 menu_items_.push_back(MenuItem( | 463 menu_items_.push_back(MenuItem( |
462 ui::MenuModel::TYPE_COMMAND, | 464 ui::MenuModel::TYPE_COMMAND, |
463 l10n_util::GetStringUTF16( | 465 l10n_util::GetStringUTF16( |
464 IDS_OPTIONS_SETTINGS_OTHER_CELLULAR_NETWORKS), | 466 IDS_OPTIONS_SETTINGS_OTHER_CELLULAR_NETWORKS), |
465 icon, std::string(), FLAG_ADD_CELLULAR)); | 467 icon, std::string(), FLAG_ADD_CELLULAR)); |
466 } | 468 } |
467 } else { | 469 } else { |
468 int initializing_message_id = | 470 int initializing_message_id = |
469 ash::network_icon::GetCellularUninitializedMsg(); | 471 ash::network_icon::GetCellularUninitializedMsg(); |
470 if (initializing_message_id) { | 472 if (initializing_message_id) { |
471 // Initializing cellular modem... | 473 // Initializing cellular modem... |
472 AddMessageItem(l10n_util::GetStringUTF16(initializing_message_id)); | 474 AddMessageItem(l10n_util::GetStringUTF16(initializing_message_id)); |
473 } | 475 } |
474 } | 476 } |
475 | 477 |
476 // Wimax Networks | 478 // Wimax Networks |
477 if (handler->IsTechnologyEnabled(flimflam::kTypeWimax)) { | 479 if (handler->IsTechnologyEnabled(NetworkTypePattern::Wimax())) { |
478 // List Wimax networks. | 480 // List Wimax networks. |
479 for (NetworkStateHandler::NetworkStateList::const_iterator iter = | 481 for (NetworkStateHandler::NetworkStateList::const_iterator iter = |
480 network_list.begin(); iter != network_list.end(); ++iter) { | 482 network_list.begin(); iter != network_list.end(); ++iter) { |
481 const NetworkState* network = *iter; | 483 const NetworkState* network = *iter; |
482 if (network->type() != flimflam::kTypeWimax) | 484 if (network->type() != flimflam::kTypeWimax) |
483 continue; | 485 continue; |
484 AddWirelessNetworkMenuItem(network, FLAG_WIMAX); | 486 AddWirelessNetworkMenuItem(network, FLAG_WIMAX); |
485 } | 487 } |
486 } | 488 } |
487 | 489 |
488 // Wifi Networks | 490 // Wifi Networks |
489 if (handler->IsTechnologyEnabled(flimflam::kTypeWifi)) { | 491 if (handler->IsTechnologyEnabled(NetworkTypePattern::WiFi())) { |
490 // List Wifi networks. | 492 // List Wifi networks. |
491 int scanning_msg = handler->GetScanningByType(flimflam::kTypeWifi) ? | 493 int scanning_msg = handler->GetScanningByType(NetworkTypePattern::WiFi()) |
492 IDS_ASH_STATUS_TRAY_WIFI_SCANNING_MESSAGE : 0; | 494 ? IDS_ASH_STATUS_TRAY_WIFI_SCANNING_MESSAGE |
| 495 : 0; |
493 for (NetworkStateHandler::NetworkStateList::const_iterator iter = | 496 for (NetworkStateHandler::NetworkStateList::const_iterator iter = |
494 network_list.begin(); iter != network_list.end(); ++iter) { | 497 network_list.begin(); iter != network_list.end(); ++iter) { |
495 const NetworkState* network = *iter; | 498 const NetworkState* network = *iter; |
496 if (network->type() != flimflam::kTypeWifi) | 499 if (network->type() != flimflam::kTypeWifi) |
497 continue; | 500 continue; |
498 // Add 'Searching for Wi-Fi networks...' after connected networks. | 501 // Add 'Searching for Wi-Fi networks...' after connected networks. |
499 if (scanning_msg && !network->IsConnectedState()) { | 502 if (scanning_msg && !network->IsConnectedState()) { |
500 AddMessageItem(l10n_util::GetStringUTF16(scanning_msg)); | 503 AddMessageItem(l10n_util::GetStringUTF16(scanning_msg)); |
501 scanning_msg = 0; | 504 scanning_msg = 0; |
502 } | 505 } |
(...skipping 12 matching lines...) Expand all Loading... |
515 | 518 |
516 if (menu_items_.empty()) { | 519 if (menu_items_.empty()) { |
517 // No networks available (and not initializing cellular or wifi scanning) | 520 // No networks available (and not initializing cellular or wifi scanning) |
518 AddMessageItem(l10n_util::GetStringFUTF16( | 521 AddMessageItem(l10n_util::GetStringFUTF16( |
519 IDS_STATUSBAR_NETWORK_MENU_ITEM_INDENT, | 522 IDS_STATUSBAR_NETWORK_MENU_ITEM_INDENT, |
520 l10n_util::GetStringUTF16(IDS_STATUSBAR_NO_NETWORKS_MESSAGE))); | 523 l10n_util::GetStringUTF16(IDS_STATUSBAR_NO_NETWORKS_MESSAGE))); |
521 } | 524 } |
522 | 525 |
523 // Enable / Disable Technology | 526 // Enable / Disable Technology |
524 NetworkStateHandler::TechnologyState wifi_state = | 527 NetworkStateHandler::TechnologyState wifi_state = |
525 handler->GetTechnologyState(flimflam::kTypeWifi); | 528 handler->GetTechnologyState(NetworkTypePattern::WiFi()); |
526 bool wifi_available = | 529 bool wifi_available = |
527 wifi_state != NetworkStateHandler::TECHNOLOGY_UNAVAILABLE; | 530 wifi_state != NetworkStateHandler::TECHNOLOGY_UNAVAILABLE; |
528 bool wifi_enabled = wifi_state == NetworkStateHandler::TECHNOLOGY_ENABLED; | 531 bool wifi_enabled = wifi_state == NetworkStateHandler::TECHNOLOGY_ENABLED; |
529 | 532 |
530 NetworkStateHandler::TechnologyState mobile_state = | 533 NetworkStateHandler::TechnologyState mobile_state = |
531 handler->GetTechnologyState(NetworkStateHandler::kMatchTypeMobile); | 534 handler->GetTechnologyState(NetworkTypePattern::Mobile()); |
532 bool mobile_available = | 535 bool mobile_available = |
533 mobile_state != NetworkStateHandler::TECHNOLOGY_UNAVAILABLE; | 536 mobile_state != NetworkStateHandler::TECHNOLOGY_UNAVAILABLE; |
534 bool mobile_enabled = mobile_state == NetworkStateHandler::TECHNOLOGY_ENABLED; | 537 bool mobile_enabled = mobile_state == NetworkStateHandler::TECHNOLOGY_ENABLED; |
535 | 538 |
536 // Do not show disable wifi or cellular during oobe. | 539 // Do not show disable wifi or cellular during oobe. |
537 bool show_toggle_wifi = wifi_available && | 540 bool show_toggle_wifi = wifi_available && |
538 (should_open_button_options || !wifi_enabled); | 541 (should_open_button_options || !wifi_enabled); |
539 bool show_toggle_mobile = mobile_available && | 542 bool show_toggle_mobile = mobile_available && |
540 (should_open_button_options || !mobile_enabled); | 543 (should_open_button_options || !mobile_enabled); |
541 | 544 |
542 if (show_toggle_wifi || show_toggle_mobile) { | 545 if (show_toggle_wifi || show_toggle_mobile) { |
543 menu_items_.push_back(MenuItem()); // Separator | 546 menu_items_.push_back(MenuItem()); // Separator |
544 | 547 |
545 if (show_toggle_wifi) { | 548 if (show_toggle_wifi) { |
546 int id = wifi_enabled ? IDS_STATUSBAR_NETWORK_DEVICE_DISABLE : | 549 int id = wifi_enabled ? IDS_STATUSBAR_NETWORK_DEVICE_DISABLE : |
547 IDS_STATUSBAR_NETWORK_DEVICE_ENABLE; | 550 IDS_STATUSBAR_NETWORK_DEVICE_ENABLE; |
548 label = l10n_util::GetStringFUTF16(id, | 551 label = l10n_util::GetStringFUTF16(id, |
549 l10n_util::GetStringUTF16(IDS_STATUSBAR_NETWORK_DEVICE_WIFI)); | 552 l10n_util::GetStringUTF16(IDS_STATUSBAR_NETWORK_DEVICE_WIFI)); |
550 int flag = FLAG_TOGGLE_WIFI; | 553 int flag = FLAG_TOGGLE_WIFI; |
551 if (wifi_state == NetworkStateHandler::TECHNOLOGY_ENABLING) | 554 if (wifi_state == NetworkStateHandler::TECHNOLOGY_ENABLING) |
552 flag |= FLAG_DISABLED; | 555 flag |= FLAG_DISABLED; |
553 menu_items_.push_back(MenuItem(ui::MenuModel::TYPE_COMMAND, label, | 556 menu_items_.push_back(MenuItem(ui::MenuModel::TYPE_COMMAND, label, |
554 gfx::ImageSkia(), std::string(), flag)); | 557 gfx::ImageSkia(), std::string(), flag)); |
555 } | 558 } |
556 | 559 |
557 if (show_toggle_mobile) { | 560 if (show_toggle_mobile) { |
558 const DeviceState* mobile_device = | 561 const DeviceState* mobile_device = |
559 handler->GetDeviceStateByType(NetworkStateHandler::kMatchTypeMobile); | 562 handler->GetDeviceStateByType(NetworkTypePattern::Mobile()); |
560 bool is_locked = mobile_device && !mobile_device->sim_lock_type().empty(); | 563 bool is_locked = mobile_device && !mobile_device->sim_lock_type().empty(); |
561 int id = (mobile_enabled && !is_locked) | 564 int id = (mobile_enabled && !is_locked) |
562 ? IDS_STATUSBAR_NETWORK_DEVICE_DISABLE | 565 ? IDS_STATUSBAR_NETWORK_DEVICE_DISABLE |
563 : IDS_STATUSBAR_NETWORK_DEVICE_ENABLE; | 566 : IDS_STATUSBAR_NETWORK_DEVICE_ENABLE; |
564 label = l10n_util::GetStringFUTF16(id, | 567 label = l10n_util::GetStringFUTF16(id, |
565 l10n_util::GetStringUTF16(IDS_STATUSBAR_NETWORK_DEVICE_CELLULAR)); | 568 l10n_util::GetStringUTF16(IDS_STATUSBAR_NETWORK_DEVICE_CELLULAR)); |
566 gfx::ImageSkia icon; | 569 gfx::ImageSkia icon; |
567 int flag = FLAG_TOGGLE_MOBILE; | 570 int flag = FLAG_TOGGLE_MOBILE; |
568 if (mobile_state == NetworkStateHandler::TECHNOLOGY_ENABLING) | 571 if (mobile_state == NetworkStateHandler::TECHNOLOGY_ENABLING) |
569 flag |= FLAG_DISABLED; | 572 flag |= FLAG_DISABLED; |
(...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
614 if (default_network) { | 617 if (default_network) { |
615 std::string ip_address = default_network->ip_address(); | 618 std::string ip_address = default_network->ip_address(); |
616 if (!ip_address.empty()) { | 619 if (!ip_address.empty()) { |
617 address_items.push_back(MenuItem(ui::MenuModel::TYPE_COMMAND, | 620 address_items.push_back(MenuItem(ui::MenuModel::TYPE_COMMAND, |
618 ASCIIToUTF16(ip_address), gfx::ImageSkia(), std::string(), | 621 ASCIIToUTF16(ip_address), gfx::ImageSkia(), std::string(), |
619 FLAG_DISABLED)); | 622 FLAG_DISABLED)); |
620 } | 623 } |
621 } | 624 } |
622 | 625 |
623 std::string ethernet_address = | 626 std::string ethernet_address = |
624 handler->FormattedHardwareAddressForType(flimflam::kTypeEthernet); | 627 handler->FormattedHardwareAddressForType(NetworkTypePattern::Ethernet()); |
625 if (!ethernet_address.empty()) { | 628 if (!ethernet_address.empty()) { |
626 std::string label = l10n_util::GetStringUTF8( | 629 std::string label = l10n_util::GetStringUTF8( |
627 IDS_STATUSBAR_NETWORK_DEVICE_ETHERNET) + " " + ethernet_address; | 630 IDS_STATUSBAR_NETWORK_DEVICE_ETHERNET) + " " + ethernet_address; |
628 address_items.push_back(MenuItem( | 631 address_items.push_back(MenuItem( |
629 ui::MenuModel::TYPE_COMMAND, | 632 ui::MenuModel::TYPE_COMMAND, |
630 UTF8ToUTF16(label), gfx::ImageSkia(), std::string(), FLAG_DISABLED)); | 633 UTF8ToUTF16(label), gfx::ImageSkia(), std::string(), FLAG_DISABLED)); |
631 } | 634 } |
632 | 635 |
633 std::string wifi_address = | 636 std::string wifi_address = |
634 handler->FormattedHardwareAddressForType(flimflam::kTypeWifi); | 637 handler->FormattedHardwareAddressForType(NetworkTypePattern::WiFi()); |
635 if (!wifi_address.empty()) { | 638 if (!wifi_address.empty()) { |
636 std::string label = l10n_util::GetStringUTF8( | 639 std::string label = l10n_util::GetStringUTF8( |
637 IDS_STATUSBAR_NETWORK_DEVICE_WIFI) + " " + wifi_address; | 640 IDS_STATUSBAR_NETWORK_DEVICE_WIFI) + " " + wifi_address; |
638 address_items.push_back(MenuItem( | 641 address_items.push_back(MenuItem( |
639 ui::MenuModel::TYPE_COMMAND, | 642 ui::MenuModel::TYPE_COMMAND, |
640 UTF8ToUTF16(label), gfx::ImageSkia(), std::string(), FLAG_DISABLED)); | 643 UTF8ToUTF16(label), gfx::ImageSkia(), std::string(), FLAG_DISABLED)); |
641 } | 644 } |
642 | 645 |
643 menu_items_ = link_items; | 646 menu_items_ = link_items; |
644 if (!menu_items_.empty() && address_items.size() > 1) | 647 if (!menu_items_.empty() && address_items.size() > 1) |
(...skipping 26 matching lines...) Expand all Loading... |
671 return main_menu_model_.get(); | 674 return main_menu_model_.get(); |
672 } | 675 } |
673 | 676 |
674 void NetworkMenu::UpdateMenu() { | 677 void NetworkMenu::UpdateMenu() { |
675 refreshing_menu_ = true; | 678 refreshing_menu_ = true; |
676 main_menu_model_->InitMenuItems(delegate_->ShouldOpenButtonOptions()); | 679 main_menu_model_->InitMenuItems(delegate_->ShouldOpenButtonOptions()); |
677 refreshing_menu_ = false; | 680 refreshing_menu_ = false; |
678 } | 681 } |
679 | 682 |
680 } // namespace chromeos | 683 } // namespace chromeos |
OLD | NEW |