We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
2 parents 927a33b + 1220bb4 commit 6f67f9dCopy full SHA for 6f67f9d
config.h.meson
@@ -71,5 +71,8 @@
71
/* Whether Xwayland has -initfd option */
72
#mesondefine HAVE_XWAYLAND_INITFD
73
74
+/* Whether Xwayland has -listenfd option */
75
+#mesondefine HAVE_XWAYLAND_LISTENFD
76
+
77
/* Whether the Xwayland supports +/-byteswappedclients */
78
#mesondefine HAVE_XWAYLAND_BYTE_SWAPPED_CLIENTS
meson.build
@@ -376,6 +376,8 @@ if cc.has_header_symbol('sys/prctl.h', 'prctl')
376
endif
377
378
have_xwayland_initfd = false
379
+have_xwayland_listenfd = false
380
381
have_xwayland_byte_swapped_clients = false
382
if have_wayland
383
xwayland_dep = dependency('xwayland', required: false)
@@ -418,6 +420,15 @@ if have_wayland
418
420
cdata.set('HAVE_XWAYLAND_INITFD', 1)
419
421
422
423
+ # For Xwayland -listenfd usage
424
+ if xwayland_dep.found()
425
+ have_xwayland_listenfd = xwayland_dep.get_pkgconfig_variable('have_listenfd') == 'true'
426
+ endif
427
428
+ if (have_xwayland_listenfd)
429
+ cdata.set('HAVE_XWAYLAND_LISTENFD', 1)
430
431
432
# For Xwayland +/-byteswappedclients usage
433
if xwayland_dep.found()
434
have_xwayland_byte_swapped_clients = xwayland_dep.get_variable('have_byteswappedclients',
@@ -489,6 +500,7 @@ output = [
489
500
' Introspection.................... ' + have_introspection.to_string(),
490
501
' Profiler......................... ' + have_profiler.to_string(),
491
502
' Xwayland initfd.................. ' + have_xwayland_initfd.to_string(),
503
+ ' Xwayland listenfd................ ' + have_xwayland_listenfd.to_string(),
492
504
' Xwayland byte-swapped clients.... ' + have_xwayland_byte_swapped_clients.to_string(),
493
505
'',
494
506
' Tests:',
src/core/startup-notification.c
@@ -62,6 +62,7 @@ enum
62
enum
63
{
64
SEQ_COMPLETE,
65
+ SEQ_TIMEOUT,
66
N_SEQ_SIGNALS
67
};
68
@@ -268,6 +269,13 @@ meta_startup_sequence_class_init (MetaStartupSequenceClass *klass)
268
269
NULL, NULL, NULL,
270
G_TYPE_NONE, 0);
271
272
+ seq_signals[SEQ_TIMEOUT] =
273
+ g_signal_new ("timeout",
274
+ META_TYPE_STARTUP_SEQUENCE,
275
+ G_SIGNAL_RUN_LAST,
276
+ 0, NULL, NULL, NULL,
277
+ G_TYPE_NONE, 0);
278
279
seq_props[PROP_SEQ_ID] =
280
g_param_spec_string ("id",
281
"ID",
@@ -488,7 +496,11 @@ startup_sequence_timeout (void *data)
488
496
"Timed out sequence %s\n",
497
meta_startup_sequence_get_id (sequence));
498
- meta_startup_sequence_complete (sequence);
499
+ if (!meta_startup_sequence_get_completed (sequence))
+ {
+ g_signal_emit (sequence, seq_signals[SEQ_TIMEOUT], 0, sequence);
+ meta_startup_sequence_complete (sequence);
+ }
meta_startup_notification_remove_sequence (sn, sequence);
}
src/core/window.c
@@ -5578,6 +5578,13 @@ meta_window_raise (MetaWindow *window)
5578
5579
g_return_if_fail (!window->override_redirect);
5580
5581
+ /* Flush pending visible state now.
5582
+ * It is important that this runs before meta_stack_raise() because
5583
+ * showing a window may overwrite its stacking order based on the
5584
+ * stacking rules for newly shown windows.
5585
+ */
5586
+ meta_window_flush_calc_showing (window);
5587
5588
ancestor = meta_window_find_root_ancestor (window);
5589
5590
meta_topic (META_DEBUG_WINDOW_OPS,
src/meson.build
@@ -489,6 +489,8 @@ if have_wayland
'wayland/meta-pointer-lock-wayland.h',
'wayland/meta-selection-source-wayland.c',
'wayland/meta-selection-source-wayland-private.h',
+ 'wayland/meta-wayland-activation.c',
+ 'wayland/meta-wayland-activation.h',
'wayland/meta-wayland-actor-surface.c',
495
'wayland/meta-wayland-actor-surface.h',
'wayland/meta-wayland-buffer.c',
@@ -809,6 +811,7 @@ if have_wayland
809
811
['tablet', 'unstable', 'v2', ],
810
812
['text-input', 'unstable', 'v3', ],
813
['viewporter', 'stable', ],
814
+ ['xdg-activation', 'staging', 'v1', ],
815
['xdg-dialog', 'staging', 'v1', ],
816
['xdg-foreign', 'unstable', 'v1', ],
817
['xdg-foreign', 'unstable', 'v2', ],
0 commit comments