| Index: extensions/browser/guest_view/web_view/web_view_guest.cc
|
| diff --git a/extensions/browser/guest_view/web_view/web_view_guest.cc b/extensions/browser/guest_view/web_view/web_view_guest.cc
|
| index 5424db93d4ef0a12ae8b425dc82d1411fab5d169..00f6c6a709dbe00c91b5af0a775ac0d5fa755d95 100644
|
| --- a/extensions/browser/guest_view/web_view/web_view_guest.cc
|
| +++ b/extensions/browser/guest_view/web_view/web_view_guest.cc
|
| @@ -441,6 +441,12 @@ void WebViewGuest::EmbedderFullscreenToggled(bool entered_fullscreen) {
|
| SetFullscreenState(false);
|
| }
|
|
|
| +bool WebViewGuest::ZoomPropagatesFromEmbedderToGuest() const {
|
| + // We use the embedder's zoom iff we haven't set a zoom ourselves using
|
| + // e.g. webview.setZoom().
|
| + return !did_set_explicit_zoom_;
|
| +}
|
| +
|
| const char* WebViewGuest::GetAPINamespace() const {
|
| return webview::kAPINamespace;
|
| }
|
| @@ -781,6 +787,7 @@ WebViewGuest::WebViewGuest(WebContents* owner_web_contents)
|
| is_embedder_fullscreen_(false),
|
| last_fullscreen_permission_was_allowed_by_embedder_(false),
|
| pending_zoom_factor_(0.0),
|
| + did_set_explicit_zoom_(false),
|
| weak_ptr_factory_(this) {
|
| web_view_guest_delegate_.reset(
|
| ExtensionsAPIClient::Get()->CreateWebViewGuestDelegate(this));
|
| @@ -1155,6 +1162,7 @@ void WebViewGuest::SetName(const std::string& name) {
|
| }
|
|
|
| void WebViewGuest::SetZoom(double zoom_factor) {
|
| + did_set_explicit_zoom_ = true;
|
| auto* zoom_controller = ZoomController::FromWebContents(web_contents());
|
| DCHECK(zoom_controller);
|
| double zoom_level = content::ZoomFactorToZoomLevel(zoom_factor);
|
|
|