diff --git a/source/libublsettings-gtk3-misc.c b/source/libublsettings-gtk3-misc.c index 24160c7..8cf752f 100644 --- a/source/libublsettings-gtk3-misc.c +++ b/source/libublsettings-gtk3-misc.c @@ -344,7 +344,9 @@ struct revealer_wrapper { }; gboolean _yon_on_revealer_hidden(struct revealer_wrapper *wrapped){ - gtk_window_resize + int width; + gtk_window_get_size(GTK_WINDOW(wrapped->window),&width,NULL); + gtk_window_resize(GTK_WINDOW(wrapped->window),width,wrapped->height); } gboolean _yon_on_revealer_switched(struct revealer_wrapper *wrapped){ @@ -353,11 +355,11 @@ gboolean _yon_on_revealer_switched(struct revealer_wrapper *wrapped){ } } -yon_gtk_window_set_shrinking_from_revealer_resizing(GtkWindow *window, GtkRevealer *revealer){ +void yon_gtk_window_set_shrinking_from_revealer_resizing(GtkWindow *window, GtkRevealer *revealer){ int height=0; gtk_window_get_size(window, NULL, &height); struct revealer_wrapper *wrapped = malloc(sizeof(struct revealer_wrapper)); - wrapped->revealer=revealer; + wrapped->revealer=GTK_WIDGET(revealer); wrapped->height=height; wrapped->window=gtk_widget_get_toplevel(GTK_WIDGET(revealer)); g_signal_connect(G_OBJECT(wrapped->revealer),"notify::reveal-child",G_CALLBACK(_yon_on_revealer_switched),wrapped); diff --git a/source/libublsettings-gtk3.h b/source/libublsettings-gtk3.h index 8346806..a78b872 100644 --- a/source/libublsettings-gtk3.h +++ b/source/libublsettings-gtk3.h @@ -521,4 +521,6 @@ int yon_calendar_get_last_date(); config_str yon_resource_open_file(const char *path, int *size); -void yon_gtk_revealer_set_from_switch(GtkRevealer *revealer, GtkSwitch *target); \ No newline at end of file +void yon_gtk_revealer_set_from_switch(GtkRevealer *revealer, GtkSwitch *target); + +void yon_gtk_window_set_shrinking_from_revealer_resizing(GtkWindow *window, GtkRevealer *revealer); \ No newline at end of file