File bug-187126_file-roller-batch-extract-all.patch of Package file-roller

Novell bug: https://bugzilla.novell.com/show_bug.cgi?id=187126
Upstream bug: http://bugzilla.gnome.org/show_bug.cgi?id=342043
Original bug: https://launchpad.net/distros/ubuntu/+source/file-roller/+bug/40899

2006-12-11  jacob berkman  <jberkman@novell.com>

	* src/window.h (FRWindow): add batch_extracting_all boolean

	* src/window.c (window_fake_load): load if batch extracting
	  all and archive doesn't directly support extracting all

	* src/window.c (window_new): initialise batch_extracting_all

	* src/window.c (window_archive__open_extract): tell
	  window_fake_load that we are batch extracting all

Index: file-roller-2.23.5/src/fr-window.c
===================================================================
--- file-roller-2.23.5.orig/src/fr-window.c
+++ file-roller-2.23.5/src/fr-window.c
@@ -395,6 +395,7 @@ struct _FrWindowPrivateData {
 	gboolean          extract_interact_use_default_dir;
 	gboolean          update_dropped_files;
 	gboolean          batch_adding_one_file;
+	gboolean   batch_extracting_all;
 
 	GtkWindow        *load_error_parent_window;
 	gboolean          showing_error_dialog;
@@ -4987,7 +4988,7 @@ fr_window_fake_load (FrArchive *archive,
 	return (window->priv->batch_mode
 		&& ! (add_after_opening && window->priv->update_dropped_files && ! archive->command->propAddCanUpdate)
 		&& ! (add_after_opening && ! window->priv->update_dropped_files && ! archive->command->propAddCanReplace)
-		&& ! (extract_after_opening && !archive->command->propCanExtractAll));
+		&& ! (window->priv->batch_extracting_all && !(extract_after_opening && !archive->command->propCanExtractAll)));
 #endif
 }
 
@@ -5413,6 +5414,7 @@ fr_window_construct (FrWindow *window)
 	window->priv->stoppable = TRUE;
 
 	window->priv->batch_adding_one_file = FALSE;
+	window->priv->batch_extracting_all = FALSE;
 
 	window->priv->path_clicked = NULL;
 
@@ -8519,6 +8521,7 @@ fr_window_new_batch (FrWindow *window)
 {
 	fr_window_free_batch_data (window);
 	window->priv->non_interactive = TRUE;
+	window->priv->batch_extracting_all = TRUE;
 }
 
 
openSUSE Build Service is sponsored by