summaryrefslogtreecommitdiffstats
path: root/content
diff options
context:
space:
mode:
Diffstat (limited to 'content')
-rw-r--r--content/renderer/render_view_impl.cc21
-rw-r--r--content/renderer/render_view_impl.h7
-rw-r--r--content/renderer/render_widget.cc14
3 files changed, 9 insertions, 33 deletions
diff --git a/content/renderer/render_view_impl.cc b/content/renderer/render_view_impl.cc
index 69bfb28..c8eb610 100644
--- a/content/renderer/render_view_impl.cc
+++ b/content/renderer/render_view_impl.cc
@@ -397,8 +397,6 @@ RenderViewImpl::RenderViewImpl(
cached_is_main_frame_pinned_to_right_(false),
cached_has_main_frame_horizontal_scrollbar_(false),
cached_has_main_frame_vertical_scrollbar_(false),
- context_has_swapbuffers_complete_callback_(false),
- queried_for_swapbuffers_complete_callback_(false),
ALLOW_THIS_IN_INITIALIZER_LIST(cookie_jar_(this)),
geolocation_dispatcher_(NULL),
speech_input_dispatcher_(NULL),
@@ -4497,21 +4495,12 @@ bool RenderViewImpl::SupportsAsynchronousSwapBuffers() {
if (WebWidgetHandlesCompositorScheduling())
return false;
- if (queried_for_swapbuffers_complete_callback_)
- return context_has_swapbuffers_complete_callback_;
-
- queried_for_swapbuffers_complete_callback_ = true;
-
WebKit::WebGraphicsContext3D* context = webview()->graphicsContext3D();
- if (context) {
- context->makeContextCurrent();
- std::string extensions(context->getRequestableExtensionsCHROMIUM().utf8());
- context_has_swapbuffers_complete_callback_ =
- extensions.find("GL_CHROMIUM_swapbuffers_complete_callback")
- != std::string::npos;
- }
-
- return context_has_swapbuffers_complete_callback_;
+ if (!context)
+ return false;
+ std::string extensions(context->getRequestableExtensionsCHROMIUM().utf8());
+ return extensions.find("GL_CHROMIUM_swapbuffers_complete_callback") !=
+ std::string::npos;
}
void RenderViewImpl::OnSetFocus(bool enable) {
diff --git a/content/renderer/render_view_impl.h b/content/renderer/render_view_impl.h
index 083ab85..b892a80 100644
--- a/content/renderer/render_view_impl.h
+++ b/content/renderer/render_view_impl.h
@@ -1135,13 +1135,6 @@ class RenderViewImpl : public RenderWidget,
std::set<gfx::PluginWindowHandle> fake_plugin_window_handles_;
#endif
- // When this view is composited, the context used for compositing may or may
- // not support the GL_CHROMIUM_swapbuffers_complete_callback extension. Since
- // querying for the existence of this extension is expensive we cache the
- // result. These are used to implement SupportsAsynchronousSwapBuffers().
- bool context_has_swapbuffers_complete_callback_;
- bool queried_for_swapbuffers_complete_callback_;
-
// Helper objects ------------------------------------------------------------
RendererWebCookieJarImpl cookie_jar_;
diff --git a/content/renderer/render_widget.cc b/content/renderer/render_widget.cc
index 6b16fa7..3df2a99 100644
--- a/content/renderer/render_widget.cc
+++ b/content/renderer/render_widget.cc
@@ -175,8 +175,6 @@ void RenderWidget::CompleteInit(gfx::NativeViewId parent_hwnd) {
host_window_ = parent_hwnd;
- DoDeferredUpdate();
-
Send(new ViewHostMsg_RenderViewReady(routing_id_));
}
@@ -739,11 +737,6 @@ void RenderWidget::DoDeferredUpdate() {
if (!webwidget_)
return;
-
- if (!host_window_) {
- TRACE_EVENT0("renderer", "EarlyOut_NoHostWindow");
- return;
- }
if (update_reply_pending_) {
TRACE_EVENT0("renderer", "EarlyOut_UpdateReplyPending");
return;
@@ -762,9 +755,6 @@ void RenderWidget::DoDeferredUpdate() {
return;
}
- if (is_accelerated_compositing_active_)
- using_asynchronous_swapbuffers_ = SupportsAsynchronousSwapBuffers();
-
// Tracking of frame rate jitter
base::TimeTicks frame_begin_ticks = base::TimeTicks::Now();
AnimateIfNeeded();
@@ -1020,6 +1010,10 @@ void RenderWidget::didActivateCompositor(int compositor_identifier) {
is_accelerated_compositing_active_ = true;
Send(new ViewHostMsg_DidActivateAcceleratedCompositing(
routing_id_, is_accelerated_compositing_active_));
+
+ // Note: asynchronous swapbuffer support currently only matters if
+ // compositing scheduling happens on the RenderWidget.
+ using_asynchronous_swapbuffers_ = SupportsAsynchronousSwapBuffers();
}
void RenderWidget::didDeactivateCompositor() {