libdecor: update with upstream source code as of 2023-jun-6

This commit is contained in:
ManoloFLTK 2023-06-13 07:42:44 +02:00
parent c606914164
commit 3166416e4c
2 changed files with 12 additions and 6 deletions

View File

@ -23,14 +23,14 @@ The nanosvg library is not affected.
\section bundled-status Current status
\code
Current versions of bundled libraries (as of June 7, 2023):
Current versions of bundled libraries (as of June 13, 2023):
Library Version/git commit Release date FLTK Version
--------------------------------------------------------------------------
jpeg jpeg-9e 2022-01-16 1.4.0
nanosvg abcd277ea4 [1] 2022-12-22 1.4.0
png libpng-1.6.39 2022-11-20 1.4.0
zlib zlib-1.2.13 2022-10-13 1.4.0
libdecor 6ca6dac9 [2] 2023-05-26 1.4.0
libdecor 73260393 [2] 2023-06-06 1.4.0
--------------------------------------------------------------------------
Previous versions of bundled libraries (FLTK 1.3.x):

View File

@ -663,8 +663,10 @@ libdecor_plugin_gtk_frame_free(struct libdecor_plugin *plugin,
/* when in SSD mode, frame_gtk->header is not a proper GTK widget */
if (!GTK_IS_WIDGET(frame_gtk->header)) return;
gtk_widget_destroy(frame_gtk->header);
frame_gtk->header = NULL;
if (!GTK_IS_WIDGET(frame_gtk->window)) return;
gtk_widget_destroy(frame_gtk->window);
frame_gtk->window = NULL;
free_border_component(&frame_gtk->headerbar);
free_border_component(&frame_gtk->shadow);
@ -675,6 +677,7 @@ libdecor_plugin_gtk_frame_free(struct libdecor_plugin *plugin,
}
free(frame_gtk->title);
frame_gtk->title = NULL;
frame_gtk->decoration_type = DECORATION_TYPE_NONE;
@ -889,11 +892,15 @@ ensure_title_bar_surfaces(struct libdecor_frame_gtk *frame_gtk)
* after construction. So we just destroy and re-create them.
*/
/* avoid warning when restoring previously turned off decoration */
if (GTK_IS_WIDGET(frame_gtk->header))
if (GTK_IS_WIDGET(frame_gtk->header)) {
gtk_widget_destroy(frame_gtk->header);
frame_gtk->header = NULL;
}
/* avoid warning when restoring previously turned off decoration */
if (GTK_IS_WIDGET(frame_gtk->window))
if (GTK_IS_WIDGET(frame_gtk->window)) {
gtk_widget_destroy(frame_gtk->window);
frame_gtk->window = NULL;
}
frame_gtk->window = gtk_offscreen_window_new();
frame_gtk->header = gtk_header_bar_new();
@ -1530,10 +1537,9 @@ libdecor_plugin_gtk_frame_property_changed(struct libdecor_plugin *plugin,
if (!streq(frame_gtk->title, new_title))
redraw_needed = true;
free(frame_gtk->title);
frame_gtk->title = NULL;
if (new_title)
frame_gtk->title = strdup(new_title);
else
frame_gtk->title = NULL;
if (frame_gtk->capabilities != libdecor_frame_get_capabilities(frame)) {
frame_gtk->capabilities = libdecor_frame_get_capabilities(frame);