mirror of
https://github.com/ionic-team/ionic-framework.git
synced 2025-11-07 15:07:13 +08:00
refactor(navigation): use mode to drive default transition
This commit is contained in:
@ -1,4 +1,4 @@
|
|||||||
import { Animation, AnimationOptions } from '../components/animation-controller/animation-interface';
|
import { Animation, AnimationOptions, Config } from '..';
|
||||||
import {
|
import {
|
||||||
ComponentDataPair,
|
ComponentDataPair,
|
||||||
FrameworkDelegate,
|
FrameworkDelegate,
|
||||||
@ -173,6 +173,10 @@ export function setPages(nav: Nav, delegate: FrameworkDelegate, animation: Anima
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// private api, exported for testing
|
// private api, exported for testing
|
||||||
export function queueTransaction(ti: TransitionInstruction, done: () => void): Promise<boolean> {
|
export function queueTransaction(ti: TransitionInstruction, done: () => void): Promise<boolean> {
|
||||||
const promise = new Promise<boolean>((resolve, reject) => {
|
const promise = new Promise<boolean>((resolve, reject) => {
|
||||||
@ -312,8 +316,10 @@ export function loadViewAndTransition(nav: Nav, enteringView: ViewController, le
|
|||||||
ev: ti.opts.event,
|
ev: ti.opts.event,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
const emptyTransition = transitionFactory(ti.animation);
|
const emptyTransition = transitionFactory(ti.animation);
|
||||||
transition = getHydratedTransition(animationOpts.animation, nav.config, nav.transitionId, emptyTransition, enteringView, leavingView, animationOpts, buildMdTransition);
|
transition = getHydratedTransition(animationOpts.animation, nav.config, nav.transitionId, emptyTransition, enteringView, leavingView, animationOpts, getDefaultTransition(nav.config));
|
||||||
|
|
||||||
if (nav.swipeToGoBackTransition) {
|
if (nav.swipeToGoBackTransition) {
|
||||||
nav.swipeToGoBackTransition.destroy();
|
nav.swipeToGoBackTransition.destroy();
|
||||||
@ -777,6 +783,10 @@ export function getTopTransaction(id: number) {
|
|||||||
return toReturn;
|
return toReturn;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export function getDefaultTransition(config: Config) {
|
||||||
|
return config.get('mode') === 'md' ? buildMdTransition : buildIOSTransition;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
let viewIds = VIEW_ID_START;
|
let viewIds = VIEW_ID_START;
|
||||||
const DISABLE_APP_MINIMUM_DURATION = 64;
|
const DISABLE_APP_MINIMUM_DURATION = 64;
|
||||||
Reference in New Issue
Block a user