blob: f1f91ddaa305503f36f04323c569f7ff79f53321 [file] [log] [blame]
// Copyright 2013 The Flutter Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
package io.flutter.plugin.platform;
import android.view.View;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import io.flutter.view.AccessibilityBridge;
/** Facilitates interaction between the accessibility bridge and embedded platform views. */
public interface PlatformViewsAccessibilityDelegate {
/**
* Returns the root of the view hierarchy for the platform view with the requested id, or null if
* there is no corresponding view.
*/
@Nullable
View getPlatformViewById(int viewId);
/** Returns true if the platform view uses virtual displays. */
boolean usesVirtualDisplay(int id);
/**
* Attaches an accessibility bridge for this platform views accessibility delegate.
*
* <p>Accessibility events originating in platform views belonging to this delegate will be
* delegated to this accessibility bridge.
*/
void attachAccessibilityBridge(@NonNull AccessibilityBridge accessibilityBridge);
/**
* Detaches the current accessibility bridge.
*
* <p>Any accessibility events sent by platform views belonging to this delegate will be ignored
* until a new accessibility bridge is attached.
*/
void detachAccessibilityBridge();
}