New issue
Advanced search Search tips

Issue 651148 link

Starred by 2 users

Issue metadata

Status: Archived
Owner:
Closed: Nov 2016
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 2
Type: Bug

Blocking:
issue 665179
issue 647412



Sign in to add a comment

VPNDelegate implementation for mus

Project Member Reported by jamescook@chromium.org, Sep 28 2016

Issue description

// This delegate provides UI code in ash, e.g. |VPNList|, with access to the
// list of VPN providers enabled in the primary user's profile. The delegate
// furthermore allows the UI code to request that a VPN provider show its "add
// network" dialog.

Basically, needs access to profile and extensions.

GetVPNProviders - could be pushed to ash on startup and on update
HaveThirdPartyVPNProviders - implement inside ash, just scans the list above
ShowAddPage - can be async, no return value

 
Blockedon: 665179
Blocking: 665179
Blockedon: -665179
Cc: abodenha@chromium.org
[Triage] Adding Albert in case we need to help
Owner: jamescook@chromium.org
Status: Started (was: Untriaged)
Note to self: You can test this by installing "Pulse Secure" from the Chrome web store.

The mojo interface doesn't look too bad - I think it can just push the list of VPNs from ash to chrome after extensions load.

Project Member

Comment 6 by bugdroid1@chromium.org, Nov 22 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/2dd804b7babf9e02ecfec278fb628e67dcbaa837

commit 2dd804b7babf9e02ecfec278fb628e67dcbaa837
Author: jamescook <jamescook@chromium.org>
Date: Tue Nov 22 02:15:54 2016

chromeos: Move ownership of ash VPN provider list from chrome into ash

This will make it easier to convert VPNDelegate to a mojo interface for
mustash.

The ash VPNDelegate maintains the list of providers. It is responsible for
adding the built-in OpenVPN provider. Chrome only provides the list of
extension-backed VPN providers.

Collpase VPNProvider::Key and VPNProvider into a single struct because
there is a 1:1 mapping between the two structs, so there is no need for
a separate key.

BUG= 651148 
TEST=added VPNDelegateTest to ash_unittests

