157b03e2bfb467f3d6366bffeb14031354f1be5f1Gustav Sennton/*
257b03e2bfb467f3d6366bffeb14031354f1be5f1Gustav Sennton * Copyright 2018 The Android Open Source Project
357b03e2bfb467f3d6366bffeb14031354f1be5f1Gustav Sennton *
457b03e2bfb467f3d6366bffeb14031354f1be5f1Gustav Sennton * Licensed under the Apache License, Version 2.0 (the "License");
557b03e2bfb467f3d6366bffeb14031354f1be5f1Gustav Sennton * you may not use this file except in compliance with the License.
657b03e2bfb467f3d6366bffeb14031354f1be5f1Gustav Sennton * You may obtain a copy of the License at
757b03e2bfb467f3d6366bffeb14031354f1be5f1Gustav Sennton *
857b03e2bfb467f3d6366bffeb14031354f1be5f1Gustav Sennton *      http://www.apache.org/licenses/LICENSE-2.0
957b03e2bfb467f3d6366bffeb14031354f1be5f1Gustav Sennton *
1057b03e2bfb467f3d6366bffeb14031354f1be5f1Gustav Sennton * Unless required by applicable law or agreed to in writing, software
1157b03e2bfb467f3d6366bffeb14031354f1be5f1Gustav Sennton * distributed under the License is distributed on an "AS IS" BASIS,
1257b03e2bfb467f3d6366bffeb14031354f1be5f1Gustav Sennton * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1357b03e2bfb467f3d6366bffeb14031354f1be5f1Gustav Sennton * See the License for the specific language governing permissions and
1457b03e2bfb467f3d6366bffeb14031354f1be5f1Gustav Sennton * limitations under the License.
1557b03e2bfb467f3d6366bffeb14031354f1be5f1Gustav Sennton */
1657b03e2bfb467f3d6366bffeb14031354f1be5f1Gustav Sennton
1757b03e2bfb467f3d6366bffeb14031354f1be5f1Gustav Senntonpackage androidx.webkit.internal;
1857b03e2bfb467f3d6366bffeb14031354f1be5f1Gustav Sennton
1957b03e2bfb467f3d6366bffeb14031354f1be5f1Gustav Senntonimport org.chromium.support_lib_boundary.WebSettingsBoundaryInterface;
2057b03e2bfb467f3d6366bffeb14031354f1be5f1Gustav Sennton
2157b03e2bfb467f3d6366bffeb14031354f1be5f1Gustav Sennton/**
2257b03e2bfb467f3d6366bffeb14031354f1be5f1Gustav Sennton * Adapter between WebSettingsCompat and
2357b03e2bfb467f3d6366bffeb14031354f1be5f1Gustav Sennton * {@link org.chromium.support_lib_boundary.WebSettingsBoundaryInterface} (the
2457b03e2bfb467f3d6366bffeb14031354f1be5f1Gustav Sennton * corresponding interface shared with the support library glue in the WebView APK).
2557b03e2bfb467f3d6366bffeb14031354f1be5f1Gustav Sennton */
2657b03e2bfb467f3d6366bffeb14031354f1be5f1Gustav Senntonpublic class WebSettingsAdapter {
2757b03e2bfb467f3d6366bffeb14031354f1be5f1Gustav Sennton    private WebSettingsBoundaryInterface mBoundaryInterface;
2857b03e2bfb467f3d6366bffeb14031354f1be5f1Gustav Sennton
2957b03e2bfb467f3d6366bffeb14031354f1be5f1Gustav Sennton    public WebSettingsAdapter(WebSettingsBoundaryInterface boundaryInterface) {
3057b03e2bfb467f3d6366bffeb14031354f1be5f1Gustav Sennton        mBoundaryInterface = boundaryInterface;
3157b03e2bfb467f3d6366bffeb14031354f1be5f1Gustav Sennton    }
3257b03e2bfb467f3d6366bffeb14031354f1be5f1Gustav Sennton
3357b03e2bfb467f3d6366bffeb14031354f1be5f1Gustav Sennton    /**
3457b03e2bfb467f3d6366bffeb14031354f1be5f1Gustav Sennton     * Adapter method for {@link androidx.webkit.WebSettingsCompat#setOffscreenPreRaster}.
3557b03e2bfb467f3d6366bffeb14031354f1be5f1Gustav Sennton     */
3657b03e2bfb467f3d6366bffeb14031354f1be5f1Gustav Sennton    public void setOffscreenPreRaster(boolean enabled) {
3757b03e2bfb467f3d6366bffeb14031354f1be5f1Gustav Sennton        mBoundaryInterface.setOffscreenPreRaster(enabled);
3857b03e2bfb467f3d6366bffeb14031354f1be5f1Gustav Sennton    }
3957b03e2bfb467f3d6366bffeb14031354f1be5f1Gustav Sennton
4057b03e2bfb467f3d6366bffeb14031354f1be5f1Gustav Sennton    /**
4157b03e2bfb467f3d6366bffeb14031354f1be5f1Gustav Sennton     * Adapter method for {@link androidx.webkit.WebSettingsCompat#getOffscreenPreRaster}.
4257b03e2bfb467f3d6366bffeb14031354f1be5f1Gustav Sennton     */
4357b03e2bfb467f3d6366bffeb14031354f1be5f1Gustav Sennton    public boolean getOffscreenPreRaster() {
4457b03e2bfb467f3d6366bffeb14031354f1be5f1Gustav Sennton        return mBoundaryInterface.getOffscreenPreRaster();
4557b03e2bfb467f3d6366bffeb14031354f1be5f1Gustav Sennton    }
4657b03e2bfb467f3d6366bffeb14031354f1be5f1Gustav Sennton
4757b03e2bfb467f3d6366bffeb14031354f1be5f1Gustav Sennton    /**
4857b03e2bfb467f3d6366bffeb14031354f1be5f1Gustav Sennton     * Adapter method for {@link androidx.webkit.WebSettingsCompat#setSafeBrowsingEnabled}.
4957b03e2bfb467f3d6366bffeb14031354f1be5f1Gustav Sennton     */
5057b03e2bfb467f3d6366bffeb14031354f1be5f1Gustav Sennton    public void setSafeBrowsingEnabled(boolean enabled) {
5157b03e2bfb467f3d6366bffeb14031354f1be5f1Gustav Sennton        mBoundaryInterface.setSafeBrowsingEnabled(enabled);
5257b03e2bfb467f3d6366bffeb14031354f1be5f1Gustav Sennton    }
5357b03e2bfb467f3d6366bffeb14031354f1be5f1Gustav Sennton
5457b03e2bfb467f3d6366bffeb14031354f1be5f1Gustav Sennton    /**
5557b03e2bfb467f3d6366bffeb14031354f1be5f1Gustav Sennton     * Adapter method for {@link androidx.webkit.WebSettingsCompat#getSafeBrowsingEnabled}.
5657b03e2bfb467f3d6366bffeb14031354f1be5f1Gustav Sennton     */
5757b03e2bfb467f3d6366bffeb14031354f1be5f1Gustav Sennton    public boolean getSafeBrowsingEnabled() {
5857b03e2bfb467f3d6366bffeb14031354f1be5f1Gustav Sennton        return mBoundaryInterface.getSafeBrowsingEnabled();
5957b03e2bfb467f3d6366bffeb14031354f1be5f1Gustav Sennton    }
6057b03e2bfb467f3d6366bffeb14031354f1be5f1Gustav Sennton
6157b03e2bfb467f3d6366bffeb14031354f1be5f1Gustav Sennton    /**
6257b03e2bfb467f3d6366bffeb14031354f1be5f1Gustav Sennton     * Adapter method for {@link androidx.webkit.WebSettingsCompat#setDisabledActionModeMenuItems}.
6357b03e2bfb467f3d6366bffeb14031354f1be5f1Gustav Sennton     */
6457b03e2bfb467f3d6366bffeb14031354f1be5f1Gustav Sennton    public void setDisabledActionModeMenuItems(int menuItems) {
6557b03e2bfb467f3d6366bffeb14031354f1be5f1Gustav Sennton        mBoundaryInterface.setDisabledActionModeMenuItems(menuItems);
6657b03e2bfb467f3d6366bffeb14031354f1be5f1Gustav Sennton    }
6757b03e2bfb467f3d6366bffeb14031354f1be5f1Gustav Sennton
6857b03e2bfb467f3d6366bffeb14031354f1be5f1Gustav Sennton    /**
6957b03e2bfb467f3d6366bffeb14031354f1be5f1Gustav Sennton     * Adapter method for {@link androidx.webkit.WebSettingsCompat#getDisabledActionModeMenuItems}.
7057b03e2bfb467f3d6366bffeb14031354f1be5f1Gustav Sennton     */
7157b03e2bfb467f3d6366bffeb14031354f1be5f1Gustav Sennton    public int getDisabledActionModeMenuItems() {
7257b03e2bfb467f3d6366bffeb14031354f1be5f1Gustav Sennton        return mBoundaryInterface.getDisabledActionModeMenuItems();
7357b03e2bfb467f3d6366bffeb14031354f1be5f1Gustav Sennton    }
7457b03e2bfb467f3d6366bffeb14031354f1be5f1Gustav Sennton
7557b03e2bfb467f3d6366bffeb14031354f1be5f1Gustav Sennton}
76