microsoft / vscode

Visual Studio Code
https://code.visualstudio.com
MIT License
163.05k stars 28.8k forks source link

macOS window buttons drawn at wrong position when Command Center is disabled #165772

Closed Rhys-T closed 9 months ago

Rhys-T commented 1 year ago

Type: Bug

Does this issue occur when all extensions are disabled?: Yes I've also reproduced this in a blank profile using code --disable-extensions --user-data-dir path/to/empty-dir, as well as on Insiders (which was also on a blank profile, since I had never run Insiders on this machine before.)

Only tested on Catalina and Mojave so far.

  1. Launch Visual Studio Code.
  2. Right-click a blank part of the title bar, and turn off Command Center. (Or turn it off in Settings, or start up with it already off.)

Expected result: The title bar resembles a native one, including the position of the close, minimize, and fullscreen/zoom buttons.

Actual result: The buttons are too close to the left edge of the window. Examining the close button through the Accessibility API[^1] shows that its left edge is 4 pixels[^2] to the right of the window's left edge, while the close button of a native app like Finder or Preview is 7 pixels in. (With Command Center on, the button is 10 pixels in, which looks correct.)

While cropping the screenshots, I noticed that the buttons are also one pixel[^2] lower than on a native titlebar. That's much less noticeable, though.

Screenshots VS Code's window controls, with Command Center disabled: VSCode window controls Finder's window controls, for comparison: Finder window controls VS Code's window controls, with Command center enabled, for comparison: VSCode window controls with CC

[^1]: Specifically, using the Hammerspoon console. I figured that API could measure the positions more accurately than I could. [^2]: Actually 'points', since I have a Retina/HiDPI screen.

VS Code version: Code 1.73.0 (8fa188b2b301d36553cbc9ce1b0a146ccb93351f, 2022-11-01T15:38:50.881Z) OS version: Darwin x64 19.6.0 Modes: Sandboxed: No

Also reproduced on: VS Code version: Code - Insiders 1.74.0-insider (Universal) (6933e6fcef4b9b8e373130082bb6da0f2bb2b68b, 2022-11-07T11:42:09.572Z) OS version: Darwin x64 19.6.0 Modes: Sandboxed: Yes

sbatten commented 1 year ago

Testing with Ventura, the alignment matches that of the built-in terminal application on macOS. If this is an issue, its on Electron.

keitherskine commented 1 year ago

Further to this, could I put in a request to move the macOS buttons (the traffic lights) inwards slightly so that it's easier to click the corner of the VSCode window, to bring it forward?

For example, in Chrome, there is a decent gap to the left of the macOS buttons: image

Whereas in VSCode, there is very little gap, if any: image

That gap may not be much, but it does make it easy to select the corner of a Chrome window. Not so easy to select the corner of a VSCode window.

Happy to raise this as a separate issue if you prefer.

VSCodeTriageBot commented 9 months ago

We closed this issue because we don't plan to address it in the foreseeable future. If you disagree and feel that this issue is crucial: we are happy to listen and to reconsider.

If you wonder what we are up to, please see our roadmap and issue reporting guidelines.

Thanks for your understanding, and happy coding!