Chromium Code Reviews| Index: ash/system/network/network_icon.cc |
| diff --git a/ash/system/network/network_icon.cc b/ash/system/network/network_icon.cc |
| index 39eea46a6964d0a46b28c29af2753585a9434f28..674d286bbef35a791378ba7f7edc03f3891ef52e 100644 |
| --- a/ash/system/network/network_icon.cc |
| +++ b/ash/system/network/network_icon.cc |
| @@ -436,21 +436,14 @@ gfx::ImageSkia GetImageForIndex(ImageType image_type, |
| return gfx::ImageSkia(source, source->size()); |
| } |
| -// Returns an image to represent either a fully connected/enabled network or a |
| -// disconnected/disabled network. |
| +// Returns an image to represent either a fully connected network or a |
| +// disconnected network. |
| const gfx::ImageSkia GetBasicImage(bool connected, |
| IconType icon_type, |
| const std::string& network_type) { |
| DCHECK_NE(shill::kTypeVPN, network_type); |
| - SignalStrengthImageSource* source = new SignalStrengthImageSource( |
| - ImageTypeForNetworkType(network_type), icon_type, kNumNetworkImages - 1); |
| - gfx::ImageSkia icon = gfx::ImageSkia(source, source->size()); |
| - Badges badges; |
| - if (!connected) { |
| - badges.center = {&kNetworkBadgeOffIcon, |
| - GetDefaultColorForIconType(icon_type)}; |
| - } |
| - return NetworkIconImageSource::CreateImage(icon, badges); |
| + return GetImageForIndex(ImageTypeForNetworkType(network_type), icon_type, |
| + connected ? kNumNetworkImages - 1 : 0); |
| } |
| gfx::ImageSkia* ConnectingWirelessImage(ImageType image_type, |
| @@ -769,8 +762,14 @@ gfx::ImageSkia GetImageForNetwork(const NetworkState* network, |
| return icon->image(); |
| } |
| -gfx::ImageSkia GetBasicImageForWiFiNetwork(bool connected) { |
| - return GetBasicImage(connected, ICON_TYPE_LIST, shill::kTypeWifi); |
| +gfx::ImageSkia GetImageForWiFiChipState(bool enabled, IconType icon_type) { |
| + gfx::ImageSkia image = GetBasicImage(true, icon_type, shill::kTypeWifi); |
|
stevenjb
2017/04/17 16:22:52
true /* connected */,
Evan Stade
2017/04/17 16:29:33
Done.
|
| + Badges badges; |
| + if (!enabled) { |
| + badges.center = {&kNetworkBadgeOffIcon, |
| + GetDefaultColorForIconType(icon_type)}; |
| + } |
| + return NetworkIconImageSource::CreateImage(image, badges); |
| } |
| gfx::ImageSkia GetImageForDisconnectedCellNetwork() { |
| @@ -930,8 +929,14 @@ void GetDefaultNetworkImageAndLabel(IconType icon_type, |
| *label = l10n_util::GetStringUTF16(uninitialized_msg); |
| *animating = true; |
| } else { |
| - // Otherwise show the disconnected wifi icon. |
| - *image = GetBasicImage(false, icon_type, shill::kTypeWifi); |
| + // Otherwise show a Wi-Fi icon. If Wi-Fi is disabled, show a full icon |
| + // with a strikethrough. If it's enabled then it's disconnected, so show |
| + // an empty wedge. |
| + bool wifi_enabled = |
| + NetworkHandler::Get()->network_state_handler()->IsTechnologyEnabled( |
| + NetworkTypePattern::WiFi()); |
| + *image = wifi_enabled ? GetBasicImage(false, icon_type, shill::kTypeWifi) |
|
stevenjb
2017/04/17 16:22:52
false /* not connected */,
Evan Stade
2017/04/17 16:29:33
Done.
|
| + : GetImageForWiFiChipState(false, icon_type); |
|
stevenjb
2017/04/17 16:22:52
false /* not enabled */
Evan Stade
2017/04/17 16:29:33
Done.
|
| if (label) { |
| *label = l10n_util::GetStringUTF16( |
| IDS_ASH_STATUS_TRAY_NETWORK_NOT_CONNECTED); |