ContentSettingsAdapter.java revision 71678822f1ec93ebcee1e917fa5b52ff37ce65d4
146f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)/*
246f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles) * Copyright (C) 2012 The Android Open Source Project
346f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles) *
446f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles) * Licensed under the Apache License, Version 2.0 (the "License");
546f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles) * you may not use this file except in compliance with the License.
646f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles) * You may obtain a copy of the License at
746f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles) *
846f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles) *      http://www.apache.org/licenses/LICENSE-2.0
946f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles) *
1046f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles) * Unless required by applicable law or agreed to in writing, software
1146f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles) * distributed under the License is distributed on an "AS IS" BASIS,
1246f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles) * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1346f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles) * See the License for the specific language governing permissions and
1446f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles) * limitations under the License.
1546f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles) */
1646f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
1746f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)package com.android.webview.chromium;
1846f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
19ba03529fdf8d5cfed0e2d8c0fe81eb1028a5b4caJonathan Dixonimport android.util.Log;
2046f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)import android.webkit.WebSettings.LayoutAlgorithm;
2146f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)import android.webkit.WebSettings.PluginState;
2246f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)import android.webkit.WebSettings.RenderPriority;
2346f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)import android.webkit.WebSettings.TextSize;
2446f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)import android.webkit.WebSettings.ZoomDensity;
2546f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
2646f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)import org.chromium.content.browser.ContentSettings;
2746f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)import org.chromium.android_webview.AwSettings;
2846f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
2946f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)public class ContentSettingsAdapter extends android.webkit.WebSettings {
30ba03529fdf8d5cfed0e2d8c0fe81eb1028a5b4caJonathan Dixon
31ba03529fdf8d5cfed0e2d8c0fe81eb1028a5b4caJonathan Dixon    private static final String TAG = ContentSettingsAdapter.class.getSimpleName();
32ba03529fdf8d5cfed0e2d8c0fe81eb1028a5b4caJonathan Dixon
3346f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    ContentSettings mContentSettings;
3446f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    AwSettings mAwSettings;
3546f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
3646f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public ContentSettingsAdapter(ContentSettings chromeSettings, AwSettings awSettings) {
3746f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)        mContentSettings = chromeSettings;
3846f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)        mAwSettings = awSettings;
3946f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
4046f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
4146f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
4246f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Deprecated
4346f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public void setNavDump(boolean enabled) {
4471678822f1ec93ebcee1e917fa5b52ff37ce65d4Jonathan Dixon        // Intentional no-op.
4546f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
4646f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
4746f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
4846f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Deprecated
4946f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public boolean getNavDump() {
5071678822f1ec93ebcee1e917fa5b52ff37ce65d4Jonathan Dixon        // Intentional no-op.
5146f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)        return false;
5246f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
5346f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
5446f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
5546f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public void setSupportZoom(boolean support) {
5646f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)        mContentSettings.setSupportZoom(support);
5746f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
5846f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
5946f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
6046f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public boolean supportZoom() {
6146f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)        return mContentSettings.supportZoom();
6246f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
6346f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
6446f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
6546f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public void setBuiltInZoomControls(boolean enabled) {
6646f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)        mContentSettings.setBuiltInZoomControls(enabled);
6746f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
6846f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
6946f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
7046f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public boolean getBuiltInZoomControls() {
7146f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)        return mContentSettings.getBuiltInZoomControls();
7246f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
7346f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
7446f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
7546f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public void setDisplayZoomControls(boolean enabled) {
7646f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)        mContentSettings.setDisplayZoomControls(enabled);
7746f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
7846f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
7946f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
8046f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public boolean getDisplayZoomControls() {
8146f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)        return mContentSettings.getDisplayZoomControls();
8246f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
8346f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
8446f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
8546f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public void setAllowFileAccess(boolean allow) {
8646f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)        mAwSettings.setAllowFileAccess(allow);
8746f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
8846f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
8946f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
9046f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public boolean getAllowFileAccess() {
9146f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)        return mAwSettings.getAllowFileAccess();
9246f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
9346f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
9446f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
9546f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public void setAllowContentAccess(boolean allow) {
9646f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)        mAwSettings.setAllowContentAccess(allow);
9746f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
9846f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
9946f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
10046f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public boolean getAllowContentAccess() {
10146f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)        return mAwSettings.getAllowContentAccess();
10246f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
10346f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
10446f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
10546f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public void setLoadWithOverviewMode(boolean overview) {
10646f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)        UnimplementedWebViewApi.invoke();
10746f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
10846f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
10946f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
11046f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public boolean getLoadWithOverviewMode() {
11146f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)        UnimplementedWebViewApi.invoke();
11246f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)        return false;
11346f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
11446f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
11546f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
11646f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public void setEnableSmoothTransition(boolean enable) {
11771678822f1ec93ebcee1e917fa5b52ff37ce65d4Jonathan Dixon        // Intentional no-op.
11846f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
11946f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
12046f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
12146f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public boolean enableSmoothTransition() {
12271678822f1ec93ebcee1e917fa5b52ff37ce65d4Jonathan Dixon        // Intentional no-op.
12346f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)        return false;
12446f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
12546f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
12646f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
12746f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public void setUseWebViewBackgroundForOverscrollBackground(boolean view) {
12871678822f1ec93ebcee1e917fa5b52ff37ce65d4Jonathan Dixon        // Intentional no-op.
12946f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
13046f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
13146f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
13246f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public boolean getUseWebViewBackgroundForOverscrollBackground() {
13371678822f1ec93ebcee1e917fa5b52ff37ce65d4Jonathan Dixon        // Intentional no-op.
13446f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)        return false;
13546f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
13646f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
13746f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
13846f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public void setSaveFormData(boolean save) {
13946f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)        UnimplementedWebViewApi.invoke();
14046f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
14146f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
14246f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
14346f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public boolean getSaveFormData() {
14446f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)        UnimplementedWebViewApi.invoke();
14546f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)        return false;
14646f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
14746f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
14846f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
14946f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public void setSavePassword(boolean save) {
15046f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)        UnimplementedWebViewApi.invoke();
15146f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
15246f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
15346f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
15446f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public boolean getSavePassword() {
15546f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)        UnimplementedWebViewApi.invoke();
15646f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)        return false;
15746f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
15846f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
15946f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
16046f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public synchronized void setTextZoom(int textZoom) {
1616083bf7436b99ec8b3826d7da28fc4e9eb450960Mikhail Naganov        mContentSettings.setTextZoom(textZoom);
16246f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
16346f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
16446f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
16546f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public synchronized int getTextZoom() {
1666083bf7436b99ec8b3826d7da28fc4e9eb450960Mikhail Naganov        return mContentSettings.getTextZoom();
16746f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
16846f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
16946f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
17046f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public void setDefaultZoom(ZoomDensity zoom) {
17146f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)        UnimplementedWebViewApi.invoke();
17246f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
17346f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
17446f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
17546f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public ZoomDensity getDefaultZoom() {
17646f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)        UnimplementedWebViewApi.invoke();
17746f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)        return null;
17846f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
17946f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
18046f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
18146f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public void setLightTouchEnabled(boolean enabled) {
182bb0c065b8521a51a13127d917970f5b91205ac40Selim Gurun        // Intentional no-op.
18346f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
18446f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
18546f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
18646f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public boolean getLightTouchEnabled() {
187bb0c065b8521a51a13127d917970f5b91205ac40Selim Gurun        // Intentional no-op.
18846f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)        return false;
18946f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
19046f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
19146f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
19246f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public synchronized void setUserAgent(int ua) {
193ba03529fdf8d5cfed0e2d8c0fe81eb1028a5b4caJonathan Dixon        // Minimal implementation for backwards compatibility: just supports resetting to default.
194ba03529fdf8d5cfed0e2d8c0fe81eb1028a5b4caJonathan Dixon        if (ua == 0) {
195ba03529fdf8d5cfed0e2d8c0fe81eb1028a5b4caJonathan Dixon            setUserAgentString(null);
196ba03529fdf8d5cfed0e2d8c0fe81eb1028a5b4caJonathan Dixon        } else {
197ba03529fdf8d5cfed0e2d8c0fe81eb1028a5b4caJonathan Dixon            Log.w(TAG, "setUserAgent not suported, ua=" + ua);
198ba03529fdf8d5cfed0e2d8c0fe81eb1028a5b4caJonathan Dixon        }
19946f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
20046f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
20146f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
20246f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public synchronized int getUserAgent() {
203ba03529fdf8d5cfed0e2d8c0fe81eb1028a5b4caJonathan Dixon        // Minimal implementation for backwards compatibility: just identifies default vs custom.
204ba03529fdf8d5cfed0e2d8c0fe81eb1028a5b4caJonathan Dixon        return ContentSettings.getDefaultUserAgent().equals(getUserAgentString()) ? 0 : -1;
20546f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
20646f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
20746f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
20846f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public synchronized void setUseWideViewPort(boolean use) {
20946f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)        UnimplementedWebViewApi.invoke();
21046f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
21146f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
21246f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
21346f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public synchronized boolean getUseWideViewPort() {
21446f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)        UnimplementedWebViewApi.invoke();
21546f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)        return false;
21646f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
21746f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
21846f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
21946f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public synchronized void setSupportMultipleWindows(boolean support) {
220a136fa49c1f49a35e9a7caf886e70f5dc41cda91Ben Murdoch        mContentSettings.setSupportMultipleWindows(support);
22146f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
22246f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
22346f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
22446f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public synchronized boolean supportMultipleWindows() {
225a136fa49c1f49a35e9a7caf886e70f5dc41cda91Ben Murdoch        return mContentSettings.supportMultipleWindows();
22646f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
22746f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
22846f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
22946f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public synchronized void setLayoutAlgorithm(LayoutAlgorithm l) {
23085b4c793416fb9674ac026fa11389c18a0f8f73eMikhail Naganov        // TODO: Remove the upstream enum and mapping once the new value is in the public API.
23185b4c793416fb9674ac026fa11389c18a0f8f73eMikhail Naganov        final ContentSettings.LayoutAlgorithm[] chromiumValues = {
23285b4c793416fb9674ac026fa11389c18a0f8f73eMikhail Naganov            ContentSettings.LayoutAlgorithm.NORMAL,
23385b4c793416fb9674ac026fa11389c18a0f8f73eMikhail Naganov            ContentSettings.LayoutAlgorithm.SINGLE_COLUMN,
23485b4c793416fb9674ac026fa11389c18a0f8f73eMikhail Naganov            ContentSettings.LayoutAlgorithm.NARROW_COLUMNS,
23585b4c793416fb9674ac026fa11389c18a0f8f73eMikhail Naganov            ContentSettings.LayoutAlgorithm.TEXT_AUTOSIZING
23685b4c793416fb9674ac026fa11389c18a0f8f73eMikhail Naganov        };
23785b4c793416fb9674ac026fa11389c18a0f8f73eMikhail Naganov        mContentSettings.setLayoutAlgorithm(chromiumValues[l.ordinal()]);
23846f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
23946f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
24046f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
24146f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public synchronized LayoutAlgorithm getLayoutAlgorithm() {
24285b4c793416fb9674ac026fa11389c18a0f8f73eMikhail Naganov        // TODO: Remove the upstream enum and mapping once the new value is in the public API.
24385b4c793416fb9674ac026fa11389c18a0f8f73eMikhail Naganov        final LayoutAlgorithm[] webViewValues = {
24485b4c793416fb9674ac026fa11389c18a0f8f73eMikhail Naganov            LayoutAlgorithm.NORMAL,
24585b4c793416fb9674ac026fa11389c18a0f8f73eMikhail Naganov            LayoutAlgorithm.SINGLE_COLUMN,
24685b4c793416fb9674ac026fa11389c18a0f8f73eMikhail Naganov            LayoutAlgorithm.NARROW_COLUMNS,
24785b4c793416fb9674ac026fa11389c18a0f8f73eMikhail Naganov            LayoutAlgorithm.TEXT_AUTOSIZING
24885b4c793416fb9674ac026fa11389c18a0f8f73eMikhail Naganov        };
24985b4c793416fb9674ac026fa11389c18a0f8f73eMikhail Naganov        return webViewValues[mContentSettings.getLayoutAlgorithm().ordinal()];
25046f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
25146f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
25246f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
25346f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public synchronized void setStandardFontFamily(String font) {
25446f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)        mContentSettings.setStandardFontFamily(font);
25546f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
25646f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
25746f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
25846f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public synchronized String getStandardFontFamily() {
25946f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)        return mContentSettings.getStandardFontFamily();
26046f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
26146f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
26246f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
26346f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public synchronized void setFixedFontFamily(String font) {
26446f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)        mContentSettings.setFixedFontFamily(font);
26546f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
26646f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
26746f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
26846f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public synchronized String getFixedFontFamily() {
26946f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)        return mContentSettings.getFixedFontFamily();
27046f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
27146f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
27246f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
27346f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public synchronized void setSansSerifFontFamily(String font) {
27446f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)        mContentSettings.setSansSerifFontFamily(font);
27546f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
27646f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
27746f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
27846f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public synchronized String getSansSerifFontFamily() {
27946f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)        return mContentSettings.getSansSerifFontFamily();
28046f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
28146f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
28246f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
28346f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public synchronized void setSerifFontFamily(String font) {
28446f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)        mContentSettings.setSerifFontFamily(font);
28546f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
28646f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
28746f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
28846f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public synchronized String getSerifFontFamily() {
28946f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)        return mContentSettings.getSerifFontFamily();
29046f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
29146f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
29246f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
29346f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public synchronized void setCursiveFontFamily(String font) {
29446f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)        mContentSettings.setCursiveFontFamily(font);
29546f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
29646f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
29746f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
29846f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public synchronized String getCursiveFontFamily() {
29946f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)        return mContentSettings.getCursiveFontFamily();
30046f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
30146f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
30246f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
30346f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public synchronized void setFantasyFontFamily(String font) {
30446f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)        mContentSettings.setFantasyFontFamily(font);
30546f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
30646f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
30746f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
30846f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public synchronized String getFantasyFontFamily() {
30946f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)        return mContentSettings.getFantasyFontFamily();
31046f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
31146f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
31246f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
31346f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public synchronized void setMinimumFontSize(int size) {
31446f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)        mContentSettings.setMinimumFontSize(size);
31546f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
31646f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
31746f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
31846f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public synchronized int getMinimumFontSize() {
31946f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)        return mContentSettings.getMinimumFontSize();
32046f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
32146f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
32246f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
32346f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public synchronized void setMinimumLogicalFontSize(int size) {
32446f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)        mContentSettings.setMinimumLogicalFontSize(size);
32546f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
32646f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
32746f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
32846f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public synchronized int getMinimumLogicalFontSize() {
32946f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)        return mContentSettings.getMinimumLogicalFontSize();
33046f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
33146f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
33246f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
33346f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public synchronized void setDefaultFontSize(int size) {
33446f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)        mContentSettings.setDefaultFontSize(size);
33546f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
33646f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
33746f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
33846f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public synchronized int getDefaultFontSize() {
33946f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)        return mContentSettings.getDefaultFontSize();
34046f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
34146f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
34246f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
34346f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public synchronized void setDefaultFixedFontSize(int size) {
34446f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)        mContentSettings.setDefaultFixedFontSize(size);
34546f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
34646f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
34746f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
34846f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public synchronized int getDefaultFixedFontSize() {
34946f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)        return mContentSettings.getDefaultFixedFontSize();
35046f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
35146f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
35246f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
35346f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public synchronized void setLoadsImagesAutomatically(boolean flag) {
35446f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)        mContentSettings.setLoadsImagesAutomatically(flag);
35546f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
35646f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
35746f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
35846f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public synchronized boolean getLoadsImagesAutomatically() {
35946f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)        return mContentSettings.getLoadsImagesAutomatically();
36046f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
36146f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
36246f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
36346f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public synchronized void setBlockNetworkImage(boolean flag) {
36446f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)        mContentSettings.setImagesEnabled(!flag);
36546f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
36646f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
36746f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
36846f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public synchronized boolean getBlockNetworkImage() {
36946f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)        return !mContentSettings.getImagesEnabled();
37046f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
37146f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
37246f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
37346f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public synchronized void setBlockNetworkLoads(boolean flag) {
37446f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)        mAwSettings.setBlockNetworkLoads(flag);
37546f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
37646f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
37746f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
37846f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public synchronized boolean getBlockNetworkLoads() {
37946f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)        return mAwSettings.getBlockNetworkLoads();
38046f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
38146f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
38246f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
38346f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public synchronized void setJavaScriptEnabled(boolean flag) {
38446f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)        mContentSettings.setJavaScriptEnabled(flag);
38546f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
38646f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
38746f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
38846f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public void setAllowUniversalAccessFromFileURLs(boolean flag) {
3896083bf7436b99ec8b3826d7da28fc4e9eb450960Mikhail Naganov        mContentSettings.setAllowUniversalAccessFromFileURLs(flag);
39046f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
39146f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
39246f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
39346f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public void setAllowFileAccessFromFileURLs(boolean flag) {
3946083bf7436b99ec8b3826d7da28fc4e9eb450960Mikhail Naganov        mContentSettings.setAllowFileAccessFromFileURLs(flag);
39546f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
39646f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
39746f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
39846f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public synchronized void setPluginsEnabled(boolean flag) {
39946f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)        mContentSettings.setPluginsEnabled(flag);
40046f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
40146f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
40246f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
40346f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public synchronized void setPluginState(PluginState state) {
40446f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)        mContentSettings.setPluginState(state);
40546f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
40646f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
40746f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
40846f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public synchronized void setDatabasePath(String databasePath) {
40946f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)        UnimplementedWebViewApi.invoke();
41046f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
41146f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
41246f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
41346f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public synchronized void setGeolocationDatabasePath(String databasePath) {
41446f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)        UnimplementedWebViewApi.invoke();
41546f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
41646f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
41746f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
41846f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public synchronized void setAppCacheEnabled(boolean flag) {
419012a79d6f21e286f63d3c2f98f305b1ec91b0560Mikhail Naganov        mContentSettings.setAppCacheEnabled(flag);
42046f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
42146f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
42246f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
42346f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public synchronized void setAppCachePath(String appCachePath) {
424012a79d6f21e286f63d3c2f98f305b1ec91b0560Mikhail Naganov        mContentSettings.setAppCachePath(appCachePath);
42546f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
42646f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
42746f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
42846f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public synchronized void setAppCacheMaxSize(long appCacheMaxSize) {
42946f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)        UnimplementedWebViewApi.invoke();
43046f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
43146f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
43246f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
43346f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public synchronized void setDatabaseEnabled(boolean flag) {
43446f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)        UnimplementedWebViewApi.invoke();
43546f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
43646f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
43746f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
43846f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public synchronized void setDomStorageEnabled(boolean flag) {
43946f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)        UnimplementedWebViewApi.invoke();
44046f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
44146f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
44246f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
44346f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public synchronized boolean getDomStorageEnabled() {
44446f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)        UnimplementedWebViewApi.invoke();
44546f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)        return false;
44646f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
44746f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
44846f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
44946f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public synchronized String getDatabasePath() {
45046f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)        UnimplementedWebViewApi.invoke();
45146f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)        return null;
45246f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
45346f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
45446f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
45546f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public synchronized boolean getDatabaseEnabled() {
45646f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)        UnimplementedWebViewApi.invoke();
45746f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)        return false;
45846f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
45946f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
46046f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
46146f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public synchronized void setGeolocationEnabled(boolean flag) {
46246f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)        UnimplementedWebViewApi.invoke();
46346f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
46446f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
46546f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
46646f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public synchronized boolean getJavaScriptEnabled() {
46746f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)        return mContentSettings.getJavaScriptEnabled();
46846f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
46946f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
47046f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
47146f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public boolean getAllowUniversalAccessFromFileURLs() {
4726083bf7436b99ec8b3826d7da28fc4e9eb450960Mikhail Naganov        return mContentSettings.getAllowUniversalAccessFromFileURLs();
47346f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
47446f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
47546f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
47646f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public boolean getAllowFileAccessFromFileURLs() {
4776083bf7436b99ec8b3826d7da28fc4e9eb450960Mikhail Naganov        return mContentSettings.getAllowFileAccessFromFileURLs();
47846f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
47946f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
48046f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
48146f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public synchronized boolean getPluginsEnabled() {
4826083bf7436b99ec8b3826d7da28fc4e9eb450960Mikhail Naganov        return mContentSettings.getPluginsEnabled();
48346f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
48446f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
48546f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
48646f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public synchronized PluginState getPluginState() {
4876083bf7436b99ec8b3826d7da28fc4e9eb450960Mikhail Naganov        return mContentSettings.getPluginState();
48846f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
48946f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
49046f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
49146f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public synchronized void setJavaScriptCanOpenWindowsAutomatically(boolean flag) {
49211d3f99ef2bccfa1118daddc2ab5606cb2709804Ben Murdoch        mContentSettings.setJavaScriptCanOpenWindowsAutomatically(flag);
49346f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
49446f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
49546f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
49646f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public synchronized boolean getJavaScriptCanOpenWindowsAutomatically() {
49711d3f99ef2bccfa1118daddc2ab5606cb2709804Ben Murdoch        return mContentSettings.getJavaScriptCanOpenWindowsAutomatically();
49846f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
49946f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
50046f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
50146f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public synchronized void setDefaultTextEncodingName(String encoding) {
5026083bf7436b99ec8b3826d7da28fc4e9eb450960Mikhail Naganov        mContentSettings.setDefaultTextEncodingName(encoding);
50346f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
50446f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
50546f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
50646f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public synchronized String getDefaultTextEncodingName() {
5076083bf7436b99ec8b3826d7da28fc4e9eb450960Mikhail Naganov        return mContentSettings.getDefaultTextEncodingName();
50846f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
50946f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
51046f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
51146f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public synchronized void setUserAgentString(String ua) {
51246f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)        mContentSettings.setUserAgentString(ua);
51346f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
51446f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
51546f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
51646f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public synchronized String getUserAgentString() {
51746f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)        return mContentSettings.getUserAgentString();
51846f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
51946f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
52046f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
52146f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public void setNeedInitialFocus(boolean flag) {
5224cee3bf50c125a52a49323aa999f4b619fa18c10Ben Murdoch        mAwSettings.setShouldFocusFirstNode(flag);
52346f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
52446f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
52546f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
52646f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public synchronized void setRenderPriority(RenderPriority priority) {
52746f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)        UnimplementedWebViewApi.invoke();
52846f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
52946f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
53046f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
53146f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public void setCacheMode(int mode) {
532c9e6245b3f3b6ac5e37cade2bfcda265eaa3e9e2Mikhail Naganov        mAwSettings.setCacheMode(mode);
53346f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
53446f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)
53546f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    @Override
53646f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    public int getCacheMode() {
537c9e6245b3f3b6ac5e37cade2bfcda265eaa3e9e2Mikhail Naganov        return mAwSettings.getCacheMode();
53846f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)    }
53946f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)}
540