Index: misc/collapse.js
===================================================================
RCS file: /cvs/drupal/drupal/misc/collapse.js,v
retrieving revision 1.23
diff -u -p -r1.23 collapse.js
--- misc/collapse.js 27 Apr 2009 20:19:35 -0000 1.23
+++ misc/collapse.js 29 Aug 2009 22:56:03 -0000
@@ -10,6 +10,7 @@ Drupal.toggleFieldset = function (fields
// that alters the default submit button behavior.
var content = $('> div:not(.action)', fieldset);
$(fieldset).removeClass('collapsed');
+ $('> legend > a > img', fieldset).replaceWith(Drupal.collapseLinkImage(false));
content.hide();
content.slideDown({
duration: 'fast',
@@ -29,6 +30,7 @@ Drupal.toggleFieldset = function (fields
$('div.action', fieldset).hide();
var content = $('> div:not(.action)', fieldset).slideUp('fast', function () {
$(this.parentNode).addClass('collapsed');
+ $('> legend > a > img', this.parentNode).replaceWith(Drupal.collapseLinkImage(true));
this.parentNode.animating = false;
});
}
@@ -71,7 +73,7 @@ Drupal.behaviors.collapse = {
// Turn the legend into a clickable link and wrap the contents of the fieldset
// in a div for easier animation
var text = this.innerHTML;
- $(this).empty().append($('' + text + '').click(function () {
+ $(this).empty().append($('' + Drupal.collapseLinkImage(true) + ' ' + text + '' + '').click(function () {
var fieldset = $(this).parents('fieldset:first')[0];
// Don't animate multiple times
if (!fieldset.animating) {
@@ -88,4 +90,31 @@ Drupal.behaviors.collapse = {
}
};
+/**
+ * Construct the image for the collapse/expand link.
+ *
+ * Parameters:
+ * collapsed: true if collapsed, false if expanded
+ *
+ * Returns the HTML for the img element.
+ */
+Drupal.collapseLinkImage = function (collapsed) {
+ if (typeof(Drupal.settings.collapse) === 'undefined') {
+ Drupal.settings.collapse = new Array();
+ }
+ if (collapsed) {
+ if (typeof(Drupal.settings.collapse.img_src_collapsed) === 'undefined') {
+ Drupal.settings.collapse.img_src_collapsed = 'misc/menu-collapsed.png';
+ }
+ var img_src_collapsed = Drupal.settings.basePath + Drupal.settings.collapse.img_src_collapsed;
+ return '';
+ } else {
+ if (typeof(Drupal.settings.collapse.img_src_expanded) === 'undefined') {
+ Drupal.settings.collapse.img_src_expanded = 'misc/menu-expanded.png';
+ }
+ var img_src_expanded = Drupal.settings.basePath + Drupal.settings.collapse.img_src_expanded;
+ return '';
+ }
+};
+
})(jQuery);
Index: modules/system/system.css
===================================================================
RCS file: /cvs/drupal/drupal/modules/system/system.css,v
retrieving revision 1.61
diff -u -p -r1.61 system.css
--- modules/system/system.css 24 Aug 2009 03:11:34 -0000 1.61
+++ modules/system/system.css 29 Aug 2009 22:56:03 -0000
@@ -323,10 +323,18 @@ html.js fieldset.collapsed legend {
display: block;
overflow: hidden;
}
-html.js fieldset.collapsible legend a {
+/* Only display specific elements of collapsed fieldsets. */
+html.js fieldset.collapsible legend a,
+html.js fieldset.collapsible legend a img,
+html.js fieldset.collapsible legend a span {
display: inline;
- padding-left: 15px; /* LTR */
- background: url(../../misc/menu-expanded.png) 5px 75% no-repeat; /* LTR */
+}
+html.js fieldset.collapsible legend a {
+ padding-left: 5px; /* LTR */
+ text-decoration: none;
+}
+html.js fieldset.collapsible legend a span.collapser {
+ text-decoration: underline;
}
html.js fieldset.collapsible legend span.summary {
display: inline;
@@ -334,10 +342,6 @@ html.js fieldset.collapsible legend span
color: #999;
margin-left: 0.5em;
}
-html.js fieldset.collapsed legend a {
- background-image: url(../../misc/menu-collapsed.png); /* LTR */
- background-position: 5px 50%; /* LTR */
-}
/* Note: IE-only fix due to '* html' (breaks Konqueror otherwise). */
* html.js fieldset.collapsed legend,
* html.js fieldset.collapsed legend *,
Index: themes/garland/style.css
===================================================================
RCS file: /cvs/drupal/drupal/themes/garland/style.css,v
retrieving revision 1.63
diff -u -p -r1.63 style.css
--- themes/garland/style.css 17 Aug 2009 19:05:26 -0000 1.63
+++ themes/garland/style.css 29 Aug 2009 22:56:03 -0000
@@ -859,16 +859,15 @@ html.js fieldset.collapsed {
}
html.js fieldset.collapsible legend a {
- padding-left: 2em; /* LTR */
- background: url(images/menu-expanded.gif) no-repeat 0% 50%; /* LTR */
+ padding-left: 0;
}
-html.js fieldset.collapsible legend span.summary {
- color: #898989;
+html.js fieldset.collapsible legend a span.collapser {
+ padding-left: 1em;
}
-html.js fieldset.collapsed legend a {
- background: url(images/menu-collapsed.gif) no-repeat 0% 50%; /* LTR */
+html.js fieldset.collapsible legend span.summary {
+ color: #898989;
}
/**
Index: themes/seven/style.css
===================================================================
RCS file: /cvs/drupal/drupal/themes/seven/style.css,v
retrieving revision 1.15
diff -u -p -r1.15 style.css
--- themes/seven/style.css 27 Aug 2009 20:33:05 -0000 1.15
+++ themes/seven/style.css 29 Aug 2009 22:56:03 -0000
@@ -457,10 +457,20 @@ html.js fieldset.collapsed legend,
html.js fieldset.collapsed legend * {
display: block;
}
+
+html.js fieldset.collapsible legend a span.collapser {
+ text-decoration: none;
+ display: inline;
+}
+
+html.js fieldset.collapsible legend a:hover span.collapser {
+ text-decoration: underline;
+}
+
html.js fieldset.collapsed {
border-width: 1px;
margin-bottom: 10px;
- padding: 13px;
+ padding: 13px 13px 13px 0px;
}
fieldset fieldset {