Deprecate GdkEventVisibility and ::visibility-notify-event

These don't really work anymore in a composited world.
Lets make it official.
https://bugzilla.gnome.org/show_bug.cgi?id=481073
This commit is contained in:
Matthias Clasen 2014-03-03 18:31:06 -05:00
parent fac8d6deea
commit 7fae042208
2 changed files with 13 additions and 3 deletions

View File

@ -555,6 +555,11 @@ struct _GdkEventExpose
* %GDK_VISIBILITY_PARTIAL or %GDK_VISIBILITY_UNOBSCURED). * %GDK_VISIBILITY_PARTIAL or %GDK_VISIBILITY_UNOBSCURED).
* *
* Generated when the window visibility status has changed. * Generated when the window visibility status has changed.
*
* Deprecated: 3.12: Modern composited windowing systems with pervasive
* transparency make it impossible to track the visibility of a window
* reliably, so this event can not be guaranteed to provide useful
* information.
*/ */
struct _GdkEventVisibility struct _GdkEventVisibility
{ {

View File

@ -3178,14 +3178,19 @@ G_GNUC_END_IGNORE_DEPRECATIONS
* @event: (type Gdk.EventVisibility): the #GdkEventVisibility which * @event: (type Gdk.EventVisibility): the #GdkEventVisibility which
* triggered this signal. * triggered this signal.
* *
* The ::visibility-notify-event will be emitted when the @widget's window * The ::visibility-notify-event will be emitted when the @widget's
* is obscured or unobscured. * window is obscured or unobscured.
* *
* To receive this signal the #GdkWindow associated to the widget needs * To receive this signal the #GdkWindow associated to the widget needs
* to enable the #GDK_VISIBILITY_NOTIFY_MASK mask. * to enable the #GDK_VISIBILITY_NOTIFY_MASK mask.
* *
* Returns: %TRUE to stop other handlers from being invoked for the event. * Returns: %TRUE to stop other handlers from being invoked for the event.
* %FALSE to propagate the event further. * %FALSE to propagate the event further.
*
* Deprecated: 3.12: Modern composited windowing systems with pervasive
* transparency make it impossible to track the visibility of a window
* reliably, so this signal can not be guaranteed to provide useful
* information.
*/ */
widget_signals[VISIBILITY_NOTIFY_EVENT] = widget_signals[VISIBILITY_NOTIFY_EVENT] =
g_signal_new (I_("visibility-notify-event"), g_signal_new (I_("visibility-notify-event"),
@ -3195,7 +3200,7 @@ G_GNUC_END_IGNORE_DEPRECATIONS
_gtk_boolean_handled_accumulator, NULL, _gtk_boolean_handled_accumulator, NULL,
_gtk_marshal_BOOLEAN__BOXED, _gtk_marshal_BOOLEAN__BOXED,
G_TYPE_BOOLEAN, 1, G_TYPE_BOOLEAN, 1,
GDK_TYPE_EVENT | G_SIGNAL_TYPE_STATIC_SCOPE); GDK_TYPE_EVENT | G_SIGNAL_TYPE_STATIC_SCOPE | G_SIGNAL_DEPRECATED);
/** /**
* GtkWidget::window-state-event: * GtkWidget::window-state-event: