Skip to content

Feature: --hide-title-bar config #1088

Open
Gavinkaa wants to merge 2 commits into
openai:mainfrom
Gavinkaa:main
Open

Feature: --hide-title-bar config #1088
Gavinkaa wants to merge 2 commits into
openai:mainfrom
Gavinkaa:main

Conversation

@Gavinkaa

@Gavinkaa Gavinkaa commented Jun 9, 2025

Copy link
Copy Markdown
Contributor

Why?
When you run a VM that only runs one full-screen app, the macOS title bar looks wrong and wastes pixels. A simple flag lets users reclaim that space and makes the guest feel native.

What changed?

  • Added --hide-title-bar flag in Run.swift; it’s off by default.
  • Flag is forwarded to MainApp, which now chooses between HideTitleBarApp (.windowStyle(.hiddenTitleBar) + ignoresSafeArea) and the regular app. No other logic touched.

How to try it

tart run <vm-name> --hide-title-bar

@Gavinkaa

Copy link
Copy Markdown
Contributor Author

Hi! Just following up on the PR I submitted a couple of weeks ago. Let me know if there's anything you'd like me to adjust or if it's waiting on anything. Thanks for your time!

@edigaryev @fkorotkov

@fkorotkov

Copy link
Copy Markdown
Contributor

On Tahoe it looks a bit weird. The close, hide and full screen buttons just overlay over the window. Also I don't see the bar in full screen mode, only when I hover over the top part of the screen. How does it look for you? Could you please take a screenshot to see the part that wastes real estate.

Screenshot 2025-06-26 at 11 20 02 AM

@Gavinkaa

Gavinkaa commented Jul 1, 2025

Copy link
Copy Markdown
Contributor Author

Hey,

My use case is a bit different. I'm aiming to run lightweight Debian VMs to create fully isolated environments for development. This setup is particularly convenient because I can run VS Code inside the Debian VM, and with a few key rebindings, the experience feels almost identical to using VS Code natively on the host.

As shown in the screenshot, the version without the top bar is virtually indistinguishable from a locally running instance of VS Code.

I understand this approach won't suit every setup, but I believe it can be really convenient for similar use cases and could be replicated for other applications as well.

image image

@Gavinkaa

Copy link
Copy Markdown
Contributor Author

Hey @edigaryev @fkorotkov, any blockers ?

@edigaryev

Copy link
Copy Markdown
Contributor

Hey @edigaryev @fkorotkov, any blockers ?

I'm not sure if it's worth adding a new command-line argument for this feature:

  1. It looks weird (unless you know what you're doing)
  2. It's strictly GUI-specific

Perhaps we could have a Hide title bar toggle in the View or Control menu instead?

@CLAassistant

CLAassistant commented Jul 31, 2025

Copy link
Copy Markdown

CLA assistant check
All committers have signed the CLA.

@Gavinkaa

Copy link
Copy Markdown
Contributor Author

Hey @edigaryev @fkorotkov, implemented this as a config, so not flooding the command line as you requested. This needs a rebuild of the windows so better to have this set before starting the vm that's why I didn't added this in the View or Control menu.

Let me know if that works for you.

@Gavinkaa Gavinkaa changed the title Feature: --hide-title-bar flag for tart run Feature: --hide-title-bar config Aug 5, 2025
@Gavinkaa

Copy link
Copy Markdown
Contributor Author

Hey @edigaryev @fkorotkov, any blockers ?

@Gavinkaa

Gavinkaa commented Oct 3, 2025

Copy link
Copy Markdown
Contributor Author

small ping @edigaryev @fkorotkov :)

@edigaryev

Copy link
Copy Markdown
Contributor

Hello @Gavinkaa!

Have you had a chance to look at #1088 (comment):

Perhaps we could have a Hide title bar toggle in the View or Control menu instead?

@Gavinkaa

Copy link
Copy Markdown
Contributor Author

Hey @edigaryev @fkorotkov, implemented this as a config, so not flooding the command line as you requested. This needs a rebuild of the windows so better to have this set before starting the vm that's why I didn't added this in the View or Control menu.

Let me know if that works for you.

Yeah I saw it but this seems to not be the best solution, isn't it a config a good way to also have it not flooding too much as you said

@edigaryev

Copy link
Copy Markdown
Contributor

Yeah I saw it but this seems to not be the best solution, isn't it a config a good way to also have it not flooding too much as you said

It just "floods" the other parts of the tart CLI that are already loaded. As for the placing it in tart set, it makes this setting survive the tart push'es and tart pull's, which many users might find surprising.

My point was that since this setting implies interactive usage, it makes sense to place it in the Control GUI menu instead, which currently has only three entries (Start, Stop and Request Stop).

@Gavinkaa

Copy link
Copy Markdown
Contributor Author

Hey @edigaryev, finally implemented this the way you suggested: a "Hide Title Bar" toggle in the Control menu, no CLI flag.

(State lives in local UserDefaults, not the VM config, remembered across runs, but never travels with push/pull.)

Let me know if this suits!

@Gavinkaa Gavinkaa reopened this May 29, 2026
@Gavinkaa

Copy link
Copy Markdown
Contributor Author

Hey, any blockers ? @torarnv @fkorotkov-oai

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants