Clear page cache when settings's font type is changed
authorHyeonji Kim <hyeonji.kim@samsung.com>
Wed, 2 Oct 2013 05:07:15 +0000 (14:07 +0900)
committerHyeonji Kim <hyeonji.kim@samsung.com>
Wed, 2 Oct 2013 08:12:41 +0000 (17:12 +0900)
[Title] Clear page cache when settings's font type is changed
[Issue#] P130913-03053
[Problem] When going back to the previous page, font is not changed
[Cause] The previous page is cached page, so font is not changed
[Solution] When font type is changed, clear page cache

Change-Id: Ia8bd07bc1390e491a137e3ad100367251034b23d

Source/WebKit2/WebProcess/WebPage/efl/WebPageEfl.cpp [changed mode: 0755->0644]

old mode 100755 (executable)
new mode 100644 (file)
index cb08ceb..e9052f8
 #if ENABLE(TIZEN_USE_SETTINGS_FONT)
 #include "fontconfig/fontconfig.h"
 #include <WebCore/FontCache.h>
+#include <WebCore/PageCache.h>
 #endif
 
 #if ENABLE(TIZEN_WEBKIT2_TEXT_SELECTION)
@@ -1892,6 +1893,12 @@ void WebPage::useSettingsFont()
     FcInitReinitialize();
     WebCore::fontCache()->invalidate();
 
+    int pageCapacity = WebCore::pageCache()->capacity();
+    // Setting size to 0, makes all pages be released.
+    WebCore::pageCache()->setCapacity(0);
+    WebCore::pageCache()->releaseAutoreleasedPagesNow();
+    WebCore::pageCache()->setCapacity(pageCapacity);
+
     Frame* frame = m_mainFrame->coreFrame();
     if (!frame)
         return;