waveterm/emain
Evan Simkowitz edfe711eda
Use Window Controls Overlay API for native-like experience on Windows and Linux (#240)
This PR implements the [Window Controls Overlay
API](https://web.dev/articles/window-controls-overlay) to let us hide
the menu bar on Windows and Linux and directly embed the window controls
in our tab bar. With #239 merged, we no longer need the menu bar on
these platforms.

The overlaid window controls are transparent so they will take on the
background from the app. I've updated the tab bar to flow properly using
the API's CSS environment variables.

At some point, we may want to update the logic around the symbolColor so
that it can ensure a proper contrast between the background and the
symbols in the window controls. For now, setting them to white works for
all the backgrounds we currently support.

![image
(2)](https://github.com/user-attachments/assets/7610f10b-9696-435c-9a2d-a435bee9fadb)


https://github.com/user-attachments/assets/8d19b512-5281-42b9-8abb-ccb9b850061f
2024-08-16 23:45:22 -07:00
..
emain.ts Use Window Controls Overlay API for native-like experience on Windows and Linux (#240) 2024-08-16 23:45:22 -07:00
preload.ts Add banner for app updates, clean up updater logic (#200) 2024-08-06 11:05:26 -07:00
updater.ts Clean up the Updater class and fix a runaway interval (#207) 2024-08-08 11:55:44 -07:00