File tree 2 files changed +20
-0
lines changed
2 files changed +20
-0
lines changed Original file line number Diff line number Diff line change @@ -1094,6 +1094,25 @@ func (w *WebviewWindow) HandleDragAndDropMessage(filenames []string) {
1094
1094
}
1095
1095
}
1096
1096
1097
+ func (w * WebviewWindow ) OpenContextMenu (data * ContextMenuData ) {
1098
+ menu , ok := w .contextMenus [data .Id ]
1099
+ if ! ok {
1100
+ // try application level context menu
1101
+ menu , ok = globalApplication .getContextMenu (data .Id )
1102
+ if ! ok {
1103
+ w .Error ("No context menu found for id: %s" , data .Id )
1104
+ return
1105
+ }
1106
+ }
1107
+ menu .setContextData (data )
1108
+ if w .impl == nil && ! w .isDestroyed () {
1109
+ return
1110
+ }
1111
+ InvokeSync (func () {
1112
+ w .impl .openContextMenu (menu , data )
1113
+ })
1114
+ }
1115
+
1097
1116
// RegisterContextMenu registers a context menu and assigns it the given name.
1098
1117
func (w * WebviewWindow ) RegisterContextMenu (name string , menu * Menu ) {
1099
1118
w .contextMenusLock .Lock ()
Original file line number Diff line number Diff line change @@ -44,6 +44,7 @@ type Window interface {
44
44
Minimise () Window
45
45
Name () string
46
46
On (eventType events.WindowEventType , callback func (event * WindowEvent )) func ()
47
+ OpenContextMenu (data * ContextMenuData )
47
48
RegisterContextMenu (name string , menu * Menu )
48
49
RelativePosition () (int , int )
49
50
Reload ()
You can’t perform that action at this time.
0 commit comments