mirror of
https://github.com/ghostty-org/ghostty.git
synced 2025-04-23 01:48:37 +03:00

Fixes #1018 Fixes #1020 This disables the "visibleAtLaunch" configuration in the xib and manually shows the window when it loads. This lets us carefully control what happens particularly when a window is full screen (native) and part of Mission Control. Previously, the behavior depended on the Settings.app "Prefer tabs when opening documents" setting, but we didn't handle every behavior correctly (see #1018 and #1020). I couldn't find a way to robustly handle all cases because there are no published macOS APIs for interacting with Mission Control... Plus, terminals aren't really "documents" so it did confuse at least one user that Ghostty would follow this configuration. We just incidently did because we use native tabbing. This PR takes full control into our own hands. Our behavior is now: - If a new window is created from a native fullscreen window, the new window is created into native fullscreen. - If a new tab is created from a native fullscreen window, the tab is added to the existing window and does not create a new space. - If a window or tab is created from a non-fullscreen window, the existing behaviors remain.
32 lines
2.1 KiB
XML
32 lines
2.1 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<document type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="3.0" toolsVersion="22155" targetRuntime="MacOSX.Cocoa" propertyAccessControl="none" useAutolayout="YES" customObjectInstantitationMethod="direct">
|
|
<dependencies>
|
|
<deployment identifier="macosx"/>
|
|
<plugIn identifier="com.apple.InterfaceBuilder.CocoaPlugin" version="22155"/>
|
|
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
|
|
</dependencies>
|
|
<objects>
|
|
<customObject id="-2" userLabel="File's Owner" customClass="TerminalController" customModule="Ghostty" customModuleProvider="target">
|
|
<connections>
|
|
<outlet property="window" destination="QvC-M9-y7g" id="cg9-Ep-qHg"/>
|
|
</connections>
|
|
</customObject>
|
|
<customObject id="-1" userLabel="First Responder" customClass="FirstResponder"/>
|
|
<customObject id="-3" userLabel="Application" customClass="NSObject"/>
|
|
<window title="👻 Ghostty" allowsToolTipsWhenApplicationIsInactive="NO" autorecalculatesKeyViewLoop="NO" releasedWhenClosed="NO" visibleAtLaunch="NO" animationBehavior="default" id="QvC-M9-y7g" customClass="TerminalWindow" customModule="Ghostty" customModuleProvider="target">
|
|
<windowStyleMask key="styleMask" titled="YES" closable="YES" miniaturizable="YES" resizable="YES"/>
|
|
<windowPositionMask key="initialPositionMask" leftStrut="YES" rightStrut="YES" topStrut="YES" bottomStrut="YES"/>
|
|
<rect key="contentRect" x="0.0" y="0.0" width="800" height="600"/>
|
|
<rect key="screenRect" x="0.0" y="0.0" width="3008" height="1667"/>
|
|
<view key="contentView" wantsLayer="YES" id="EiT-Mj-1SZ">
|
|
<rect key="frame" x="0.0" y="0.0" width="800" height="600"/>
|
|
<autoresizingMask key="autoresizingMask"/>
|
|
</view>
|
|
<connections>
|
|
<outlet property="delegate" destination="-2" id="tG2-b7-nb8"/>
|
|
</connections>
|
|
<point key="canvasLocation" x="132" y="-82"/>
|
|
</window>
|
|
</objects>
|
|
</document>
|