Review-Url: https://codereview.chromium.org/2510083006
Cr-Commit-Position: refs/heads/master@{#433745}

[modify] https://crrev.com/2dd804b7babf9e02ecfec278fb628e67dcbaa837/ash/ash_chromeos_strings.grdp
[modify] https://crrev.com/2dd804b7babf9e02ecfec278fb628e67dcbaa837/ash/common/BUILD.gn
[modify] https://crrev.com/2dd804b7babf9e02ecfec278fb628e67dcbaa837/ash/common/system/chromeos/network/vpn_delegate.cc
[modify] https://crrev.com/2dd804b7babf9e02ecfec278fb628e67dcbaa837/ash/common/system/chromeos/network/vpn_delegate.h
[add] https://crrev.com/2dd804b7babf9e02ecfec278fb628e67dcbaa837/ash/common/system/chromeos/network/vpn_delegate_unittest.cc
[modify] https://crrev.com/2dd804b7babf9e02ecfec278fb628e67dcbaa837/ash/common/system/chromeos/network/vpn_list_view.cc
[modify] https://crrev.com/2dd804b7babf9e02ecfec278fb628e67dcbaa837/ash/common/system/chromeos/network/vpn_list_view.h
[modify] https://crrev.com/2dd804b7babf9e02ecfec278fb628e67dcbaa837/ash/mus/vpn_delegate_mus.cc
[modify] https://crrev.com/2dd804b7babf9e02ecfec278fb628e67dcbaa837/ash/mus/vpn_delegate_mus.h
[modify] https://crrev.com/2dd804b7babf9e02ecfec278fb628e67dcbaa837/chrome/app/chromeos_strings.grdp
[modify] https://crrev.com/2dd804b7babf9e02ecfec278fb628e67dcbaa837/chrome/browser/ui/ash/vpn_delegate_chromeos.cc
[modify] https://crrev.com/2dd804b7babf9e02ecfec278fb628e67dcbaa837/chrome/browser/ui/ash/vpn_delegate_chromeos.h
[modify] https://crrev.com/2dd804b7babf9e02ecfec278fb628e67dcbaa837/chrome/browser/ui/webui/options/chromeos/internet_options_handler_strings.cc

Project Member

Comment 7 by bugdroid1@chromium.org, Nov 22 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/56e0ddccb50e0b062ea6fea8640c6dcea9ea59a7

commit 56e0ddccb50e0b062ea6fea8640c6dcea9ea59a7
Author: jamescook <jamescook@chromium.org>
Date: Tue Nov 22 22:18:01 2016

chromeos: Convert ash VPNDelegate interface to mojo

Under mustash the ash shell runs in a different process than chrome browser.
Create mojo interfaces to allow chrome to tell ash about extension-based
third-party VPN providers and to allow ash to ask chrome to open VPN config
UI.

This CL maintains the existing ash::VPNProvider struct rather than replacing
it with ash::mojom::ThirdPartyVpnProvider because the two express different
concepts (the former includes the built-in OpenVPN/L2TP provider and is used
in several places in UI code). We can collapse them later.

BUG= 651148 
TEST=added to ash_unittests VpnListTest

Review-Url: https://codereview.chromium.org/2513673004
Cr-Commit-Position: refs/heads/master@{#434004}

[modify] https://crrev.com/56e0ddccb50e0b062ea6fea8640c6dcea9ea59a7/ash/BUILD.gn
[modify] https://crrev.com/56e0ddccb50e0b062ea6fea8640c6dcea9ea59a7/ash/common/BUILD.gn
[modify] https://crrev.com/56e0ddccb50e0b062ea6fea8640c6dcea9ea59a7/ash/common/mojo_interface_factory.cc
[modify] https://crrev.com/56e0ddccb50e0b062ea6fea8640c6dcea9ea59a7/ash/common/system/chromeos/network/tray_vpn.cc
[delete] https://crrev.com/cce9ba557d94ce33d2f22b1c560da2a1fa964dc5/ash/common/system/chromeos/network/vpn_delegate_unittest.cc
[rename] https://crrev.com/56e0ddccb50e0b062ea6fea8640c6dcea9ea59a7/ash/common/system/chromeos/network/vpn_list.cc
[rename] https://crrev.com/56e0ddccb50e0b062ea6fea8640c6dcea9ea59a7/ash/common/system/chromeos/network/vpn_list.h
[add] https://crrev.com/56e0ddccb50e0b062ea6fea8640c6dcea9ea59a7/ash/common/system/chromeos/network/vpn_list_unittest.cc
[modify] https://crrev.com/56e0ddccb50e0b062ea6fea8640c6dcea9ea59a7/ash/common/system/chromeos/network/vpn_list_view.cc
[modify] https://crrev.com/56e0ddccb50e0b062ea6fea8640c6dcea9ea59a7/ash/common/system/chromeos/network/vpn_list_view.h
[modify] https://crrev.com/56e0ddccb50e0b062ea6fea8640c6dcea9ea59a7/ash/common/system/tray/system_tray_controller.cc
[modify] https://crrev.com/56e0ddccb50e0b062ea6fea8640c6dcea9ea59a7/ash/common/system/tray/system_tray_controller.h
[modify] https://crrev.com/56e0ddccb50e0b062ea6fea8640c6dcea9ea59a7/ash/common/system/tray/system_tray_delegate.cc
[modify] https://crrev.com/56e0ddccb50e0b062ea6fea8640c6dcea9ea59a7/ash/common/system/tray/system_tray_delegate.h
[modify] https://crrev.com/56e0ddccb50e0b062ea6fea8640c6dcea9ea59a7/ash/common/wm_shell.cc
[modify] https://crrev.com/56e0ddccb50e0b062ea6fea8640c6dcea9ea59a7/ash/common/wm_shell.h
[modify] https://crrev.com/56e0ddccb50e0b062ea6fea8640c6dcea9ea59a7/ash/mus/BUILD.gn
[modify] https://crrev.com/56e0ddccb50e0b062ea6fea8640c6dcea9ea59a7/ash/mus/manifest.json
[modify] https://crrev.com/56e0ddccb50e0b062ea6fea8640c6dcea9ea59a7/ash/mus/system_tray_delegate_mus.cc
[modify] https://crrev.com/56e0ddccb50e0b062ea6fea8640c6dcea9ea59a7/ash/mus/system_tray_delegate_mus.h
[delete] https://crrev.com/cce9ba557d94ce33d2f22b1c560da2a1fa964dc5/ash/mus/vpn_delegate_mus.cc
[delete] https://crrev.com/cce9ba557d94ce33d2f22b1c560da2a1fa964dc5/ash/mus/vpn_delegate_mus.h
[modify] https://crrev.com/56e0ddccb50e0b062ea6fea8640c6dcea9ea59a7/ash/public/interfaces/BUILD.gn
[modify] https://crrev.com/56e0ddccb50e0b062ea6fea8640c6dcea9ea59a7/ash/public/interfaces/system_tray.mojom
[add] https://crrev.com/56e0ddccb50e0b062ea6fea8640c6dcea9ea59a7/ash/public/interfaces/vpn_list.mojom
[modify] https://crrev.com/56e0ddccb50e0b062ea6fea8640c6dcea9ea59a7/chrome/browser/ui/BUILD.gn
[modify] https://crrev.com/56e0ddccb50e0b062ea6fea8640c6dcea9ea59a7/chrome/browser/ui/ash/system_tray_client.cc
[modify] https://crrev.com/56e0ddccb50e0b062ea6fea8640c6dcea9ea59a7/chrome/browser/ui/ash/system_tray_client.h
[modify] https://crrev.com/56e0ddccb50e0b062ea6fea8640c6dcea9ea59a7/chrome/browser/ui/ash/system_tray_delegate_chromeos.cc
[modify] https://crrev.com/56e0ddccb50e0b062ea6fea8640c6dcea9ea59a7/chrome/browser/ui/ash/system_tray_delegate_chromeos.h
[delete] https://crrev.com/cce9ba557d94ce33d2f22b1c560da2a1fa964dc5/chrome/browser/ui/ash/vpn_delegate_chromeos.cc
[add] https://crrev.com/56e0ddccb50e0b062ea6fea8640c6dcea9ea59a7/chrome/browser/ui/ash/vpn_list_forwarder.cc
[rename] https://crrev.com/56e0ddccb50e0b062ea6fea8640c6dcea9ea59a7/chrome/browser/ui/ash/vpn_list_forwarder.h
[modify] https://crrev.com/56e0ddccb50e0b062ea6fea8640c6dcea9ea59a7/chrome/browser/ui/views/ash/chrome_browser_main_extra_parts_ash.cc
[modify] https://crrev.com/56e0ddccb50e0b062ea6fea8640c6dcea9ea59a7/chrome/browser/ui/views/ash/chrome_browser_main_extra_parts_ash.h

Project Member

Comment 8 by bugdroid1@chromium.org, Nov 23 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/50f2386d5fc8b1f32aa4e1a2340e73525a1088d0

commit 50f2386d5fc8b1f32aa4e1a2340e73525a1088d0
Author: jamescook <jamescook@chromium.org>
Date: Wed Nov 23 00:12:02 2016

Revert of chromeos: Convert ash VPNDelegate interface to mojo (patchset #7 id:160001 of https://codereview.chromium.org/2513673004/ )

Reason for revert:
Breaks the VPN list in classic ash due to a missing entry in chrome's content browser manifest overlay. (I probably didn't catch this in manual testing due to stale generated manifest files from an earlier version of this patch.)

I will re-land with a fixed manifest file.

Original issue's description:
> chromeos: Convert ash VPNDelegate interface to mojo
>
> Under mustash the ash shell runs in a different process than chrome browser.
> Create mojo interfaces to allow chrome to tell ash about extension-based
> third-party VPN providers and to allow ash to ask chrome to open VPN config
> UI.
>
> This CL maintains the existing ash::VPNProvider struct rather than replacing
> it with ash::mojom::ThirdPartyVpnProvider because the two express different
> concepts (the former includes the built-in OpenVPN/L2TP provider and is used
> in several places in UI code). We can collapse them later.
>
> BUG= 651148 
> TEST=added to ash_unittests VpnListTest
>
> Committed: https://crrev.com/56e0ddccb50e0b062ea6fea8640c6dcea9ea59a7
> Cr-Commit-Position: refs/heads/master@{#434004}

TBR=stevenjb@chromium.org,sky@chromium.org,tsepez@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG= 651148 

Review-Url: https://codereview.chromium.org/2522613004
Cr-Commit-Position: refs/heads/master@{#434037}

[modify] https://crrev.com/50f2386d5fc8b1f32aa4e1a2340e73525a1088d0/ash/BUILD.gn
[modify] https://crrev.com/50f2386d5fc8b1f32aa4e1a2340e73525a1088d0/ash/common/BUILD.gn
[modify] https://crrev.com/50f2386d5fc8b1f32aa4e1a2340e73525a1088d0/ash/common/mojo_interface_factory.cc
[modify] https://crrev.com/50f2386d5fc8b1f32aa4e1a2340e73525a1088d0/ash/common/system/chromeos/network/tray_vpn.cc
[rename] https://crrev.com/50f2386d5fc8b1f32aa4e1a2340e73525a1088d0/ash/common/system/chromeos/network/vpn_delegate.cc
[rename] https://crrev.com/50f2386d5fc8b1f32aa4e1a2340e73525a1088d0/ash/common/system/chromeos/network/vpn_delegate.h
[add] https://crrev.com/50f2386d5fc8b1f32aa4e1a2340e73525a1088d0/ash/common/system/chromeos/network/vpn_delegate_unittest.cc
[delete] https://crrev.com/77fd2aecaa7e1db995e158fb095a72be385e333c/ash/common/system/chromeos/network/vpn_list_unittest.cc
[modify] https://crrev.com/50f2386d5fc8b1f32aa4e1a2340e73525a1088d0/ash/common/system/chromeos/network/vpn_list_view.cc
[modify] https://crrev.com/50f2386d5fc8b1f32aa4e1a2340e73525a1088d0/ash/common/system/chromeos/network/vpn_list_view.h
[modify] https://crrev.com/50f2386d5fc8b1f32aa4e1a2340e73525a1088d0/ash/common/system/tray/system_tray_controller.cc
[modify] https://crrev.com/50f2386d5fc8b1f32aa4e1a2340e73525a1088d0/ash/common/system/tray/system_tray_controller.h
[modify] https://crrev.com/50f2386d5fc8b1f32aa4e1a2340e73525a1088d0/ash/common/system/tray/system_tray_delegate.cc
[modify] https://crrev.com/50f2386d5fc8b1f32aa4e1a2340e73525a1088d0/ash/common/system/tray/system_tray_delegate.h
[modify] https://crrev.com/50f2386d5fc8b1f32aa4e1a2340e73525a1088d0/ash/common/wm_shell.cc
[modify] https://crrev.com/50f2386d5fc8b1f32aa4e1a2340e73525a1088d0/ash/common/wm_shell.h
[modify] https://crrev.com/50f2386d5fc8b1f32aa4e1a2340e73525a1088d0/ash/mus/BUILD.gn
[modify] https://crrev.com/50f2386d5fc8b1f32aa4e1a2340e73525a1088d0/ash/mus/manifest.json
[modify] https://crrev.com/50f2386d5fc8b1f32aa4e1a2340e73525a1088d0/ash/mus/system_tray_delegate_mus.cc
[modify] https://crrev.com/50f2386d5fc8b1f32aa4e1a2340e73525a1088d0/ash/mus/system_tray_delegate_mus.h
[add] https://crrev.com/50f2386d5fc8b1f32aa4e1a2340e73525a1088d0/ash/mus/vpn_delegate_mus.cc
[add] https://crrev.com/50f2386d5fc8b1f32aa4e1a2340e73525a1088d0/ash/mus/vpn_delegate_mus.h
[modify] https://crrev.com/50f2386d5fc8b1f32aa4e1a2340e73525a1088d0/ash/public/interfaces/BUILD.gn
[modify] https://crrev.com/50f2386d5fc8b1f32aa4e1a2340e73525a1088d0/ash/public/interfaces/system_tray.mojom
[delete] https://crrev.com/77fd2aecaa7e1db995e158fb095a72be385e333c/ash/public/interfaces/vpn_list.mojom
[modify] https://crrev.com/50f2386d5fc8b1f32aa4e1a2340e73525a1088d0/chrome/browser/ui/BUILD.gn
[modify] https://crrev.com/50f2386d5fc8b1f32aa4e1a2340e73525a1088d0/chrome/browser/ui/ash/system_tray_client.cc
[modify] https://crrev.com/50f2386d5fc8b1f32aa4e1a2340e73525a1088d0/chrome/browser/ui/ash/system_tray_client.h
[modify] https://crrev.com/50f2386d5fc8b1f32aa4e1a2340e73525a1088d0/chrome/browser/ui/ash/system_tray_delegate_chromeos.cc
[modify] https://crrev.com/50f2386d5fc8b1f32aa4e1a2340e73525a1088d0/chrome/browser/ui/ash/system_tray_delegate_chromeos.h
[add] https://crrev.com/50f2386d5fc8b1f32aa4e1a2340e73525a1088d0/chrome/browser/ui/ash/vpn_delegate_chromeos.cc
[rename] https://crrev.com/50f2386d5fc8b1f32aa4e1a2340e73525a1088d0/chrome/browser/ui/ash/vpn_delegate_chromeos.h
[delete] https://crrev.com/77fd2aecaa7e1db995e158fb095a72be385e333c/chrome/browser/ui/ash/vpn_list_forwarder.cc
[modify] https://crrev.com/50f2386d5fc8b1f32aa4e1a2340e73525a1088d0/chrome/browser/ui/views/ash/chrome_browser_main_extra_parts_ash.cc
[modify] https://crrev.com/50f2386d5fc8b1f32aa4e1a2340e73525a1088d0/chrome/browser/ui/views/ash/chrome_browser_main_extra_parts_ash.h

Project Member

Comment 9 by bugdroid1@chromium.org, Nov 23 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/50f2386d5fc8b1f32aa4e1a2340e73525a1088d0

commit 50f2386d5fc8b1f32aa4e1a2340e73525a1088d0
Author: jamescook <jamescook@chromium.org>
Date: Wed Nov 23 00:12:02 2016

Revert of chromeos: Convert ash VPNDelegate interface to mojo (patchset #7 id:160001 of https://codereview.chromium.org/2513673004/ )

Reason for revert:
Breaks the VPN list in classic ash due to a missing entry in chrome's content browser manifest overlay. (I probably didn't catch this in manual testing due to stale generated manifest files from an earlier version of this patch.)

I will re-land with a fixed manifest file.

Original issue's description:
> chromeos: Convert ash VPNDelegate interface to mojo
>
> Under mustash the ash shell runs in a different process than chrome browser.
> Create mojo interfaces to allow chrome to tell ash about extension-based
> third-party VPN providers and to allow ash to ask chrome to open VPN config
> UI.
>
> This CL maintains the existing ash::VPNProvider struct rather than replacing
> it with ash::mojom::ThirdPartyVpnProvider because the two express different
> concepts (the former includes the built-in OpenVPN/L2TP provider and is used
> in several places in UI code). We can collapse them later.
>
> BUG= 651148 
> TEST=added to ash_unittests VpnListTest
>
> Committed: https://crrev.com/56e0ddccb50e0b062ea6fea8640c6dcea9ea59a7
> Cr-Commit-Position: refs/heads/master@{#434004}

TBR=stevenjb@chromium.org,sky@chromium.org,tsepez@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG= 651148 

Review-Url: https://codereview.chromium.org/2522613004
Cr-Commit-Position: refs/heads/master@{#434037}

[modify] https://crrev.com/50f2386d5fc8b1f32aa4e1a2340e73525a1088d0/ash/BUILD.gn
[modify] https://crrev.com/50f2386d5fc8b1f32aa4e1a2340e73525a1088d0/ash/common/BUILD.gn
[modify] https://crrev.com/50f2386d5fc8b1f32aa4e1a2340e73525a1088d0/ash/common/mojo_interface_factory.cc
[modify] https://crrev.com/50f2386d5fc8b1f32aa4e1a2340e73525a1088d0/ash/common/system/chromeos/network/tray_vpn.cc
[rename] https://crrev.com/50f2386d5fc8b1f32aa4e1a2340e73525a1088d0/ash/common/system/chromeos/network/vpn_delegate.cc
[rename] https://crrev.com/50f2386d5fc8b1f32aa4e1a2340e73525a1088d0/ash/common/system/chromeos/network/vpn_delegate.h
[add] https://crrev.com/50f2386d5fc8b1f32aa4e1a2340e73525a1088d0/ash/common/system/chromeos/network/vpn_delegate_unittest.cc
[delete] https://crrev.com/77fd2aecaa7e1db995e158fb095a72be385e333c/ash/common/system/chromeos/network/vpn_list_unittest.cc
[modify] https://crrev.com/50f2386d5fc8b1f32aa4e1a2340e73525a1088d0/ash/common/system/chromeos/network/vpn_list_view.cc
[modify] https://crrev.com/50f2386d5fc8b1f32aa4e1a2340e73525a1088d0/ash/common/system/chromeos/network/vpn_list_view.h
[modify] https://crrev.com/50f2386d5fc8b1f32aa4e1a2340e73525a1088d0/ash/common/system/tray/system_tray_controller.cc
[modify] https://crrev.com/50f2386d5fc8b1f32aa4e1a2340e73525a1088d0/ash/common/system/tray/system_tray_controller.h
[modify] https://crrev.com/50f2386d5fc8b1f32aa4e1a2340e73525a1088d0/ash/common/system/tray/system_tray_delegate.cc
[modify] https://crrev.com/50f2386d5fc8b1f32aa4e1a2340e73525a1088d0/ash/common/system/tray/system_tray_delegate.h
[modify] https://crrev.com/50f2386d5fc8b1f32aa4e1a2340e73525a1088d0/ash/common/wm_shell.cc
[modify] https://crrev.com/50f2386d5fc8b1f32aa4e1a2340e73525a1088d0/ash/common/wm_shell.h
[modify] https://crrev.com/50f2386d5fc8b1f32aa4e1a2340e73525a1088d0/ash/mus/BUILD.gn
[modify] https://crrev.com/50f2386d5fc8b1f32aa4e1a2340e73525a1088d0/ash/mus/manifest.json
[modify] https://crrev.com/50f2386d5fc8b1f32aa4e1a2340e73525a1088d0/ash/mus/system_tray_delegate_mus.cc
[modify] https://crrev.com/50f2386d5fc8b1f32aa4e1a2340e73525a1088d0/ash/mus/system_tray_delegate_mus.h
[add] https://crrev.com/50f2386d5fc8b1f32aa4e1a2340e73525a1088d0/ash/mus/vpn_delegate_mus.cc
[add] https://crrev.com/50f2386d5fc8b1f32aa4e1a2340e73525a1088d0/ash/mus/vpn_delegate_mus.h
[modify] https://crrev.com/50f2386d5fc8b1f32aa4e1a2340e73525a1088d0/ash/public/interfaces/BUILD.gn
[modify] https://crrev.com/50f2386d5fc8b1f32aa4e1a2340e73525a1088d0/ash/public/interfaces/system_tray.mojom
[delete] https://crrev.com/77fd2aecaa7e1db995e158fb095a72be385e333c/ash/public/interfaces/vpn_list.mojom
[modify] https://crrev.com/50f2386d5fc8b1f32aa4e1a2340e73525a1088d0/chrome/browser/ui/BUILD.gn
[modify] https://crrev.com/50f2386d5fc8b1f32aa4e1a2340e73525a1088d0/chrome/browser/ui/ash/system_tray_client.cc
[modify] https://crrev.com/50f2386d5fc8b1f32aa4e1a2340e73525a1088d0/chrome/browser/ui/ash/system_tray_client.h
[modify] https://crrev.com/50f2386d5fc8b1f32aa4e1a2340e73525a1088d0/chrome/browser/ui/ash/system_tray_delegate_chromeos.cc
[modify] https://crrev.com/50f2386d5fc8b1f32aa4e1a2340e73525a1088d0/chrome/browser/ui/ash/system_tray_delegate_chromeos.h
[add] https://crrev.com/50f2386d5fc8b1f32aa4e1a2340e73525a1088d0/chrome/browser/ui/ash/vpn_delegate_chromeos.cc
[rename] https://crrev.com/50f2386d5fc8b1f32aa4e1a2340e73525a1088d0/chrome/browser/ui/ash/vpn_delegate_chromeos.h
[delete] https://crrev.com/77fd2aecaa7e1db995e158fb095a72be385e333c/chrome/browser/ui/ash/vpn_list_forwarder.cc
[modify] https://crrev.com/50f2386d5fc8b1f32aa4e1a2340e73525a1088d0/chrome/browser/ui/views/ash/chrome_browser_main_extra_parts_ash.cc
[modify] https://crrev.com/50f2386d5fc8b1f32aa4e1a2340e73525a1088d0/chrome/browser/ui/views/ash/chrome_browser_main_extra_parts_ash.h

Project Member

Comment 10 by bugdroid1@chromium.org, Nov 23 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/c469dd5d3ceede70f70a1e86b97c711696b1fa49

commit c469dd5d3ceede70f70a1e86b97c711696b1fa49
Author: jamescook <jamescook@chromium.org>
Date: Wed Nov 23 01:57:57 2016

Reland: chromeos: Convert ash VPNDelegate interface to mojo

Relanding because previous version crrev.com/434004 was missing an entry in
chrome_content_browser_manifest_overlay.json

Under mustash the ash shell runs in a different process than chrome browser.
Create mojo interfaces to allow chrome to tell ash about extension-based
third-party VPN providers and to allow ash to ask chrome to open VPN config
UI.

This CL maintains the existing ash::VPNProvider struct rather than replacing
it with ash::mojom::ThirdPartyVpnProvider because the two express different
concepts (the former includes the built-in OpenVPN/L2TP provider and is used
in several places in UI code). We can collapse them later.

BUG= 651148 
TEST=added to ash_unittests VpnListTest
TBR=tsepez@chromium.org for copying manifest line from ash/mus/manifest.json
to chrome_content_browser_manifest_overlay.json

Review-Url: https://codereview.chromium.org/2513673004
Cr-Commit-Position: refs/heads/master@{#434079}

[modify] https://crrev.com/c469dd5d3ceede70f70a1e86b97c711696b1fa49/ash/BUILD.gn
[modify] https://crrev.com/c469dd5d3ceede70f70a1e86b97c711696b1fa49/ash/common/BUILD.gn
[modify] https://crrev.com/c469dd5d3ceede70f70a1e86b97c711696b1fa49/ash/common/mojo_interface_factory.cc
[modify] https://crrev.com/c469dd5d3ceede70f70a1e86b97c711696b1fa49/ash/common/system/chromeos/network/tray_vpn.cc
[delete] https://crrev.com/9e34d1fee95c11fd7f43afa05d0ff0f6ae57885a/ash/common/system/chromeos/network/vpn_delegate_unittest.cc
[rename] https://crrev.com/c469dd5d3ceede70f70a1e86b97c711696b1fa49/ash/common/system/chromeos/network/vpn_list.cc
[rename] https://crrev.com/c469dd5d3ceede70f70a1e86b97c711696b1fa49/ash/common/system/chromeos/network/vpn_list.h
[add] https://crrev.com/c469dd5d3ceede70f70a1e86b97c711696b1fa49/ash/common/system/chromeos/network/vpn_list_unittest.cc
[modify] https://crrev.com/c469dd5d3ceede70f70a1e86b97c711696b1fa49/ash/common/system/chromeos/network/vpn_list_view.cc
[modify] https://crrev.com/c469dd5d3ceede70f70a1e86b97c711696b1fa49/ash/common/system/chromeos/network/vpn_list_view.h
[modify] https://crrev.com/c469dd5d3ceede70f70a1e86b97c711696b1fa49/ash/common/system/tray/system_tray_controller.cc
[modify] https://crrev.com/c469dd5d3ceede70f70a1e86b97c711696b1fa49/ash/common/system/tray/system_tray_controller.h
[modify] https://crrev.com/c469dd5d3ceede70f70a1e86b97c711696b1fa49/ash/common/system/tray/system_tray_delegate.cc
[modify] https://crrev.com/c469dd5d3ceede70f70a1e86b97c711696b1fa49/ash/common/system/tray/system_tray_delegate.h
[modify] https://crrev.com/c469dd5d3ceede70f70a1e86b97c711696b1fa49/ash/common/wm_shell.cc
[modify] https://crrev.com/c469dd5d3ceede70f70a1e86b97c711696b1fa49/ash/common/wm_shell.h
[modify] https://crrev.com/c469dd5d3ceede70f70a1e86b97c711696b1fa49/ash/mus/BUILD.gn
[modify] https://crrev.com/c469dd5d3ceede70f70a1e86b97c711696b1fa49/ash/mus/manifest.json
[modify] https://crrev.com/c469dd5d3ceede70f70a1e86b97c711696b1fa49/ash/mus/system_tray_delegate_mus.cc
[modify] https://crrev.com/c469dd5d3ceede70f70a1e86b97c711696b1fa49/ash/mus/system_tray_delegate_mus.h
[delete] https://crrev.com/9e34d1fee95c11fd7f43afa05d0ff0f6ae57885a/ash/mus/vpn_delegate_mus.cc
[delete] https://crrev.com/9e34d1fee95c11fd7f43afa05d0ff0f6ae57885a/ash/mus/vpn_delegate_mus.h
[modify] https://crrev.com/c469dd5d3ceede70f70a1e86b97c711696b1fa49/ash/public/interfaces/BUILD.gn
[modify] https://crrev.com/c469dd5d3ceede70f70a1e86b97c711696b1fa49/ash/public/interfaces/system_tray.mojom
[add] https://crrev.com/c469dd5d3ceede70f70a1e86b97c711696b1fa49/ash/public/interfaces/vpn_list.mojom
[modify] https://crrev.com/c469dd5d3ceede70f70a1e86b97c711696b1fa49/chrome/browser/chrome_content_browser_manifest_overlay.json
[modify] https://crrev.com/c469dd5d3ceede70f70a1e86b97c711696b1fa49/chrome/browser/ui/BUILD.gn
[modify] https://crrev.com/c469dd5d3ceede70f70a1e86b97c711696b1fa49/chrome/browser/ui/ash/system_tray_client.cc
[modify] https://crrev.com/c469dd5d3ceede70f70a1e86b97c711696b1fa49/chrome/browser/ui/ash/system_tray_client.h
[modify] https://crrev.com/c469dd5d3ceede70f70a1e86b97c711696b1fa49/chrome/browser/ui/ash/system_tray_delegate_chromeos.cc
[modify] https://crrev.com/c469dd5d3ceede70f70a1e86b97c711696b1fa49/chrome/browser/ui/ash/system_tray_delegate_chromeos.h
[delete] https://crrev.com/9e34d1fee95c11fd7f43afa05d0ff0f6ae57885a/chrome/browser/ui/ash/vpn_delegate_chromeos.cc
[add] https://crrev.com/c469dd5d3ceede70f70a1e86b97c711696b1fa49/chrome/browser/ui/ash/vpn_list_forwarder.cc
[rename] https://crrev.com/c469dd5d3ceede70f70a1e86b97c711696b1fa49/chrome/browser/ui/ash/vpn_list_forwarder.h
[modify] https://crrev.com/c469dd5d3ceede70f70a1e86b97c711696b1fa49/chrome/browser/ui/views/ash/chrome_browser_main_extra_parts_ash.cc
[modify] https://crrev.com/c469dd5d3ceede70f70a1e86b97c711696b1fa49/chrome/browser/ui/views/ash/chrome_browser_main_extra_parts_ash.h

Status: Fixed (was: Started)

Comment 12 by dchan@google.com, Mar 4 2017

Labels: VerifyIn-58

Comment 13 by dchan@google.com, Apr 17 2017

Labels: VerifyIn-59

Comment 14 by dchan@google.com, May 30 2017

Labels: VerifyIn-60
Labels: VerifyIn-61

Comment 16 by dchan@chromium.org, Oct 14 2017

Status: Archived (was: Fixed)

Sign in to add a comment