This commit is contained in:
syuilo 2021-10-09 00:46:52 +09:00
parent 748a451e23
commit b3779875d0
2 changed files with 40 additions and 14 deletions

View File

@ -2,12 +2,16 @@
<MkModal ref="modal" @click="$emit('click')" @closed="$emit('closed')">
<div class="hrmcaedk _window _narrow_" :style="{ width: `${width}px`, height: (height ? `min(${height}px, 100%)` : '100%') }">
<div class="header" @contextmenu="onContextmenu">
<span class="title">
<button v-if="history.length > 0" class="_button" @click="back()"><i class="fas fa-arrow-left"></i></button>
<span v-else style="display: inline-block; width: 20px"></span>
<span v-if="pageInfo" class="title">
<i v-if="pageInfo.icon" class="icon" :class="pageInfo.icon"></i>
<span>{{ pageInfo.title }}</span>
</span>
<button class="_button" @click="$refs.modal.close()"><i class="fas fa-times"></i></button>
</div>
<div class="body _flat_">
<XHeader :info="pageInfo"/>
<XHeader v-if="!pageInfo?.hide" :info="pageInfo"/>
<keep-alive>
<component :is="component" v-bind="props" :ref="changePage"/>
</keep-alive>
@ -173,19 +177,39 @@ export default defineComponent({
$height-narrow: 42px;
display: flex;
flex-shrink: 0;
box-shadow: 0px 1px var(--divider);
> .title {
flex: 1;
height: $height;
line-height: $height;
font-weight: bold;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
box-shadow: 0px 1px var(--divider);
> button {
height: $height;
width: $height;
&:hover {
color: var(--fgHighlighted);
}
}
@media (max-width: 500px) {
height: $height-narrow;
line-height: $height-narrow;
padding-left: 16px;
> button {
height: $height-narrow;
width: $height-narrow;
}
}
> .title {
flex: 1;
> .icon {
margin-right: 0.5em;
}
}
}

View File

@ -82,10 +82,11 @@ export default defineComponent({
},
mounted() {
this.narrow = this.$el.offsetWidth < 500;
if (this.$el.parentElement == null) return;
this.narrow = this.$el.parentElement.offsetWidth < 500;
new ResizeObserver((entries, observer) => {
this.narrow = this.$el.offsetWidth < 500;
}).observe(this.$el);
this.narrow = this.$el.parentElement.offsetWidth < 500;
}).observe(this.$el.parentElement);
},
methods: {
@ -144,6 +145,7 @@ export default defineComponent({
.fdidabkb {
--height: 60px;
display: flex;
width: 100%;
&.thin {
--height: 50px;