1a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)// Copyright 2012 The Chromium Authors. All rights reserved. 25821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be 35821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// found in the LICENSE file. 45821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 55821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)package org.chromium.chrome.browser; 65821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 72a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)import android.graphics.Rect; 82a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)import android.graphics.RectF; 92a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)import org.chromium.base.CalledByNative; 112a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)import org.chromium.components.web_contents_delegate_android.WebContentsDelegateAndroid; 125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)/** 145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * Chromium Android specific WebContentsDelegate. 155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * This file is the Java version of the native class of the same name. 165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * It should contain empty WebContentsDelegate methods to be implemented by the embedder. 175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * These methods belong to the Chromium Android port but not to WebView. 185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) */ 195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)public class ChromeWebContentsDelegateAndroid extends WebContentsDelegateAndroid { 205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 215821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) @CalledByNative 225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) public void onFindResultAvailable(FindNotificationDetails result) { 235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) } 245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) @CalledByNative 265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) public void onFindMatchRectsAvailable(FindMatchRectsDetails result) { 275821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) } 282a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 29424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles) @CalledByNative 30f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles) public boolean addNewContents(long nativeSourceWebContents, long nativeWebContents, 31424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles) int disposition, Rect initialPosition, boolean userGesture) { 32424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles) return false; 33424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles) } 34424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles) 352a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) // Helper functions used to create types that are part of the public interface 362a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) @CalledByNative 372a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) private static Rect createRect(int x, int y, int right, int bottom) { 382a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) return new Rect(x, y, right, bottom); 392a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) } 402a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 412a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) @CalledByNative 422a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) private static RectF createRectF(float x, float y, float right, float bottom) { 432a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) return new RectF(x, y, right, bottom); 442a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) } 452a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 462a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) @CalledByNative 472a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) private static FindNotificationDetails createFindNotificationDetails( 482a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) int numberOfMatches, Rect rendererSelectionRect, 492a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) int activeMatchOrdinal, boolean finalUpdate) { 502a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) return new FindNotificationDetails(numberOfMatches, rendererSelectionRect, 512a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) activeMatchOrdinal, finalUpdate); 522a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) } 532a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 542a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) @CalledByNative 552a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) private static FindMatchRectsDetails createFindMatchRectsDetails( 562a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) int version, int numRects, RectF activeRect) { 572a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) return new FindMatchRectsDetails(version, new RectF[numRects], activeRect); 582a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) } 592a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 602a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) @CalledByNative 612a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) private static void setMatchRectByIndex( 622a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) FindMatchRectsDetails findMatchRectsDetails, int index, RectF rect) { 632a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) findMatchRectsDetails.rects[index] = rect; 642a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) } 655821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)} 66