changeset 1605:ce3ce44d6814 trunk

[svn] - filepopup follows change of pointed song, i.e. it will hide while scrolling.
author yaz
date Mon, 28 Aug 2006 08:51:36 -0700
parents 1423ab8e5cbc
children 7ea3c9610ca0
files ChangeLog audacious/ui_fileinfo.c
diffstat 2 files changed, 22 insertions(+), 8 deletions(-) [+]
line wrap: on
line diff
--- a/ChangeLog	Sun Aug 27 09:04:05 2006 -0700
+++ b/ChangeLog	Mon Aug 28 08:51:36 2006 -0700
@@ -1,3 +1,11 @@
+2006-08-27 16:04:05 +0000  Tony Vroon <chainsaw@gentoo.org>
+  revision [2139]
+  Fix up the warning fixes; by Torbj?\195?\182rn Svensson (a.k.a. Azoff on #audacious).
+
+  Changes:        Modified:
+  +4 -4           trunk/Plugins/Visualization/paranormal/pn/pnscript.c  
+
+
 2006-08-27 14:39:25 +0000  William Pitcock <nenolod@nenolod.net>
   revision [2137]
   - version update
--- a/audacious/ui_fileinfo.c	Sun Aug 27 09:04:05 2006 -0700
+++ b/audacious/ui_fileinfo.c	Mon Aug 28 08:51:36 2006 -0700
@@ -175,14 +175,22 @@
 {
 	gint x, y, pos;
 	TitleInput *tuple;
-	static gint prev_x = 0, prev_y = 0, ctr = 0;
+	static gint prev_x = 0, prev_y = 0, ctr = 0, prev_pos = -1;
 	gboolean skip = FALSE;
+	GdkWindow *win;
+
+	win = gdk_window_at_pointer(NULL, NULL);
+	gdk_window_get_pointer(GDK_WINDOW(playlistwin->window), &x, &y, NULL);
+	pos = playlist_list_get_playlist_position(playlistwin_list, x, y);
 
-	if (!cfg.show_filepopup_for_tuple || playlistwin_is_shaded()
+	if (win == NULL
+		|| cfg.show_filepopup_for_tuple == FALSE
 		|| playlistwin_list->pl_tooltips == FALSE
-		|| gdk_window_at_pointer(NULL, NULL) != GDK_WINDOW(playlistwin->window)
-		|| gdk_window_at_pointer(NULL, NULL) == NULL)
+		|| pos != prev_pos
+		|| win != GDK_WINDOW(playlistwin->window)
+		|| playlistwin_is_shaded())
 	{
+		prev_pos = pos;
 		ctr = 0;
                 if ( filepopup_win->window != NULL &&
                      gdk_window_is_viewable(GDK_WINDOW(filepopup_win->window)) )
@@ -190,8 +198,6 @@
 		return TRUE;
 	}
 
-	gdk_window_get_pointer(playlistwin->window, &x, &y, NULL);
-
 	if (prev_x == x && prev_y == y)
 		ctr++;
 	else
@@ -208,14 +214,14 @@
 
         if (ctr >= 20 && (skip == TRUE || gdk_window_is_viewable(GDK_WINDOW(filepopup_win->window)) != TRUE))
         {
-		pos = playlist_list_get_playlist_position(playlistwin_list, x, y);
-
 		if (pos == -1)
   		{
 			filepopup_hide(NULL);
 			return TRUE;
 	    	}
 
+		prev_pos = pos;
+
 		tuple = playlist_get_tuple(pos);
 		filepopup_show_for_tuple(tuple);
 	}