fix(web): use event for zooming out after opening face editor (#27789)

This commit is contained in:
Mees Frensel 2026-04-17 12:14:24 +02:00 committed by GitHub
parent 7d181f0686
commit 8fbeb64c59
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 11 additions and 6 deletions

View File

@ -106,13 +106,13 @@
assetViewerManager.animatedZoom(targetZoom);
};
const onPlaySlideshow = () => ($slideshowState = SlideshowState.PlaySlideshow);
$effect(() => {
if (assetViewerManager.isFaceEditMode && assetViewerManager.zoom > 1) {
const onFaceEditModeChange = (isFaceEditMode: boolean) => {
if (isFaceEditMode && assetViewerManager.zoom > 1) {
onZoom();
}
});
};
const onPlaySlideshow = () => ($slideshowState = SlideshowState.PlaySlideshow);
// TODO move to action + command palette
const onCopyShortcut = (event: KeyboardEvent) => {
@ -200,7 +200,7 @@
};
</script>
<AssetViewerEvents {onCopy} {onZoom} />
<AssetViewerEvents {onCopy} {onZoom} {onFaceEditModeChange} />
<svelte:document
use:shortcuts={[

View File

@ -23,6 +23,7 @@ export type Events = {
Zoom: [];
ZoomChange: [ZoomImageWheelState];
Copy: [];
FaceEditModeChange: [boolean];
};
class AssetViewerManager extends BaseEventManager<Events> {
@ -185,9 +186,13 @@ class AssetViewerManager extends BaseEventManager<Events> {
toggleFaceEditMode() {
this.#isFaceEditMode = !this.#isFaceEditMode;
this.emit('FaceEditModeChange', this.#isFaceEditMode);
}
closeFaceEditMode() {
if (this.#isFaceEditMode) {
this.emit('FaceEditModeChange', false);
}
this.#isFaceEditMode = false;
}