diff options
author | Xavier Claessens <xclaesse@gmail.com> | 2009-11-23 23:30:26 +0800 |
---|---|---|
committer | Xavier Claessens <xclaesse@gmail.com> | 2009-11-24 00:04:29 +0800 |
commit | 496598a1d17599b809d981c5c3016f90eec15376 (patch) | |
tree | e34e8097e6b253f032a9be890b10cdc08c818073 | |
parent | 5a09311ed6bc01870413327addfd0337d7296a7e (diff) | |
download | gsoc2013-empathy-496598a1d17599b809d981c5c3016f90eec15376.tar gsoc2013-empathy-496598a1d17599b809d981c5c3016f90eec15376.tar.gz gsoc2013-empathy-496598a1d17599b809d981c5c3016f90eec15376.tar.bz2 gsoc2013-empathy-496598a1d17599b809d981c5c3016f90eec15376.tar.lz gsoc2013-empathy-496598a1d17599b809d981c5c3016f90eec15376.tar.xz gsoc2013-empathy-496598a1d17599b809d981c5c3016f90eec15376.tar.zst gsoc2013-empathy-496598a1d17599b809d981c5c3016f90eec15376.zip |
Create EMPATHY_RECT_IS_ON_SCREEN macro instead of duplicating its code.
-rw-r--r-- | libempathy-gtk/empathy-geometry.c | 5 | ||||
-rw-r--r-- | libempathy-gtk/empathy-ui-utils.c | 4 | ||||
-rw-r--r-- | libempathy-gtk/empathy-ui-utils.h | 5 |
3 files changed, 8 insertions, 6 deletions
diff --git a/libempathy-gtk/empathy-geometry.c b/libempathy-gtk/empathy-geometry.c index b807425ea..abf50d623 100644 --- a/libempathy-gtk/empathy-geometry.c +++ b/libempathy-gtk/empathy-geometry.c @@ -30,6 +30,7 @@ #include "libempathy/empathy-utils.h" #include "empathy-geometry.h" +#include "empathy-ui-utils.h" #define DEBUG_FLAG EMPATHY_DEBUG_OTHER #include <libempathy/empathy-debug.h> @@ -147,9 +148,7 @@ empathy_geometry_save (GtkWindow *window, maximized = (window_state & GDK_WINDOW_STATE_MAXIMIZED) != 0; /* Don't save off-screen positioning */ - if (x + w < 0 || y + h < 0 || - x > gdk_screen_width () || - y > gdk_screen_height ()) + if (!EMPATHY_RECT_IS_ON_SCREEN (x, y, w, h)) return; key_file = geometry_get_key_file (); diff --git a/libempathy-gtk/empathy-ui-utils.c b/libempathy-gtk/empathy-ui-utils.c index be6aaa249..9ba01738d 100644 --- a/libempathy-gtk/empathy-ui-utils.c +++ b/libempathy-gtk/empathy-ui-utils.c @@ -1313,9 +1313,7 @@ empathy_window_present (GtkWindow *window, * reposition on the current workspace. */ gtk_window_get_position (window, &x, &y); gtk_window_get_size (window, &w, &h); - if (x + w < 0 || y + h < 0 || - x > gdk_screen_width () || - y > gdk_screen_height ()) + if (!EMPATHY_RECT_IS_ON_SCREEN (x, y, w, h)) gtk_widget_hide (GTK_WIDGET (window)); } diff --git a/libempathy-gtk/empathy-ui-utils.h b/libempathy-gtk/empathy-ui-utils.h index 486301cb1..7bec0884e 100644 --- a/libempathy-gtk/empathy-ui-utils.h +++ b/libempathy-gtk/empathy-ui-utils.h @@ -41,6 +41,11 @@ G_BEGIN_DECLS +#define EMPATHY_RECT_IS_ON_SCREEN(x,y,w,h) ((x) + (w) > 0 && \ + (y) + (h) > 0 && \ + (x) < gdk_screen_width () && \ + (y) < gdk_screen_height ()) + void empathy_gtk_init (void); GRegex * empathy_uri_regex_dup_singleton (void); |