forked from MapComplete/MapComplete
Performance hacks
This commit is contained in:
parent
686fb29ed3
commit
7090a5ceb8
15 changed files with 167 additions and 93 deletions
|
@ -49,24 +49,26 @@ export default class ScrollableFullScreen extends UIElement {
|
|||
Hash.hash.setData(hashToShow)
|
||||
self.Activate();
|
||||
} else {
|
||||
self.clear();
|
||||
// Some cleanup...
|
||||
ScrollableFullScreen.empty.AttachTo("fullscreen")
|
||||
const fs = document.getElementById("fullscreen");
|
||||
ScrollableFullScreen._currentlyOpen?.isShown?.setData(false);
|
||||
fs.classList.add("hidden")
|
||||
}
|
||||
})
|
||||
|
||||
Hash.hash.addCallback(hash => {
|
||||
if (!isShown.data) {
|
||||
return;
|
||||
}
|
||||
if (hash === undefined || hash === "" || hash !== hashToShow) {
|
||||
isShown.setData(false)
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
InnerRender(): BaseUIElement {
|
||||
return this._component;
|
||||
}
|
||||
|
||||
Destroy() {
|
||||
super.Destroy();
|
||||
this._component.Destroy()
|
||||
this._fullscreencomponent.Destroy()
|
||||
}
|
||||
|
||||
Activate(): void {
|
||||
this.isShown.setData(true)
|
||||
this._fullscreencomponent.AttachTo("fullscreen");
|
||||
|
@ -74,14 +76,6 @@ export default class ScrollableFullScreen extends UIElement {
|
|||
ScrollableFullScreen._currentlyOpen = this;
|
||||
fs.classList.remove("hidden")
|
||||
}
|
||||
|
||||
private clear() {
|
||||
ScrollableFullScreen.empty.AttachTo("fullscreen")
|
||||
const fs = document.getElementById("fullscreen");
|
||||
ScrollableFullScreen._currentlyOpen?.isShown?.setData(false);
|
||||
fs.classList.add("hidden")
|
||||
}
|
||||
|
||||
private BuildComponent(title: BaseUIElement, content: BaseUIElement, isShown: UIEventSource<boolean>) {
|
||||
const returnToTheMap =
|
||||
new Combine([
|
||||
|
@ -93,6 +87,7 @@ export default class ScrollableFullScreen extends UIElement {
|
|||
|
||||
returnToTheMap.onClick(() => {
|
||||
isShown.setData(false)
|
||||
Hash.hash.setData(undefined)
|
||||
})
|
||||
|
||||
title.SetClass("block text-l sm:text-xl md:text-2xl w-full font-bold p-0 max-h-20vh overflow-y-auto")
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue