Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPaul D'Pong2021-07-06 18:30:46 +0000
committerAlexander Kurtakov2021-07-13 15:52:19 +0000
commit0441e9b0d02ec1b035047e79175cb139a4cb7268 (patch)
treee7ef0558ba3d717c2a6d70f0af09879df839ca2c
parentf8708abfc19d7d143b91a4d322a508e6c61cbbc6 (diff)
downloadeclipse.platform.swt-0441e9b0d02ec1b035047e79175cb139a4cb7268.tar.gz
eclipse.platform.swt-0441e9b0d02ec1b035047e79175cb139a4cb7268.tar.xz
eclipse.platform.swt-0441e9b0d02ec1b035047e79175cb139a4cb7268.zip
Bug 574694 - [GTK4] Remove show-help signal & limit callback to GTK3
only - Rename internal callback gtk_show_help to gtk3_show_help - Added GTK4 guard to signal id lookup - Removed TODO GTK4 comments for Menu/MenuItems in gtk_show_help callback Change-Id: I7d3c0e5969048cad248a07375614e2098c2fe25c Signed-off-by: Paul D'Pong <sdamrong@redhat.com> Reviewed-on: https://git.eclipse.org/r/c/platform/eclipse.platform.swt/+/182819 Tested-by: Platform Bot <platform-bot@eclipse.org> Reviewed-by: Alexander Kurtakov <akurtako@redhat.com>
-rw-r--r--bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Control.java2
-rw-r--r--bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Display.java4
-rw-r--r--bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Menu.java3
-rw-r--r--bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/MenuItem.java11
-rw-r--r--bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Widget.java4
5 files changed, 11 insertions, 13 deletions
diff --git a/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Control.java b/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Control.java
index aee23379e1..fe5e7e92c8 100644
--- a/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Control.java
+++ b/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Control.java
@@ -4299,7 +4299,7 @@ long gtk_scroll_event (long widget, long eventPtr) {
}
@Override
-long gtk_show_help (long widget, long helpType) {
+long gtk3_show_help (long widget, long helpType) {
if (!hasFocus ()) return 0;
return sendHelpEvent (helpType) ? 1 : 0;
}
diff --git a/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Display.java b/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Display.java
index 859df98f9b..23ce2b7354 100644
--- a/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Display.java
+++ b/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Display.java
@@ -3548,8 +3548,8 @@ void initializeCallbacks () {
signalIds [Widget.REALIZE] = OS.g_signal_lookup (OS.realize, GTK.GTK_TYPE_WIDGET ());
signalIds [Widget.SCROLL_EVENT] = OS.g_signal_lookup (OS.scroll_event, GTK.GTK_TYPE_WIDGET ());
signalIds [Widget.SHOW] = OS.g_signal_lookup (OS.show, GTK.GTK_TYPE_WIDGET ());
- signalIds [Widget.SHOW_HELP] = OS.g_signal_lookup (OS.show_help, GTK.GTK_TYPE_WIDGET ());
- if (!GTK.GTK4) signalIds [Widget.SIZE_ALLOCATE] = OS.g_signal_lookup (OS.size_allocate, GTK.GTK_TYPE_WIDGET ());
+ if (!GTK.GTK4) signalIds[Widget.SHOW_HELP] = OS.g_signal_lookup(OS.show_help, GTK.GTK_TYPE_WIDGET());
+ if (!GTK.GTK4) signalIds[Widget.SIZE_ALLOCATE] = OS.g_signal_lookup(OS.size_allocate, GTK.GTK_TYPE_WIDGET());
signalIds [Widget.STYLE_UPDATED] = OS.g_signal_lookup (OS.style_updated, GTK.GTK_TYPE_WIDGET ());
signalIds [Widget.UNMAP] = OS.g_signal_lookup (OS.unmap, GTK.GTK_TYPE_WIDGET ());
signalIds [Widget.UNMAP_EVENT] = OS.g_signal_lookup (OS.unmap_event, GTK.GTK_TYPE_WIDGET ());
diff --git a/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Menu.java b/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Menu.java
index 3f8d1277dd..89430d5420 100644
--- a/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Menu.java
+++ b/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Menu.java
@@ -853,9 +853,8 @@ long gtk_show (long widget) {
@Override
-long gtk_show_help (long widget, long helpType) {
+long gtk3_show_help (long widget, long helpType) {
if (sendHelpEvent (helpType)) {
- // TODO: GTK4 there is no idea of a menu shell
GTK3.gtk_menu_shell_deactivate (handle);
return 1;
}
diff --git a/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/MenuItem.java b/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/MenuItem.java
index 1a7c9e02ca..ede812b657 100644
--- a/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/MenuItem.java
+++ b/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/MenuItem.java
@@ -650,7 +650,7 @@ long gtk_select (long item) {
}
@Override
-long gtk_show_help (long widget, long helpType) {
+long gtk3_show_help (long widget, long helpType) {
boolean handled = hooks (SWT.Help);
if (handled) {
postEvent (SWT.Help);
@@ -658,7 +658,6 @@ long gtk_show_help (long widget, long helpType) {
handled = parent.sendHelpEvent (helpType);
}
if (handled) {
- // TODO: GTK4 there is no idea of a menu shell
GTK3.gtk_menu_shell_deactivate (parent.handle);
return 1;
}
@@ -666,8 +665,8 @@ long gtk_show_help (long widget, long helpType) {
}
@Override
-void hookEvents () {
- super.hookEvents ();
+void hookEvents() {
+ super.hookEvents();
if (GTK.GTK4) {
// Bind activate signal only for menu items with actions (SWT.CHECK and SWT.RADIO)
@@ -676,8 +675,8 @@ void hookEvents () {
}
} else {
OS.g_signal_connect_closure(handle, OS.activate, display.getClosure (ACTIVATE), false);
- OS.g_signal_connect_closure (handle, OS.select, display.getClosure (SELECT), false);
- OS.g_signal_connect_closure_by_id (handle, display.signalIds [SHOW_HELP], 0, display.getClosure (SHOW_HELP), false);
+ OS.g_signal_connect_closure(handle, OS.select, display.getClosure (SELECT), false);
+ OS.g_signal_connect_closure_by_id(handle, display.signalIds[SHOW_HELP], 0, display.getClosure(SHOW_HELP), false);
}
}
diff --git a/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Widget.java b/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Widget.java
index f4542bedb6..8cae2781d2 100644
--- a/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Widget.java
+++ b/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Widget.java
@@ -956,7 +956,7 @@ long gtk_show (long widget) {
return 0;
}
-long gtk_show_help (long widget, long helpType) {
+long gtk3_show_help (long widget, long helpType) {
return 0;
}
@@ -2333,7 +2333,7 @@ long windowProc (long handle, long arg0, long user_data) {
case MOVE_FOCUS: return gtk_move_focus (handle, arg0);
case POPULATE_POPUP: return gtk_populate_popup (handle, arg0);
case SCROLL_EVENT: return gtk_scroll_event (handle, arg0);
- case SHOW_HELP: return gtk_show_help (handle, arg0);
+ case SHOW_HELP: return gtk3_show_help(handle, arg0);
case SIZE_ALLOCATE: return gtk_size_allocate (handle, arg0);
case TOGGLED: return gtk_toggled (handle, arg0);
case UNMAP_EVENT: return gtk_unmap_event (handle, arg0);

Back to the top