mirror of
https://github.com/ankitects/anki.git
synced 2025-11-06 20:57:13 -05:00
Added: Placeholder more menu
Until I can access ContextMenu.svelte from the other pr.
This commit is contained in:
parent
2a92213118
commit
9085154e3d
4 changed files with 97 additions and 6 deletions
59
ts/routes/reviewer/reviewer-bottom/More.svelte
Normal file
59
ts/routes/reviewer/reviewer-bottom/More.svelte
Normal file
|
|
@ -0,0 +1,59 @@
|
||||||
|
<!--
|
||||||
|
Copyright: Ankitects Pty Ltd and contributors
|
||||||
|
License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html
|
||||||
|
-->
|
||||||
|
<script lang="ts">
|
||||||
|
import DropdownItem from "$lib/components/DropdownItem.svelte";
|
||||||
|
import * as tr from "@generated/ftl";
|
||||||
|
import MoreSubmenu from "./MoreSubmenu.svelte";
|
||||||
|
import MoreItem from "./MoreItem.svelte";
|
||||||
|
|
||||||
|
let showFloating = false;
|
||||||
|
let showFlags = false;
|
||||||
|
|
||||||
|
let flags = [
|
||||||
|
{ colour: tr.actionsFlagRed(), shortcut: "Ctrl+1" },
|
||||||
|
{ colour: tr.actionsFlagOrange(), shortcut: "Ctrl+2" },
|
||||||
|
{ colour: tr.actionsFlagGreen(), shortcut: "Ctrl+3" },
|
||||||
|
{ colour: tr.actionsFlagBlue(), shortcut: "Ctrl+4" },
|
||||||
|
{ colour: tr.actionsFlagPink(), shortcut: "Ctrl+5" },
|
||||||
|
{ colour: tr.actionsFlagTurquoise(), shortcut: "Ctrl+6" },
|
||||||
|
{ colour: tr.actionsFlagPurple(), shortcut: "Ctrl+7" },
|
||||||
|
];
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<MoreSubmenu bind:showFloating>
|
||||||
|
<button
|
||||||
|
slot="button"
|
||||||
|
on:click={() => {
|
||||||
|
showFloating = !showFloating;
|
||||||
|
}}
|
||||||
|
title={tr.actionsShortcutKey({ val: "M" })}
|
||||||
|
>
|
||||||
|
{tr.studyingMore()}↧
|
||||||
|
</button>
|
||||||
|
|
||||||
|
<div slot="items">
|
||||||
|
<MoreSubmenu bind:showFloating={showFlags}>
|
||||||
|
<DropdownItem
|
||||||
|
slot="button"
|
||||||
|
on:click={() => {
|
||||||
|
showFlags = !showFlags;
|
||||||
|
}}
|
||||||
|
>
|
||||||
|
{tr.studyingFlagCard()}
|
||||||
|
</DropdownItem>
|
||||||
|
<div slot="items">
|
||||||
|
{#each flags as flag}
|
||||||
|
<MoreItem shortcut={flag.shortcut}>{flag.colour}</MoreItem>
|
||||||
|
{/each}
|
||||||
|
</div>
|
||||||
|
</MoreSubmenu>
|
||||||
|
</div>
|
||||||
|
</MoreSubmenu>
|
||||||
|
|
||||||
|
<style>
|
||||||
|
div :global(button) {
|
||||||
|
width: fit-content;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
14
ts/routes/reviewer/reviewer-bottom/MoreItem.svelte
Normal file
14
ts/routes/reviewer/reviewer-bottom/MoreItem.svelte
Normal file
|
|
@ -0,0 +1,14 @@
|
||||||
|
<!--
|
||||||
|
Copyright: Ankitects Pty Ltd and contributors
|
||||||
|
License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html
|
||||||
|
-->
|
||||||
|
<script lang="ts">
|
||||||
|
import DropdownItem from "$lib/components/DropdownItem.svelte";
|
||||||
|
import Shortcut from "$lib/components/Shortcut.svelte";
|
||||||
|
|
||||||
|
export let shortcut: string = "";
|
||||||
|
export let onClick = () => {};
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<Shortcut keyCombination={shortcut} on:keydown={onClick}></Shortcut>
|
||||||
|
<DropdownItem on:click={onClick}><slot /></DropdownItem>
|
||||||
22
ts/routes/reviewer/reviewer-bottom/MoreSubmenu.svelte
Normal file
22
ts/routes/reviewer/reviewer-bottom/MoreSubmenu.svelte
Normal file
|
|
@ -0,0 +1,22 @@
|
||||||
|
<!--
|
||||||
|
Copyright: Ankitects Pty Ltd and contributors
|
||||||
|
License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html
|
||||||
|
-->
|
||||||
|
<script lang="ts">
|
||||||
|
import DropdownItem from "$lib/components/DropdownItem.svelte";
|
||||||
|
import Popover from "$lib/components/Popover.svelte";
|
||||||
|
import WithFloating from "$lib/components/WithFloating.svelte";
|
||||||
|
import * as tr from "@generated/ftl";
|
||||||
|
|
||||||
|
export let showFloating = false;
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<div>
|
||||||
|
<WithFloating show={showFloating} inline on:close={() => (showFloating = false)}>
|
||||||
|
<slot slot="reference" name="button"></slot>
|
||||||
|
|
||||||
|
<Popover slot="floating">
|
||||||
|
<slot name="items" />
|
||||||
|
</Popover>
|
||||||
|
</WithFloating>
|
||||||
|
</div>
|
||||||
|
|
@ -10,6 +10,7 @@ License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html
|
||||||
import * as tr from "@generated/ftl";
|
import * as tr from "@generated/ftl";
|
||||||
import type { ReviewerState } from "../reviewer";
|
import type { ReviewerState } from "../reviewer";
|
||||||
import Remaining from "./Remaining.svelte";
|
import Remaining from "./Remaining.svelte";
|
||||||
|
import More from "./More.svelte";
|
||||||
|
|
||||||
export let state: ReviewerState;
|
export let state: ReviewerState;
|
||||||
|
|
||||||
|
|
@ -42,12 +43,7 @@ License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html
|
||||||
{/if}
|
{/if}
|
||||||
<span class="disappearing"></span>
|
<span class="disappearing"></span>
|
||||||
<div class="disappearing more">
|
<div class="disappearing more">
|
||||||
<button
|
<More></More>
|
||||||
on:click={() => bridgeCommand("more")}
|
|
||||||
title={tr.actionsShortcutKey({ val: "M" })}
|
|
||||||
>
|
|
||||||
{tr.studyingMore()}↧
|
|
||||||
</button>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue