Skip to content

Commit

Permalink
🎨
Browse files Browse the repository at this point in the history
  • Loading branch information
syuilo committed Mar 2, 2023
1 parent 187a698 commit cf8a7f9
Show file tree
Hide file tree
Showing 6 changed files with 27 additions and 4 deletions.
2 changes: 1 addition & 1 deletion packages/frontend/src/components/MkWindow.vue
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@
<button v-if="closeButton" v-tooltip="i18n.ts.close" class="_button" :class="$style.headerButton" @click="close()"><i class="ti ti-x"></i></button>
</span>
</div>
<div :class="$style.content">
<div v-container :class="$style.content">
<slot></slot>
</div>
</div>
Expand Down
21 changes: 21 additions & 0 deletions packages/frontend/src/directives/container.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
import { Directive } from 'vue';

const map = new WeakMap<HTMLElement, ResizeObserver>();

export default {
mounted(el: HTMLElement, binding, vn) {
const ro = new ResizeObserver((entries, observer) => {
el.style.setProperty('--containerHeight', el.offsetHeight + 'px');
});
ro.observe(el);
map.set(el, ro);
},

unmounted(el, binding, vn) {
const ro = map.get(el);
if (ro) {
ro.disconnect();
map.delete(el);
}
},
} as Directive;
2 changes: 2 additions & 0 deletions packages/frontend/src/directives/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ import clickAnime from './click-anime';
import panel from './panel';
import adaptiveBorder from './adaptive-border';
import adaptiveBg from './adaptive-bg';
import container from './container';

export default function(app: App) {
app.directive('userPreview', userPreview);
Expand All @@ -25,4 +26,5 @@ export default function(app: App) {
app.directive('panel', panel);
app.directive('adaptive-border', adaptiveBorder);
app.directive('adaptive-bg', adaptiveBg);
app.directive('container', container);
}
2 changes: 1 addition & 1 deletion packages/frontend/src/pages/my-lists/list.vue
Original file line number Diff line number Diff line change
Expand Up @@ -128,7 +128,7 @@ definePageMetadata(computed(() => list ? {

<style lang="scss" module>
.main {
min-height: calc(100vh - (var(--stickyTop, 0px) + var(--stickyBottom, 0px)));
min-height: calc(var(--containerHeight) - (var(--stickyTop, 0px) + var(--stickyBottom, 0px)));
}
.userItem {
Expand Down
2 changes: 1 addition & 1 deletion packages/frontend/src/ui/deck/column.vue
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@
<span :class="$style.title"><slot name="header"></slot></span>
<button v-tooltip="i18n.ts.settings" :class="$style.menu" class="_button" @click.stop="showSettingsMenu"><i class="ti ti-dots"></i></button>
</header>
<div v-show="active" ref="body" :class="$style.body">
<div v-show="active" ref="body" v-container :class="$style.body">
<slot></slot>
</div>
</section>
Expand Down
2 changes: 1 addition & 1 deletion packages/frontend/src/ui/universal.vue
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
<div :class="[$style.root, { [$style.withWallpaper]: wallpaper }]">
<XSidebar v-if="!isMobile" :class="$style.sidebar"/>

<MkStickyContainer :class="$style.contents">
<MkStickyContainer v-container :class="$style.contents">
<template #header><XStatusBars :class="$style.statusbars"/></template>
<main style="min-width: 0;" :style="{ background: pageMetadata?.value?.bg }" @contextmenu.stop="onContextmenu">
<div :class="$style.content" style="container-type: inline-size;">
Expand Down

0 comments on commit cf8a7f9

Please sign in to comment.