5
0
mirror of https://github.com/wailsapp/wails.git synced 2025-05-02 22:13:36 +08:00

[linux] Fix disabling context menu

This commit is contained in:
Lea Anthony 2022-02-08 06:20:41 +11:00
parent 322aad166b
commit 668da3a827
No known key found for this signature in database
GPG Key ID: 33DAF7BB90A58405

View File

@ -120,6 +120,7 @@ ulong setupInvokeSignal(void* contentManager) {
float xroot = 0.0f;
float yroot = 0.0f;
int dragTime = -1;
bool contextMenuDisabled = false;
gboolean buttonPress(GtkWidget *widget, GdkEventButton *event, void* dummy)
{
@ -128,12 +129,18 @@ gboolean buttonPress(GtkWidget *widget, GdkEventButton *event, void* dummy)
dragTime = -1;
return FALSE;
}
if( event->button == 3 && contextMenuDisabled ) {
return TRUE;
}
if (event->type == GDK_BUTTON_PRESS && event->button == 1)
{
xroot = event->x_root;
yroot = event->y_root;
dragTime = event->time;
}
return FALSE;
}
@ -448,29 +455,38 @@ void SetPosition(void* window, int x, int y) {
}
void Show(gpointer data) {
gtk_widget_show((GTKWidget*)data);
gtk_widget_show((GtkWidget*)data);
}
void Hide(gpointer data) {
gtk_widget_hide((GTKWidget*)data);
gtk_widget_hide((GtkWidget*)data);
}
void Maximise(gpointer data) {
gtk_window_maximize((GTKWindow*)data);
gtk_window_maximize((GtkWindow*)data);
}
void UnMaximise(gpointer data) {
gtk_window_unmaximize((GTKWindow*)data);
gtk_window_unmaximize((GtkWindow*)data);
}
void Minimise(gpointer data) {
gtk_window_iconify((GTKWindow*)data);
gtk_window_iconify((GtkWindow*)data);
}
void UnMinimise(gpointer data) {
gtk_window_present((GTKWindow*)data);
gtk_window_present((GtkWindow*)data);
}
bool disableContextMenu(GtkWindow* window) {
return TRUE;
}
void DisableContextMenu(void* webview) {
contextMenuDisabled = TRUE;
g_signal_connect(WEBKIT_WEB_VIEW(webview), "context-menu", G_CALLBACK(disableContextMenu), NULL);
}
*/
import "C"
import (
@ -535,6 +551,8 @@ func NewWindow(appoptions *options.App, debug bool) *Window {
if debug {
C.devtoolsEnabled(unsafe.Pointer(webview), C.int(1))
} else {
C.DisableContextMenu(unsafe.Pointer(webview))
}
// Set background colour