From ba740eff9b9dee5c2d61aef8b9c1b66beeb44d10 Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Thu, 18 Sep 2025 12:36:39 +0300 Subject: [PATCH] fix(client): global menu blur-behind not working --- .../src/widgets/buttons/global_menu.tsx | 21 ++++++++++--------- apps/client/src/widgets/react/Dropdown.tsx | 13 ++++++------ 2 files changed, 18 insertions(+), 16 deletions(-) diff --git a/apps/client/src/widgets/buttons/global_menu.tsx b/apps/client/src/widgets/buttons/global_menu.tsx index fc74166ba..67452774c 100644 --- a/apps/client/src/widgets/buttons/global_menu.tsx +++ b/apps/client/src/widgets/buttons/global_menu.tsx @@ -34,9 +34,10 @@ export default function GlobalMenu({ isHorizontalLayout }: { isHorizontalLayout: text={<> {isVerticalLayout && } {isUpdateAvailable && } } + noDropdownListStyle > @@ -47,8 +48,8 @@ export default function GlobalMenu({ isHorizontalLayout }: { isHorizontalLayout: - - + + @@ -117,7 +118,7 @@ function KeyboardActionMenuItem({ text, command, ...props }: MenuItemProps } -function VerticalLayoutIcon() { +function VerticalLayoutIcon() { const logoRef = useRef(null); useStaticTooltip(logoRef); @@ -140,7 +141,7 @@ function VerticalLayoutIcon() { ) } -function ZoomControls({ parentComponent }: { parentComponent?: Component | null }) { +function ZoomControls({ parentComponent }: { parentComponent?: Component | null }) { const [ zoomLevel, setZoomLevel ] = useState(100); function updateZoomState() { @@ -169,7 +170,7 @@ function ZoomControls({ parentComponent }: { parentComponent?: Component | null >{children} ) } - + return isElectron() ? ( { const newState = !isAlwaysOnTop; focusedWindow?.setAlwaysOnTop(newState); @@ -213,8 +214,8 @@ function useTriliumUpdateStatus() { const [ latestVersion, setLatestVersion ] = useState(); const [ checkForUpdates ] = useTriliumOptionBool("checkForUpdates"); const isUpdateAvailable = utils.isUpdateAvailable(latestVersion, glob.triliumVersion); - - async function updateVersionStatus() { + + async function updateVersionStatus() { const RELEASES_API_URL = "https://api.github.com/repos/TriliumNext/Trilium/releases/latest"; const resp = await fetch(RELEASES_API_URL); @@ -236,4 +237,4 @@ function useTriliumUpdateStatus() { }, [ checkForUpdates ]); return { isUpdateAvailable, latestVersion }; -} \ No newline at end of file +} diff --git a/apps/client/src/widgets/react/Dropdown.tsx b/apps/client/src/widgets/react/Dropdown.tsx index 08cdbfed0..e35584422 100644 --- a/apps/client/src/widgets/react/Dropdown.tsx +++ b/apps/client/src/widgets/react/Dropdown.tsx @@ -16,12 +16,13 @@ export interface DropdownProps { /** If set to true, then the dropdown button will be considered an icon action (without normal border and sized for icons only). */ iconAction?: boolean; noSelectButtonStyle?: boolean; + noDropdownListStyle?: boolean; disabled?: boolean; text?: ComponentChildren; forceShown?: boolean; } -export default function Dropdown({ className, buttonClassName, isStatic, children, title, text, dropdownContainerStyle, dropdownContainerClassName, hideToggleArrow, iconAction, disabled, noSelectButtonStyle, forceShown }: DropdownProps) { +export default function Dropdown({ className, buttonClassName, isStatic, children, title, text, dropdownContainerStyle, dropdownContainerClassName, hideToggleArrow, iconAction, disabled, noSelectButtonStyle, noDropdownListStyle, forceShown }: DropdownProps) { const dropdownRef = useRef(null); const triggerRef = useRef(null); @@ -29,7 +30,7 @@ export default function Dropdown({ className, buttonClassName, isStatic, childre useEffect(() => { if (!triggerRef.current) return; - + const dropdown = BootstrapDropdown.getOrCreateInstance(triggerRef.current); if (forceShown) { dropdown.show(); @@ -48,11 +49,11 @@ export default function Dropdown({ className, buttonClassName, isStatic, childre useEffect(() => { if (!dropdownRef.current) return; - + const $dropdown = $(dropdownRef.current); $dropdown.on("show.bs.dropdown", onShown); $dropdown.on("hide.bs.dropdown", onHidden); - + // Add proper cleanup return () => { $dropdown.off("show.bs.dropdown", onShown); @@ -81,7 +82,7 @@ export default function Dropdown({ className, buttonClassName, isStatic, childre
    @@ -89,4 +90,4 @@ export default function Dropdown({ className, buttonClassName, isStatic, childre
) -} \ No newline at end of file +}