r43492 - Code Review

From MediaWiki.org

Jump to: navigation, search
Repository:MediaWiki
Revision:r43491 | r43492 (on ViewVC) | r43493 >
Date:12:47, 14 November 2008
Author:daniel
Status:ok
Tags:
Comment:don't use <a> for clickable bullets; improve usability (tab navigation) in text browsers
Modified paths:

Diff [purge]

Index: trunk/extensions/CategoryTree/CategoryTree.css
===================================================================
--- trunk/extensions/CategoryTree/CategoryTree.css	(revision 43491)
+++ trunk/extensions/CategoryTree/CategoryTree.css	(revision 43492)
@@ -16,6 +16,12 @@
 	margin-left: 1.5ex;
 }
 
+
+.CategoryTreeBullet {
+	cursor: pointer;
+	cursor: hand; /* hack for MSIE 5.0 and 5.5 */
+}
+
 .CategoryTreeBullet a,
 .CategoryTreeBullet a:link,
 .CategoryTreeBullet a:active,
Index: trunk/extensions/CategoryTree/CategoryTreeFunctions.php
===================================================================
--- trunk/extensions/CategoryTree/CategoryTreeFunctions.php	(revision 43491)
+++ trunk/extensions/CategoryTree/CategoryTreeFunctions.php	(revision 43492)
@@ -654,7 +654,7 @@
 				else $count = $cat->getPageCount();
 			}
 	
-			$linkattr= array( 'href' => $wikiLink );
+			$linkattr= array( );
 			if ( $load ) $linkattr[ 'id' ] = $load;
 
 			$linkattr[ 'class' ] = "CategoryTreeToggle";
@@ -665,21 +665,22 @@
 			}
 			else*/ 
 			if ( $children == 0 || $loadchildren ) {
-				$tag = 'a';
+				$tag = 'span';
 				if ( $count === 0 ) $txt = wfMsgNoTrans( 'categorytree-empty-bullet' );
 				else $txt = wfMsgNoTrans( 'categorytree-expand-bullet' );
-				$linkattr[ 'onclick' ] = "this.href='javascript:void(0)'; categoryTreeExpandNode('".Xml::escapeJsString($key)."',".$this->getOptionsAsJsStructure().",this);";
+				$linkattr[ 'onclick' ] = "if (this.href) this.href='javascript:void(0)'; categoryTreeExpandNode('".Xml::escapeJsString($key)."',".$this->getOptionsAsJsStructure().",this);";
 				# Don't load this message for ajax requests, so that we don't have to initialise $wgLang
 				$linkattr[ 'title' ] = $this->mIsAjaxRequest ? '##LOAD##' : wfMsgNoTrans('categorytree-expand');
 			}
 			else {
-				$tag = 'a';
+				$tag = 'span';
 				$txt = wfMsgNoTrans( 'categorytree-collapse-bullet' );
-				$linkattr[ 'onclick' ] = "this.href='javascript:void(0)'; categoryTreeCollapseNode('".Xml::escapeJsString($key)."',".$this->getOptionsAsJsStructure().",this);";
+				$linkattr[ 'onclick' ] = "if (this.href) this.href='javascript:void(0)'; categoryTreeCollapseNode('".Xml::escapeJsString($key)."',".$this->getOptionsAsJsStructure().",this);";
 				$linkattr[ 'title' ] = wfMsgNoTrans('categorytree-collapse');
 				$linkattr[ 'class' ] .= ' CategoryTreeLoaded';
 			}
 
+			if ( $tag == 'a' ) $linkattr[ 'href' ] = $wikiLink;
 			$s .= Xml::openElement( $tag, $linkattr ) . $txt . Xml::closeElement( $tag ) . ' ';
 		} else {
 			$s .= wfMsgNoTrans( 'categorytree-page-bullet' );

Follow-up revisions

RevisionCommit summaryAuthorDate
r43497Bump version number for changed CSS per r43492.raymond16:41, 14 November 2008

Status & tagging log

Views
Toolbox