refs #1766 Introduce vue-virtual-scroll in Public
This commit is contained in:
parent
e23f3c2ad4
commit
7c0dbde88c
|
@ -2,23 +2,25 @@
|
||||||
<div id="public" v-shortkey="shortcutEnabled ? { next: ['j'] } : {}" @shortkey="handleKey">
|
<div id="public" v-shortkey="shortcutEnabled ? { next: ['j'] } : {}" @shortkey="handleKey">
|
||||||
<div class="unread">{{ unread.length > 0 ? unread.length : '' }}</div>
|
<div class="unread">{{ unread.length > 0 ? unread.length : '' }}</div>
|
||||||
<div v-shortkey="{ linux: ['ctrl', 'r'], mac: ['meta', 'r'] }" @shortkey="reload()"></div>
|
<div v-shortkey="{ linux: ['ctrl', 'r'], mac: ['meta', 'r'] }" @shortkey="reload()"></div>
|
||||||
<transition-group name="timeline" tag="div">
|
<DynamicScroller :items="timeline" :min-item-size="60" class="scroller" page-mode>
|
||||||
<div class="public-timeline" v-for="message in timeline" :key="message.uri + message.id">
|
<template v-slot="{ item, index, active }">
|
||||||
<toot
|
<DynamicScrollerItem :item="item" :active="active" :size-dependencies="[item.uri]" :data-index="index">
|
||||||
:message="message"
|
<toot
|
||||||
:filter="filter"
|
:message="item"
|
||||||
:focused="message.uri + message.id === focusedId"
|
:filter="filter"
|
||||||
:overlaid="modalOpened"
|
:focused="item.uri + item.id === focusedId"
|
||||||
v-on:update="updateToot"
|
:overlaid="modalOpened"
|
||||||
v-on:delete="deleteToot"
|
v-on:update="updateToot"
|
||||||
@focusNext="focusNext"
|
v-on:delete="deleteToot"
|
||||||
@focusPrev="focusPrev"
|
@focusNext="focusNext"
|
||||||
@focusRight="focusSidebar"
|
@focusPrev="focusPrev"
|
||||||
@selectToot="focusToot(message)"
|
@focusRight="focusSidebar"
|
||||||
>
|
@selectToot="focusToot(item)"
|
||||||
</toot>
|
>
|
||||||
</div>
|
</toot>
|
||||||
</transition-group>
|
</DynamicScrollerItem>
|
||||||
|
</template>
|
||||||
|
</DynamicScroller>
|
||||||
<div class="loading-card" v-loading="lazyLoading" :element-loading-background="backgroundColor"></div>
|
<div class="loading-card" v-loading="lazyLoading" :element-loading-background="backgroundColor"></div>
|
||||||
<div :class="openSideBar ? 'upper-with-side-bar' : 'upper'" v-show="!heading">
|
<div :class="openSideBar ? 'upper-with-side-bar' : 'upper'" v-show="!heading">
|
||||||
<el-button type="primary" icon="el-icon-arrow-up" @click="upper" circle> </el-button>
|
<el-button type="primary" icon="el-icon-arrow-up" @click="upper" circle> </el-button>
|
||||||
|
|
Loading…
Reference in New Issue