feat(visionos): ui-mobile-base supporting xros plus improvements to window handling (#10478)

This commit is contained in:
Nathan Walker
2024-04-05 17:07:16 -07:00
committed by GitHub
parent 9ca490250e
commit 01d537bf15
242 changed files with 8658 additions and 2099 deletions

View File

@@ -200,11 +200,17 @@ export class FrameBase extends CustomLayoutView {
public _removeEntry(removed: BackstackEntry): void {
const page = removed.resolvedPage;
const frame = page.frame;
if (frame) {
frame._removeView(page);
if (page) {
const frame = page.frame;
if (frame) {
frame._removeView(page);
} else {
page._tearDownUI(true);
}
} else {
page._tearDownUI(true);
if (Trace.isEnabled()) {
Trace.write(`_removeEntry: backstack entry missing page`, Trace.categories.Navigation);
}
}
removed.resolvedPage = null;
@@ -557,7 +563,7 @@ export class FrameBase extends CustomLayoutView {
public _getNavigationTransition(entry: NavigationEntry): NavigationTransition {
if (entry) {
if (__IOS__ && entry.transitioniOS !== undefined) {
if (__APPLE__ && entry.transitioniOS !== undefined) {
return entry.transitioniOS;
}
@@ -768,5 +774,5 @@ export const defaultPage = new Property<FrameBase, string>({
});
defaultPage.register(FrameBase);
export const actionBarVisibilityProperty = new Property<FrameBase, 'auto' | 'never' | 'always'>({ name: 'actionBarVisibility', defaultValue: 'auto', affectsLayout: __IOS__ });
export const actionBarVisibilityProperty = new Property<FrameBase, 'auto' | 'never' | 'always'>({ name: 'actionBarVisibility', defaultValue: 'auto', affectsLayout: __APPLE__ });
actionBarVisibilityProperty.register(FrameBase);