@@ -10,9 +10,12 @@ import {
10
10
contextMenu
11
11
} from 'react-contexify' ;
12
12
13
- import { ContextMenuItem , ContextMenuState } from '../model/ui/context-menu' ;
13
+ import { styled } from '../styles' ;
14
+
14
15
import { UnreachableCheck } from '../util/error' ;
15
16
17
+ import { ContextMenuItem , ContextMenuState } from '../model/ui/context-menu' ;
18
+
16
19
@observer
17
20
export class HtmlContextMenu < T > extends React . Component < {
18
21
menuState : ContextMenuState < T > ,
@@ -36,12 +39,12 @@ export class HtmlContextMenu<T> extends React.Component<{
36
39
}
37
40
38
41
render ( ) {
39
- return < Menu
42
+ return < ThemedMenu
40
43
id = 'menu'
41
44
onVisibilityChange = { this . onVisibilityChange }
42
45
>
43
46
{ this . props . menuState . items . map ( this . renderItem ) }
44
- </ Menu >
47
+ </ ThemedMenu >
45
48
}
46
49
47
50
renderItem = ( item : ContextMenuItem < T > , i : number ) => {
@@ -70,4 +73,19 @@ export class HtmlContextMenu<T> extends React.Component<{
70
73
if ( ! visible ) this . props . onHidden ( ) ;
71
74
} ;
72
75
73
- }
76
+ }
77
+
78
+ const ThemedMenu = styled ( Menu ) `
79
+ --contexify-menu-bgColor: ${ p => p . theme . mainLowlightBackground } ;
80
+ --contexify-item-color: ${ p => p . theme . mainColor } ;
81
+ --contexify-separator-color: ${ p => p . theme . containerBorder } ;
82
+
83
+ --contexify-rightSlot-color: ${ p => p . theme . containerWatermark } ;
84
+ --contexify-activeRightSlot-color: ${ p => p . theme . mainColor } ;
85
+
86
+ --contexify-arrow-color: ${ p => p . theme . containerWatermark } ;
87
+ --contexify-activeArrow-color: ${ p => p . theme . mainColor } ;
88
+
89
+ --contexify-activeItem-color: #fff;
90
+ --contexify-activeItem-bgColor: #3498db;
91
+ ` ;
0 commit comments