mirror of
https://github.com/facebook/react-native.git
synced 2025-11-01 09:14:26 +00:00
Reviewed By: aaronabramov Differential Revision: D33367752 fbshipit-source-id: 4ce94d184485e5ee0a62cf67ad2d3ba16e285c8f
51 lines
1.2 KiB
Java
51 lines
1.2 KiB
Java
/*
|
|
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
*
|
|
* This source code is licensed under the MIT license found in the
|
|
* LICENSE file in the root directory of this source tree.
|
|
*/
|
|
|
|
package com.facebook.react.fabric;
|
|
|
|
import com.facebook.react.bridge.NativeMap;
|
|
import javax.annotation.concurrent.ThreadSafe;
|
|
|
|
/** Represents a Java variant of the surface, its status and inner data required to display it. */
|
|
@ThreadSafe
|
|
public interface SurfaceHandler {
|
|
|
|
/** Starts the surface if the surface is not running */
|
|
void start();
|
|
|
|
/** Stops the surface if it is currently running */
|
|
void stop();
|
|
|
|
void setProps(NativeMap props);
|
|
|
|
/**
|
|
* Provides current surface id. Id should be updated after each call to {@link
|
|
* SurfaceHandler#stop}
|
|
*/
|
|
int getSurfaceId();
|
|
|
|
/**
|
|
* Updates current surface id. Id should be updated after each call to {@link SurfaceHandler#stop}
|
|
*/
|
|
void setSurfaceId(int surfaceId);
|
|
|
|
boolean isRunning();
|
|
|
|
String getModuleName();
|
|
|
|
void setLayoutConstraints(
|
|
int widthMeasureSpec,
|
|
int heightMeasureSpec,
|
|
int offsetX,
|
|
int offsetY,
|
|
boolean doLeftAndRightSwapInRTL,
|
|
boolean isRTL,
|
|
float pixelDensity);
|
|
|
|
void setMountable(boolean mountable);
|
|
}
|