Chromium Code Reviews| Index: extensions/browser/api/vpn_provider/vpn_service.h | 
| diff --git a/extensions/browser/api/vpn_provider/vpn_service.h b/extensions/browser/api/vpn_provider/vpn_service.h | 
| index 024430f327bcfb97f19dbf933d36897e347b3e69..919c1786c8dc64bb98869693d96083730bcdc19f 100644 | 
| --- a/extensions/browser/api/vpn_provider/vpn_service.h | 
| +++ b/extensions/browser/api/vpn_provider/vpn_service.h | 
| @@ -16,6 +16,7 @@ | 
| #include "chromeos/network/network_configuration_observer.h" | 
| #include "chromeos/network/network_state_handler_observer.h" | 
| #include "components/keyed_service/core/keyed_service.h" | 
| +#include "extensions/browser/app_window/app_window_registry.h" | 
| 
 
bartfab (slow)
2015/03/10 13:28:41
Nit: No longer needed.
 
 | 
| #include "extensions/browser/extension_registry_observer.h" | 
| #include "extensions/common/api/vpn_provider.h" | 
| @@ -34,6 +35,7 @@ class BrowserContext; | 
| namespace extensions { | 
| +class AppWindow; | 
| 
 
bartfab (slow)
2015/03/10 13:28:41
Nit: No longer needed.
 
 | 
| class EventRouter; | 
| class ExtensionRegistry; | 
| @@ -48,6 +50,7 @@ class ShillThirdPartyVpnDriverClient; | 
| // The class manages the VPN configurations. | 
| class VpnService : public KeyedService, | 
| + public extensions::AppWindowRegistry::Observer, | 
| 
 
bartfab (slow)
2015/03/10 13:28:41
Nit: No longer needed.
 
 | 
| public NetworkConfigurationObserver, | 
| public NetworkStateHandlerObserver, | 
| public extensions::ExtensionRegistryObserver { | 
| @@ -59,6 +62,7 @@ class VpnService : public KeyedService, | 
| VpnService(content::BrowserContext* browser_context, | 
| const std::string& userid_hash, | 
| + extensions::AppWindowRegistry* app_window_registry, | 
| 
 
bartfab (slow)
2015/03/10 13:28:40
Nit: No longer needed.
 
 | 
| extensions::ExtensionRegistry* extension_registry, | 
| extensions::EventRouter* event_router, | 
| ShillThirdPartyVpnDriverClient* shill_client, | 
| @@ -91,6 +95,14 @@ class VpnService : public KeyedService, | 
| const extensions::Extension* extension, | 
| extensions::UninstallReason reason) override; | 
| 
 
bartfab (slow)
2015/03/10 13:28:41
Nit: Remove blank linke to make it clear that this
 
 | 
| + void OnExtensionUnloaded( | 
| + content::BrowserContext* browser_context, | 
| + const extensions::Extension* extension, | 
| + extensions::UnloadedExtensionInfo::Reason reason) override; | 
| + | 
| + // AppWindowRegistry::Observer: | 
| + void OnAppWindowRemoved(extensions::AppWindow* app_window) override; | 
| 
 
bartfab (slow)
2015/03/10 13:28:40
Nit: As discussed offline, we do not need this.
 
 | 
| + | 
| // Creates a new VPN configuration with |configuration_name| as the name and | 
| // attaches it to the extension with id |extension_id|. | 
| // Calls |success| or |failure| based on the outcome. | 
| @@ -193,6 +205,7 @@ class VpnService : public KeyedService, | 
| content::BrowserContext* browser_context_; | 
| std::string userid_hash_; | 
| + extensions::AppWindowRegistry* app_window_registry_; | 
| 
 
bartfab (slow)
2015/03/10 13:28:40
Nit: No longer needed.
 
 | 
| extensions::ExtensionRegistry* extension_registry_; | 
| extensions::EventRouter* event_router_; | 
| ShillThirdPartyVpnDriverClient* shill_client_; |