- const bool wasRealized = GTK_WIDGET_REALIZED(m_widget);
- bool deferShow =
- show && m_deferShow && !wasRealized &&
- g_signal_handler_find(m_widget,
- GSignalMatchType(G_SIGNAL_MATCH_ID | G_SIGNAL_MATCH_DATA),
- g_signal_lookup("property_notify_event", GTK_TYPE_WIDGET),
- 0, NULL, NULL, this);
+ bool deferShow = show && m_deferShow;
+ if (deferShow)
+ {
+ m_deferShow =
+ deferShow = !GTK_WIDGET_REALIZED(m_widget) &&
+ gdk_x11_screen_supports_net_wm_hint(
+ gtk_widget_get_screen(m_widget),
+ gdk_atom_intern("_NET_REQUEST_FRAME_EXTENTS", false)) &&
+ g_signal_handler_find(m_widget,
+ GSignalMatchType(G_SIGNAL_MATCH_ID | G_SIGNAL_MATCH_DATA),
+ g_signal_lookup("property_notify_event", GTK_TYPE_WIDGET),
+ 0, NULL, NULL, this);
+ }