mirror of https://github.com/daleclack/My_GtkUi
Tag window ctrl func for poor wayland support
This commit is contained in:
parent
55d00c990a
commit
081f35350c
|
@ -66,6 +66,7 @@ void hide_launchpad(MyDock *dock)
|
||||||
dock->current_page = MainPage;
|
dock->current_page = MainPage;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
static void btnlaunch_clicked(GtkWidget *widget, MyDock *dock)
|
static void btnlaunch_clicked(GtkWidget *widget, MyDock *dock)
|
||||||
{
|
{
|
||||||
// Check is launchpad page is shown and switch pages
|
// Check is launchpad page is shown and switch pages
|
||||||
|
@ -93,7 +94,7 @@ static void pressed(GtkGesture *gesture, int n_press,
|
||||||
gtk_popover_popup(GTK_POPOVER(dock->context_menu));
|
gtk_popover_popup(GTK_POPOVER(dock->context_menu));
|
||||||
}
|
}
|
||||||
|
|
||||||
// Window control func
|
// Window control func, X11/Windows Only!
|
||||||
static void window_ctrl(GtkWindow *window, GtkWindow *parent)
|
static void window_ctrl(GtkWindow *window, GtkWindow *parent)
|
||||||
{
|
{
|
||||||
// Get GdkSurface for window state
|
// Get GdkSurface for window state
|
||||||
|
@ -101,14 +102,18 @@ static void window_ctrl(GtkWindow *window, GtkWindow *parent)
|
||||||
if (surface)
|
if (surface)
|
||||||
{
|
{
|
||||||
// The state will available when the window open
|
// The state will available when the window open
|
||||||
unsigned short state = gdk_toplevel_get_state(GDK_TOPLEVEL(surface));
|
unsigned state = gdk_toplevel_get_state(GDK_TOPLEVEL(surface));
|
||||||
switch (state)
|
switch (state)
|
||||||
{
|
{
|
||||||
// Minimized
|
// Minimized
|
||||||
case GDK_TOPLEVEL_STATE_MINIMIZED:
|
case GDK_TOPLEVEL_STATE_MINIMIZED:
|
||||||
|
// g_print("Try to unminimize window");
|
||||||
gtk_window_set_transient_for(window, parent);
|
gtk_window_set_transient_for(window, parent);
|
||||||
gtk_window_unminimize(window);
|
gtk_window_unminimize(window);
|
||||||
|
#ifdef _WIN32
|
||||||
|
// Fix for Microsoft Windows
|
||||||
gtk_window_present(window);
|
gtk_window_present(window);
|
||||||
|
#endif
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
// The controlled window is on dock
|
// The controlled window is on dock
|
||||||
|
|
Loading…
Reference in New Issue