Files
cappuccino/AppKit
David Richardson c062669fb5 AppKit: Replace OS behaviour API with theme-driven window frame layout
Eliminate brittle platform-specific branching and the incomplete host-platform OS behaviour API, replacing them with a unified layout model where window frames, titles, and controls derive entirely from the active theme, with platform variants selected through a private function.

* CPApplication.j:
  - Remove setOSBehavior:, OSBehavior, shouldMimicWindows, and simulatesWindows accessors, along with associated Info.plist keys and user defaults.
  - Set default theme selection through _CPThemeVariant.

* CPApplication_Constants.j: Remove OS behaviour constants, dictionary, and notification.

* CPCompatibility.j: Add _CPBrowserOperatingSystem to return the detected host operating system.

* CPTheme.j: Remove CPThemeStateWindowsPlatform; add _CPThemeVariant to return the base theme.

* CPWindow.j: Remove the _close delegation to the window view.

* _CPStandardWindowView.j:
  - Remove OS behaviour observer, _close, and _osBehaviorDidChange:.
  - Position buttons and title using theme values during layout, applying fallback defaults when theme values are absent.
  - Read title bar and sheet values from the view's active theme rather than the default theme.

* _CPTitleableWindowView.j: Query title-margin dynamically during layout instead of caching.
2026-11-08 13:19:54 -06:00
..
2020-08-30 09:47:21 +02:00
2013-01-23 15:48:55 +07:00
2025-09-02 17:38:10 +03:00
2026-04-03 19:00:09 +02:00
2013-01-23 15:48:55 +07:00
2026-10-25 17:41:02 +01:00
2025-12-26 10:42:41 +01:00
2013-01-24 19:18:39 +08:00
2016-02-06 20:39:49 +01:00
2016-02-06 20:39:49 +01:00
2026-10-25 17:41:02 +01:00
2026-07-21 15:15:53 -06:00
2026-07-21 15:15:53 -06:00
2026-07-21 15:15:53 -06:00
2026-10-25 17:55:46 +01:00
2026-10-25 17:41:02 +01:00
2026-01-03 19:44:24 +01:00
2026-07-21 15:15:53 -06:00
2026-08-25 21:09:51 +02:00