MOBILE-3833 collapsible: Do not init collapsible heading if not needed
parent
46dd468314
commit
bc2e38dece
|
@ -1,4 +1,4 @@
|
||||||
<ion-header collapsible>
|
<ion-header [collapsible]="!subfolder">
|
||||||
<ion-toolbar>
|
<ion-toolbar>
|
||||||
<ion-buttons slot="start">
|
<ion-buttons slot="start">
|
||||||
<ion-back-button [text]="'core.back' | translate"></ion-back-button>
|
<ion-back-button [text]="'core.back' | translate"></ion-back-button>
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
<ion-header collapsible>
|
<ion-header [collapsible]="!this.pageId && !this.pageTitle">
|
||||||
<ion-toolbar>
|
<ion-toolbar>
|
||||||
<ion-buttons slot="start">
|
<ion-buttons slot="start">
|
||||||
<ion-back-button [text]="'core.back' | translate"></ion-back-button>
|
<ion-back-button [text]="'core.back' | translate"></ion-back-button>
|
||||||
|
|
|
@ -88,7 +88,18 @@ export class CoreCollapsibleHeaderDirective implements OnInit, OnChanges, OnDest
|
||||||
/**
|
/**
|
||||||
* @inheritdoc
|
* @inheritdoc
|
||||||
*/
|
*/
|
||||||
async ngOnInit(): Promise<void> {
|
ngOnInit(): void {
|
||||||
|
this.init();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Init function.
|
||||||
|
*/
|
||||||
|
async init(): Promise<void> {
|
||||||
|
if (!this.collapsible || this.expandedHeader) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
this.initializePage();
|
this.initializePage();
|
||||||
|
|
||||||
await Promise.all([
|
await Promise.all([
|
||||||
|
@ -104,9 +115,12 @@ export class CoreCollapsibleHeaderDirective implements OnInit, OnChanges, OnDest
|
||||||
/**
|
/**
|
||||||
* @inheritdoc
|
* @inheritdoc
|
||||||
*/
|
*/
|
||||||
ngOnChanges(changes: {[name: string]: SimpleChange}): void {
|
async ngOnChanges(changes: {[name: string]: SimpleChange}): Promise<void> {
|
||||||
if (changes.collapsible) {
|
if (changes.collapsible) {
|
||||||
this.enabled = !CoreUtils.isFalseOrZero(changes.collapsible.currentValue);
|
this.enabled = !CoreUtils.isFalseOrZero(changes.collapsible.currentValue);
|
||||||
|
|
||||||
|
await this.init();
|
||||||
|
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
this.setEnabled(this.enabled);
|
this.setEnabled(this.enabled);
|
||||||
}, 200);
|
}, 200);
|
||||||
|
@ -160,8 +174,10 @@ export class CoreCollapsibleHeaderDirective implements OnInit, OnChanges, OnDest
|
||||||
|
|
||||||
// Timeout in case event is never fired.
|
// Timeout in case event is never fired.
|
||||||
const timeout = window.setTimeout(() => {
|
const timeout = window.setTimeout(() => {
|
||||||
|
if (this.firstEnter) {
|
||||||
this.firstEnter = false;
|
this.firstEnter = false;
|
||||||
this.enteredPromise.reject(new Error('[collapsible-header] Waiting for ionViewDidEnter timeout reached'));
|
this.enteredPromise.reject(new Error('[collapsible-header] Waiting for ionViewDidEnter timeout reached'));
|
||||||
|
}
|
||||||
}, 5000);
|
}, 5000);
|
||||||
|
|
||||||
this.resizeListener = CoreDom.onWindowResize(() => {
|
this.resizeListener = CoreDom.onWindowResize(() => {
|
||||||
|
|
Loading…
Reference in New Issue