mirror of
https://github.com/ionic-team/ionic-framework.git
synced 2025-08-22 05:21:52 +08:00
feat(core): add check for standalone mode (#15001)
* feat(core): add check for standalone mode * feat(): add check for isStandalone * feat(core): add check for standalone mode
This commit is contained in:
@ -1,7 +1,7 @@
|
|||||||
import { Component, Element, Prop, QueueApi } from '@stencil/core';
|
import { Component, Element, Prop, QueueApi } from '@stencil/core';
|
||||||
|
|
||||||
import { Config, Mode } from '../../interface';
|
import { Config, Mode } from '../../interface';
|
||||||
import { isDevice, isHybrid, needInputShims } from '../../utils/platform';
|
import { isDevice, isHybrid, isStandaloneMode, needInputShims } from '../../utils/platform';
|
||||||
import { createThemedClasses } from '../../utils/theme';
|
import { createThemedClasses } from '../../utils/theme';
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
@ -35,7 +35,8 @@ export class App {
|
|||||||
|
|
||||||
hostData() {
|
hostData() {
|
||||||
const hybrid = isHybrid(this.win);
|
const hybrid = isHybrid(this.win);
|
||||||
const statusbarPadding = this.config.get('statusbarPadding', hybrid);
|
const isStandalone = isStandaloneMode(this.win);
|
||||||
|
const statusbarPadding = this.config.get('statusbarPadding', hybrid || isStandalone);
|
||||||
|
|
||||||
return {
|
return {
|
||||||
class: {
|
class: {
|
||||||
@ -43,6 +44,7 @@ export class App {
|
|||||||
|
|
||||||
'is-device': this.isDevice,
|
'is-device': this.isDevice,
|
||||||
'is-hydrid': hybrid,
|
'is-hydrid': hybrid,
|
||||||
|
'is-standalone': isStandalone,
|
||||||
'statusbar-padding': statusbarPadding
|
'statusbar-padding': statusbarPadding
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
@ -57,6 +57,10 @@ export function isElectron(win: Window): boolean {
|
|||||||
return testUserAgent(win, /electron/);
|
return testUserAgent(win, /electron/);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export function isStandaloneMode(win: Window): boolean {
|
||||||
|
return win.matchMedia('(display-mode: standalone)').matches;
|
||||||
|
}
|
||||||
|
|
||||||
export function needInputShims(win: Window) {
|
export function needInputShims(win: Window) {
|
||||||
return isIOS(win) && isDevice(win);
|
return isIOS(win) && isDevice(win);
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user