mirror of
https://github.com/transmission/transmission
synced 2025-02-04 21:43:03 +00:00
(gtk) #661: Window position is not restored when unhiding from the systray
This commit is contained in:
parent
0f981db778
commit
c58e905d11
1 changed files with 20 additions and 5 deletions
25
gtk/main.c
25
gtk/main.c
|
@ -914,6 +914,25 @@ msgwinclosed()
|
||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
toggleMainWindow( struct cbdata * data )
|
||||||
|
{
|
||||||
|
static int x=0, y=0;
|
||||||
|
GtkWidget * w = GTK_WIDGET( data->wind );
|
||||||
|
GtkWindow * window = GTK_WINDOW( w );
|
||||||
|
|
||||||
|
if( GTK_WIDGET_VISIBLE( w ) )
|
||||||
|
{
|
||||||
|
gtk_window_get_position( window, &x, &y );
|
||||||
|
gtk_widget_hide( w );
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
gtk_window_move( window, x, y );
|
||||||
|
gtk_window_present( window );
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
doAction ( const char * action_name, gpointer user_data )
|
doAction ( const char * action_name, gpointer user_data )
|
||||||
{
|
{
|
||||||
|
@ -1033,11 +1052,7 @@ doAction ( const char * action_name, gpointer user_data )
|
||||||
}
|
}
|
||||||
else if (!strcmp (action_name, "toggle-main-window"))
|
else if (!strcmp (action_name, "toggle-main-window"))
|
||||||
{
|
{
|
||||||
GtkWidget * w = GTK_WIDGET (data->wind);
|
toggleMainWindow( data );
|
||||||
if (GTK_WIDGET_VISIBLE(w))
|
|
||||||
gtk_widget_hide (w);
|
|
||||||
else
|
|
||||||
gtk_window_present (GTK_WINDOW(w));
|
|
||||||
}
|
}
|
||||||
else g_error ("Unhandled action: %s", action_name );
|
else g_error ("Unhandled action: %s", action_name );
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue