Frontend created and rewritten a few times, with some backend fixes #1
|
@ -4,7 +4,7 @@
|
||||||
<HeaderMain ref="headerMain">
|
<HeaderMain ref="headerMain">
|
||||||
<HeaderSelected :path="path.pathList" />
|
<HeaderSelected :path="path.pathList" />
|
||||||
</HeaderMain>
|
</HeaderMain>
|
||||||
<BreadCrumb :path="path.pathList" />
|
<BreadCrumb :path="path.pathList" tabindex="-1"/>
|
||||||
</header>
|
</header>
|
||||||
<main>
|
<main>
|
||||||
<RouterView :path="path.pathList" />
|
<RouterView :path="path.pathList" />
|
||||||
|
|
|
@ -8,6 +8,8 @@
|
||||||
--primary-color: #000;
|
--primary-color: #000;
|
||||||
--accent-color: #f80;
|
--accent-color: #f80;
|
||||||
--transition-time: 0.2s;
|
--transition-time: 0.2s;
|
||||||
|
/* The following are overridden by responsive layouts */
|
||||||
|
--root-font-size: 1rem;
|
||||||
--header-font-size: 1rem;
|
--header-font-size: 1rem;
|
||||||
--header-height: calc(8 * var(--header-font-size));
|
--header-height: calc(8 * var(--header-font-size));
|
||||||
}
|
}
|
||||||
|
@ -19,13 +21,13 @@
|
||||||
--header-color: #ccc;
|
--header-color: #ccc;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@media screen and (orientation: portrait) and (max-width: 600px) {
|
@media screen and (max-width: 600px) {
|
||||||
.size,
|
.size,
|
||||||
.modified {
|
.modified {
|
||||||
display: none;
|
display: none;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@media screen and (orientation: landscape) and (min-width: 600px) {
|
@media screen and (orientation: landscape) and (min-width: 800px) {
|
||||||
/* Breadcrumbs and buttons side by side */
|
/* Breadcrumbs and buttons side by side */
|
||||||
header {
|
header {
|
||||||
display: flex;
|
display: flex;
|
||||||
|
@ -39,8 +41,8 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@media screen and (min-width: 800px) and (--webkit-min-device-pixel-ratio: 2) {
|
@media screen and (min-width: 800px) and (--webkit-min-device-pixel-ratio: 2) {
|
||||||
html {
|
:root {
|
||||||
font-size: 1.5rem;
|
--root-font-size: calc(16 * 100vw / 800);
|
||||||
}
|
}
|
||||||
header .buttons:has(input[type='search']) > div {
|
header .buttons:has(input[type='search']) > div {
|
||||||
display: none;
|
display: none;
|
||||||
|
@ -49,9 +51,9 @@
|
||||||
display: inherit;
|
display: inherit;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@media screen and (min-width: 1400px) and (--webkit-min-device-pixel-ratio: 3) {
|
@media screen and (min-width: 1600px) and (--webkit-min-device-pixel-ratio: 3) {
|
||||||
html {
|
:root {
|
||||||
font-size: 2rem;
|
--root-font-size: 2rem;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@media screen and (max-height: 600px) {
|
@media screen and (max-height: 600px) {
|
||||||
|
|
|
@ -2,7 +2,6 @@
|
||||||
<nav
|
<nav
|
||||||
class="breadcrumb"
|
class="breadcrumb"
|
||||||
aria-label="Breadcrumb"
|
aria-label="Breadcrumb"
|
||||||
tabindex="0"
|
|
||||||
@keyup.left.stop="move(-1)"
|
@keyup.left.stop="move(-1)"
|
||||||
@keyup.right.stop="move(1)"
|
@keyup.right.stop="move(1)"
|
||||||
@focus="move(0)"
|
@focus="move(0)"
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
<template>
|
<template>
|
||||||
<table v-if="props.documents.length || editing" @blur="cursor = null">
|
<table v-if="props.documents.length || editing">
|
||||||
<thead>
|
<thead>
|
||||||
<tr>
|
<tr>
|
||||||
<th class="selection">
|
<th class="selection">
|
||||||
|
@ -95,8 +95,9 @@
|
||||||
<a
|
<a
|
||||||
:href="url_for(doc)"
|
:href="url_for(doc)"
|
||||||
tabindex="-1"
|
tabindex="-1"
|
||||||
@contextmenu.stop
|
@contextmenu.prevent
|
||||||
@focus.stop="cursor = doc"
|
@focus.stop="cursor = doc"
|
||||||
|
@blur="ev => { if (!editing) cursor = null }"
|
||||||
>{{ doc.name }}</a
|
>{{ doc.name }}</a
|
||||||
>
|
>
|
||||||
<button
|
<button
|
||||||
|
@ -245,6 +246,7 @@ defineExpose({
|
||||||
scrolltr = tr
|
scrolltr = tr
|
||||||
if (!scrolltimer) {
|
if (!scrolltimer) {
|
||||||
scrolltimer = setTimeout(() => {
|
scrolltimer = setTimeout(() => {
|
||||||
|
if (scrolltr)
|
||||||
scrolltr.scrollIntoView({ block: 'center', behavior: 'smooth' })
|
scrolltr.scrollIntoView({ block: 'center', behavior: 'smooth' })
|
||||||
scrolltimer = null
|
scrolltimer = null
|
||||||
}, 300)
|
}, 300)
|
||||||
|
@ -370,10 +372,10 @@ table .selection {
|
||||||
text-overflow: clip;
|
text-overflow: clip;
|
||||||
}
|
}
|
||||||
table .modified {
|
table .modified {
|
||||||
width: 8rem;
|
width: 8em;
|
||||||
}
|
}
|
||||||
table .size {
|
table .size {
|
||||||
width: 4rem;
|
width: 5em;
|
||||||
}
|
}
|
||||||
table .menu {
|
table .menu {
|
||||||
width: 1rem;
|
width: 1rem;
|
||||||
|
|
Loading…
Reference in New Issue
Block a user