diff options
-rw-r--r-- | WebKit/android/nav/WebView.cpp | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/WebKit/android/nav/WebView.cpp b/WebKit/android/nav/WebView.cpp index 52bb6a5..8b6dd5a 100644 --- a/WebKit/android/nav/WebView.cpp +++ b/WebKit/android/nav/WebView.cpp @@ -892,6 +892,7 @@ CachedRoot* getFrameCache(FrameCachePermission allowNewer) if (allowNewer == DontAllowNewer && m_viewImpl->m_lastGeneration < m_generation) return m_frameCacheUI; DBG_NAV_LOGD("%s", "m_viewImpl->m_updatedFrameCache == true"); + bool hadFocus = m_frameCacheUI && m_frameCacheUI->currentFocus(); m_viewImpl->gFrameCacheMutex.lock(); OutOfFocusFix fix = DoNothing; if (allowNewer != DontAllowNewer) @@ -904,6 +905,8 @@ CachedRoot* getFrameCache(FrameCachePermission allowNewer) m_viewImpl->m_frameCacheKit = 0; m_viewImpl->m_navPictureKit = 0; m_viewImpl->gFrameCacheMutex.unlock(); + if (hadFocus && (!m_frameCacheUI || !m_frameCacheUI->currentFocus())) + viewInvalidate(); // redraw in case focus ring is still visible if (fix == UpdateTextEntry) updateTextEntry(); else if (fix == ClearTextEntry) |