rpms/mozilla/devel firefox-1.1-modal-filechooser.patch, NONE, 1.1 mozilla-1.7.11-embed-prompt-crash.patch, NONE, 1.1 mozilla-1.7.11-embed-prompt-modal.patch, NONE, 1.1 mozilla-1.7.11-embed-prompt-wrapping.patch, NONE, 1.1 mozilla-1.7.11-gtkembed-prompt-crash.patch, NONE, 1.1 mozilla-1.7.11-tooltip-borders.patch, NONE, 1.1 .cvsignore, 1.26, 1.27 mozilla-1.7.3-gtk-file-chooser-morefixes.patch, 1.1, 1.2 mozilla.spec, 1.71, 1.72 sources, 1.31, 1.32

fedora-cvs-commits at redhat.com fedora-cvs-commits at redhat.com
Sat Jul 30 22:08:14 UTC 2005


Author: caillon

Update of /cvs/dist/rpms/mozilla/devel
In directory cvs.devel.redhat.com:/tmp/cvs-serv8894

Modified Files:
	.cvsignore mozilla-1.7.3-gtk-file-chooser-morefixes.patch 
	mozilla.spec sources 
Added Files:
	firefox-1.1-modal-filechooser.patch 
	mozilla-1.7.11-embed-prompt-crash.patch 
	mozilla-1.7.11-embed-prompt-modal.patch 
	mozilla-1.7.11-embed-prompt-wrapping.patch 
	mozilla-1.7.11-gtkembed-prompt-crash.patch 
	mozilla-1.7.11-tooltip-borders.patch 
Log Message:
* Fri Jul 29 2005 Christopher Aillon <caillon at redhat.com> 37:1.7.11-1
- Mozilla 1.7.11
- Add patch to make the file chooser modal
- Embedding prompt patches:
  - Don't crash on opening or closing a prompt
  - Better wrapping of long lines
- Display borders for tooltips in embedded code.


firefox-1.1-modal-filechooser.patch:
 nsFilePicker.cpp |   10 +++++++++-
 1 files changed, 9 insertions(+), 1 deletion(-)

--- NEW FILE firefox-1.1-modal-filechooser.patch ---
Index: widget/src/gtk2/nsFilePicker.cpp
===================================================================
RCS file: /cvsroot/mozilla/widget/src/gtk2/nsFilePicker.cpp,v
retrieving revision 1.10
diff -p -u -u -p -U10 -r1.10 nsFilePicker.cpp
--- widget/src/gtk2/nsFilePicker.cpp	1 Jul 2005 04:40:30 -0000	1.10
+++ widget/src/gtk2/nsFilePicker.cpp	16 Jul 2005 08:39:26 -0000
@@ -457,28 +457,32 @@ confirm_overwrite_file (GtkWidget *paren
     leafName.get()
   };
 
   nsXPIDLString title, message;
   bundle->GetStringFromName(NS_LITERAL_STRING("confirmTitle").get(),
                             getter_Copies(title));
   bundle->FormatStringFromName(NS_LITERAL_STRING("confirmFileReplacing").get(),
                                formatStrings, NS_ARRAY_LENGTH(formatStrings),
                                getter_Copies(message));
 
+  GtkWindow *parent_window = GTK_WINDOW(parent);
   GtkWidget *dialog;
   
