[Title] Fix the issue that webgl displays nothing after returning from home screen.(on emulator)
[Issue#] N_SE-33336
[Problem] Webgl displays nothing after returning from home screen.
[Cause] Updating flag was not checked.
[Solution] Set updating flag before going to home screen.
Change-Id: I9f6968a1a64d87bf0286118253a1ec94f2fa7306
return m_updateAtlases.last()->beginPaintingOnAvailableBuffer(handle, size, offset);
}
+#if ENABLE(TIZEN_WEBKIT2_TILED_AC) && !ENABLE(TIZEN_WEBKIT2_TILED_AC_SHARED_PLATFORM_SURFACE)
+void LayerTreeCoordinator::pauseRendering()
+{
+ m_isSuspended = true;
+#if ENABLE(WEBGL)
+ // Make sure compositing webgl layer after returning from home screen.
+ HashSet<WebCore::WebGraphicsLayer*>::iterator end = m_registeredLayers.end();
+ for (HashSet<WebCore::WebGraphicsLayer*>::iterator it = m_registeredLayers.begin(); it != end; ++it) {
+ if ((*it)->contentType() == WebLayerInfo::Canvas3DContentType)
+ (*it)->markCanvasPlatformLayerNeedsUpdate();
+ }
+#endif
+}
+#endif
+
#if ENABLE(TIZEN_WEBKIT2_TILED_AC_SHARED_PLATFORM_SURFACE)
void LayerTreeCoordinator::freePlatformSurface(int layerID, int platformSurfaceId)
{
virtual void setPageOverlayOpacity(float);
virtual bool pageOverlayShouldApplyFadeWhenPainting() const { return false; }
+#if ENABLE(TIZEN_WEBKIT2_TILED_AC) && !ENABLE(TIZEN_WEBKIT2_TILED_AC_SHARED_PLATFORM_SURFACE)
+ virtual void pauseRendering();
+#else
virtual void pauseRendering() { m_isSuspended = true; }
+#endif
virtual void resumeRendering() { m_isSuspended = false; scheduleLayerFlush(); }
virtual void deviceScaleFactorDidChange() { }
virtual int64_t adoptImageBackingStore(WebCore::Image*);
void freePlatformSurface(int platformSurfaceID);
void removePlatformSurface(int platformSurfaceID);
bool swapPlatformSurfaces();
+#else
+ void markCanvasPlatformLayerNeedsUpdate() { m_canvasNeedsDisplay = true; }
#endif
#if ENABLE(TIZEN_ACCELERATED_2D_CANVAS_EFL)
void flushPlatformSurfaces();