diff --git a/qt/aqt/data/web/css/deckbrowser.scss b/qt/aqt/data/web/css/deckbrowser.scss index ab956bd9b..c4afc9c42 100644 --- a/qt/aqt/data/web/css/deckbrowser.scss +++ b/qt/aqt/data/web/css/deckbrowser.scss @@ -58,6 +58,26 @@ tr:hover:not(.top-level-drag-row) { } } } +[dir="rtl"] { + .current, + tr:hover:not(.top-level-drag-row) { + td { + background: color(canvas-inset); + &:first-child { + border-top-left-radius: 0; + border-bottom-left-radius: 0; + border-top-right-radius: prop(border-radius-large); + border-bottom-right-radius: prop(border-radius-large); + } + &:last-child { + border-top-right-radius: 0; + border-bottom-right-radius: 0; + border-top-left-radius: prop(border-radius-large); + border-bottom-left-radius: prop(border-radius-large); + } + } + } +} .decktd { min-width: 15em; diff --git a/qt/aqt/stylesheets.py b/qt/aqt/stylesheets.py index e8efbd5a8..ffd0c5b8a 100644 --- a/qt/aqt/stylesheets.py +++ b/qt/aqt/stylesheets.py @@ -94,8 +94,8 @@ QMenu::separator {{ }} QMenu::indicator {{ border: 1px solid {tm.var(colors.BORDER)}; - margin-left: 6px; - margin-right: -6px; + margin-{tm.left()}: 6px; + margin-{tm.right()}: -6px; }} """ diff --git a/ts/components/Switch.svelte b/ts/components/Switch.svelte index 43fc1013a..c462469fd 100644 --- a/ts/components/Switch.svelte +++ b/ts/components/Switch.svelte @@ -8,9 +8,11 @@ License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html export let id: string | undefined; export let value: boolean; export let disabled = false; + + const rtl: boolean = window.getComputedStyle(document.body).direction == "rtl"; -
+
diff --git a/ts/components/TitledContainer.svelte b/ts/components/TitledContainer.svelte index 68eaa7edf..3a1fc43bf 100644 --- a/ts/components/TitledContainer.svelte +++ b/ts/components/TitledContainer.svelte @@ -5,6 +5,8 @@ License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html @@ -12,7 +14,7 @@ class:flex-grow-1={grow} style:--offset="-{width}px" > -
+
@@ -23,6 +25,10 @@ position: absolute; right: var(--offset); color: var(--fg-faint); + &.rtl { + right: unset; + left: var(--offset); + } } .config-input { &:hover, diff --git a/ts/deck-options/SaveButton.svelte b/ts/deck-options/SaveButton.svelte index 7165b1c31..a9ce7170c 100644 --- a/ts/deck-options/SaveButton.svelte +++ b/ts/deck-options/SaveButton.svelte @@ -18,6 +18,8 @@ License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html import { chevronDown } from "./icons"; import type { DeckOptionsState } from "./lib"; + const rtl: boolean = window.getComputedStyle(document.body).direction == "rtl"; + const dispatch = createEventDispatcher(); export let state: DeckOptionsState; @@ -67,7 +69,8 @@ License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html primary on:click={() => save(false)} tooltip={getPlatformString(saveKeyCombination)} - --border-left-radius="var(--border-radius)" + --border-left-radius={!rtl ? "var(--border-radius)" : "0"} + --border-right-radius={rtl ? "var(--border-radius)" : "0"} >
{tr.deckConfigSaveButton()}
@@ -83,7 +86,8 @@ License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html class="chevron" slot="reference" on:click={() => (showFloating = !showFloating)} - --border-right-radius="var(--border-radius)" + --border-right-radius={!rtl ? "var(--border-radius)" : "0"} + --border-left-radius={rtl ? "var(--border-radius)" : "0"} iconSize={80} > {@html chevronDown} diff --git a/ts/deck-options/TabbedValue.svelte b/ts/deck-options/TabbedValue.svelte index 687e24ad4..57d027654 100644 --- a/ts/deck-options/TabbedValue.svelte +++ b/ts/deck-options/TabbedValue.svelte @@ -56,7 +56,7 @@ display: flex; flex-wrap: nowrap; justify-content: space-between; - padding-left: 0; + padding-inline: 0; margin-bottom: 0.25rem; list-style: none; }