diff options
author | Guillaume Desmottes <guillaume.desmottes@collabora.co.uk> | 2010-09-22 21:33:59 +0800 |
---|---|---|
committer | Guillaume Desmottes <guillaume.desmottes@collabora.co.uk> | 2010-09-29 18:52:10 +0800 |
commit | e3ec7ef3fac49d470573eed6f31fd2e39ab72c40 (patch) | |
tree | 7bb263a891167bae0d751304eb5c4539b214e1a9 /src/empathy-chat-window.c | |
parent | 87a039507241c49c2cf6aeaf288c90a72c7119e3 (diff) | |
download | gsoc2013-empathy-e3ec7ef3fac49d470573eed6f31fd2e39ab72c40.tar gsoc2013-empathy-e3ec7ef3fac49d470573eed6f31fd2e39ab72c40.tar.gz gsoc2013-empathy-e3ec7ef3fac49d470573eed6f31fd2e39ab72c40.tar.bz2 gsoc2013-empathy-e3ec7ef3fac49d470573eed6f31fd2e39ab72c40.tar.lz gsoc2013-empathy-e3ec7ef3fac49d470573eed6f31fd2e39ab72c40.tar.xz gsoc2013-empathy-e3ec7ef3fac49d470573eed6f31fd2e39ab72c40.tar.zst gsoc2013-empathy-e3ec7ef3fac49d470573eed6f31fd2e39ab72c40.zip |
Avoid to completely hide the last saved window when creating a new one
Diffstat (limited to 'src/empathy-chat-window.c')
-rw-r--r-- | src/empathy-chat-window.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/empathy-chat-window.c b/src/empathy-chat-window.c index 346c23a85..66c4e965f 100644 --- a/src/empathy-chat-window.c +++ b/src/empathy-chat-window.c @@ -2192,11 +2192,21 @@ empathy_chat_window_add_chat (EmpathyChatWindow *window, name = "room-window"; if (separate_windows) { + gint x, y; + + /* Save current position of the window */ + gtk_window_get_position (GTK_WINDOW (priv->dialog), &x, &y); + /* First bind to the 'generic' name. So new window for which we didn't * save a geometry yet will have the geometry of the last saved * window (bgo #601191). */ empathy_geometry_bind (GTK_WINDOW (priv->dialog), name); + /* Restore previous position of the window so the newly created window + * won't be in the same position as the latest saved window and so + * completely hide it. */ + gtk_window_move (GTK_WINDOW (priv->dialog), x, y); + /* Then bind it to the name of the contact/room so we'll save the * geometry specific to this window */ name = empathy_chat_get_id (chat); |