Update libdecor to commit c6c780c1 dated 2023-10-10

This commit is contained in:
ManoloFLTK 2023-10-29 10:28:27 +01:00
parent 2dc7ae8edb
commit c0e4410776
3 changed files with 16 additions and 20 deletions

View File

@ -23,14 +23,14 @@ The nanosvg library is not affected.
\section bundled-status Current status \section bundled-status Current status
\code \code
Current versions of bundled libraries (as of September 13, 2023): Current versions of bundled libraries (as of October 29, 2023):
Library Version/git commit Release date FLTK Version Library Version/git commit Release date FLTK Version
-------------------------------------------------------------------------- --------------------------------------------------------------------------
jpeg jpeg-9e 2022-01-16 1.4.0 jpeg jpeg-9e 2022-01-16 1.4.0
nanosvg abcd277ea4 [1] 2022-12-22 1.4.0 nanosvg abcd277ea4 [1] 2022-12-22 1.4.0
png libpng-1.6.40 2023-06-21 1.4.0 png libpng-1.6.40 2023-06-21 1.4.0
zlib zlib-1.3 2023-08-18 1.4.0 zlib zlib-1.3 2023-08-18 1.4.0
libdecor 422abaf9 [2] 2023-09-07 1.4.0 libdecor c6c780c1 [2] 2023-10-10 1.4.0
-------------------------------------------------------------------------- --------------------------------------------------------------------------
Previous versions of bundled libraries (FLTK 1.3.x): Previous versions of bundled libraries (FLTK 1.3.x):

View File

@ -59,13 +59,13 @@ Wayland differs also from X11 in that the position of a window in the display is
completely hidden to the client app. This prevents function \c Fl_Window::position() from having completely hidden to the client app. This prevents function \c Fl_Window::position() from having
any effect on a top-level window. Wayland also prevents a client app from knowing whether any effect on a top-level window. Wayland also prevents a client app from knowing whether
a window is minimized: \c Fl_Window::show() has no effect on a minimized window. a window is minimized: \c Fl_Window::show() has no effect on a minimized window.
Subwindows can be positioned as usual relatively to their Subwindows can be positioned as usual relatively to their parent window.
parent window. FLTK uses that for the small, yellow windows that display
the new scale factor value when it's changed: these are created as short-lived subwindows
centered above \c Fl::first_window().
Wayland allows to create popup windows positioned relatively to a previously mapped other Wayland allows to create popup windows positioned relatively to a previously mapped other
window. This allows FLTK to position adequately menu and tooltip windows, see window. This allows FLTK to position adequately menu and tooltip windows
\ref menu-windows. (see \ref menu-windows).
FLTK uses also popups for the small, yellow windows that display
the new scale factor value when it's changed: these are created as short-lived popups
centered above \c Fl::first_window().
Wayland uses a trick of its own to handle lists of linked records. It defines type Wayland uses a trick of its own to handle lists of linked records. It defines type
<tt>struct wl_list</tt> and a few macros (\c wl_list_init(), \c wl_list_for_each(), \c wl_list_insert(), <tt>struct wl_list</tt> and a few macros (\c wl_list_init(), \c wl_list_for_each(), \c wl_list_insert(),

View File

@ -2548,15 +2548,12 @@ init_wl_seat(struct libdecor_plugin_gtk *plugin_gtk,
struct seat *seat; struct seat *seat;
if (version < 3) { if (version < 3) {
char *err_msg;
asprintf(&err_msg,
"%s version 3 required but only version %i is available\n",
wl_seat_interface.name, version);
libdecor_notify_plugin_error( libdecor_notify_plugin_error(
plugin_gtk->context, plugin_gtk->context,
LIBDECOR_ERROR_COMPOSITOR_INCOMPATIBLE, LIBDECOR_ERROR_COMPOSITOR_INCOMPATIBLE,
err_msg); "%s version 3 required but only version %i is available\n",
free(err_msg); wl_seat_interface.name,
version);
} }
seat = zalloc(sizeof *seat); seat = zalloc(sizeof *seat);
@ -2640,15 +2637,12 @@ init_wl_output(struct libdecor_plugin_gtk *plugin_gtk,
struct output *output; struct output *output;
if (version < 2) { if (version < 2) {
char *err_msg;
asprintf(&err_msg,
"%s version 2 required but only version %i is available\n",
wl_output_interface.name, version);
libdecor_notify_plugin_error( libdecor_notify_plugin_error(
plugin_gtk->context, plugin_gtk->context,
LIBDECOR_ERROR_COMPOSITOR_INCOMPATIBLE, LIBDECOR_ERROR_COMPOSITOR_INCOMPATIBLE,
err_msg); "%s version 2 required but only version %i is available\n",
free(err_msg); wl_output_interface.name,
version);
} }
output = zalloc(sizeof *output); output = zalloc(sizeof *output);
@ -2814,6 +2808,8 @@ libdecor_plugin_new(struct libdecor *context)
/* setup GTK context */ /* setup GTK context */
gdk_set_allowed_backends("wayland"); gdk_set_allowed_backends("wayland");
gtk_disable_setlocale();
if (!gtk_init_check(NULL, NULL)) { if (!gtk_init_check(NULL, NULL)) {
libdecor_notify_plugin_error( libdecor_notify_plugin_error(
plugin_gtk->context, plugin_gtk->context,