[gtk/wip/matthiasc/focus3: 15/40] Drop gtk_widget_send_focus_change
- From: Matthias Clasen <matthiasc src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gtk/wip/matthiasc/focus3: 15/40] Drop gtk_widget_send_focus_change
- Date: Sun, 17 Mar 2019 01:51:18 +0000 (UTC)
commit 7819a5aab9282996fc23b5db470624b0a20f1388
Author: Matthias Clasen <mclasen redhat com>
Date: Sat Mar 2 21:03:38 2019 -0500
Drop gtk_widget_send_focus_change
Replace this with gtk_widget_set_has_focus + gtk_widget_event.
gtk/gtktreeview.c | 3 ++-
gtk/gtkwidget.c | 50 --------------------------------------------------
gtk/gtkwidget.h | 3 ---
gtk/gtkwidgetprivate.h | 1 +
gtk/gtkwindow.c | 5 +++--
5 files changed, 6 insertions(+), 56 deletions(-)
---
diff --git a/gtk/gtktreeview.c b/gtk/gtktreeview.c
index 1a4ed0488a..29da6f8876 100644
--- a/gtk/gtktreeview.c
+++ b/gtk/gtktreeview.c
@@ -10151,7 +10151,8 @@ send_focus_change (GtkWidget *widget,
fevent->focus_change.in = in;
gdk_event_set_device (fevent, device);
- gtk_widget_send_focus_change (widget, fevent);
+ gtk_widget_set_has_focus (widget, in);
+ gtk_widget_event (widget, fevent);
g_object_unref (fevent);
}
diff --git a/gtk/gtkwidget.c b/gtk/gtkwidget.c
index c5eb6d63cb..f9dafac747 100644
--- a/gtk/gtkwidget.c
+++ b/gtk/gtkwidget.c
@@ -11573,56 +11573,6 @@ gtk_widget_get_overflow (GtkWidget *widget)
return priv->overflow;
}
-/**
- * gtk_widget_send_focus_change:
- * @widget: a #GtkWidget
- * @event: a #GdkEvent of type GDK_FOCUS_CHANGE
- *
- * Sends the focus change @event to @widget
- *
- * This function is not meant to be used by applications. The only time it
- * should be used is when it is necessary for a #GtkWidget to assign focus
- * to a widget that is semantically owned by the first widget even though
- * it’s not a direct child - for instance, a search entry in a floating
- * window similar to the quick search in #GtkTreeView.
- *
- * An example of its usage is:
- *
- * |[<!-- language="C" -->
- * GdkEvent *fevent = gdk_event_new (GDK_FOCUS_CHANGE);
- *
- * fevent->focus_change.type = GDK_FOCUS_CHANGE;
- * fevent->focus_change.in = TRUE;
- * fevent->focus_change.surface = _gtk_widget_get_surface (widget);
- * if (fevent->focus_change.surface != NULL)
- * g_object_ref (fevent->focus_change.surface);
- *
- * gtk_widget_send_focus_change (widget, fevent);
- *
- * g_object_unref (event);
- * ]|
- *
- * Returns: the return value from the event signal emission: %TRUE
- * if the event was handled, and %FALSE otherwise
- */
-gboolean
-gtk_widget_send_focus_change (GtkWidget *widget,
- GdkEvent *event)
-{
- GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
-
- g_return_val_if_fail (GTK_IS_WIDGET (widget), FALSE);
- g_return_val_if_fail (event != NULL && event->any.type == GDK_FOCUS_CHANGE, FALSE);
-
- priv->has_focus = event->focus_change.in;
-
- gtk_propagate_event (widget, event);
-
- g_object_notify_by_pspec (G_OBJECT (widget), widget_props[PROP_HAS_FOCUS]);
-
- return TRUE;
-}
-
void
gtk_widget_set_has_focus (GtkWidget *widget,
gboolean has_focus)
diff --git a/gtk/gtkwidget.h b/gtk/gtkwidget.h
index f3012b07a4..d9dbfaf885 100644
--- a/gtk/gtkwidget.h
+++ b/gtk/gtkwidget.h
@@ -451,9 +451,6 @@ gboolean gtk_widget_mnemonic_activate (GtkWidget *widget,
GDK_AVAILABLE_IN_ALL
gboolean gtk_widget_event (GtkWidget *widget,
const GdkEvent *event);
-GDK_AVAILABLE_IN_ALL
-gboolean gtk_widget_send_focus_change (GtkWidget *widget,
- GdkEvent *event);
GDK_AVAILABLE_IN_ALL
gboolean gtk_widget_activate (GtkWidget *widget);
diff --git a/gtk/gtkwidgetprivate.h b/gtk/gtkwidgetprivate.h
index ca30e9b0f3..231748d655 100644
--- a/gtk/gtkwidgetprivate.h
+++ b/gtk/gtkwidgetprivate.h
@@ -336,6 +336,7 @@ gboolean gtk_widget_run_controllers (GtkWidget
const GdkEvent *event,
GtkPropagationPhase phase);
+
/* inline getters */
static inline GtkWidget *
diff --git a/gtk/gtkwindow.c b/gtk/gtkwindow.c
index 97a886009c..d2fd050ffc 100644
--- a/gtk/gtkwindow.c
+++ b/gtk/gtkwindow.c
@@ -7036,7 +7036,7 @@ gtk_window_real_activate_focus (GtkWindow *window)
static void
do_focus_change (GtkWidget *widget,
- gboolean in)
+ gboolean in)
{
GdkSeat *seat;
GList *devices, *d;
@@ -7065,7 +7065,8 @@ do_focus_change (GtkWidget *widget,
fevent->focus_change.in = in;
gdk_event_set_device (fevent, dev);
- gtk_widget_send_focus_change (widget, fevent);
+ gtk_widget_set_has_focus (widget, in);
+ gtk_widget_event (widget, fevent);
g_object_unref (fevent);
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]