@@ -2,8 +2,9 @@ import { ipcRenderer, Menu } from 'electron';
2
2
3
3
import { createPanel } from './menu/panel' ;
4
4
5
- import logo from '../../assets/youtube-music .svg' ;
5
+ import logo from '../../assets/menu .svg' ;
6
6
import { isEnabled } from '../../config/plugins' ;
7
+ import config from '../../config' ;
7
8
8
9
function $ < E extends Element = Element > ( selector : string ) {
9
10
return document . querySelector < E > ( selector ) ;
@@ -12,11 +13,28 @@ function $<E extends Element = Element>(selector: string) {
12
13
const isMacOS = navigator . userAgent . includes ( 'Macintosh' ) ;
13
14
14
15
export default ( ) => {
16
+ let hideMenu = config . get ( 'options.hideMenu' ) ;
15
17
const titleBar = document . createElement ( 'title-bar' ) ;
16
18
const navBar = document . querySelector < HTMLDivElement > ( '#nav-bar-background' ) ;
17
19
if ( isMacOS ) titleBar . style . setProperty ( '--offset-left' , '70px' ) ;
18
20
19
21
logo . classList . add ( 'title-bar-icon' ) ;
22
+ const logoClick = ( ) => {
23
+ hideMenu = ! hideMenu ;
24
+ let visibilityStyle : string ;
25
+ if ( hideMenu ) {
26
+ visibilityStyle = 'hidden' ;
27
+ } else {
28
+ visibilityStyle = 'visible' ;
29
+ }
30
+ const menus = document . querySelectorAll < HTMLElement > ( 'menu-button' ) ;
31
+ menus . forEach ( ( menu ) => {
32
+ menu . style . visibility = visibilityStyle ;
33
+ } ) ;
34
+ } ;
35
+ logo . onclick = logoClick ;
36
+
37
+ ipcRenderer . on ( 'toggleMenu' , logoClick ) ;
20
38
21
39
if ( ! isMacOS ) titleBar . appendChild ( logo ) ;
22
40
document . body . appendChild ( titleBar ) ;
@@ -47,6 +65,9 @@ export default () => {
47
65
48
66
menu . append ( menuItem . label ) ;
49
67
titleBar . appendChild ( menu ) ;
68
+ if ( hideMenu ) {
69
+ menu . style . visibility = 'hidden' ;
70
+ }
50
71
} ) ;
51
72
} ;
52
73
updateMenu ( ) ;
0 commit comments