diff --git a/apps/client/src/widgets/containers/root_container.ts b/apps/client/src/widgets/containers/root_container.ts index 6c2d87521..511a98b14 100644 --- a/apps/client/src/widgets/containers/root_container.ts +++ b/apps/client/src/widgets/containers/root_container.ts @@ -3,6 +3,7 @@ import FlexContainer from "./flex_container.js"; import options from "../../services/options.js"; import type BasicWidget from "../basic_widget.js"; import utils from "../../services/utils.js"; +import { LOCALES } from "@triliumnext/commons"; /** * The root container is the top-most widget/container, from which the entire layout derives. @@ -32,6 +33,7 @@ export default class RootContainer extends FlexContainer { this.#setMotion(options.is("motionEnabled")); this.#setShadows(options.is("shadowsEnabled")); this.#setBackdropEffects(options.is("backdropEffectsEnabled")); + this.#setRightToLeft(options.get("locale")); return super.render(); } @@ -68,6 +70,11 @@ export default class RootContainer extends FlexContainer { #setBackdropEffects(enabled: boolean) { document.body.classList.toggle("backdrop-effects-disabled", !enabled); } + + #setRightToLeft(locale: string) { + const correspondingLocale = LOCALES.find(l => l.id === locale); + document.body.dir = correspondingLocale?.rtl ? "rtl" : "ltr"; + } } function getViewportHeight() {