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

Side by Side Diff: content/browser/web_contents/web_contents_impl.cc

Issue 1408393003: Propagate pageScaleFactor to GuestViews (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Remove redundant initialization of AwLayoutSizer's page scale factor in tests Created 5 years, 1 month 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 "content/browser/web_contents/web_contents_impl.h" 5 #include "content/browser/web_contents/web_contents_impl.h"
6 6
7 #include <utility> 7 #include <utility>
8 8
9 #include "base/command_line.h" 9 #include "base/command_line.h"
10 #include "base/lazy_instance.h" 10 #include "base/lazy_instance.h"
(...skipping 397 matching lines...) Expand 10 before | Expand all | Expand 10 after
408 fullscreen_widget_routing_id_(MSG_ROUTING_NONE), 408 fullscreen_widget_routing_id_(MSG_ROUTING_NONE),
409 fullscreen_widget_had_focus_at_shutdown_(false), 409 fullscreen_widget_had_focus_at_shutdown_(false),
410 is_subframe_(false), 410 is_subframe_(false),
411 force_disable_overscroll_content_(false), 411 force_disable_overscroll_content_(false),
412 last_dialog_suppressed_(false), 412 last_dialog_suppressed_(false),
413 geolocation_service_context_(new GeolocationServiceContext()), 413 geolocation_service_context_(new GeolocationServiceContext()),
414 accessibility_mode_( 414 accessibility_mode_(
415 BrowserAccessibilityStateImpl::GetInstance()->accessibility_mode()), 415 BrowserAccessibilityStateImpl::GetInstance()->accessibility_mode()),
416 audio_stream_monitor_(this), 416 audio_stream_monitor_(this),
417 virtual_keyboard_requested_(false), 417 virtual_keyboard_requested_(false),
418 page_scale_factor_is_one_(true),
418 loading_weak_factory_(this) { 419 loading_weak_factory_(this) {
419 frame_tree_.SetFrameRemoveListener( 420 frame_tree_.SetFrameRemoveListener(
420 base::Bind(&WebContentsImpl::OnFrameRemoved, 421 base::Bind(&WebContentsImpl::OnFrameRemoved,
421 base::Unretained(this))); 422 base::Unretained(this)));
422 #if defined(ENABLE_BROWSER_CDMS) 423 #if defined(ENABLE_BROWSER_CDMS)
423 media_web_contents_observer_.reset(new MediaWebContentsObserver(this)); 424 media_web_contents_observer_.reset(new MediaWebContentsObserver(this));
424 #endif 425 #endif
425 426
426 wake_lock_service_context_.reset(new WakeLockServiceContext(this)); 427 wake_lock_service_context_.reset(new WakeLockServiceContext(this));
427 } 428 }
(...skipping 203 matching lines...) Expand 10 before | Expand all | Expand 10 after
631 IPC_MESSAGE_HANDLER(ViewHostMsg_DidFirstVisuallyNonEmptyPaint, 632 IPC_MESSAGE_HANDLER(ViewHostMsg_DidFirstVisuallyNonEmptyPaint,
632 OnFirstVisuallyNonEmptyPaint) 633 OnFirstVisuallyNonEmptyPaint)
633 IPC_MESSAGE_HANDLER(FrameHostMsg_DidLoadResourceFromMemoryCache, 634 IPC_MESSAGE_HANDLER(FrameHostMsg_DidLoadResourceFromMemoryCache,
634 OnDidLoadResourceFromMemoryCache) 635 OnDidLoadResourceFromMemoryCache)
635 IPC_MESSAGE_HANDLER(FrameHostMsg_DidDisplayInsecureContent, 636 IPC_MESSAGE_HANDLER(FrameHostMsg_DidDisplayInsecureContent,
636 OnDidDisplayInsecureContent) 637 OnDidDisplayInsecureContent)
637 IPC_MESSAGE_HANDLER(FrameHostMsg_DidRunInsecureContent, 638 IPC_MESSAGE_HANDLER(FrameHostMsg_DidRunInsecureContent,
638 OnDidRunInsecureContent) 639 OnDidRunInsecureContent)
639 IPC_MESSAGE_HANDLER(ViewHostMsg_GoToEntryAtOffset, OnGoToEntryAtOffset) 640 IPC_MESSAGE_HANDLER(ViewHostMsg_GoToEntryAtOffset, OnGoToEntryAtOffset)
640 IPC_MESSAGE_HANDLER(ViewHostMsg_UpdateZoomLimits, OnUpdateZoomLimits) 641 IPC_MESSAGE_HANDLER(ViewHostMsg_UpdateZoomLimits, OnUpdateZoomLimits)
642 IPC_MESSAGE_HANDLER(ViewHostMsg_PageScaleFactorChanged,
643 OnPageScaleFactorChanged)
641 IPC_MESSAGE_HANDLER(ViewHostMsg_EnumerateDirectory, OnEnumerateDirectory) 644 IPC_MESSAGE_HANDLER(ViewHostMsg_EnumerateDirectory, OnEnumerateDirectory)
642 IPC_MESSAGE_HANDLER(FrameHostMsg_RegisterProtocolHandler, 645 IPC_MESSAGE_HANDLER(FrameHostMsg_RegisterProtocolHandler,
643 OnRegisterProtocolHandler) 646 OnRegisterProtocolHandler)
644 IPC_MESSAGE_HANDLER(FrameHostMsg_UnregisterProtocolHandler, 647 IPC_MESSAGE_HANDLER(FrameHostMsg_UnregisterProtocolHandler,
645 OnUnregisterProtocolHandler) 648 OnUnregisterProtocolHandler)
646 IPC_MESSAGE_HANDLER(FrameHostMsg_UpdatePageImportanceSignals, 649 IPC_MESSAGE_HANDLER(FrameHostMsg_UpdatePageImportanceSignals,
647 OnUpdatePageImportanceSignals) 650 OnUpdatePageImportanceSignals)
648 IPC_MESSAGE_HANDLER(ViewHostMsg_Find_Reply, OnFindReply) 651 IPC_MESSAGE_HANDLER(ViewHostMsg_Find_Reply, OnFindReply)
649 IPC_MESSAGE_HANDLER(ViewHostMsg_AppCacheAccessed, OnAppCacheAccessed) 652 IPC_MESSAGE_HANDLER(ViewHostMsg_AppCacheAccessed, OnAppCacheAccessed)
650 IPC_MESSAGE_HANDLER(ViewHostMsg_WebUISend, OnWebUISend) 653 IPC_MESSAGE_HANDLER(ViewHostMsg_WebUISend, OnWebUISend)
(...skipping 1994 matching lines...) Expand 10 before | Expand all | Expand 10 after
2645 } 2648 }
2646 2649
2647 int WebContentsImpl::GetMinimumZoomPercent() const { 2650 int WebContentsImpl::GetMinimumZoomPercent() const {
2648 return minimum_zoom_percent_; 2651 return minimum_zoom_percent_;
2649 } 2652 }
2650 2653
2651 int WebContentsImpl::GetMaximumZoomPercent() const { 2654 int WebContentsImpl::GetMaximumZoomPercent() const {
2652 return maximum_zoom_percent_; 2655 return maximum_zoom_percent_;
2653 } 2656 }
2654 2657
2655 void WebContentsImpl::ResetPageScale() { 2658 void WebContentsImpl::SetPageScale(float page_scale_factor) {
2656 Send(new ViewMsg_ResetPageScale(GetRoutingID())); 2659 Send(new ViewMsg_SetPageScale(GetRoutingID(), page_scale_factor));
2657 } 2660 }
2658 2661
2659 gfx::Size WebContentsImpl::GetPreferredSize() const { 2662 gfx::Size WebContentsImpl::GetPreferredSize() const {
2660 return capturer_count_ == 0 ? preferred_size_ : preferred_size_for_capture_; 2663 return capturer_count_ == 0 ? preferred_size_ : preferred_size_for_capture_;
2661 } 2664 }
2662 2665
2663 bool WebContentsImpl::GotResponseToLockMouseRequest(bool allowed) { 2666 bool WebContentsImpl::GotResponseToLockMouseRequest(bool allowed) {
2664 if (GetBrowserPluginGuest()) 2667 if (GetBrowserPluginGuest())
2665 return GetBrowserPluginGuest()->LockMouse(allowed); 2668 return GetBrowserPluginGuest()->LockMouse(allowed);
2666 2669
(...skipping 477 matching lines...) Expand 10 before | Expand all | Expand 10 after
3144 if (!delegate_ || delegate_->OnGoToEntryOffset(offset)) 3147 if (!delegate_ || delegate_->OnGoToEntryOffset(offset))
3145 controller_.GoToOffset(offset); 3148 controller_.GoToOffset(offset);
3146 } 3149 }
3147 3150
3148 void WebContentsImpl::OnUpdateZoomLimits(int minimum_percent, 3151 void WebContentsImpl::OnUpdateZoomLimits(int minimum_percent,
3149 int maximum_percent) { 3152 int maximum_percent) {
3150 minimum_zoom_percent_ = minimum_percent; 3153 minimum_zoom_percent_ = minimum_percent;
3151 maximum_zoom_percent_ = maximum_percent; 3154 maximum_zoom_percent_ = maximum_percent;
3152 } 3155 }
3153 3156
3157 void WebContentsImpl::OnPageScaleFactorChanged(float page_scale_factor) {
wjmaclean 2015/11/18 16:37:37 is page_scale_factor always guaranteed to be diffe
Kevin McNee - google account 2015/11/18 19:41:34 We only get notifications when the page scale fact
3158 bool is_one = page_scale_factor == 1.f;
3159 if (is_one != page_scale_factor_is_one_) {
3160 page_scale_factor_is_one_ = is_one;
3161
3162 HostZoomMapImpl* host_zoom_map =
3163 static_cast<HostZoomMapImpl*>(HostZoomMap::GetForWebContents(this));
3164
3165 if (host_zoom_map && GetRenderProcessHost()) {
3166 host_zoom_map->SetPageScaleFactorIsOneForView(
3167 GetRenderProcessHost()->GetID(), GetRoutingID(),
3168 page_scale_factor_is_one_);
3169 }
3170 }
3171
3172 FOR_EACH_OBSERVER(WebContentsObserver,
3173 observers_,
3174 OnPageScaleFactorChanged(page_scale_factor));
3175 }
3176
3154 void WebContentsImpl::OnEnumerateDirectory(int request_id, 3177 void WebContentsImpl::OnEnumerateDirectory(int request_id,
3155 const base::FilePath& path) { 3178 const base::FilePath& path) {
3156 if (!delegate_) 3179 if (!delegate_)
3157 return; 3180 return;
3158 3181
3159 ChildProcessSecurityPolicyImpl* policy = 3182 ChildProcessSecurityPolicyImpl* policy =
3160 ChildProcessSecurityPolicyImpl::GetInstance(); 3183 ChildProcessSecurityPolicyImpl::GetInstance();
3161 if (policy->CanReadFile(GetRenderProcessHost()->GetID(), path)) 3184 if (policy->CanReadFile(GetRenderProcessHost()->GetID(), path))
3162 delegate_->EnumerateDirectory(this, request_id, path); 3185 delegate_->EnumerateDirectory(this, request_id, path);
3163 } 3186 }
(...skipping 1515 matching lines...) Expand 10 before | Expand all | Expand 10 after
4679 return NULL; 4702 return NULL;
4680 } 4703 }
4681 4704
4682 void WebContentsImpl::SetForceDisableOverscrollContent(bool force_disable) { 4705 void WebContentsImpl::SetForceDisableOverscrollContent(bool force_disable) {
4683 force_disable_overscroll_content_ = force_disable; 4706 force_disable_overscroll_content_ = force_disable;
4684 if (view_) 4707 if (view_)
4685 view_->SetOverscrollControllerEnabled(CanOverscrollContent()); 4708 view_->SetOverscrollControllerEnabled(CanOverscrollContent());
4686 } 4709 }
4687 4710
4688 } // namespace content 4711 } // namespace content
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698