Rebuild of the kanban scaling logic, and adding constraints to window scaling logic for electron and web

This commit is contained in:
trueheads
2025-12-21 16:47:21 -06:00
parent ee9ccd03d6
commit 9beefd1ac3
10 changed files with 1918 additions and 266 deletions

View File

@@ -70,6 +70,25 @@ export type ThinkingLevel = 'none' | 'low' | 'medium' | 'high' | 'ultrathink';
/** ModelProvider - AI model provider for credentials and API key management */
export type ModelProvider = 'claude';
/**
* WindowBounds - Electron window position and size for persistence
*
* Stored in global settings to restore window state across sessions.
* Includes position (x, y), dimensions (width, height), and maximized state.
*/
export interface WindowBounds {
/** Window X position on screen */
x: number;
/** Window Y position on screen */
y: number;
/** Window width in pixels */
width: number;
/** Window height in pixels */
height: number;
/** Whether window was maximized when closed */
isMaximized: boolean;
}
/**
* KeyboardShortcuts - User-configurable keyboard bindings for common actions
*
@@ -272,6 +291,10 @@ export interface GlobalSettings {
// Session Tracking
/** Maps project path -> last selected session ID in that project */
lastSelectedSessionByProject: Record<string, string>;
// Window State (Electron only)
/** Persisted window bounds for restoring position/size across sessions */
windowBounds?: WindowBounds;
}
/**