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 {
|
||||
ComponentDataPair,
|
||||
FrameworkDelegate,
|
||||
@ -173,6 +173,10 @@ export function setPages(nav: Nav, delegate: FrameworkDelegate, animation: Anima
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
// private api, exported for testing
|
||||
export function queueTransaction(ti: TransitionInstruction, done: () => void): Promise<boolean> {
|
||||
const promise = new Promise<boolean>((resolve, reject) => {
|
||||
@ -312,8 +316,10 @@ export function loadViewAndTransition(nav: Nav, enteringView: ViewController, le
|
||||
ev: ti.opts.event,
|
||||
};
|
||||
|
||||
|
||||
|
||||
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) {
|
||||
nav.swipeToGoBackTransition.destroy();
|
||||
@ -777,6 +783,10 @@ export function getTopTransaction(id: number) {
|
||||
return toReturn;
|
||||
}
|
||||
|
||||
export function getDefaultTransition(config: Config) {
|
||||
return config.get('mode') === 'md' ? buildMdTransition : buildIOSTransition;
|
||||
}
|
||||
|
||||
|
||||
let viewIds = VIEW_ID_START;
|
||||
const DISABLE_APP_MINIMUM_DURATION = 64;
|
||||
Reference in New Issue
Block a user