@nativescript/core
Version:
A JavaScript library providing an easy to use api for interacting with iOS and Android platform APIs.
58 lines (57 loc) • 2.41 kB
TypeScript
import type { View } from '../ui/core/view';
import { CoreTypes } from '../core-types';
import { NativeWindow } from './native-window-common';
import type { WindowRole } from './window-base';
/**
* iOS implementation of NativeWindow.
* Wraps a UIWindow and, when the app is scene-based, the UIWindowScene hosting it.
*/
export declare class IOSNativeWindow extends NativeWindow {
private _scene;
private _window;
/**
* @internal – set while a scene session destruction request is in flight, so the
* following scene disconnect is read as a close rather than a detach.
*/
_closeRequested: boolean;
/**
* @internal – whether the id comes from a scene session identity. Without one the
* window cannot be matched to a reconnecting session or to a discarded one.
*/
_hasSessionIdentity: boolean;
constructor(scene: UIWindowScene | undefined, window: UIWindow, id?: string, isPrimary?: boolean, role?: WindowRole);
/**
* @internal – bind a new scene/window pair to this window session after a detach.
*/
_reattach(scene: UIWindowScene, uiWindow: UIWindow): void;
get ios(): {
scene: UIWindowScene;
uiWindow: UIWindow;
};
/**
* Platform-specific: set the view as root content of this UIWindow.
*/
protected _setNativeContent(view: View): void;
/**
* Close this window/scene.
*/
close(): void;
protected _getOrientation(): 'portrait' | 'landscape' | 'unknown';
protected _getSystemAppearance(): 'light' | 'dark' | null;
protected _getLayoutDirection(): CoreTypes.LayoutDirectionType | null;
private _getOrientationValue;
_getSystemAppearanceValue(userInterfaceStyle: number): 'dark' | 'light';
_getLayoutDirectionValue(layoutDirection: number): CoreTypes.LayoutDirectionType;
private _getViewController;
private _setViewControllerView;
protected _onReleaseRootView(rootView: View): void;
protected _onDestroy(): void;
/**
* The window identity of a scene: the session persistent identifier, which iOS keeps
* across a disconnect and hands back when it reconnects the same session.
*
* Returns `undefined` when the scene carries no session identity — such a window gets
* a minted id and will not be recognised on reconnect.
*/
static getSceneId(scene: UIWindowScene): string | undefined;
}