1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #include "xwalk/runtime/renderer/android/xwalk_render_process_observer.h"
7 #include "ipc/ipc_message_macros.h"
8 #include "third_party/WebKit/public/web/WebCache.h"
9 #include "third_party/WebKit/public/web/WebNetworkStateNotifier.h"
10 #include "xwalk/runtime/common/android/xwalk_render_view_messages.h"
14 XWalkRenderProcessObserver::XWalkRenderProcessObserver()
15 : webkit_initialized_(false) {
18 XWalkRenderProcessObserver::~XWalkRenderProcessObserver() {
21 bool XWalkRenderProcessObserver::OnControlMessageReceived(
22 const IPC::Message& message) {
24 IPC_BEGIN_MESSAGE_MAP(XWalkRenderProcessObserver, message)
25 IPC_MESSAGE_HANDLER(XWalkViewMsg_SetJsOnlineProperty, OnSetJsOnlineProperty)
26 IPC_MESSAGE_HANDLER(XWalkViewMsg_ClearCache, OnClearCache);
27 IPC_MESSAGE_UNHANDLED(handled = false)
32 void XWalkRenderProcessObserver::WebKitInitialized() {
33 webkit_initialized_ = true;
36 void XWalkRenderProcessObserver::OnSetJsOnlineProperty(bool network_up) {
37 if (webkit_initialized_)
38 blink::WebNetworkStateNotifier::setOnLine(network_up);
41 void XWalkRenderProcessObserver::OnClearCache() {
42 if (webkit_initialized_)
43 blink::WebCache::clear();