anki/ts/editor/LabelDescription.svelte
Matthias Metelka 371f731e30
Editor Field Descriptions (#1476)
* Add description input to fields dialog

QLineEdit seems like the best option, as it saves space and motivates users to keep their descriptions concise.

* Add setDescriptions to note initialization script

Went for the extra function instead of including it in setFields to prevent potential add-on breakages.

* Add tooltip next to field name if description is set

* Refactor code according to suggestions

Set default tooltip placement to right instead of bottom

Use .get() for fld["description"]

Fix tab order in fields dialog

Swap out abbreviation "desc" for full length name to keep consistency

* Update Protobuf and Rust for description

Add description to notetypes.proto and schema11

Co-authored-by: RumovZ <RumovZ@users.noreply.github.com>

* Fix tooltips not updating with description

Remove redundant variable tooltipOptions

Update previousTooltip within reactive function

* Move LabelDescription out of LabelName

Co-authored-by: Henrik Giesel <hgiesel@users.noreply.github.com>

* Decrease icon size and fix alignment

Co-Authored-By: Henrik Giesel <hengiesel@gmail.com>

* the new key needs to be cleared from fields, not the notetype itself

Co-authored-by: RumovZ <RumovZ@users.noreply.github.com>
Co-authored-by: Henrik Giesel <hengiesel@gmail.com>
Co-authored-by: Damien Elmes <gpg@ankiweb.net>
2021-11-06 09:42:48 +10:00

40 lines
876 B
Svelte

<!--
Copyright: Ankitects Pty Ltd and contributors
License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html
-->
<script lang="ts">
import { descriptionIcon } from "./icons";
import WithTooltip from "../components/WithTooltip.svelte";
import Badge from "../components/Badge.svelte";
export let description: string;
</script>
<span>
<WithTooltip
tooltip={description}
showDelay={250}
offset={[0, 20]}
placement="right"
let:createTooltip
>
<Badge
--icon-align="sub"
iconSize={65}
on:mount={(event) => createTooltip(event.detail.span)}
>
{@html descriptionIcon}
</Badge>
</WithTooltip>
</span>
<style lang="scss">
span {
opacity: 0.4;
&:hover {
opacity: 0.8;
}
}
</style>