Tweaked header size logic

This commit is contained in:
Gregory Schier
2024-12-03 07:10:58 -08:00
parent d4dfc1c820
commit 36d24bdac0
2 changed files with 10 additions and 8 deletions

View File

@@ -36,9 +36,9 @@ export function HeaderSize({
paddingLeft: stoplightsVisible ? 72 / settings.interfaceScale : undefined,
...(size === 'md' ? { height: HEADER_SIZE_MD } : {}),
...(size === 'lg' ? { height: HEADER_SIZE_LG } : {}),
...(stoplightsVisible || ignoreControlsSpacing
...(osInfo.osType === 'macos' || ignoreControlsSpacing
? { paddingRight: '2px' }
: { paddingLeft: '2px', paddingRight: osInfo.osType !== 'macos' ? WINDOW_CONTROLS_WIDTH : '2px' }),
: { paddingLeft: '2px', paddingRight: WINDOW_CONTROLS_WIDTH }),
}}
className={classNames(
className,
@@ -50,7 +50,7 @@ export function HeaderSize({
<div className="pointer-events-none h-full w-full overflow-x-auto hide-scrollbars grid">
{children}
</div>
<WindowControls onlyX={onlyXWindowControl} macos={osInfo.osType === 'macos'} />
<WindowControls onlyX={onlyXWindowControl} />
</div>
);
}

View File

@@ -1,7 +1,7 @@
import { getCurrentWebviewWindow } from '@tauri-apps/api/webviewWindow';
import classNames from 'classnames';
import React, { useState } from 'react';
import { useStoplightsVisible } from '../hooks/useStoplightsVisible';
import { useOsInfo } from '../hooks/useOsInfo';
import { Button } from './core/Button';
import { HStack } from './core/Stacks';
@@ -13,14 +13,16 @@ interface Props {
export const WINDOW_CONTROLS_WIDTH = '10.5rem';
export function WindowControls({ className, onlyX, macos }: Props) {
export function WindowControls({ className, onlyX }: Props) {
const [maximized, setMaximized] = useState<boolean>(false);
const stoplightsVisible = useStoplightsVisible();
if (stoplightsVisible) {
const osInfo = useOsInfo();
// Never show controls on macOS
if (osInfo.osType === 'macos') {
return null;
}
return !macos && (
return (
<HStack
className={classNames(className, 'ml-4 absolute right-0 top-0 bottom-0')}
justifyContent="end"