1a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)// Copyright 2012 The Chromium Authors. All rights reserved. 2c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be 3c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)// found in the LICENSE file. 4c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) 5f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)package org.chromium.ui.base; 6c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) 7c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)import android.view.View; 8c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) 9c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)/** 10c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) * Interface to acquire and release anchor views from the implementing View. 11c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) */ 12c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)public interface ViewAndroidDelegate { 13c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) 14c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) /** 15c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) * @return An anchor view that can be used to anchor decoration views like Autofill popup. 16c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) */ 17c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) View acquireAnchorView(); 18c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) 19c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) /** 20c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) * Set the anchor view to specified position and width (all units in dp). 21c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) * @param view The anchor view that needs to be positioned. 22c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) * @param x X coordinate of the top left corner of the anchor view. 23c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) * @param y Y coordinate of the top left corner of the anchor view. 24c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) * @param width The width of the anchor view. 25c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) * @param height The height of the anchor view. 26c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) */ 27c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) void setAnchorViewPosition(View view, float x, float y, float width, float height); 28c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) 29c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) /** 30c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) * Release given anchor view. 31c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) * @param anchorView The anchor view that needs to be released. 32c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) */ 33c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) void releaseAnchorView(View anchorView); 34f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)} 35