@@ -10,9 +10,12 @@ import {
1010 contextMenu
1111} from 'react-contexify' ;
1212
13- import { ContextMenuItem , ContextMenuState } from '../model/ui/context-menu' ;
13+ import { styled } from '../styles' ;
14+
1415import { UnreachableCheck } from '../util/error' ;
1516
17+ import { ContextMenuItem , ContextMenuState } from '../model/ui/context-menu' ;
18+
1619@observer
1720export class HtmlContextMenu < T > extends React . Component < {
1821 menuState : ContextMenuState < T > ,
@@ -36,12 +39,12 @@ export class HtmlContextMenu<T> extends React.Component<{
3639 }
3740
3841 render ( ) {
39- return < Menu
42+ return < ThemedMenu
4043 id = 'menu'
4144 onVisibilityChange = { this . onVisibilityChange }
4245 >
4346 { this . props . menuState . items . map ( this . renderItem ) }
44- </ Menu >
47+ </ ThemedMenu >
4548 }
4649
4750 renderItem = ( item : ContextMenuItem < T > , i : number ) => {
@@ -70,4 +73,19 @@ export class HtmlContextMenu<T> extends React.Component<{
7073 if ( ! visible ) this . props . onHidden ( ) ;
7174 } ;
7275
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