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

Unified Diff: Source/web/WebLocalFrameImpl.cpp

Issue 256843004: Get the WebGeolocationClient from WebFrameClient instead of WebViewClient. (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: fix linking errors Created 6 years, 7 months 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 side-by-side diff with in-line comments
Download patch
Index: Source/web/WebLocalFrameImpl.cpp
diff --git a/Source/web/WebLocalFrameImpl.cpp b/Source/web/WebLocalFrameImpl.cpp
index 0f7d09def92a947eb0c685d170f8c73e68a76815..2d6f718bec5c229a4f6a8946f1f581ddd93bf7d2 100644
--- a/Source/web/WebLocalFrameImpl.cpp
+++ b/Source/web/WebLocalFrameImpl.cpp
@@ -132,6 +132,7 @@
#include "core/rendering/RenderView.h"
#include "core/rendering/style/StyleInheritedData.h"
#include "core/timing/Performance.h"
+#include "modules/geolocation/GeolocationController.h"
#include "modules/notifications/NotificationController.h"
#include "platform/TraceEvent.h"
#include "platform/UserGestureIndicator.h"
@@ -178,6 +179,7 @@
#include "web/CompositionUnderlineVectorBuilder.h"
#include "web/EventListenerWrapper.h"
#include "web/FindInPageCoordinates.h"
+#include "web/GeolocationClientProxy.h"
#include "web/PageOverlay.h"
#include "web/SharedWorkerRepositoryClientImpl.h"
#include "web/TextFinder.h"
@@ -1585,6 +1587,7 @@ WebLocalFrameImpl::WebLocalFrameImpl(WebFrameClient* client)
, m_permissionClient(0)
, m_inputEventsScaleFactorForEmulation(1)
, m_userMediaClientImpl(this)
+ , m_geolocationClientProxy(adoptPtr(new GeolocationClientProxy(client ? client->geolocationClient() : 0)))
{
blink::Platform::current()->incrementStatsCounter(webFrameActiveCount);
frameCount++;
@@ -1610,6 +1613,8 @@ void WebLocalFrameImpl::setWebCoreFrame(PassRefPtr<WebCore::LocalFrame> frame)
provideNotification(*m_frame, notificationPresenter.release());
provideUserMediaTo(*m_frame, &m_userMediaClientImpl);
+ provideGeolocationTo(*m_frame, m_geolocationClientProxy.get());
+ m_geolocationClientProxy->setController(GeolocationController::from(m_frame.get()));
}
}

Powered by Google App Engine
This is Rietveld 408576698