Open5
microsoft/vscodeを読む
https://github.com/microsoft/vscode/ を読み、知見があったら書く
https://github.com/microsoft/vscode/blob/1.94.2/src/vs/platform/windows/electron-main/windowImpl.ts
VSCodeはhiddenTitlebarを使っているが、タイトルバーにあたる部分をダブルクリックすると起こる
- 画面にフィットしたサイズではないときは画面にフィットさせる
- 画面にフィットしたサイズのときは元に戻る
という挙動が必要。
electron.systemPreferences.getUserDefault('AppleActionOnDoubleClick', 'string')
で、MacOSでタイトルバーをダブルクリックした時の挙動を模倣できる
Menu.setApplicationMenu(null);
デフォルトのメニュー構築はパフォーマンスに負の影響があるので、あらかじめ削除することで起動の際のパフォーマンスが向上する。
NLS(National Language Support) Configurationを設定するためにMacOSとWindowsとLinuxで異なる設定を行っている。
あらかじめ予約されたopen file event
MacOSで起動していないVSCodeにファイルをドラッグして起動するとopen-fileイベントが発生するが、app-ready前なので反応できない。後で処理するためにファイルを配列に記録している。
open-urlも同じ。