Revision 1511452027c82ac0e90e815c6968a48c2a4cb697

wabz at pidgin.im wabz at pidgin.im
Mon Mar 26 20:52:37 EDT 2007


o     -----------------------------------------------------------------
|\    Revision: 1511452027c82ac0e90e815c6968a48c2a4cb697
| |   Ancestor: 3373e976438182796e93bab7ded908eba4db04ed
| |   Ancestor: e8a93071ea487cda30c11aee38b1763a8fccaceb
| |   Author: wabz at pidgin.im
| |   Date: 2007-03-27T00:46:44
| |   Branch: im.pidgin.pidgin
| |   
| |   Modified files:
| |           config.h.mingw finch/gntrequest.c finch/libgnt/gntfilesel.c
| |           finch/libgnt/gntfilesel.h libpurple/win32/libpurplerc.rc.in
| |           pidgin/gtkaccount.c pidgin/gtkstatusbox.c
| |           pidgin/pixmaps/Makefile.mingw
| |           pidgin/win32/nsis/pidgin-installer.nsi
| |           pidgin/win32/pidgin_exe_rc.rc.in
| |   
| |   ChangeLog: 
| |   
| |   merge of '3373e976438182796e93bab7ded908eba4db04ed'
| |        and 'e8a93071ea487cda30c11aee38b1763a8fccaceb'
| |   
| |   ============================================================
| |   --- config.h.mingw	61620e56a47fd744f392c5b3f3139b8f69a7076f
| |   +++ config.h.mingw	bbf5783dbfa3205f732209b0bbc051fee6eead53
| |   @@ -26,10 +26,10 @@
| |    #define ENABLE_NLS 1
| |    
| |    /* Define to make assertions fatal (useful for debugging). */
| |   -/* #undef GAIM_FATAL_ASSERTS */
| |   +/* #undef PURPLE_FATAL_ASSERTS */
| |    
| |    /* Define if plugins are enabled. */
| |   -#define GAIM_PLUGINS 1
| |   +#define PURPLE_PLUGINS 1
| |    
| |    /* Define to 1 if you have `alloca', as a function or macro. */
| |    #define HAVE_ALLOCA 1
| |   @@ -523,7 +523,7 @@
| |    #define PACKAGE "pidgin"
| |    
| |    /* Define to the address where bug reports for this package should be sent. */
| |   -#define PACKAGE_BUGREPORT "gaim-devel at lists.sourceforge.net"
| |   +#define PACKAGE_BUGREPORT "devel at pidgin.im"
| |    
| |    /* Define to the full name of this package. */
| |    #define PACKAGE_NAME "pidgin"
| |   ============================================================
| |   --- libpurple/win32/libpurplerc.rc.in	92587b090e2414b6169f22402d474af0957a74f6
| |   +++ libpurple/win32/libpurplerc.rc.in	2722fd5e2cbd6ea896f6de4c7315de5c8260bde0
| |   @@ -16,12 +16,12 @@ VS_VERSION_INFO VERSIONINFO
| |          BEGIN
| |            VALUE "CompanyName", "The Pidgin developer community"
| |            VALUE "FileDescription", "LibPurple Library"
| |   -        VALUE "FileVersion", "@PIDGIN_VERSION@"
| |   +        VALUE "FileVersion", "@PURPLE_VERSION@"
| |            VALUE "InternalName", "libpurple"
| |            VALUE "LegalCopyright", "Copyright (C) 1998-2007 The Pidgin developer community (See the COPYRIGHT file in the source distribution)."
| |            VALUE "OriginalFilename", "libpurple.dll"
| |            VALUE "ProductName", "LibPurple"
| |   -        VALUE "ProductVersion", "@PIDGIN_VERSION@"
| |   +        VALUE "ProductVersion", "@PURPLE_VERSION@"
| |          END
| |        END
| |        BLOCK "VarFileInfo"
| |   ============================================================
| |   --- pidgin/gtkaccount.c	bdb24023b99d8272e097190f59660d1dd00a08fa
| |   +++ pidgin/gtkaccount.c	d47c35929d6d8af01095c6f6dc0bc0c52da584ae
| |   @@ -231,7 +231,7 @@ set_dialog_icon(AccountPrefsDialog *dial
| |    		/* Show a placeholder icon */
| |    		gchar *filename;
| |    		filename = g_build_filename(DATADIR, "pixmaps",
| |   -				"purple", "insert-image.png", NULL);
| |   +				"pidgin", "insert-image.png", NULL);
| |    		pixbuf = gdk_pixbuf_new_from_file(filename, NULL);
| |    		g_free(filename);
| |    	}
| |   @@ -629,7 +629,7 @@ add_user_options(AccountPrefsDialog *dia
| |    		set_dialog_icon(dialog,
| |    				g_strdup(purple_account_get_ui_string(dialog->account,
| |    						PIDGIN_UI, "non-global-buddyicon-cached-path", NULL)),
| |   -				g_strdup(purple_account_get_ui_string(dialog->account, 
| |   +				g_strdup(purple_account_get_ui_string(dialog->account,
| |    						PIDGIN_UI, "non-global-buddyicon-path", NULL)));
| |    	} else {
| |    		set_dialog_icon(dialog, NULL, NULL);
| |   @@ -2142,12 +2142,12 @@ create_accounts_list(AccountsWindow *dia
| |    	/* Translators: Please maintain the use of -> or <- to represent the menu heirarchy */
| |    	pretty = pidgin_make_pretty_arrows(_(
| |    						 "<span size='larger' weight='bold'>Welcome to " PIDGIN_NAME "!</span>\n\n"
| |   -						 
| |   +
| |    						 "You have no IM accounts configured. To start connecting with " PIDGIN_NAME " "
| |    						 "press the <b>Add</b> button below and configure your first "
| |    						 "account. If you want " PIDGIN_NAME " to connect to multiple IM accounts, "
| |    						 "press <b>Add</b> again to configure them all.\n\n"
| |   -						 
| |   +
| |    						 "You can come back to this window to add, edit, or remove "
| |    						 "accounts from <b>Accounts->Add/Edit</b> in the Buddy "
| |    						 "List window"));
| |   @@ -2439,7 +2439,7 @@ pidgin_accounts_request_add(PurpleAccoun
| |    
| |    	buffer = make_info(account, gc, remote_user, id, alias, msg);
| |    	alert = pidgin_make_mini_dialog(gc, PIDGIN_STOCK_DIALOG_QUESTION,
| |   -					  _("Add buddy to your list?"), buffer, data, 
| |   +					  _("Add buddy to your list?"), buffer, data,
| |    					  _("Add"), G_CALLBACK(add_user_cb),
| |    					  _("Cancel"), G_CALLBACK(free_add_user_data), NULL);
| |    	pidgin_blist_add_alert(alert);
| |   @@ -2515,27 +2515,27 @@ pidgin_accounts_request_authorization(Pu
| |    		aa->account = account;
| |    		alert = pidgin_make_mini_dialog(gc, PIDGIN_STOCK_DIALOG_QUESTION,
| |    						  _("Authorize buddy?"), buffer, aa,
| |   -						  _("Authorize"), authorize_and_add_cb, 
| |   -						  _("Deny"), deny_no_add_cb, 
| |   +						  _("Authorize"), authorize_and_add_cb,
| |   +						  _("Deny"), deny_no_add_cb,
| |    						  NULL);
| |    	} else {
| |    		alert = pidgin_make_mini_dialog(gc, PIDGIN_STOCK_DIALOG_QUESTION,
| |    						  _("Authorize buddy?"), buffer, user_data,
| |   -						  _("Authorize"), auth_cb, 
| |   -						  _("Deny"), deny_cb, 
| |   +						  _("Authorize"), auth_cb,
| |   +						  _("Deny"), deny_cb,
| |    						  NULL);
| |    	}
| |    	pidgin_blist_add_alert(alert);
| |    
| |    	g_free(buffer);
| |   -	
| |   +
| |    	return NULL;
| |    }
| |    
| |    static void
| |    pidgin_accounts_request_close(void *ui_handle)
| |    {
| |   -	
| |   +
| |    }
| |    
| |    static PurpleAccountUiOps ui_ops =
| |   ============================================================
| |   --- pidgin/gtkstatusbox.c	b4b98fcf684e8038f096a2c08cd68bef2b99e802
| |   +++ pidgin/gtkstatusbox.c	a9b80274b1dcbead4b2e319112a537932a581c0b
| |   @@ -279,7 +279,7 @@ icon_box_dnd_cb(GtkWidget *widget, GdkDr
| |    		if (!g_ascii_strncasecmp(name, "file://", 7)) {
| |    			GError *converr = NULL;
| |    			gchar *tmp, *rtmp;
| |   -		
| |   +
| |    			if(!(tmp = g_filename_from_uri(name, NULL, &converr))) {
| |    				purple_debug(PURPLE_DEBUG_ERROR, "buddyicon", "%s\n",
| |    					   (converr ? converr->message :
| |   @@ -559,7 +559,7 @@ pidgin_status_box_refresh(PidginStatusBo
| |    	PurpleAccount *acct = (status_box->token_status_account) ? status_box->token_status_account : status_box->account;
| |    
| |    	icon_size = gtk_icon_size_from_name(PIDGIN_ICON_SIZE_TANGO_EXTRA_SMALL);
| |   -	
| |   +
| |    	style = gtk_widget_get_style(GTK_WIDGET(status_box));
| |    	snprintf(aa_color, sizeof(aa_color), "#%02x%02x%02x",
| |    		 style->text_aa[GTK_STATE_NORMAL].red >> 8,
| |   @@ -584,7 +584,7 @@ pidgin_status_box_refresh(PidginStatusBo
| |    		if (!gtk_tree_model_get_iter (GTK_TREE_MODEL(status_box->dropdown_store), &iter, path))
| |    			return;
| |    		gtk_tree_path_free(path);
| |   -		
| |   +
| |    		gtk_tree_model_get(GTK_TREE_MODEL(status_box->dropdown_store), &iter,
| |    						   TYPE_COLUMN, &type,
| |    						   DATA_COLUMN, &data,
| |   @@ -688,7 +688,7 @@ pidgin_status_box_refresh(PidginStatusBo
| |    			}
| |    		}
| |    #endif
| |   -		
| |   +
| |    	}
| |    
| |    	if (status_box->account != NULL) {
| |   @@ -824,7 +824,7 @@ status_menu_refresh_iter(PidginStatusBox
| |    						break;
| |    					}
| |    					g_free(name);
| |   -				
| |   +
| |    				} else if ((type == PIDGIN_STATUS_BOX_TYPE_POPULAR) &&
| |    						(GPOINTER_TO_INT(data) == purple_savedstatus_get_creation_time(saved_status)))
| |    				{
| |   @@ -1186,7 +1186,7 @@ cache_pixbufs(PidginStatusBox *status_bo
| |    cache_pixbufs(PidginStatusBox *status_box)
| |    {
| |    	GtkIconSize icon_size;
| |   -	
| |   +
| |    	g_object_set(G_OBJECT(status_box->icon_rend), "xpad", 3, NULL);
| |    	icon_size = gtk_icon_size_from_name(PIDGIN_ICON_SIZE_TANGO_EXTRA_SMALL);
| |    
| |   @@ -1311,14 +1311,14 @@ pidgin_status_box_list_position (PidginS
| |    #endif
| |      GtkRequisition popup_req;
| |      GtkPolicyType hpolicy, vpolicy;
| |   -  
| |   +
| |      gdk_window_get_origin (GTK_WIDGET(status_box)->window, x, y);
| |    
| |      *x += GTK_WIDGET(status_box)->allocation.x;
| |      *y += GTK_WIDGET(status_box)->allocation.y;
| |   - 
| |   +
| |      *width = GTK_WIDGET(status_box)->allocation.width;
| |   -  
| |   +
| |      hpolicy = vpolicy = GTK_POLICY_NEVER;
| |      gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (status_box->scrolled_window),
| |    				  hpolicy, vpolicy);
| |   @@ -1336,7 +1336,7 @@ pidgin_status_box_list_position (PidginS
| |    
| |    #if GTK_CHECK_VERSION(2,2,0)
| |      screen = gtk_widget_get_screen (GTK_WIDGET (status_box));
| |   -  monitor_num = gdk_screen_get_monitor_at_window (screen, 
| |   +  monitor_num = gdk_screen_get_monitor_at_window (screen,
| |    						  GTK_WIDGET (status_box)->window);
| |      gdk_screen_get_monitor_geometry (screen, monitor_num, &monitor);
| |    
| |   @@ -1344,7 +1344,7 @@ pidgin_status_box_list_position (PidginS
| |        *x = monitor.x;
| |      else if (*x + *width > monitor.x + monitor.width)
| |        *x = monitor.x + monitor.width - *width;
| |   -  
| |   +
| |      if (*y + GTK_WIDGET(status_box)->allocation.height + *height <= monitor.y + monitor.height)
| |    	  *y += GTK_WIDGET(status_box)->allocation.height;
| |      else if (*y - *height >= monitor.y)
| |   @@ -1354,7 +1354,7 @@ pidgin_status_box_list_position (PidginS
| |    	    *y += GTK_WIDGET(status_box)->allocation.height;
| |    	    *height = monitor.y + monitor.height - *y;
| |        }
| |   -  else 
| |   +  else
| |        {
| |    	    *height = *y - monitor.y;
| |    	    *y = monitor.y;
| |   @@ -1363,7 +1363,7 @@ pidgin_status_box_list_position (PidginS
| |      if (popup_req.height > *height)
| |        {
| |          vpolicy = GTK_POLICY_ALWAYS;
| |   -      
| |   +
| |          gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (status_box->scrolled_window),
| |    				      hpolicy, vpolicy);
| |        }
| |   @@ -1406,8 +1406,8 @@ pidgin_status_box_popup(PidginStatusBox 
| |    {
| |    	int width, height, x, y;
| |    	pidgin_status_box_list_position (box, &x, &y, &width, &height);
| |   -  
| |   -	gtk_widget_set_size_request (box->popup_window, width, height);  
| |   +
| |   +	gtk_widget_set_size_request (box->popup_window, width, height);
| |    	gtk_window_move (GTK_WINDOW (box->popup_window), x, y);
| |    	gtk_widget_show(box->popup_window);
| |    	gtk_widget_grab_focus (box->tree_view);
| |   @@ -1442,7 +1442,7 @@ toggled_cb(GtkWidget *widget, PidginStat
| |    toggled_cb(GtkWidget *widget, PidginStatusBox *box)
| |    {
| |    	if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (widget)))  {
| |   -		if (!box->popup_in_progress) 
| |   +		if (!box->popup_in_progress)
| |    			pidgin_status_box_popup (box);
| |    	}  else {
| |    		pidgin_status_box_popdown(box);
| |   @@ -1531,38 +1531,38 @@ treeview_activate_current_selection(Pidg
| |    {
| |    	if (status_box->active_row)
| |    		gtk_tree_row_reference_free(status_box->active_row);
| |   -	
| |   +
| |    	status_box->active_row = gtk_tree_row_reference_new(GTK_TREE_MODEL(status_box->dropdown_store), path);
| |   -	
| |   +
| |    	pidgin_status_box_popdown (status_box);
| |    	pidgin_status_box_changed(status_box);
| |    }
| |    
| |   -static gboolean 
| |   -treeview_button_release_cb(GtkWidget *widget, GdkEventButton *event, PidginStatusBox *status_box) 
| |   +static gboolean
| |   +treeview_button_release_cb(GtkWidget *widget, GdkEventButton *event, PidginStatusBox *status_box)
| |    {
| |    	GtkTreePath *path = NULL;
| |    	int ret;
| |    	GtkWidget *ewidget = gtk_get_event_widget ((GdkEvent *)event);
| |   -	
| |   +
| |    	if (ewidget != status_box->tree_view) {
| |   -		if (ewidget == status_box->toggle_button && 
| |   +		if (ewidget == status_box->toggle_button &&
| |    		    status_box->popup_in_progress &&
| |    		    gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (status_box->toggle_button))) {
| |    			pidgin_status_box_popdown (status_box);
| |    			return TRUE;
| |    		}
| |   -		
| |   +
| |    		/* released outside treeview */
| |   -		if (ewidget != status_box->toggle_button) 
| |   +		if (ewidget != status_box->toggle_button)
| |    			{
| |    				pidgin_status_box_popdown (status_box);
| |    				return TRUE;
| |    			}
| |   -		
| |   +
| |    		return FALSE;
| |    	}
| |   -	
| |   +
| |    	ret = gtk_tree_view_get_path_at_pos (GTK_TREE_VIEW (status_box->tree_view),
| |    					     event->x, event->y,
| |    					     &path,
| |   @@ -1570,7 +1570,7 @@ treeview_button_release_cb(GtkWidget *wi
| |    
| |    	if (!ret)
| |    		return TRUE; /* clicked outside window? */
| |   -	
| |   +
| |    	treeview_activate_current_selection(status_box, path);
| |    	gtk_tree_path_free (path);
| |    
| |   @@ -1620,7 +1620,7 @@ pidgin_status_box_init (PidginStatusBox 
| |    	status_box->cell_view = gtk_cell_view_new();
| |    	status_box->vsep = gtk_vseparator_new();
| |    	status_box->arrow = gtk_arrow_new (GTK_ARROW_DOWN, GTK_SHADOW_NONE);
| |   -	
| |   +
| |    	status_box->store = gtk_list_store_new(NUM_COLUMNS, G_TYPE_INT, GDK_TYPE_PIXBUF, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_POINTER);
| |    	status_box->dropdown_store = gtk_list_store_new(NUM_COLUMNS, G_TYPE_INT, GDK_TYPE_PIXBUF, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_POINTER);
| |    ;
| |   @@ -1696,7 +1696,7 @@ pidgin_status_box_init (PidginStatusBox 
| |    	gtk_tree_view_set_search_column(GTK_TREE_VIEW(status_box->tree_view), TEXT_COLUMN);
| |    	gtk_tree_view_set_search_equal_func(GTK_TREE_VIEW(status_box->tree_view),
| |    				pidgin_tree_view_search_equal_func, NULL, NULL);
| |   -	  
| |   +
| |    #if GTK_CHECK_VERSION(2, 6, 0)
| |    	g_object_set(text_rend, "ellipsize", PANGO_ELLIPSIZE_END, NULL);
| |    #endif
| |   @@ -1907,7 +1907,7 @@ pidgin_status_box_expose_event(GtkWidget
| |    		gtk_paint_box(widget->style, widget->window, GTK_STATE_NORMAL, GTK_SHADOW_OUT, NULL,
| |    				status_box->icon_box, "button", status_box->icon_box->allocation.x-1, status_box->icon_box->allocation.y-1,
| |    				34, 34);
| |   -	}		
| |   +	}
| |    	return FALSE;
| |    }
| |    
| |   @@ -2064,7 +2064,7 @@ pidgin_status_box_redisplay_buddy_icon(P
| |    		/* Show a placeholder icon */
| |    		gchar *filename;
| |    		filename = g_build_filename(DATADIR, "pixmaps",
| |   -				"purple", "insert-image.png", NULL);
| |   +				"pidgin", "insert-image.png", NULL);
| |    		status_box->buddy_icon = gdk_pixbuf_new_from_file(filename, NULL);
| |    		g_free(filename);
| |    	}
| |   @@ -2138,7 +2138,7 @@ activate_currently_selected_status(Pidgi
| |    	char *message;
| |    	PurpleSavedStatus *saved_status = NULL;
| |    	gboolean changed = TRUE;
| |   -	
| |   +
| |    	path = gtk_tree_row_reference_get_path(status_box->active_row);
| |    	if (!gtk_tree_model_get_iter (GTK_TREE_MODEL(status_box->dropdown_store), &iter, path))
| |    		return;
| |   @@ -2188,7 +2188,7 @@ activate_currently_selected_status(Pidgi
| |    			const char *id = NULL;
| |    			GtkTreePath *path = gtk_tree_row_reference_get_path(status_box->active_row);
| |    			active = gtk_tree_path_get_indices(path)[0];
| |   -			
| |   +
| |    			gtk_tree_path_free(path);
| |    
| |    			status = purple_account_get_active_status(status_box->token_status_account);
| |   @@ -2386,13 +2386,13 @@ static void pidgin_status_box_changed(Pi
| |    	GList *accounts = NULL, *node;
| |    	int active;
| |    
| |   -	
| |   +
| |    	if (!gtk_tree_model_get_iter (GTK_TREE_MODEL(status_box->dropdown_store), &iter, path))
| |    		return;
| |    	active = gtk_tree_path_get_indices(path)[0];
| |    	gtk_tree_path_free(path);
| |    	g_object_set_data(G_OBJECT(status_box), "active", GINT_TO_POINTER(active));
| |   -	
| |   +
| |    	gtk_tree_model_get(GTK_TREE_MODEL(status_box->dropdown_store), &iter,
| |    			   TYPE_COLUMN, &type,
| |    			   DATA_COLUMN, &data,
| |   ============================================================
| |   --- pidgin/pixmaps/Makefile.mingw	14cf5a801ce84b98aa67976ac4ebf4d28a3e28ba
| |   +++ pidgin/pixmaps/Makefile.mingw	e6a4c2179746cc35cc70cc402b8b671b1531e19c
| |   @@ -18,24 +18,24 @@ install:
| |    	    $(MAKE) -C $$subdir -f $(GAIM_WIN32_MAKEFILE) install || exit 1 ;\
| |    	  done; \
| |    	fi;
| |   -	if test '$(gaimbuttonpix_DATA)'; then \
| |   -	  mkdir -p $(gaimbuttonpixdir); \
| |   -	  cp $(gaimbuttonpix_DATA) $(gaimbuttonpixdir); \
| |   +	if test '$(pidginbuttonpix_DATA)'; then \
| |   +	  mkdir -p $(pidginbuttonpixdir); \
| |   +	  cp $(pidginbuttonpix_DATA) $(pidginbuttonpixdir); \
| |    	fi;
| |   -	if test '$(gaimdialogpix_DATA)'; then \
| |   -	  mkdir -p $(gaimdialogpixdir); \
| |   -	  cp $(gaimdialogpix_DATA) $(gaimdialogpixdir); \
| |   +	if test '$(pidgindialogpix_DATA)'; then \
| |   +	  mkdir -p $(pidgindialogpixdir); \
| |   +	  cp $(pidgindialogpix_DATA) $(pidgindialogpixdir); \
| |    	fi;
| |   -	if test '$(gaimiconpix_DATA)'; then \
| |   -	  mkdir -p $(gaimiconpixdir); \
| |   -	  cp $(gaimiconpix_DATA) $(gaimiconpixdir); \
| |   +	if test '$(pidginiconpix_DATA)'; then \
| |   +	  mkdir -p $(pidginiconpixdir); \
| |   +	  cp $(pidginiconpix_DATA) $(pidginiconpixdir); \
| |    	fi;
| |   -	if test '$(gaimdistpix_DATA)'; then \
| |   -	  mkdir -p $(gaimdistpixdir); \
| |   -	  cp $(gaimdistpix_DATA) $(gaimdistpixdir); \
| |   +	if test '$(pidgindistpix_DATA)'; then \
| |   +	  mkdir -p $(pidgindistpixdir); \
| |   +	  cp $(pidgindistpix_DATA) $(pidgindistpixdir); \
| |    	fi;
| |   -	if test '$(distpixmap_DATA)'; then \
| |   -	  mkdir -p $(distpixmapdir); \
| |   -	  cp $(distpixmap_DATA) $(distpixmapdir); \
| |   -	fi;
| |   +#	if test '$(distpixmap_DATA)'; then \
| |   +#	  mkdir -p $(distpixmapdir); \
| |   +#	  cp $(distpixmap_DATA) $(distpixmapdir); \
| |   +#	fi;
| |    
| |   ============================================================
| |   --- pidgin/win32/nsis/pidgin-installer.nsi	d838793d5b4d26ff478ba2929d67336acd2d561f
| |   +++ pidgin/win32/nsis/pidgin-installer.nsi	861a65b63670152ec16727b3c5a551ad9b0db8bd
| |   @@ -698,7 +698,7 @@ Section Uninstall
| |        Delete "$INSTDIR\plugins\buddynote.dll"
| |        Delete "$INSTDIR\plugins\convcolors.dll"
| |        Delete "$INSTDIR\plugins\extplacement.dll"
| |   -    Delete "$INSTDIR\plugins\gaimrc.dll"
| |   +    Delete "$INSTDIR\plugins\pidginrc.dll"
| |        Delete "$INSTDIR\plugins\history.dll"
| |        Delete "$INSTDIR\plugins\iconaway.dll"
| |        Delete "$INSTDIR\plugins\idle.dll"
| |   @@ -735,12 +735,12 @@ Section Uninstall
| |        Delete "$INSTDIR\plugins\win2ktrans.dll"
| |        Delete "$INSTDIR\plugins\winprefs.dll"
| |        RMDir "$INSTDIR\plugins"
| |   -    Delete "$INSTDIR\sounds\gaim\alert.wav"
| |   -    Delete "$INSTDIR\sounds\gaim\login.wav"
| |   -    Delete "$INSTDIR\sounds\gaim\logout.wav"
| |   -    Delete "$INSTDIR\sounds\gaim\receive.wav"
| |   -    Delete "$INSTDIR\sounds\gaim\send.wav"
| |   -    RMDir "$INSTDIR\sounds\gaim"
| |   +    Delete "$INSTDIR\sounds\pidgin\alert.wav"
| |   +    Delete "$INSTDIR\sounds\pidgin\login.wav"
| |   +    Delete "$INSTDIR\sounds\pidgin\logout.wav"
| |   +    Delete "$INSTDIR\sounds\pidgin\receive.wav"
| |   +    Delete "$INSTDIR\sounds\pidgin\send.wav"
| |   +    RMDir "$INSTDIR\sounds\pidgin"
| |        RMDir "$INSTDIR\sounds"
| |        Delete "$INSTDIR\freebl3.dll"
| |        Delete "$INSTDIR\idletrack.dll"
| |   ============================================================
| |   --- pidgin/win32/pidgin_exe_rc.rc.in	17f268a082f3ab0dc040f4c803771d2f70fb6563
| |   +++ pidgin/win32/pidgin_exe_rc.rc.in	bbaf60b502d35a4a8a5c69b44c8321104253ac92
| |   @@ -33,4 +33,4 @@ VS_VERSION_INFO VERSIONINFO
| |        END
| |      END
| |    
| |   +PIDGIN_ICON			ICON PIXMAPDIR "pidgin.ico"
| |   -PURPLE_ICON			ICON PIXMAPDIR "pidgin.ico"
| |   ============================================================
| |   --- finch/gntrequest.c	7d34a05e7573c17085b8d98091752ba19b21fc9a
| |   +++ finch/gntrequest.c	7f00f030f3ccddddb4fdc02ba9829f1d609214dd
| |   @@ -582,6 +582,8 @@ finch_request_file(const char *title, co
| |    	data->dialog = window;
| |    	gnt_box_set_title(GNT_BOX(window), title ? title : (savedialog ? _("Save File...") : _("Open File...")));
| |    	gnt_file_sel_set_current_location(sel, purple_home_dir());  /* XXX: */
| |   +	if (savedialog)
| |   +		gnt_file_sel_set_suggested_filename(sel, filename);
| |    	g_signal_connect(G_OBJECT(sel->cancel), "activate",
| |    			G_CALLBACK(file_cancel_cb), data);
| |    	g_signal_connect(G_OBJECT(sel->select), "activate",
| |   ============================================================
| |   --- finch/libgnt/gntfilesel.c	c7efb481d2495dfbbf09e74d06bae247dcfd914c
| |   +++ finch/libgnt/gntfilesel.c	3933090725b7303f6e5170e96da10aeebec09130
| |   @@ -28,6 +28,7 @@ gnt_file_sel_destroy(GntWidget *widget)
| |    {
| |    	GntFileSel *sel = GNT_FILE_SEL(widget);
| |    	g_free(sel->current);
| |   +	g_free(sel->suggest);
| |    	if (sel->tags) {
| |    		g_list_foreach(sel->tags, (GFunc)g_free, NULL);
| |    		g_list_free(sel->tags);
| |   @@ -70,7 +71,8 @@ update_location(GntFileSel *sel)
| |    {
| |    	char *old;
| |    	const char *tmp;
| |   -	tmp = (const char*)gnt_tree_get_selection_data(sel->dirsonly ? GNT_TREE(sel->dirs) : GNT_TREE(sel->files));
| |   +	tmp = sel->suggest ? sel->suggest :
| |   +		(const char*)gnt_tree_get_selection_data(sel->dirsonly ? GNT_TREE(sel->dirs) : GNT_TREE(sel->files));
| |    	old = g_strdup_printf("%s%s%s", sel->current, sel->current[1] ? G_DIR_SEPARATOR_S : "", tmp ? tmp : "");
| |    	gnt_entry_set_text(GNT_ENTRY(sel->location), old);
| |    	g_free(old);
| |   @@ -230,6 +232,8 @@ file_sel_changed(GntWidget *widget, gpoi
| |    static void
| |    file_sel_changed(GntWidget *widget, gpointer old, gpointer current, GntFileSel *sel)
| |    {
| |   +	g_free(sel->suggest);
| |   +	sel->suggest = NULL;
| |    	update_location(sel);
| |    }
| |    
| |   @@ -449,12 +453,19 @@ gboolean gnt_file_sel_get_dirs_only(GntF
| |    	return sel->dirsonly;
| |    }
| |    
| |   +void gnt_file_sel_set_suggested_filename(GntFileSel *sel, const char *suggest)
| |   +{
| |   +	sel->suggest = g_strdup(suggest);
| |   +}
| |   +
| |    char *gnt_file_sel_get_selected_file(GntFileSel *sel)
| |    {
| |    	char *ret;
| |   -	const char *tmp;
| |   -	tmp = (const char*)gnt_tree_get_selection_data(sel->dirsonly ? GNT_TREE(sel->dirs) : GNT_TREE(sel->files));
| |   -	ret = g_strdup_printf("%s%s%s", sel->current, sel->current[1] ? G_DIR_SEPARATOR_S : "", tmp ? tmp : "");
| |   +	if (sel->dirsonly) {
| |   +		ret = g_strdup(g_path_get_dirname(gnt_entry_get_text(GNT_ENTRY(sel->location))));
| |   +	} else {
| |   +		ret = g_strdup(gnt_entry_get_text(GNT_ENTRY(sel->location)));
| |   +	}
| |    	return ret;
| |    }
| |    
| |   ============================================================
| |   --- finch/libgnt/gntfilesel.h	70cd6214d27e11388af7dd3a258fa3293d8b863d
| |   +++ finch/libgnt/gntfilesel.h	f8ef0ccc30968d6335477df5db8bb59193adea8a
| |   @@ -33,6 +33,7 @@ struct _GntFileSel
| |    	GntWidget *cancel;   /* cancel button */
| |    
| |    	char *current; /* Full path of the current location */
| |   +	char *suggest; /* Suggested filename */
| |    	/* XXX: someone should make these useful */
| |    	gboolean must_exist; /* Make sure the selected file (the name entered in 'location') exists */
| |    	gboolean dirsonly;   /* Show only directories */
| |   @@ -73,6 +74,8 @@ void gnt_file_sel_set_multi_select(GntFi
| |    
| |    void gnt_file_sel_set_multi_select(GntFileSel *sel, gboolean set);
| |    
| |   +void gnt_file_sel_set_suggested_filename(GntFileSel *sel, const char *suggest);
| |   +
| |    G_END_DECLS
| |    
| |    #endif /* GNT_FILE_SEL_H */

To get the patch for this revision, please do this:
mtn log --last 1 --diffs --from 1511452027c82ac0e90e815c6968a48c2a4cb697


More information about the Commits mailing list