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

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

Issue 2435903002: Move tray code from ui/chromeos/network/ (Closed)
Patch Set: . Created 4 years, 2 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
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 <stddef.h> 7 #include <stddef.h>
8 8
9 #include <algorithm> 9 #include <algorithm>
10 10
11 #include "ash/common/strings/grit/ash_strings.h"
12 #include "ash/common/system/chromeos/network/network_icon.h"
11 #include "base/bind.h" 13 #include "base/bind.h"
12 #include "base/logging.h" 14 #include "base/logging.h"
13 #include "base/macros.h" 15 #include "base/macros.h"
14 #include "base/strings/stringprintf.h" 16 #include "base/strings/stringprintf.h"
15 #include "base/strings/utf_string_conversions.h" 17 #include "base/strings/utf_string_conversions.h"
16 #include "chrome/browser/chromeos/mobile_config.h" 18 #include "chrome/browser/chromeos/mobile_config.h"
17 #include "chrome/browser/chromeos/options/network_config_view.h" 19 #include "chrome/browser/chromeos/options/network_config_view.h"
18 #include "chrome/browser/chromeos/sim_dialog_delegate.h" 20 #include "chrome/browser/chromeos/sim_dialog_delegate.h"
19 #include "chrome/browser/chromeos/ui/choose_mobile_network_dialog.h" 21 #include "chrome/browser/chromeos/ui/choose_mobile_network_dialog.h"
20 #include "chrome/browser/defaults.h" 22 #include "chrome/browser/defaults.h"
21 #include "chrome/browser/profiles/profile_manager.h" 23 #include "chrome/browser/profiles/profile_manager.h"
22 #include "chrome/common/url_constants.h" 24 #include "chrome/common/url_constants.h"
23 #include "chrome/grit/generated_resources.h" 25 #include "chrome/grit/generated_resources.h"
24 #include "chromeos/network/device_state.h" 26 #include "chromeos/network/device_state.h"
25 #include "chromeos/network/network_connect.h" 27 #include "chromeos/network/network_connect.h"
26 #include "chromeos/network/network_state.h" 28 #include "chromeos/network/network_state.h"
27 #include "chromeos/network/network_state_handler.h" 29 #include "chromeos/network/network_state_handler.h"
28 #include "third_party/cros_system_api/dbus/service_constants.h" 30 #include "third_party/cros_system_api/dbus/service_constants.h"
29 #include "ui/base/l10n/l10n_util.h" 31 #include "ui/base/l10n/l10n_util.h"
30 #include "ui/base/models/menu_model.h" 32 #include "ui/base/models/menu_model.h"
31 #include "ui/base/resource/resource_bundle.h" 33 #include "ui/base/resource/resource_bundle.h"
32 #include "ui/chromeos/network/network_icon.h"
33 #include "ui/chromeos/strings/grit/ui_chromeos_strings.h"
34 #include "ui/gfx/image/image_skia.h" 34 #include "ui/gfx/image/image_skia.h"
35 35
36 namespace chromeos { 36 namespace chromeos {
37 37
38 namespace { 38 namespace {
39 39
40 // Offsets for views menu ids (main menu and submenu ids use the same 40 // Offsets for views menu ids (main menu and submenu ids use the same
41 // namespace). 41 // namespace).
42 const int kMainIndexMask = 0x1000; 42 const int kMainIndexMask = 0x1000;
43 const int kMoreIndexMask = 0x4000; 43 const int kMoreIndexMask = 0x4000;
(...skipping 316 matching lines...) Expand 10 before | Expand all | Expand 10 after
360 } else { 360 } else {
361 label = base::UTF8ToUTF16(wifi_name); 361 label = base::UTF8ToUTF16(wifi_name);
362 } 362 }
363 363
364 // We do not have convenient access to whether or not it might be possible 364 // We do not have convenient access to whether or not it might be possible
365 // to connect to a wireless network (e.g. whether certs are required), so all 365 // to connect to a wireless network (e.g. whether certs are required), so all
366 // entries are enabled. 366 // entries are enabled.
367 367
368 if (ShouldHighlightNetwork(network)) 368 if (ShouldHighlightNetwork(network))
369 flag |= FLAG_ASSOCIATED; 369 flag |= FLAG_ASSOCIATED;
370 const gfx::ImageSkia icon = ui::network_icon::GetImageForNetwork( 370 const gfx::ImageSkia icon = ash::network_icon::GetImageForNetwork(
371 network, ui::network_icon::ICON_TYPE_LIST); 371 network, ash::network_icon::ICON_TYPE_LIST);
372 menu_items_.push_back( 372 menu_items_.push_back(
373 MenuItem(ui::MenuModel::TYPE_COMMAND, 373 MenuItem(ui::MenuModel::TYPE_COMMAND,
374 label, icon, network->path(), flag)); 374 label, icon, network->path(), flag));
375 } 375 }
376 376
377 void MainMenuModel::AddMessageItem(const base::string16& msg) { 377 void MainMenuModel::AddMessageItem(const base::string16& msg) {
378 menu_items_.push_back(MenuItem( 378 menu_items_.push_back(MenuItem(
379 ui::MenuModel::TYPE_COMMAND, msg, 379 ui::MenuModel::TYPE_COMMAND, msg,
380 gfx::ImageSkia(), std::string(), FLAG_DISABLED)); 380 gfx::ImageSkia(), std::string(), FLAG_DISABLED));
381 } 381 }
(...skipping 18 matching lines...) Expand all
400 label = l10n_util::GetStringFUTF16( 400 label = l10n_util::GetStringFUTF16(
401 IDS_STATUSBAR_NETWORK_DEVICE_STATUS, 401 IDS_STATUSBAR_NETWORK_DEVICE_STATUS,
402 l10n_util::GetStringUTF16(IDS_STATUSBAR_NETWORK_DEVICE_ETHERNET), 402 l10n_util::GetStringUTF16(IDS_STATUSBAR_NETWORK_DEVICE_ETHERNET),
403 l10n_util::GetStringUTF16(IDS_STATUSBAR_NETWORK_DEVICE_CONNECTING)); 403 l10n_util::GetStringUTF16(IDS_STATUSBAR_NETWORK_DEVICE_CONNECTING));
404 } else { 404 } else {
405 label = l10n_util::GetStringUTF16(IDS_STATUSBAR_NETWORK_DEVICE_ETHERNET); 405 label = l10n_util::GetStringUTF16(IDS_STATUSBAR_NETWORK_DEVICE_ETHERNET);
406 } 406 }
407 int flag = FLAG_ETHERNET; 407 int flag = FLAG_ETHERNET;
408 if (ShouldHighlightNetwork(ethernet_network)) 408 if (ShouldHighlightNetwork(ethernet_network))
409 flag |= FLAG_ASSOCIATED; 409 flag |= FLAG_ASSOCIATED;
410 const gfx::ImageSkia icon = ui::network_icon::GetImageForNetwork( 410 const gfx::ImageSkia icon = ash::network_icon::GetImageForNetwork(
411 ethernet_network, ui::network_icon::ICON_TYPE_LIST); 411 ethernet_network, ash::network_icon::ICON_TYPE_LIST);
412 menu_items_.push_back(MenuItem(ui::MenuModel::TYPE_COMMAND, 412 menu_items_.push_back(MenuItem(ui::MenuModel::TYPE_COMMAND,
413 label, icon, std::string(), flag)); 413 label, icon, std::string(), flag));
414 } 414 }
415 415
416 // Get the list of all networks. 416 // Get the list of all networks.
417 NetworkStateHandler::NetworkStateList network_list; 417 NetworkStateHandler::NetworkStateList network_list;
418 handler->GetVisibleNetworkList(&network_list); 418 handler->GetVisibleNetworkList(&network_list);
419 419
420 // Cellular Networks 420 // Cellular Networks
421 if (handler->IsTechnologyEnabled(NetworkTypePattern::Cellular())) { 421 if (handler->IsTechnologyEnabled(NetworkTypePattern::Cellular())) {
(...skipping 19 matching lines...) Expand all
441 base::UTF8ToUTF16(network_name), 441 base::UTF8ToUTF16(network_name),
442 l10n_util::GetStringUTF16(IDS_STATUSBAR_NETWORK_DEVICE_CONNECTING)); 442 l10n_util::GetStringUTF16(IDS_STATUSBAR_NETWORK_DEVICE_CONNECTING));
443 } else { 443 } else {
444 label = base::UTF8ToUTF16(network_name); 444 label = base::UTF8ToUTF16(network_name);
445 } 445 }
446 446
447 int flag = FLAG_CELLULAR; 447 int flag = FLAG_CELLULAR;
448 bool isActive = ShouldHighlightNetwork(network); 448 bool isActive = ShouldHighlightNetwork(network);
449 if (isActive) 449 if (isActive)
450 flag |= FLAG_ASSOCIATED; 450 flag |= FLAG_ASSOCIATED;
451 const gfx::ImageSkia icon = ui::network_icon::GetImageForNetwork( 451 const gfx::ImageSkia icon = ash::network_icon::GetImageForNetwork(
452 network, ui::network_icon::ICON_TYPE_LIST); 452 network, ash::network_icon::ICON_TYPE_LIST);
453 menu_items_.push_back( 453 menu_items_.push_back(
454 MenuItem(ui::MenuModel::TYPE_COMMAND, 454 MenuItem(ui::MenuModel::TYPE_COMMAND,
455 label, icon, network->path(), flag)); 455 label, icon, network->path(), flag));
456 } 456 }
457 457
458 // For GSM add cellular network scan. 458 // For GSM add cellular network scan.
459 const DeviceState* cellular_device = 459 const DeviceState* cellular_device =
460 handler->GetDeviceStateByType(NetworkTypePattern::Cellular()); 460 handler->GetDeviceStateByType(NetworkTypePattern::Cellular());
461 if (cellular_device && cellular_device->support_network_scan()) { 461 if (cellular_device && cellular_device->support_network_scan()) {
462 const gfx::ImageSkia icon = 462 const gfx::ImageSkia icon =
463 ui::network_icon::GetImageForDisconnectedCellNetwork(); 463 ash::network_icon::GetImageForDisconnectedCellNetwork();
464 menu_items_.push_back(MenuItem( 464 menu_items_.push_back(MenuItem(
465 ui::MenuModel::TYPE_COMMAND, 465 ui::MenuModel::TYPE_COMMAND,
466 l10n_util::GetStringUTF16( 466 l10n_util::GetStringUTF16(
467 IDS_OPTIONS_SETTINGS_OTHER_CELLULAR_NETWORKS), 467 IDS_OPTIONS_SETTINGS_OTHER_CELLULAR_NETWORKS),
468 icon, std::string(), FLAG_ADD_CELLULAR)); 468 icon, std::string(), FLAG_ADD_CELLULAR));
469 } 469 }
470 } else { 470 } else {
471 int initializing_message_id = 471 int initializing_message_id =
472 ui::network_icon::GetCellularUninitializedMsg(); 472 ash::network_icon::GetCellularUninitializedMsg();
473 if (initializing_message_id) { 473 if (initializing_message_id) {
474 // Initializing cellular modem... 474 // Initializing cellular modem...
475 AddMessageItem(l10n_util::GetStringUTF16(initializing_message_id)); 475 AddMessageItem(l10n_util::GetStringUTF16(initializing_message_id));
476 } 476 }
477 } 477 }
478 478
479 // Wimax Networks 479 // Wimax Networks
480 if (handler->IsTechnologyEnabled(NetworkTypePattern::Wimax())) { 480 if (handler->IsTechnologyEnabled(NetworkTypePattern::Wimax())) {
481 // List Wimax networks. 481 // List Wimax networks.
482 for (NetworkStateHandler::NetworkStateList::const_iterator iter = 482 for (NetworkStateHandler::NetworkStateList::const_iterator iter =
(...skipping 19 matching lines...) Expand all
502 // Add 'Searching for Wi-Fi networks...' after connected networks. 502 // Add 'Searching for Wi-Fi networks...' after connected networks.
503 if (scanning_msg && !network->IsConnectedState()) { 503 if (scanning_msg && !network->IsConnectedState()) {
504 AddMessageItem(l10n_util::GetStringUTF16(scanning_msg)); 504 AddMessageItem(l10n_util::GetStringUTF16(scanning_msg));
505 scanning_msg = 0; 505 scanning_msg = 0;
506 } 506 }
507 AddWirelessNetworkMenuItem(network, FLAG_WIFI); 507 AddWirelessNetworkMenuItem(network, FLAG_WIFI);
508 } 508 }
509 if (scanning_msg) 509 if (scanning_msg)
510 AddMessageItem(l10n_util::GetStringUTF16(scanning_msg)); 510 AddMessageItem(l10n_util::GetStringUTF16(scanning_msg));
511 const gfx::ImageSkia icon = 511 const gfx::ImageSkia icon =
512 ui::network_icon::GetImageForConnectedMobileNetwork(); 512 ash::network_icon::GetImageForConnectedMobileNetwork();
513 menu_items_.push_back(MenuItem( 513 menu_items_.push_back(MenuItem(
514 ui::MenuModel::TYPE_COMMAND, 514 ui::MenuModel::TYPE_COMMAND,
515 l10n_util::GetStringUTF16(IDS_OPTIONS_SETTINGS_OTHER_WIFI_NETWORKS), 515 l10n_util::GetStringUTF16(IDS_OPTIONS_SETTINGS_OTHER_WIFI_NETWORKS),
516 icon, std::string(), FLAG_ADD_WIFI)); 516 icon, std::string(), FLAG_ADD_WIFI));
517 } 517 }
518 518
519 if (menu_items_.empty()) { 519 if (menu_items_.empty()) {
520 // No networks available (and not initializing cellular or wifi scanning) 520 // No networks available (and not initializing cellular or wifi scanning)
521 AddMessageItem(l10n_util::GetStringFUTF16( 521 AddMessageItem(l10n_util::GetStringFUTF16(
522 IDS_STATUSBAR_NETWORK_MENU_ITEM_INDENT, 522 IDS_STATUSBAR_NETWORK_MENU_ITEM_INDENT,
(...skipping 151 matching lines...) Expand 10 before | Expand all | Expand 10 after
674 return main_menu_model_.get(); 674 return main_menu_model_.get();
675 } 675 }
676 676
677 void NetworkMenu::UpdateMenu() { 677 void NetworkMenu::UpdateMenu() {
678 refreshing_menu_ = true; 678 refreshing_menu_ = true;
679 main_menu_model_->InitMenuItems(delegate_->ShouldOpenButtonOptions()); 679 main_menu_model_->InitMenuItems(delegate_->ShouldOpenButtonOptions());
680 refreshing_menu_ = false; 680 refreshing_menu_ = false;
681 } 681 }
682 682
683 } // namespace chromeos 683 } // namespace chromeos
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698