Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(195)

Side by Side Diff: chrome/browser/chromeos/status/network_menu.cc

Issue 23712002: Cleanup network type matching. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Added unit tests and rebased. Created 7 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
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
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 226 matching lines...) Expand 10 before | Expand all | Expand 10 after
299 300
300 void NetworkMenuModel::ActivatedAt(int index) { 301 void NetworkMenuModel::ActivatedAt(int index) {
301 // When we are refreshing the menu, ignore menu item activation. 302 // When we are refreshing the menu, ignore menu item activation.
302 if (owner_->refreshing_menu_) 303 if (owner_->refreshing_menu_)
303 return; 304 return;
304 305
305 int flags = menu_items_[index].flags; 306 int flags = menu_items_[index].flags;
306 if (flags & FLAG_OPTIONS) { 307 if (flags & FLAG_OPTIONS) {
307 owner_->delegate()->OpenButtonOptions(); 308 owner_->delegate()->OpenButtonOptions();
308 } else if (flags & FLAG_TOGGLE_WIFI) { 309 } else if (flags & FLAG_TOGGLE_WIFI) {
309 ToggleTechnology(flimflam::kTypeWifi); 310 ToggleTechnology(NetworkTypePattern::WiFi());
310 } else if (flags & FLAG_TOGGLE_MOBILE) { 311 } else if (flags & FLAG_TOGGLE_MOBILE) {
311 ToggleTechnology(NetworkStateHandler::kMatchTypeMobile); 312 ToggleTechnology(NetworkTypePattern::Mobile());
312 } else if (flags & FLAG_ETHERNET) { 313 } else if (flags & FLAG_ETHERNET) {
313 // Do nothing (used in login screen only) 314 // Do nothing (used in login screen only)
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 } else if (flags & FLAG_ADD_WIFI) { 317 } else if (flags & FLAG_ADD_WIFI) {
317 ShowOther(flimflam::kTypeWifi); 318 ShowOther(flimflam::kTypeWifi);
318 } else if (flags & FLAG_ADD_CELLULAR) { 319 } else if (flags & FLAG_ADD_CELLULAR) {
319 ShowOther(flimflam::kTypeCellular); 320 ShowOther(flimflam::kTypeCellular);
320 } 321 }
321 } 322 }
(...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after
378 void MainMenuModel::InitMenuItems(bool should_open_button_options) { 379 void MainMenuModel::InitMenuItems(bool should_open_button_options) {
379 menu_items_.clear(); 380 menu_items_.clear();
380 381
381 NetworkStateHandler* handler = NetworkHandler::Get()->network_state_handler(); 382 NetworkStateHandler* handler = NetworkHandler::Get()->network_state_handler();
382 383
383 // Populate our MenuItems with the current list of networks. 384 // Populate our MenuItems with the current list of networks.
384 string16 label; 385 string16 label;
385 386
386 // Ethernet 387 // Ethernet
387 // Only display an ethernet icon if enabled, and an ethernet network exists. 388 // Only display an ethernet icon if enabled, and an ethernet network exists.
388 bool ethernet_enabled = handler->IsTechnologyEnabled(flimflam::kTypeEthernet); 389 bool ethernet_enabled =
390 handler->IsTechnologyEnabled(NetworkTypePattern::Ethernet());
389 const NetworkState* ethernet_network = 391 const NetworkState* ethernet_network =
390 handler->FirstNetworkByType(flimflam::kTypeEthernet); 392 handler->FirstNetworkByType(NetworkTypePattern::Ethernet());
391 if (ethernet_enabled && ethernet_network) { 393 if (ethernet_enabled && ethernet_network) {
392 bool ethernet_connecting = ethernet_network->IsConnectingState(); 394 bool ethernet_connecting = ethernet_network->IsConnectingState();
393 if (ethernet_connecting) { 395 if (ethernet_connecting) {
394 label = l10n_util::GetStringFUTF16( 396 label = l10n_util::GetStringFUTF16(
395 IDS_STATUSBAR_NETWORK_DEVICE_STATUS, 397 IDS_STATUSBAR_NETWORK_DEVICE_STATUS,
396 l10n_util::GetStringUTF16(IDS_STATUSBAR_NETWORK_DEVICE_ETHERNET), 398 l10n_util::GetStringUTF16(IDS_STATUSBAR_NETWORK_DEVICE_ETHERNET),
397 l10n_util::GetStringUTF16(IDS_STATUSBAR_NETWORK_DEVICE_CONNECTING)); 399 l10n_util::GetStringUTF16(IDS_STATUSBAR_NETWORK_DEVICE_CONNECTING));
398 } else { 400 } else {
399 label = l10n_util::GetStringUTF16(IDS_STATUSBAR_NETWORK_DEVICE_ETHERNET); 401 label = l10n_util::GetStringUTF16(IDS_STATUSBAR_NETWORK_DEVICE_ETHERNET);
400 } 402 }
401 int flag = FLAG_ETHERNET; 403 int flag = FLAG_ETHERNET;
402 if (ShouldHighlightNetwork(ethernet_network)) 404 if (ShouldHighlightNetwork(ethernet_network))
403 flag |= FLAG_ASSOCIATED; 405 flag |= FLAG_ASSOCIATED;
404 const gfx::ImageSkia icon = ash::network_icon::GetImageForNetwork( 406 const gfx::ImageSkia icon = ash::network_icon::GetImageForNetwork(
405 ethernet_network, ash::network_icon::ICON_TYPE_LIST); 407 ethernet_network, ash::network_icon::ICON_TYPE_LIST);
406 menu_items_.push_back(MenuItem(ui::MenuModel::TYPE_COMMAND, 408 menu_items_.push_back(MenuItem(ui::MenuModel::TYPE_COMMAND,
407 label, icon, std::string(), flag)); 409 label, icon, std::string(), flag));
408 } 410 }
409 411
410 // Get the list of all networks. 412 // Get the list of all networks.
411 NetworkStateHandler::NetworkStateList network_list; 413 NetworkStateHandler::NetworkStateList network_list;
412 handler->GetNetworkList(&network_list); 414 handler->GetNetworkList(&network_list);
413 415
414 // Cellular Networks 416 // Cellular Networks
415 if (handler->IsTechnologyEnabled(flimflam::kTypeCellular)) { 417 if (handler->IsTechnologyEnabled(NetworkTypePattern::Cellular())) {
416 // List Cellular networks. 418 // List Cellular networks.
417 for (NetworkStateHandler::NetworkStateList::const_iterator iter = 419 for (NetworkStateHandler::NetworkStateList::const_iterator iter =
418 network_list.begin(); iter != network_list.end(); ++iter) { 420 network_list.begin(); iter != network_list.end(); ++iter) {
419 const NetworkState* network = *iter; 421 const NetworkState* network = *iter;
420 if (network->type() != flimflam::kTypeCellular) 422 if (network->type() != flimflam::kTypeCellular)
421 continue; 423 continue;
422 std::string activation_state = network->activation_state(); 424 std::string activation_state = network->activation_state();
423 425
424 // This is only used in the login screen; do not show unactivated 426 // This is only used in the login screen; do not show unactivated
425 // networks. 427 // networks.
(...skipping 18 matching lines...) Expand all
444 flag |= FLAG_ASSOCIATED; 446 flag |= FLAG_ASSOCIATED;
445 const gfx::ImageSkia icon = ash::network_icon::GetImageForNetwork( 447 const gfx::ImageSkia icon = ash::network_icon::GetImageForNetwork(
446 network, ash::network_icon::ICON_TYPE_LIST); 448 network, ash::network_icon::ICON_TYPE_LIST);
447 menu_items_.push_back( 449 menu_items_.push_back(
448 MenuItem(ui::MenuModel::TYPE_COMMAND, 450 MenuItem(ui::MenuModel::TYPE_COMMAND,
449 label, icon, network->path(), flag)); 451 label, icon, network->path(), flag));
450 } 452 }
451 453
452 // For GSM add cellular network scan. 454 // For GSM add cellular network scan.
453 const DeviceState* cellular_device = 455 const DeviceState* cellular_device =
454 handler->GetDeviceStateByType(flimflam::kTypeCellular); 456 handler->GetDeviceStateByType(NetworkTypePattern::Cellular());
455 if (cellular_device && cellular_device->support_network_scan()) { 457 if (cellular_device && cellular_device->support_network_scan()) {
456 const gfx::ImageSkia icon = 458 const gfx::ImageSkia icon =
457 ash::network_icon::GetImageForDisconnectedNetwork( 459 ash::network_icon::GetImageForDisconnectedNetwork(
458 ash::network_icon::ICON_TYPE_LIST, flimflam::kTypeCellular); 460 ash::network_icon::ICON_TYPE_LIST, flimflam::kTypeCellular);
459 menu_items_.push_back(MenuItem( 461 menu_items_.push_back(MenuItem(
460 ui::MenuModel::TYPE_COMMAND, 462 ui::MenuModel::TYPE_COMMAND,
461 l10n_util::GetStringUTF16( 463 l10n_util::GetStringUTF16(
462 IDS_OPTIONS_SETTINGS_OTHER_CELLULAR_NETWORKS), 464 IDS_OPTIONS_SETTINGS_OTHER_CELLULAR_NETWORKS),
463 icon, std::string(), FLAG_ADD_CELLULAR)); 465 icon, std::string(), FLAG_ADD_CELLULAR));
464 } 466 }
465 } else { 467 } else {
466 int initializing_message_id = 468 int initializing_message_id =
467 ash::network_icon::GetCellularUninitializedMsg(); 469 ash::network_icon::GetCellularUninitializedMsg();
468 if (initializing_message_id) { 470 if (initializing_message_id) {
469 // Initializing cellular modem... 471 // Initializing cellular modem...
470 AddMessageItem(l10n_util::GetStringUTF16(initializing_message_id)); 472 AddMessageItem(l10n_util::GetStringUTF16(initializing_message_id));
471 } 473 }
472 } 474 }
473 475
474 // Wimax Networks 476 // Wimax Networks
475 if (handler->IsTechnologyEnabled(flimflam::kTypeWimax)) { 477 if (handler->IsTechnologyEnabled(NetworkTypePattern::Wimax())) {
476 // List Wimax networks. 478 // List Wimax networks.
477 for (NetworkStateHandler::NetworkStateList::const_iterator iter = 479 for (NetworkStateHandler::NetworkStateList::const_iterator iter =
478 network_list.begin(); iter != network_list.end(); ++iter) { 480 network_list.begin(); iter != network_list.end(); ++iter) {
479 const NetworkState* network = *iter; 481 const NetworkState* network = *iter;
480 if (network->type() != flimflam::kTypeWimax) 482 if (network->type() != flimflam::kTypeWimax)
481 continue; 483 continue;
482 AddWirelessNetworkMenuItem(network, FLAG_WIMAX); 484 AddWirelessNetworkMenuItem(network, FLAG_WIMAX);
483 } 485 }
484 } 486 }
485 487
486 // Wifi Networks 488 // Wifi Networks
487 if (handler->IsTechnologyEnabled(flimflam::kTypeWifi)) { 489 if (handler->IsTechnologyEnabled(NetworkTypePattern::WiFi())) {
488 // List Wifi networks. 490 // List Wifi networks.
489 int scanning_msg = handler->GetScanningByType(flimflam::kTypeWifi) ? 491 int scanning_msg = handler->GetScanningByType(NetworkTypePattern::WiFi())
490 IDS_ASH_STATUS_TRAY_WIFI_SCANNING_MESSAGE : 0; 492 ? IDS_ASH_STATUS_TRAY_WIFI_SCANNING_MESSAGE
493 : 0;
491 for (NetworkStateHandler::NetworkStateList::const_iterator iter = 494 for (NetworkStateHandler::NetworkStateList::const_iterator iter =
492 network_list.begin(); iter != network_list.end(); ++iter) { 495 network_list.begin(); iter != network_list.end(); ++iter) {
493 const NetworkState* network = *iter; 496 const NetworkState* network = *iter;
494 if (network->type() != flimflam::kTypeWifi) 497 if (network->type() != flimflam::kTypeWifi)
495 continue; 498 continue;
496 // Add 'Searching for Wi-Fi networks...' after connected networks. 499 // Add 'Searching for Wi-Fi networks...' after connected networks.
497 if (scanning_msg && !network->IsConnectedState()) { 500 if (scanning_msg && !network->IsConnectedState()) {
498 AddMessageItem(l10n_util::GetStringUTF16(scanning_msg)); 501 AddMessageItem(l10n_util::GetStringUTF16(scanning_msg));
499 scanning_msg = 0; 502 scanning_msg = 0;
500 } 503 }
(...skipping 12 matching lines...) Expand all
513 516
514 if (menu_items_.empty()) { 517 if (menu_items_.empty()) {
515 // No networks available (and not initializing cellular or wifi scanning) 518 // No networks available (and not initializing cellular or wifi scanning)
516 AddMessageItem(l10n_util::GetStringFUTF16( 519 AddMessageItem(l10n_util::GetStringFUTF16(
517 IDS_STATUSBAR_NETWORK_MENU_ITEM_INDENT, 520 IDS_STATUSBAR_NETWORK_MENU_ITEM_INDENT,
518 l10n_util::GetStringUTF16(IDS_STATUSBAR_NO_NETWORKS_MESSAGE))); 521 l10n_util::GetStringUTF16(IDS_STATUSBAR_NO_NETWORKS_MESSAGE)));
519 } 522 }
520 523
521 // Enable / Disable Technology 524 // Enable / Disable Technology
522 NetworkStateHandler::TechnologyState wifi_state = 525 NetworkStateHandler::TechnologyState wifi_state =
523 handler->GetTechnologyState(flimflam::kTypeWifi); 526 handler->GetTechnologyState(NetworkTypePattern::WiFi());
524 bool wifi_available = 527 bool wifi_available =
525 wifi_state != NetworkStateHandler::TECHNOLOGY_UNAVAILABLE; 528 wifi_state != NetworkStateHandler::TECHNOLOGY_UNAVAILABLE;
526 bool wifi_enabled = wifi_state == NetworkStateHandler::TECHNOLOGY_ENABLED; 529 bool wifi_enabled = wifi_state == NetworkStateHandler::TECHNOLOGY_ENABLED;
527 530
528 NetworkStateHandler::TechnologyState mobile_state = 531 NetworkStateHandler::TechnologyState mobile_state =
529 handler->GetTechnologyState(NetworkStateHandler::kMatchTypeMobile); 532 handler->GetTechnologyState(NetworkTypePattern::Mobile());
530 bool mobile_available = 533 bool mobile_available =
531 mobile_state != NetworkStateHandler::TECHNOLOGY_UNAVAILABLE; 534 mobile_state != NetworkStateHandler::TECHNOLOGY_UNAVAILABLE;
532 bool mobile_enabled = mobile_state == NetworkStateHandler::TECHNOLOGY_ENABLED; 535 bool mobile_enabled = mobile_state == NetworkStateHandler::TECHNOLOGY_ENABLED;
533 536
534 // Do not show disable wifi or cellular during oobe. 537 // Do not show disable wifi or cellular during oobe.
535 bool show_toggle_wifi = wifi_available && 538 bool show_toggle_wifi = wifi_available &&
536 (should_open_button_options || !wifi_enabled); 539 (should_open_button_options || !wifi_enabled);
537 bool show_toggle_mobile = mobile_available && 540 bool show_toggle_mobile = mobile_available &&
538 (should_open_button_options || !mobile_enabled); 541 (should_open_button_options || !mobile_enabled);
539 542
540 if (show_toggle_wifi || show_toggle_mobile) { 543 if (show_toggle_wifi || show_toggle_mobile) {
541 menu_items_.push_back(MenuItem()); // Separator 544 menu_items_.push_back(MenuItem()); // Separator
542 545
543 if (show_toggle_wifi) { 546 if (show_toggle_wifi) {
544 int id = wifi_enabled ? IDS_STATUSBAR_NETWORK_DEVICE_DISABLE : 547 int id = wifi_enabled ? IDS_STATUSBAR_NETWORK_DEVICE_DISABLE :
545 IDS_STATUSBAR_NETWORK_DEVICE_ENABLE; 548 IDS_STATUSBAR_NETWORK_DEVICE_ENABLE;
546 label = l10n_util::GetStringFUTF16(id, 549 label = l10n_util::GetStringFUTF16(id,
547 l10n_util::GetStringUTF16(IDS_STATUSBAR_NETWORK_DEVICE_WIFI)); 550 l10n_util::GetStringUTF16(IDS_STATUSBAR_NETWORK_DEVICE_WIFI));
548 int flag = FLAG_TOGGLE_WIFI; 551 int flag = FLAG_TOGGLE_WIFI;
549 if (wifi_state == NetworkStateHandler::TECHNOLOGY_ENABLING) 552 if (wifi_state == NetworkStateHandler::TECHNOLOGY_ENABLING)
550 flag |= FLAG_DISABLED; 553 flag |= FLAG_DISABLED;
551 menu_items_.push_back(MenuItem(ui::MenuModel::TYPE_COMMAND, label, 554 menu_items_.push_back(MenuItem(ui::MenuModel::TYPE_COMMAND, label,
552 gfx::ImageSkia(), std::string(), flag)); 555 gfx::ImageSkia(), std::string(), flag));
553 } 556 }
554 557
555 if (show_toggle_mobile) { 558 if (show_toggle_mobile) {
556 const DeviceState* mobile_device = 559 const DeviceState* mobile_device =
557 handler->GetDeviceStateByType(NetworkStateHandler::kMatchTypeMobile); 560 handler->GetDeviceStateByType(NetworkTypePattern::Mobile());
558 bool is_locked = mobile_device && !mobile_device->sim_lock_type().empty(); 561 bool is_locked = mobile_device && !mobile_device->sim_lock_type().empty();
559 int id = (mobile_enabled && !is_locked) 562 int id = (mobile_enabled && !is_locked)
560 ? IDS_STATUSBAR_NETWORK_DEVICE_DISABLE 563 ? IDS_STATUSBAR_NETWORK_DEVICE_DISABLE
561 : IDS_STATUSBAR_NETWORK_DEVICE_ENABLE; 564 : IDS_STATUSBAR_NETWORK_DEVICE_ENABLE;
562 label = l10n_util::GetStringFUTF16(id, 565 label = l10n_util::GetStringFUTF16(id,
563 l10n_util::GetStringUTF16(IDS_STATUSBAR_NETWORK_DEVICE_CELLULAR)); 566 l10n_util::GetStringUTF16(IDS_STATUSBAR_NETWORK_DEVICE_CELLULAR));
564 gfx::ImageSkia icon; 567 gfx::ImageSkia icon;
565 int flag = FLAG_TOGGLE_MOBILE; 568 int flag = FLAG_TOGGLE_MOBILE;
566 if (mobile_state == NetworkStateHandler::TECHNOLOGY_ENABLING) 569 if (mobile_state == NetworkStateHandler::TECHNOLOGY_ENABLING)
567 flag |= FLAG_DISABLED; 570 flag |= FLAG_DISABLED;
(...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after
612 if (default_network) { 615 if (default_network) {
613 std::string ip_address = default_network->ip_address(); 616 std::string ip_address = default_network->ip_address();
614 if (!ip_address.empty()) { 617 if (!ip_address.empty()) {
615 address_items.push_back(MenuItem(ui::MenuModel::TYPE_COMMAND, 618 address_items.push_back(MenuItem(ui::MenuModel::TYPE_COMMAND,
616 ASCIIToUTF16(ip_address), gfx::ImageSkia(), std::string(), 619 ASCIIToUTF16(ip_address), gfx::ImageSkia(), std::string(),
617 FLAG_DISABLED)); 620 FLAG_DISABLED));
618 } 621 }
619 } 622 }
620 623
621 std::string ethernet_address = 624 std::string ethernet_address =
622 handler->FormattedHardwareAddressForType(flimflam::kTypeEthernet); 625 handler->FormattedHardwareAddressForType(NetworkTypePattern::Ethernet());
623 if (!ethernet_address.empty()) { 626 if (!ethernet_address.empty()) {
624 std::string label = l10n_util::GetStringUTF8( 627 std::string label = l10n_util::GetStringUTF8(
625 IDS_STATUSBAR_NETWORK_DEVICE_ETHERNET) + " " + ethernet_address; 628 IDS_STATUSBAR_NETWORK_DEVICE_ETHERNET) + " " + ethernet_address;
626 address_items.push_back(MenuItem( 629 address_items.push_back(MenuItem(
627 ui::MenuModel::TYPE_COMMAND, 630 ui::MenuModel::TYPE_COMMAND,
628 UTF8ToUTF16(label), gfx::ImageSkia(), std::string(), FLAG_DISABLED)); 631 UTF8ToUTF16(label), gfx::ImageSkia(), std::string(), FLAG_DISABLED));
629 } 632 }
630 633
631 std::string wifi_address = 634 std::string wifi_address =
632 handler->FormattedHardwareAddressForType(flimflam::kTypeWifi); 635 handler->FormattedHardwareAddressForType(NetworkTypePattern::WiFi());
633 if (!wifi_address.empty()) { 636 if (!wifi_address.empty()) {
634 std::string label = l10n_util::GetStringUTF8( 637 std::string label = l10n_util::GetStringUTF8(
635 IDS_STATUSBAR_NETWORK_DEVICE_WIFI) + " " + wifi_address; 638 IDS_STATUSBAR_NETWORK_DEVICE_WIFI) + " " + wifi_address;
636 address_items.push_back(MenuItem( 639 address_items.push_back(MenuItem(
637 ui::MenuModel::TYPE_COMMAND, 640 ui::MenuModel::TYPE_COMMAND,
638 UTF8ToUTF16(label), gfx::ImageSkia(), std::string(), FLAG_DISABLED)); 641 UTF8ToUTF16(label), gfx::ImageSkia(), std::string(), FLAG_DISABLED));
639 } 642 }
640 643
641 menu_items_ = link_items; 644 menu_items_ = link_items;
642 if (!menu_items_.empty() && address_items.size() > 1) 645 if (!menu_items_.empty() && address_items.size() > 1)
(...skipping 26 matching lines...) Expand all
669 return main_menu_model_.get(); 672 return main_menu_model_.get();
670 } 673 }
671 674
672 void NetworkMenu::UpdateMenu() { 675 void NetworkMenu::UpdateMenu() {
673 refreshing_menu_ = true; 676 refreshing_menu_ = true;
674 main_menu_model_->InitMenuItems(delegate_->ShouldOpenButtonOptions()); 677 main_menu_model_->InitMenuItems(delegate_->ShouldOpenButtonOptions());
675 refreshing_menu_ = false; 678 refreshing_menu_ = false;
676 } 679 }
677 680
678 } // namespace chromeos 681 } // namespace chromeos
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698