? 922796-options-not-modifiable.patch
? 932848-fix-setClick-no-really.patch
? 939398-no-theme-arguments-makes-notice.patch
? 939568-named-ajax-trigger-function.patch
? 954804-make-libraries.patch
? 961518-inline-css-no-preprocess.patch
? 969346-before-submit-should-be-before-send.patch
? ajax-commandinsert-736066-26.patch
? d7p3.sql
? drupal.ajax-event-handlers.17.patch
? drupal.ajax-lazy-load.153.patch
? drupal.ajax-link.52.patch
? drupal.ajax_lazy_load_561858_142.patch
? named-ajax-trigger-function.patch
? sites/all/modules
? sites/all/themes/blank
? sites/all/themes/jean
? sites/default/files
? sites/default/private
? sites/default/settings.php
Index: misc/ajax.js
===================================================================
RCS file: /cvs/drupal/drupal/misc/ajax.js,v
retrieving revision 1.28
diff -u -p -r1.28 ajax.js
--- misc/ajax.js	12 Nov 2010 03:02:43 -0000	1.28
+++ misc/ajax.js	20 Nov 2010 03:58:59 -0000
@@ -37,6 +37,8 @@ Drupal.behaviors.AJAX = {
     // Bind AJAX behaviors to all items showing the class.
     $('.use-ajax:not(.ajax-processed)').addClass('ajax-processed').each(function () {
       var element_settings = {};
+      // Clicked links look better with the throbber than the progress bar.
+      element_settings.progress = { 'type': 'throbber' };
 
       // For anchor tags, these will go to the target of the anchor rather
       // than the usual location.
@@ -146,6 +148,10 @@ Drupal.ajax = function (base, element, e
       ajax.ajaxing = true;
       return ajax.beforeSubmit(form_values, element_settings, options);
     },
+    beforeSend: function (xmlhttprequest) {
+      ajax.ajaxing = true;
+      return ajax.beforeSend(xmlhttprequest, ajax.options);
+    },
     success: function (response, status) {
       // Sanity check for browser support (object expected).
       // When using iFrame uploads, responses must be returned as a string.
@@ -213,7 +219,7 @@ Drupal.ajax = function (base, element, e
 /**
  * Handler for the form serialization.
  *
- * Runs before the beforeSubmit() handler (see below), and unlike that one, runs
+ * Runs before the beforeSend() handler (see below), and unlike that one, runs
  * before field data is collected.
  */
 Drupal.ajax.prototype.beforeSerialize = function (element, options) {
@@ -250,9 +256,17 @@ Drupal.ajax.prototype.beforeSerialize = 
 };
 
 /**
- * Handler for the form redirection submission.
+ * Modify form values prior to form submission.
  */
 Drupal.ajax.prototype.beforeSubmit = function (form_values, element, options) {
+  // This function is left empty to make it simple to override for modules
+  // that wish to add functionality here.
+}
+
+/**
+ * Prepare the AJAX request before it is sent.
+ */
+Drupal.ajax.prototype.beforeSend = function (xmlhttprequest, options) {
   // Disable the element that received the change.
   $(this.element).addClass('progress-disabled').attr('disabled', true);
 