-  dialog = gtk_message_dialog_new(GTK_WINDOW(parent),
+  dialog = gtk_message_dialog_new(parent_window,
                                   GTK_DIALOG_DESTROY_WITH_PARENT,
                                   GTK_MESSAGE_QUESTION,
                                   GTK_BUTTONS_YES_NO,
                                   NS_ConvertUTF16toUTF8(message).get());
   gtk_window_set_title(GTK_WINDOW(dialog), NS_ConvertUTF16toUTF8(title).get());
+  if (parent_window && parent_window->group) {
+    gtk_window_group_add_window(parent_window->group, GTK_WINDOW(dialog));
+  }
 
   PRBool result = (gtk_dialog_run (GTK_DIALOG (dialog)) == GTK_RESPONSE_YES);
   gtk_widget_destroy (dialog);
 
   return result;
 }
 
 NS_IMETHODIMP
 nsFilePicker::Show(PRInt16 *aReturn)
 {
@@ -491,20 +495,24 @@ nsFilePicker::Show(PRInt16 *aReturn)
 
   GtkFileChooserAction action = GetGtkFileChooserAction(mMode);
   const gchar *accept_button = (mMode == GTK_FILE_CHOOSER_ACTION_SAVE)
                                ? GTK_STOCK_SAVE : GTK_STOCK_OPEN;
   GtkWidget *file_chooser =
       _gtk_file_chooser_dialog_new(title, parent_widget, action,
                                    GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
                                    accept_button, GTK_RESPONSE_ACCEPT,
                                    NULL);
 
+  if (parent_widget && parent_widget->group) {
+    gtk_window_group_add_window(parent_widget->group, GTK_WINDOW(file_chooser));
+  }
+
   if (mMode == nsIFilePicker::modeOpenMultiple) {
     _gtk_file_chooser_set_select_multiple (GTK_FILE_CHOOSER(file_chooser), TRUE);
   } else if (mMode == nsIFilePicker::modeSave) {
     char *default_filename = ToNewUTF8String(mDefault);
     _gtk_file_chooser_set_current_name(GTK_FILE_CHOOSER(file_chooser),
                                        NS_STATIC_CAST(const gchar*, default_filename));
     nsMemory::Free(default_filename);
   }
 
   gtk_dialog_set_default_response(GTK_DIALOG(file_chooser), GTK_RESPONSE_ACCEPT);

mozilla-1.7.11-embed-prompt-crash.patch:
 EmbedPrompter.cpp |    2 +-
 1 files changed, 1 insertion(+), 1 deletion(-)

--- NEW FILE mozilla-1.7.11-embed-prompt-crash.patch ---
Index: embedding/browser/gtk/src/EmbedPrompter.cpp
===================================================================
RCS file: /cvsroot/mozilla/embedding/browser/gtk/src/EmbedPrompter.cpp,v
retrieving revision 1.16
diff -p -u -u -p -U10 -r1.16 EmbedPrompter.cpp
--- embedding/browser/gtk/src/EmbedPrompter.cpp	7 Feb 2005 12:40:57 -0000	1.16
+++ embedding/browser/gtk/src/EmbedPrompter.cpp	13 Jun 2005 21:52:31 -0000
@@ -94,21 +94,21 @@ EmbedPrompter::EmbedPrompter(void)
 EmbedPrompter::~EmbedPrompter(void)
 {
     if (mItemList)
         delete[] mItemList;
 }
 
 nsresult
 EmbedPrompter::Create(PromptType aType, GtkWindow* aParentWindow)
 {
     mWindow = gtk_dialog_new_with_buttons(mTitle.get(), aParentWindow,
-                                          GTK_DIALOG_DESTROY_WITH_PARENT,
+                                          (GtkDialogFlags)0,
                                           NULL);
 
     // only add the dialog to the window group if the parent already has a window group,
     // so as not to break app's expectations about modal dialogs.
     if (aParentWindow && aParentWindow->group) {
         gtk_window_group_add_window (aParentWindow->group, GTK_WINDOW (mWindow));
     }
 
     // gtk will resize this for us as necessary
     gtk_window_set_default_size(GTK_WINDOW(mWindow), 100, 50);

mozilla-1.7.11-embed-prompt-modal.patch:
 EmbedPrompter.cpp |    6 ++++++
 1 files changed, 6 insertions(+)

--- NEW FILE mozilla-1.7.11-embed-prompt-modal.patch ---
Index: embedding/browser/gtk/src/EmbedPrompter.cpp
===================================================================
RCS file: /cvsroot/mozilla/embedding/browser/gtk/src/EmbedPrompter.cpp,v
retrieving revision 1.14
diff -p -u -u -p -U10 -r1.14 EmbedPrompter.cpp
--- embedding/browser/gtk/src/EmbedPrompter.cpp	15 Jan 2005 19:25:25 -0000	1.14
+++ embedding/browser/gtk/src/EmbedPrompter.cpp	25 Jan 2005 13:43:19 -0000
@@ -97,20 +97,26 @@ EmbedPrompter::~EmbedPrompter(void)
         delete[] mItemList;
 }
 
 nsresult
 EmbedPrompter::Create(PromptType aType, GtkWindow* aParentWindow)
 {
     mWindow = gtk_dialog_new_with_buttons(mTitle.get(), aParentWindow,
                                           GTK_DIALOG_DESTROY_WITH_PARENT,
                                           NULL);
 
+    // only add the dialog to the window group if the parent already has a window group,
+    // so as not to break app's expectations about modal dialogs.
+    if (aParentWindow && aParentWindow->group) {
+        gtk_window_group_add_window (aParentWindow->group, GTK_WINDOW (mWindow));
+    }
+
     // gtk will resize this for us as necessary
     gtk_window_set_default_size(GTK_WINDOW(mWindow), 100, 50);
 
     // this HBox will contain the icon, and a vbox which contains the
     // dialog text and other widgets.
     GtkWidget* dialogHBox = gtk_hbox_new(FALSE, 12);
 
 
     // Set up dialog properties according to the GNOME HIG
     // (http://developer.gnome.org/projects/gup/hig/1.0/windows.html#alert-windows)

mozilla-1.7.11-embed-prompt-wrapping.patch:
 EmbedPrompter.cpp |    2 ++
 1 files changed, 2 insertions(+)

--- NEW FILE mozilla-1.7.11-embed-prompt-wrapping.patch ---
Index: embedding/browser/gtk/src/EmbedPrompter.cpp
===================================================================
RCS file: /cvsroot/mozilla/embedding/browser/gtk/src/EmbedPrompter.cpp,v
retrieving revision 1.13
diff -p -u -u -p -U10 -r1.13 EmbedPrompter.cpp
--- embedding/browser/gtk/src/EmbedPrompter.cpp	16 Sep 2004 12:39:47 -0000	1.13
+++ embedding/browser/gtk/src/EmbedPrompter.cpp	9 Jan 2005 01:01:33 -0000
@@ -197,20 +204,22 @@ EmbedPrompter::Create(PromptType aType, 
 
         gtk_box_pack_start(GTK_BOX(contentsVBox), mTextField, FALSE, FALSE, 0);
     }
 
     // Add a checkbox
     if ((widgetFlags & INCLUDE_CHECKBOX) && !mCheckMessage.IsEmpty()) {
         mCheckBox = gtk_check_button_new_with_label(mCheckMessage.get());
 
         gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(mCheckBox),
                                      mCheckValue);
+        gtk_label_set_line_wrap(GTK_LABEL(gtk_bin_get_child(GTK_BIN(mCheckBox))),
+				TRUE);
 
         gtk_box_pack_start(GTK_BOX(contentsVBox), mCheckBox, FALSE, FALSE, 0);
     }
 
     // Add a dropdown menu
     if (aType == TYPE_SELECT) {
         // Build up a GtkMenu containing the items
         GtkWidget* menu = gtk_menu_new();
         for (PRUint32 i = 0; i < mItemCount; ++i) {
             GtkWidget* item = gtk_menu_item_new_with_label(mItemList[i].get());

mozilla-1.7.11-gtkembed-prompt-crash.patch:
 GtkPromptService.cpp |   19 +++++++++++++------
 1 files changed, 13 insertions(+), 6 deletions(-)

--- NEW FILE mozilla-1.7.11-gtkembed-prompt-crash.patch ---
Index: embedding/browser/gtk/src/GtkPromptService.cpp
===================================================================
RCS file: /cvsroot/mozilla/embedding/browser/gtk/src/GtkPromptService.cpp,v
retrieving revision 1.6
diff -p -u -U10 -r1.6 GtkPromptService.cpp
--- embedding/browser/gtk/src/GtkPromptService.cpp	29 Sep 2003 06:03:48 -0000	1.6
+++ embedding/browser/gtk/src/GtkPromptService.cpp	26 Oct 2004 14:02:19 -0000
@@ -68,20 +68,22 @@ GtkPromptService::Alert(nsIDOMWindow* aP
     prompter.Run();
     return NS_OK;
 }
 
 NS_IMETHODIMP
 GtkPromptService::AlertCheck(nsIDOMWindow* aParent,
                              const PRUnichar* aDialogTitle,
                              const PRUnichar* aDialogText,
                              const PRUnichar* aCheckMsg, PRBool* aCheckValue)
 {
+    NS_ENSURE_ARG_POINTER(aCheckValue);
+
     EmbedPrompter prompter;
     prompter.SetTitle(aDialogTitle ? aDialogTitle : NS_LITERAL_STRING("Alert").get());
     prompter.SetMessageText(aDialogText);
     prompter.SetCheckMessage(aCheckMsg);
     prompter.SetCheckValue(*aCheckValue);
     prompter.Create(EmbedPrompter::TYPE_ALERT_CHECK,
                     GetGtkWindowForDOMWindow(aParent));
     prompter.Run();
     prompter.GetCheckValue(aCheckValue);
     return NS_OK;
@@ -102,20 +104,22 @@ GtkPromptService::Confirm(nsIDOMWindow* 
     return NS_OK;
 }
 
 NS_IMETHODIMP
 GtkPromptService::ConfirmCheck(nsIDOMWindow* aParent,
                                const PRUnichar* aDialogTitle,
                                const PRUnichar* aDialogText,
                                const PRUnichar* aCheckMsg,
                                PRBool* aCheckValue, PRBool* aConfirm)
 {
+    NS_ENSURE_ARG_POINTER(aCheckValue);
+
     EmbedPrompter prompter;
     prompter.SetTitle(aDialogTitle ? aDialogTitle : NS_LITERAL_STRING("Confirm").get());
     prompter.SetMessageText(aDialogText);
     prompter.SetCheckMessage(aCheckMsg);
     prompter.SetCheckValue(*aCheckValue);
     prompter.Create(EmbedPrompter::TYPE_CONFIRM_CHECK,
                     GetGtkWindowForDOMWindow(aParent));
     prompter.Run();
     prompter.GetCheckValue(aCheckValue);
     prompter.GetConfirmValue(aConfirm);
@@ -164,24 +168,25 @@ GtkPromptService::ConfirmEx(nsIDOMWindow
 NS_IMETHODIMP
 GtkPromptService::Prompt(nsIDOMWindow* aParent, const PRUnichar* aDialogTitle,
                          const PRUnichar* aDialogText, PRUnichar** aValue,
                          const PRUnichar* aCheckMsg, PRBool* aCheckValue,
                          PRBool* aConfirm)
 {
     EmbedPrompter prompter;
     prompter.SetTitle(aDialogTitle ? aDialogTitle : NS_LITERAL_STRING("Prompt").get());
     prompter.SetMessageText(aDialogText);
     prompter.SetTextValue(*aValue);
-    if (aCheckMsg) {
+    if (aCheckMsg)
         prompter.SetCheckMessage(aCheckMsg);
+    if (aCheckValue)
         prompter.SetCheckValue(*aCheckValue);
-    }
+
     prompter.Create(EmbedPrompter::TYPE_PROMPT,
                     GetGtkWindowForDOMWindow(aParent));
     prompter.Run();
     if (aCheckValue)
         prompter.GetCheckValue(aCheckValue);
     prompter.GetConfirmValue(aConfirm);
     if (aConfirm) {
         if (*aValue)
             nsMemory::Free(*aValue);
         prompter.GetTextValue(aValue);
@@ -197,24 +202,25 @@ GtkPromptService::PromptUsernameAndPassw
                                             PRUnichar** aPassword,
                                             const PRUnichar* aCheckMsg,
                                             PRBool* aCheckValue,
                                             PRBool* aConfirm)
 {
     EmbedPrompter prompter;
     prompter.SetTitle(aDialogTitle ? aDialogTitle : NS_LITERAL_STRING("Prompt").get());
     prompter.SetMessageText(aDialogText);
     prompter.SetUser(*aUsername);
     prompter.SetPassword(*aPassword);
-    if (aCheckMsg) {
+    if (aCheckMsg)
         prompter.SetCheckMessage(aCheckMsg);
+    if (aCheckValue)
         prompter.SetCheckValue(*aCheckValue);
-    }
+
     prompter.Create(EmbedPrompter::TYPE_PROMPT_USER_PASS,
                     GetGtkWindowForDOMWindow(aParent));
     prompter.Run();
     if (aCheckValue)
         prompter.GetCheckValue(aCheckValue);
     prompter.GetConfirmValue(aConfirm);
     if (*aConfirm) {
         if (*aUsername)
             nsMemory::Free(*aUsername);
         prompter.GetUser(aUsername);
@@ -231,24 +237,25 @@ GtkPromptService::PromptPassword(nsIDOMW
                                  const PRUnichar* aDialogTitle,
                                  const PRUnichar* aDialogText,
                                  PRUnichar** aPassword,
                                  const PRUnichar* aCheckMsg,
                                  PRBool* aCheckValue, PRBool* aConfirm)
 {
     EmbedPrompter prompter;
     prompter.SetTitle(aDialogTitle ? aDialogTitle : NS_LITERAL_STRING("Prompt").get());
     prompter.SetMessageText(aDialogText);
     prompter.SetPassword(*aPassword);
-    if (aCheckMsg) {
+    if (aCheckMsg)
         prompter.SetCheckMessage(aCheckMsg);
+    if (aCheckValue)
         prompter.SetCheckValue(*aCheckValue);
-    }
+
     prompter.Create(EmbedPrompter::TYPE_PROMPT_PASS,
                     GetGtkWindowForDOMWindow(aParent));
     prompter.Run();
     if (aCheckValue)
         prompter.GetCheckValue(aCheckValue);
     prompter.GetConfirmValue(aConfirm);
     if (*aConfirm) {
         if (*aPassword)
             nsMemory::Free(*aPassword);
         prompter.GetPassword(aPassword);

mozilla-1.7.11-tooltip-borders.patch:
 EmbedWindow.cpp |   25 +++++++++++++++++--------
 1 files changed, 17 insertions(+), 8 deletions(-)

--- NEW FILE mozilla-1.7.11-tooltip-borders.patch ---
Index: embedding/browser/gtk/src/EmbedWindow.cpp
===================================================================
RCS file: /cvsroot/mozilla/embedding/browser/gtk/src/EmbedWindow.cpp,v
retrieving revision 1.30
diff -p -u -u -p -r1.30 EmbedWindow.cpp
--- embedding/browser/gtk/src/EmbedWindow.cpp	28 Jul 2004 20:54:50 -0000	1.30
+++ embedding/browser/gtk/src/EmbedWindow.cpp	26 Oct 2004 13:12:27 -0000
@@ -383,6 +383,19 @@ EmbedWindow::SetVisibility(PRBool aVisib
 
 // nsITooltipListener
 
+static gint
+tooltips_paint_window(GtkWidget *window)
+{
+  // draw tooltip style border around the text
+  gtk_paint_flat_box(window->style, window->window,
+                     GTK_STATE_NORMAL, GTK_SHADOW_OUT,
+                     NULL, window, "tooltip",
+                     0, 0,
+                     window->allocation.width, window->allocation.height);
+
+  return FALSE;
+}
+                                     
 NS_IMETHODIMP
 EmbedWindow::OnShowTooltip(PRInt32 aXCoords, PRInt32 aYCoords,
 			   const PRUnichar *aTipText)
@@ -433,12 +446,15 @@ EmbedWindow::OnShowTooltip(PRInt32 aXCoo
   // realize the widget
   gtk_widget_realize(sTipWindow);
 
+  gtk_signal_connect(GTK_OBJECT(sTipWindow), "expose_event",
+                     GTK_SIGNAL_FUNC(tooltips_paint_window), NULL);
+
   // set up the label for the tooltip
   GtkWidget *label = gtk_label_new(tipString);
   // wrap automatically
   gtk_label_set_line_wrap(GTK_LABEL(label), TRUE);
   gtk_container_add(GTK_CONTAINER(sTipWindow), label);
-  gtk_container_set_border_width(GTK_CONTAINER(sTipWindow), 3);
+  gtk_container_set_border_width(GTK_CONTAINER(sTipWindow), 4);
   // set the coords for the widget
   gtk_widget_set_uposition(sTipWindow, aXCoords + root_x,
 			   aYCoords + root_y);
@@ -446,13 +462,6 @@ EmbedWindow::OnShowTooltip(PRInt32 aXCoo
   // and show it.
   gtk_widget_show_all(sTipWindow);
 
-  // draw tooltip style border around the text
-  gtk_paint_flat_box(sTipWindow->style, sTipWindow->window,
-           GTK_STATE_NORMAL, GTK_SHADOW_OUT, 
-           NULL, GTK_WIDGET(sTipWindow), "tooltip",
-           0, 0,
-           sTipWindow->allocation.width, sTipWindow->allocation.height);
-
 #ifdef MOZ_WIDGET_GTK
   gtk_widget_popup(sTipWindow, aXCoords + root_x, aYCoords + root_y);
 #endif /* MOZ_WIDGET_GTK */


Index: .cvsignore
===================================================================
RCS file: /cvs/dist/rpms/mozilla/devel/.cvsignore,v
retrieving revision 1.26
retrieving revision 1.27
diff -u -r1.26 -r1.27
--- .cvsignore	19 Jul 2005 19:37:21 -0000	1.26
+++ .cvsignore	30 Jul 2005 22:08:10 -0000	1.27
@@ -5,3 +5,4 @@
 mozilla-1.7.6-cvs20050313.tar.bz2
 mozilla-source-1.7.7.tar.bz2
 mozilla-1.7.10-source.tar.bz2
+mozilla-1.7.11-source.tar.bz2

mozilla-1.7.3-gtk-file-chooser-morefixes.patch:
 Makefile.in      |    1 
 nsFilePicker.cpp |   73 +++++++++++++++++++++++++++++++++++++++++++++++++++++--
 2 files changed, 72 insertions(+), 2 deletions(-)

Index: mozilla-1.7.3-gtk-file-chooser-morefixes.patch
===================================================================
RCS file: /cvs/dist/rpms/mozilla/devel/mozilla-1.7.3-gtk-file-chooser-morefixes.patch,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- mozilla-1.7.3-gtk-file-chooser-morefixes.patch	20 Oct 2004 07:02:47 -0000	1.1
+++ mozilla-1.7.3-gtk-file-chooser-morefixes.patch	30 Jul 2005 22:08:10 -0000	1.2
@@ -1,17 +1,30 @@
+Index: widget/src/gtk2/Makefile.in
+===================================================================
+RCS file: /cvsroot/mozilla/widget/src/gtk2/Makefile.in,v
+retrieving revision 1.34
+diff -u -r1.34 Makefile.in
+--- widget/src/gtk2/Makefile.in	7 Sep 2004 21:21:48 -0000	1.34
++++ widget/src/gtk2/Makefile.in	26 Oct 2004 22:07:49 -0000
+@@ -58,6 +58,7 @@
+ 		  dom \
+ 		  necko \
+ 		  uconv \
++		  intl \
+ 		  gtkxtbin \
+ 		  xremoteservice
+ 
 Index: widget/src/gtk2/nsFilePicker.cpp
 ===================================================================
 RCS file: /cvsroot/mozilla/widget/src/gtk2/nsFilePicker.cpp,v
-retrieving revision 1.6
-diff -d -u -p -r1.6 nsFilePicker.cpp
---- widget/src/gtk2/nsFilePicker.cpp	12 Oct 2004 07:00:59 -0000	1.6
-+++ widget/src/gtk2/nsFilePicker.cpp	20 Oct 2004 06:07:45 -0000
-@@ -38,11 +38,16 @@
+retrieving revision 1.7
+diff -u -r1.7 nsFilePicker.cpp
+--- widget/src/gtk2/nsFilePicker.cpp	21 Oct 2004 06:19:00 -0000	1.7
++++ widget/src/gtk2/nsFilePicker.cpp	26 Oct 2004 22:07:49 -0000
+@@ -38,11 +38,14 @@
  #include <gtk/gtkwindow.h>
  #include <gtk/gtkdialog.h>
  #include <gtk/gtkstock.h>
-+#include <gtk/gtklabel.h>
-+#include <gtk/gtkimage.h>
-+#include <gtk/gtkhbox.h>
++#include <gtk/gtkmessagedialog.h>
  
  #include "nsIFileURL.h"
  #include "nsIURI.h"
@@ -22,34 +35,37 @@
  #include "nsArrayEnumerator.h"
  #include "nsVoidArray.h"
  #include "nsMemory.h"
-@@ -91,6 +96,8 @@ typedef void (*_gtk_file_chooser_set_sel
+@@ -91,6 +94,9 @@
  typedef void (*_gtk_file_chooser_set_current_name_fn)(GtkFileChooser* chooser, const gchar* name);
  typedef void (*_gtk_file_chooser_set_current_folder_fn)(GtkFileChooser* chooser, const gchar* folder);
  typedef void (*_gtk_file_chooser_add_filter_fn)(GtkFileChooser* chooser, GtkFileFilter* filter);
++typedef void (*_gtk_file_chooser_set_filter_fn)(GtkFileChooser* chooser, GtkFileFilter* filter);
 +typedef GtkFileFilter* (*_gtk_file_chooser_get_filter_fn)(GtkFileChooser* chooser);
 +typedef GSList* (*_gtk_file_chooser_list_filters_fn)(GtkFileChooser* chooser);
  typedef GtkFileFilter* (*_gtk_file_filter_new_fn)();
  typedef void (*_gtk_file_filter_add_pattern_fn)(GtkFileFilter* filter, const gchar* pattern);
  typedef void (*_gtk_file_filter_set_name_fn)(GtkFileFilter* filter, const gchar* name);
-@@ -103,6 +110,8 @@ DECL_FUNC_PTR(gtk_file_chooser_set_selec
+@@ -103,6 +109,9 @@
  DECL_FUNC_PTR(gtk_file_chooser_set_current_name);
  DECL_FUNC_PTR(gtk_file_chooser_set_current_folder);
  DECL_FUNC_PTR(gtk_file_chooser_add_filter);
++DECL_FUNC_PTR(gtk_file_chooser_set_filter);
 +DECL_FUNC_PTR(gtk_file_chooser_get_filter);
 +DECL_FUNC_PTR(gtk_file_chooser_list_filters);
  DECL_FUNC_PTR(gtk_file_filter_new);
  DECL_FUNC_PTR(gtk_file_filter_add_pattern);
  DECL_FUNC_PTR(gtk_file_filter_set_name);
-@@ -179,6 +188,8 @@ nsFilePicker::LoadSymbolsGTK24()
+@@ -179,6 +188,9 @@
    GET_LIBGTK_FUNC(gtk_file_chooser_set_current_name);
    GET_LIBGTK_FUNC(gtk_file_chooser_set_current_folder);
    GET_LIBGTK_FUNC(gtk_file_chooser_add_filter);
++  GET_LIBGTK_FUNC(gtk_file_chooser_set_filter);
 +  GET_LIBGTK_FUNC(gtk_file_chooser_get_filter);
 +  GET_LIBGTK_FUNC(gtk_file_chooser_list_filters);
    GET_LIBGTK_FUNC(gtk_file_filter_new);
    GET_LIBGTK_FUNC(gtk_file_filter_add_pattern);
    GET_LIBGTK_FUNC(gtk_file_filter_set_name);
-@@ -269,6 +280,12 @@ nsFilePicker::ReadValuesFromFileChooser(
+@@ -272,6 +284,12 @@
      g_free(filename);
    }
  
@@ -62,38 +78,26 @@
    // Remember last used directory.
    nsCOMPtr<nsILocalFile> file;
    GetFile(getter_AddRefs(file));
-@@ -435,6 +452,74 @@ nsFilePicker::GetFiles(nsISimpleEnumerat
+@@ -438,6 +456,46 @@
    return NS_ERROR_FAILURE;
  }
  
 +PRBool
 +confirm_overwrite_file (GtkWidget *parent, nsILocalFile* file)
 +{
-+  if (!file) {
-+    return PR_FALSE;
-+  }
-+
-+  PRBool file_exists;
-+  nsresult rv = file->Exists(&file_exists);
-+  if (NS_FAILED(rv)) {
-+    return PR_FALSE;
-+  }
-+
-+  if (!file_exists) {
-+    return PR_TRUE;
-+  }
-+
 +  nsCOMPtr<nsIStringBundleService> sbs = do_GetService(NS_STRINGBUNDLE_CONTRACTID);
 +  nsCOMPtr<nsIStringBundle> bundle;
-+  rv = sbs->CreateBundle("chrome://global/locale/filepicker.properties",
-+                         getter_AddRefs(bundle));
++  nsresult rv = sbs->CreateBundle("chrome://global/locale/filepicker.properties",
++                                  getter_AddRefs(bundle));
 +  if (NS_FAILED(rv)) {
 +    return PR_FALSE;
 +  }
 +
++  nsAutoString leafName;
++  file->GetLeafName(leafName);
 +  const PRUnichar *formatStrings[] =
 +  {
-+    NS_LITERAL_STRING("File").get()
++    leafName.get()
 +  };
 +
 +  nsXPIDLString title, message;
@@ -103,32 +107,16 @@
 +                               formatStrings, NS_ARRAY_LENGTH(formatStrings),
 +                               getter_Copies(message));
 +
-+  GtkWidget *dialog, *hbox, *label;
-+  GtkWidget *image;
++  GtkWidget *dialog;
++  
++  dialog = gtk_message_dialog_new(GTK_WINDOW(parent),
++                                  GTK_DIALOG_DESTROY_WITH_PARENT,
++                                  GTK_MESSAGE_QUESTION,
++                                  GTK_BUTTONS_YES_NO,
++                                  NS_ConvertUTF16toUTF8(message).get());
++  gtk_window_set_title(GTK_WINDOW(dialog), NS_ConvertUTF16toUTF8(title).get());
 +
-+  dialog = gtk_dialog_new_with_buttons (NS_ConvertUCS2toUTF8(title).get(),
-+                                        GTK_WINDOW (parent),
-+                                        GTK_DIALOG_MODAL,
-+                                        GTK_STOCK_YES, GTK_RESPONSE_YES,
-+                                        GTK_STOCK_NO, GTK_RESPONSE_NO,
-+                                        NULL);
-+  hbox = gtk_hbox_new (FALSE, 6);
-+  gtk_box_pack_start (GTK_BOX (GTK_DIALOG (dialog)->vbox), hbox, TRUE, TRUE, 12);
-+  image = gtk_image_new_from_stock (GTK_STOCK_DIALOG_WARNING, GTK_ICON_SIZE_DIALOG);
-+  gtk_misc_set_alignment (GTK_MISC (image), 0.5, 0.0);
-+  gtk_box_pack_start (GTK_BOX (hbox), image, TRUE, TRUE, 0);
-+
-+  label = gtk_label_new(NS_ConvertUCS2toUTF8(message).get());
-+  gtk_label_set_selectable (GTK_LABEL (label), TRUE);
-+  gtk_box_pack_start (GTK_BOX (hbox), label, TRUE, TRUE, 0);
-+  gtk_widget_show_all (hbox);
-+
-+  gtk_window_set_resizable (GTK_WINDOW (dialog), FALSE);
-+  gtk_window_set_skip_taskbar_hint (GTK_WINDOW (dialog), TRUE);
-+  gtk_container_set_border_width (GTK_CONTAINER (GTK_DIALOG (dialog)), 6);
-+  gtk_dialog_set_default_response (GTK_DIALOG (dialog), GTK_RESPONSE_NO);
 +  PRBool result = (gtk_dialog_run (GTK_DIALOG (dialog)) == GTK_RESPONSE_YES);
-+
 +  gtk_widget_destroy (dialog);
 +
 +  return result;
@@ -137,7 +125,19 @@
  NS_IMETHODIMP
  nsFilePicker::Show(PRInt16 *aReturn)
  {
-@@ -513,14 +598,20 @@ nsFilePicker::Show(PRInt16 *aReturn)
+@@ -508,6 +566,11 @@
+     }
+ 
+     _gtk_file_chooser_add_filter (GTK_FILE_CHOOSER (file_chooser), filter);
++
++    // Set the initially selected filter
++    if (mSelectedType == i) {
++      _gtk_file_chooser_set_filter (GTK_FILE_CHOOSER(file_chooser), filter);
++    }
+   }
+ 
+   gint response = gtk_dialog_run (GTK_DIALOG (file_chooser));
+@@ -516,14 +579,20 @@
      case GTK_RESPONSE_ACCEPT:
      ReadValuesFromFileChooser(file_chooser);
      *aReturn = nsIFilePicker::returnOK;
@@ -160,18 +160,3 @@
          }
        }
      }
-Index: widget/src/gtk2/Makefile.in
-===================================================================
-RCS file: /cvsroot/mozilla/widget/src/gtk2/Makefile.in,v
-retrieving revision 1.34
-diff -d -u -p -r1.34 Makefile.in
---- widget/src/gtk2/Makefile.in	7 Sep 2004 21:21:48 -0000	1.34
-+++ widget/src/gtk2/Makefile.in	20 Oct 2004 06:07:45 -0000
-@@ -58,6 +58,7 @@ REQUIRES	= xpcom \
- 		  dom \
- 		  necko \
- 		  uconv \
-+		  intl \
- 		  gtkxtbin \
- 		  xremoteservice
- 


Index: mozilla.spec
===================================================================
RCS file: /cvs/dist/rpms/mozilla/devel/mozilla.spec,v
retrieving revision 1.71
retrieving revision 1.72
diff -u -r1.71 -r1.72
--- mozilla.spec	20 Jul 2005 16:21:09 -0000	1.71
+++ mozilla.spec	30 Jul 2005 22:08:10 -0000	1.72
@@ -9,8 +9,8 @@
 
 Name:        mozilla
 Summary:     Web browser and mail reader
-Version:     1.7.10
-Release:     3
+Version:     1.7.11
+Release:     1
 Epoch:       37
 License:     MPL/NPL/GPL/LGPL
 Source0:     mozilla-%{version}-source.tar.bz2
@@ -59,6 +59,7 @@
 Patch91:     mozilla-1.7.3-gtk-file-chooser-trunk.patch
 Patch92:     mozilla-1.7.3-gtk-file-chooser-updates.patch
 Patch93:     mozilla-1.7.3-gtk-file-chooser-morefixes.patch
+Patch94:     firefox-1.1-modal-filechooser.patch
 
 Patch100:    mozilla-1.7.3-pkgconfig.patch
 Patch101:    mozilla-1.7.3-gnome-vfs-default-app.patch
@@ -68,6 +69,12 @@
 Patch105:    firefox-1.0-remote-intern-atoms.patch
 Patch106:    firefox-1.0-uriloader.patch
 Patch107:    mozilla-1.7.8-imgloader-comarray.patch
+Patch108:    mozilla-1.7.11-embed-prompt-wrapping.patch
+Patch109:    mozilla-1.7.11-embed-prompt-modal.patch
+Patch110:    mozilla-1.7.11-embed-prompt-crash.patch
+Patch111:    mozilla-1.7.11-gtkembed-prompt-crash.patch
+Patch112:    mozilla-1.7.11-tooltip-borders.patch
+
 
 Buildroot:   %{_tmppath}/%{name}-root
 Prefix:      /usr
@@ -202,6 +209,7 @@
 %patch91 -p0
 %patch92 -p1
 %patch93 -p0
+%patch94 -p0
 
 # Fix up our pkg-config options
 %patch100 -p0
@@ -213,6 +221,11 @@
 %patch105 -p0
 %patch106 -p0
 %patch107 -p0
+%patch108 -p0
+%patch109 -p0
+%patch110 -p0
+%patch111 -p0
+%patch112 -p0
 
 # set up our default bookmarks
 /bin/cp %{SOURCE19} $RPM_BUILD_DIR/mozilla/profile/defaults/bookmarks.html
@@ -794,6 +807,14 @@
 %{mozdir}/xpt_link
 
 %changelog
+* Fri Jul 29 2005 Christopher Aillon <caillon at redhat.com> 37:1.7.11-1
+- Mozilla 1.7.11
+- Add patch to make the file chooser modal
+- Embedding prompt patches:
+  - Don't crash on opening or closing a prompt
+  - Better wrapping of long lines
+- Display borders for tooltips in embedded code.
+
 * Wed Jul 20 2005 Christopher Aillon <caillon at redhat.com> 37:1.7.10-3
 - Add firefox-1.0-pango-cairo.patch to get rid of the last few Xft
   references, fixing the "no fonts" problem.


Index: sources
===================================================================
RCS file: /cvs/dist/rpms/mozilla/devel/sources,v
retrieving revision 1.31
retrieving revision 1.32
diff -u -r1.31 -r1.32
--- sources	19 Jul 2005 19:37:21 -0000	1.31
+++ sources	30 Jul 2005 22:08:10 -0000	1.32
@@ -1 +1 @@
-27d4215b2a52aff47dcf328b3b135fa2  mozilla-1.7.10-source.tar.bz2
+c40e4d1a445cc31897462982c2aec333  mozilla-1.7.11-source.tar.bz2




More information about the fedora-cvs-commits mailing list