<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><meta http-equiv="content-type" content="text/html; charset=utf-8" /><style type="text/css"><!--
#msg dl { border: 1px #006 solid; background: #369; padding: 6px; color: #fff; }
#msg dt { float: left; width: 6em; font-weight: bold; }
#msg dt:after { content:':';}
#msg dl, #msg dt, #msg ul, #msg li, #header, #footer { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; }
#msg dl a { font-weight: bold}
#msg dl a:link { color:#fc3; }
#msg dl a:active { color:#ff0; }
#msg dl a:visited { color:#cc6; }
h3 { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; font-weight: bold; }
#msg pre { overflow: auto; background: #ffc; border: 1px #fc0 solid; padding: 6px; }
#msg ul, pre { overflow: auto; }
#header, #footer { color: #fff; background: #636; border: 1px #300 solid; padding: 6px; }
#patch { width: 100%; }
#patch h4 {font-family: verdana,arial,helvetica,sans-serif;font-size:10pt;padding:8px;background:#369;color:#fff;margin:0;}
#patch .propset h4, #patch .binary h4 {margin:0;}
#patch pre {padding:0;line-height:1.2em;margin:0;}
#patch .diff {width:100%;background:#eee;padding: 0 0 10px 0;overflow:auto;}
#patch .propset .diff, #patch .binary .diff {padding:10px 0;}
#patch span {display:block;padding:0 10px;}
#patch .modfile, #patch .addfile, #patch .delfile, #patch .propset, #patch .binary, #patch .copfile {border:1px solid #ccc;margin:10px 0;}
#patch ins {background:#dfd;text-decoration:none;display:block;padding:0 10px;}
#patch del {background:#fdd;text-decoration:none;display:block;padding:0 10px;}
#patch .lines, .info {color:#888;background:#fff;}
--></style>
<title>[14718] trunk: Remove autocomplete and codepress.</title>
</head>
<body>
<div id="msg">
<dl>
<dt>Revision</dt> <dd><a href="http://trac.wordpress.org/changeset/14718">14718</a></dd>
<dt>Author</dt> <dd>nacin</dd>
<dt>Date</dt> <dd>2010-05-18 03:48:22 +0000 (Tue, 18 May 2010)</dd>
</dl>
<h3>Log Message</h3>
<pre>Remove autocomplete and codepress. for autocomplete, see <a href="http://trac.wordpress.org/ticket/13283">#13283</a>. for codepress, see <a href="http://trac.wordpress.org/ticket/13307">#13307</a>.</pre>
<h3>Modified Paths</h3>
<ul>
<li><a href="#trunkwpadmincsswpadmindevcss">trunk/wp-admin/css/wp-admin.dev.css</a></li>
<li><a href="#trunkwpadminincludesdeprecatedphp">trunk/wp-admin/includes/deprecated.php</a></li>
<li><a href="#trunkwpadminincludesmiscphp">trunk/wp-admin/includes/misc.php</a></li>
<li><a href="#trunkwpadminplugineditorphp">trunk/wp-admin/plugin-editor.php</a></li>
<li><a href="#trunkwpadminthemeeditorphp">trunk/wp-admin/theme-editor.php</a></li>
<li><a href="#trunkwpincludesscriptloaderphp">trunk/wp-includes/script-loader.php</a></li>
</ul>
<h3>Removed Paths</h3>
<ul>
<li><a href="#trunkwpincludesjsjqueryautocompletedevjs">trunk/wp-includes/js/jquery/autocomplete.dev.js</a></li>
<li><a href="#trunkwpincludesjsjqueryautocompletejs">trunk/wp-includes/js/jquery/autocomplete.js</a></li>
</ul>
</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkwpadmincsswpadmindevcss"></a>
<div class="modfile"><h4>Modified: trunk/wp-admin/css/wp-admin.dev.css (14717 => 14718)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/wp-admin/css/wp-admin.dev.css        2010-05-18 01:34:01 UTC (rev 14717)
+++ trunk/wp-admin/css/wp-admin.dev.css        2010-05-18 03:48:22 UTC (rev 14718)
</span><span class="lines">@@ -2155,8 +2155,7 @@
</span><span class="cx"> /* Global classes */
</span><span class="cx">
</span><span class="cx"> .wp-hidden-children .wp-hidden-child,
</span><del>-.ui-tabs-hide,
-#codepress-off {
</del><ins>+.ui-tabs-hide {
</ins><span class="cx">         display: none;
</span><span class="cx"> }
</span><span class="cx">
</span></span></pre></div>
<a id="trunkwpadminincludesdeprecatedphp"></a>
<div class="modfile"><h4>Modified: trunk/wp-admin/includes/deprecated.php (14717 => 14718)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/wp-admin/includes/deprecated.php        2010-05-18 01:34:01 UTC (rev 14717)
+++ trunk/wp-admin/includes/deprecated.php        2010-05-18 03:48:22 UTC (rev 14718)
</span><span class="lines">@@ -162,4 +162,39 @@
</span><span class="cx">         return unregister_setting( $option_group, $option_name, $sanitize_callback );
</span><span class="cx"> }
</span><span class="cx">
</span><ins>+/**
+ * Determines the language to use for CodePress syntax highlighting.
+ *
+ * @since 2.8.0
+ * @deprecated 3.0.0
+ *
+ * @param string $filename
+**/
+function codepress_get_lang( $filename ) {
+        _deprecated_function( __FUNCTION__, '3.0' );
+        return;
+}
+
+/**
+ * Adds Javascript required to make CodePress work on the theme/plugin editors.
+ *
+ * @since 2.8.0
+ * @deprecated 3.0.0
+**/
+function codepress_footer_js() {
+        _deprecated_function( __FUNCTION__, '3.0' );
+        return;
+}
+
+/**
+ * Determine whether to use CodePress.
+ *
+ * @since 2.8
+ * @deprecated 3.0.0
+**/
+function use_codepress() {
+        _deprecated_function( __FUNCTION__, '3.0' );
+        return;
+}
+
</ins><span class="cx"> ?>
</span><span class="cx">\ No newline at end of file
</span></span></pre></div>
<a id="trunkwpadminincludesmiscphp"></a>
<div class="modfile"><h4>Modified: trunk/wp-admin/includes/misc.php (14717 => 14718)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/wp-admin/includes/misc.php        2010-05-18 01:34:01 UTC (rev 14717)
+++ trunk/wp-admin/includes/misc.php        2010-05-18 03:48:22 UTC (rev 14718)
</span><span class="lines">@@ -313,76 +313,6 @@
</span><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> /**
</span><del>- * Determines the language to use for CodePress syntax highlighting,
- * based only on a filename.
- *
- * @since 2.8
- *
- * @param string $filename The name of the file to be highlighting
-**/
-function codepress_get_lang( $filename ) {
-        $codepress_supported_langs = apply_filters( 'codepress_supported_langs',
-                                                                        array( '.css' => 'css',
-                                                                                        '.js' => 'javascript',
-                                                                                        '.php' => 'php',
-                                                                                        '.html' => 'html',
-                                                                                        '.htm' => 'html',
-                                                                                        '.txt' => 'text'
-                                                                                        ) );
-        $extension = substr( $filename, strrpos( $filename, '.' ) );
-        if ( $extension && array_key_exists( $extension, $codepress_supported_langs ) )
-                return $codepress_supported_langs[$extension];
-
-        return 'generic';
-}
-
-/**
- * Adds Javascript required to make CodePress work on the theme/plugin editors.
- *
- * This code is attached to the action admin_print_footer_scripts.
- *
- * @since 2.8
-**/
-function codepress_footer_js() {
-        // Script-loader breaks CP's automatic path-detection, thus CodePress.path
-        // CP edits in an iframe, so we need to grab content back into normal form
-        ?><script type="text/javascript">
-/* <![CDATA[ */
-var codepress_path = '<?php echo includes_url('js/codepress/'); ?>';
-jQuery('#template').submit(function(){
-        if (jQuery('#newcontent_cp').length)
-                jQuery('#newcontent_cp').val(newcontent.getCode()).removeAttr('disabled');
-});
-jQuery('#codepress-on').hide();
-jQuery('#codepress-off').show();
-/* ]]> */
-</script>
-<?php
-}
-
-/**
- * Determine whether to use CodePress.
- *
- * @since 2.8
-**/
-function use_codepress() {
-
-        if ( isset($_GET['codepress']) ) {
-                $on = 'on' == $_GET['codepress'] ? 'on' : 'off';
-                set_user_setting( 'codepress', $on );
-        } else {
-                $on = get_user_setting('codepress', 'on');
-        }
-
-        if ( 'on' == $on ) {
-                add_action( 'admin_print_footer_scripts', 'codepress_footer_js' );
-                return true;
-        }
-
-        return false;
-}
-
-/**
</del><span class="cx"> * Saves option for number of rows when listing posts, pages, comments, etc.
</span><span class="cx"> *
</span><span class="cx"> * @since 2.8
</span></span></pre></div>
<a id="trunkwpadminplugineditorphp"></a>
<div class="modfile"><h4>Modified: trunk/wp-admin/plugin-editor.php (14717 => 14718)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/wp-admin/plugin-editor.php        2010-05-18 01:34:01 UTC (rev 14717)
+++ trunk/wp-admin/plugin-editor.php        2010-05-18 03:48:22 UTC (rev 14718)
</span><span class="lines">@@ -127,8 +127,6 @@
</span><span class="cx">         }
</span><span class="cx">
</span><span class="cx">         $content = htmlspecialchars( $content );
</span><del>-        $codepress_lang = codepress_get_lang($real_file);
-
</del><span class="cx">         ?>
</span><span class="cx"> <?php if (isset($_GET['a'])) : ?>
</span><span class="cx"> <div id="message" class="updated"><p><?php _e('File edited successfully.') ?></p></div>
</span><span class="lines">@@ -206,7 +204,7 @@
</span><span class="cx"> </div>
</span><span class="cx"> <form name="template" id="template" action="plugin-editor.php" method="post">
</span><span class="cx">         <?php wp_nonce_field('edit-plugin_' . $file) ?>
</span><del>-                <div><textarea cols="70" rows="25" name="newcontent" id="newcontent" tabindex="1" class="codepress <?php echo $codepress_lang ?>"><?php echo $content ?></textarea>
</del><ins>+                <div><textarea cols="70" rows="25" name="newcontent" id="newcontent" tabindex="1"><?php echo $content ?></textarea>
</ins><span class="cx">                 <input type="hidden" name="action" value="update" />
</span><span class="cx">                 <input type="hidden" name="file" value="<?php echo esc_attr($file) ?>" />
</span><span class="cx">                 <input type="hidden" name="plugin" value="<?php echo esc_attr($plugin) ?>" />
</span></span></pre></div>
<a id="trunkwpadminthemeeditorphp"></a>
<div class="modfile"><h4>Modified: trunk/wp-admin/theme-editor.php (14717 => 14718)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/wp-admin/theme-editor.php        2010-05-18 01:34:01 UTC (rev 14717)
+++ trunk/wp-admin/theme-editor.php        2010-05-18 03:48:22 UTC (rev 14718)
</span><span class="lines">@@ -102,7 +102,6 @@
</span><span class="cx">                 }
</span><span class="cx">
</span><span class="cx">                 $content = htmlspecialchars( $content );
</span><del>-                $codepress_lang = codepress_get_lang($file);
</del><span class="cx">         }
</span><span class="cx">
</span><span class="cx">         ?>
</span><span class="lines">@@ -195,7 +194,7 @@
</span><span class="cx"> <?php if (!$error) { ?>
</span><span class="cx">         <form name="template" id="template" action="theme-editor.php" method="post">
</span><span class="cx">         <?php wp_nonce_field('edit-theme_' . $file . $theme) ?>
</span><del>-                 <div><textarea cols="70" rows="25" name="newcontent" id="newcontent" tabindex="1" class="codepress <?php echo $codepress_lang ?>"><?php echo $content ?></textarea>
</del><ins>+                 <div><textarea cols="70" rows="25" name="newcontent" id="newcontent" tabindex="1"><?php echo $content ?></textarea>
</ins><span class="cx">                  <input type="hidden" name="action" value="update" />
</span><span class="cx">                  <input type="hidden" name="file" value="<?php echo esc_attr($file) ?>" />
</span><span class="cx">                  <input type="hidden" name="theme" value="<?php echo esc_attr($theme) ?>" />
</span></span></pre></div>
<a id="trunkwpincludesjsjqueryautocompletedevjs"></a>
<div class="delfile"><h4>Deleted: trunk/wp-includes/js/jquery/autocomplete.dev.js (14717 => 14718)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/wp-includes/js/jquery/autocomplete.dev.js        2010-05-18 01:34:01 UTC (rev 14717)
+++ trunk/wp-includes/js/jquery/autocomplete.dev.js        2010-05-18 03:48:22 UTC (rev 14718)
</span><span class="lines">@@ -1,808 +0,0 @@
</span><del>-/*
- * jQuery Autocomplete plugin 1.1
- *
- * Copyright (c) 2009 Jörn Zaefferer
- *
- * Dual licensed under the MIT and GPL licenses:
- * http://www.opensource.org/licenses/mit-license.php
- * http://www.gnu.org/licenses/gpl.html
- *
- * Revision: $Id: jquery.autocomplete.js 15 2009-08-22 10:30:27Z joern.zaefferer $
- */
-
-;(function($) {
-        
-$.fn.extend({
-        autocomplete: function(urlOrData, options) {
-                var isUrl = typeof urlOrData == "string";
-                options = $.extend({}, $.Autocompleter.defaults, {
-                        url: isUrl ? urlOrData : null,
-                        data: isUrl ? null : urlOrData,
-                        delay: isUrl ? $.Autocompleter.defaults.delay : 10,
-                        max: options && !options.scroll ? 10 : 150
-                }, options);
-                
-                // if highlight is set to false, replace it with a do-nothing function
-                options.highlight = options.highlight || function(value) { return value; };
-                
-                // if the formatMatch option is not specified, then use formatItem for backwards compatibility
-                options.formatMatch = options.formatMatch || options.formatItem;
-                
-                return this.each(function() {
-                        new $.Autocompleter(this, options);
-                });
-        },
-        result: function(handler) {
-                return this.bind("result", handler);
-        },
-        search: function(handler) {
-                return this.trigger("search", [handler]);
-        },
-        flushCache: function() {
-                return this.trigger("flushCache");
-        },
-        setOptions: function(options){
-                return this.trigger("setOptions", [options]);
-        },
-        unautocomplete: function() {
-                return this.trigger("unautocomplete");
-        }
-});
-
-$.Autocompleter = function(input, options) {
-
-        var KEY = {
-                UP: 38,
-                DOWN: 40,
-                DEL: 46,
-                TAB: 9,
-                RETURN: 13,
-                ESC: 27,
-                COMMA: 188,
-                PAGEUP: 33,
-                PAGEDOWN: 34,
-                BACKSPACE: 8
-        };
-
-        // Create $ object for input element
-        var $input = $(input).attr("autocomplete", "off").addClass(options.inputClass);
-
-        var timeout;
-        var previousValue = "";
-        var cache = $.Autocompleter.Cache(options);
-        var hasFocus = 0;
-        var lastKeyPressCode;
-        var config = {
-                mouseDownOnSelect: false
-        };
-        var select = $.Autocompleter.Select(options, input, selectCurrent, config);
-        
-        var blockSubmit;
-        
-        // prevent form submit in opera when selecting with return key
-        $.browser.opera && $(input.form).bind("submit.autocomplete", function() {
-                if (blockSubmit) {
-                        blockSubmit = false;
-                        return false;
-                }
-        });
-        
-        // only opera doesn't trigger keydown multiple times while pressed, others don't work with keypress at all
-        $input.bind(($.browser.opera ? "keypress" : "keydown") + ".autocomplete", function(event) {
-                // a keypress means the input has focus
-                // avoids issue where input had focus before the autocomplete was applied
-                hasFocus = 1;
-                // track last key pressed
-                lastKeyPressCode = event.keyCode;
-                switch(event.keyCode) {
-                
-                        case KEY.UP:
-                                event.preventDefault();
-                                if ( select.visible() ) {
-                                        select.prev();
-                                } else {
-                                        onChange(0, true);
-                                }
-                                break;
-                                
-                        case KEY.DOWN:
-                                event.preventDefault();
-                                if ( select.visible() ) {
-                                        select.next();
-                                } else {
-                                        onChange(0, true);
-                                }
-                                break;
-                                
-                        case KEY.PAGEUP:
-                                event.preventDefault();
-                                if ( select.visible() ) {
-                                        select.pageUp();
-                                } else {
-                                        onChange(0, true);
-                                }
-                                break;
-                                
-                        case KEY.PAGEDOWN:
-                                event.preventDefault();
-                                if ( select.visible() ) {
-                                        select.pageDown();
-                                } else {
-                                        onChange(0, true);
-                                }
-                                break;
-                        
-                        // matches also semicolon
-                        case options.multiple && $.trim(options.multipleSeparator) == "," && KEY.COMMA:
-                        case KEY.TAB:
-                        case KEY.RETURN:
-                                if( selectCurrent() ) {
-                                        // stop default to prevent a form submit, Opera needs special handling
-                                        event.preventDefault();
-                                        blockSubmit = true;
-                                        return false;
-                                }
-                                break;
-                                
-                        case KEY.ESC:
-                                select.hide();
-                                break;
-                                
-                        default:
-                                clearTimeout(timeout);
-                                timeout = setTimeout(onChange, options.delay);
-                                break;
-                }
-        }).focus(function(){
-                // track whether the field has focus, we shouldn't process any
-                // results if the field no longer has focus
-                hasFocus++;
-        }).blur(function() {
-                hasFocus = 0;
-                if (!config.mouseDownOnSelect) {
-                        hideResults();
-                }
-        }).click(function() {
-                // show select when clicking in a focused field
-                if ( hasFocus++ > 1 && !select.visible() ) {
-                        onChange(0, true);
-                }
-        }).bind("search", function() {
-                // TODO why not just specifying both arguments?
-                var fn = (arguments.length > 1) ? arguments[1] : null;
-                function findValueCallback(q, data) {
-                        var result;
-                        if( data && data.length ) {
-                                for (var i=0; i < data.length; i++) {
-                                        if( data[i].result.toLowerCase() == q.toLowerCase() ) {
-                                                result = data[i];
-                                                break;
-                                        }
-                                }
-                        }
-                        if( typeof fn == "function" ) fn(result);
-                        else $input.trigger("result", result && [result.data, result.value]);
-                }
-                $.each(trimWords($input.val()), function(i, value) {
-                        request(value, findValueCallback, findValueCallback);
-                });
-        }).bind("flushCache", function() {
-                cache.flush();
-        }).bind("setOptions", function() {
-                $.extend(options, arguments[1]);
-                // if we've updated the data, repopulate
-                if ( "data" in arguments[1] )
-                        cache.populate();
-        }).bind("unautocomplete", function() {
-                select.unbind();
-                $input.unbind();
-                $(input.form).unbind(".autocomplete");
-        });
-        
-        
-        function selectCurrent() {
-                var selected = select.selected();
-                if( !selected )
-                        return false;
-                
-                var v = selected.result;
-                previousValue = v;
-                
-                if ( options.multiple ) {
-                        var words = trimWords($input.val());
-                        if ( words.length > 1 ) {
-                                var seperator = options.multipleSeparator.length;
-                                var cursorAt = $(input).selection().start;
-                                var wordAt, progress = 0;
-                                $.each(words, function(i, word) {
-                                        progress += word.length;
-                                        if (cursorAt <= progress) {
-                                                wordAt = i;
-                                                return false;
-                                        }
-                                        progress += seperator;
-                                });
-                                words[wordAt] = v;
-                                // TODO this should set the cursor to the right position, but it gets overriden somewhere
-                                //$.Autocompleter.Selection(input, progress + seperator, progress + seperator);
-                                v = words.join( options.multipleSeparator );
-                        }
-                        v += options.multipleSeparator;
-                }
-                
-                $input.val(v);
-                hideResultsNow();
-                $input.trigger("result", [selected.data, selected.value]);
-                return true;
-        }
-        
-        function onChange(crap, skipPrevCheck) {
-                if( lastKeyPressCode == KEY.DEL ) {
-                        select.hide();
-                        return;
-                }
-                
-                var currentValue = $input.val();
-                
-                if ( !skipPrevCheck && currentValue == previousValue )
-                        return;
-                
-                previousValue = currentValue;
-                
-                currentValue = lastWord(currentValue);
-                if ( currentValue.length >= options.minChars) {
-                        $input.addClass(options.loadingClass);
-                        if (!options.matchCase)
-                                currentValue = currentValue.toLowerCase();
-                        request(currentValue, receiveData, hideResultsNow);
-                } else {
-                        stopLoading();
-                        select.hide();
-                }
-        };
-        
-        function trimWords(value) {
-                if (!value)
-                        return [""];
-                if (!options.multiple)
-                        return [$.trim(value)];
-                return $.map(value.split(options.multipleSeparator), function(word) {
-                        return $.trim(value).length ? $.trim(word) : null;
-                });
-        }
-        
-        function lastWord(value) {
-                if ( !options.multiple )
-                        return value;
-                var words = trimWords(value);
-                if (words.length == 1)
-                        return words[0];
-                var cursorAt = $(input).selection().start;
-                if (cursorAt == value.length) {
-                        words = trimWords(value)
-                } else {
-                        words = trimWords(value.replace(value.substring(cursorAt), ""));
-                }
-                return words[words.length - 1];
-        }
-        
-        // fills in the input box w/the first match (assumed to be the best match)
-        // q: the term entered
-        // sValue: the first matching result
-        function autoFill(q, sValue){
-                // autofill in the complete box w/the first match as long as the user hasn't entered in more data
-                // if the last user key pressed was backspace, don't autofill
-                if( options.autoFill && (lastWord($input.val()).toLowerCase() == q.toLowerCase()) && lastKeyPressCode != KEY.BACKSPACE ) {
-                        // fill in the value (keep the case the user has typed)
-                        $input.val($input.val() + sValue.substring(lastWord(previousValue).length));
-                        // select the portion of the value not typed by the user (so the next character will erase)
-                        $(input).selection(previousValue.length, previousValue.length + sValue.length);
-                }
-        };
-
-        function hideResults() {
-                clearTimeout(timeout);
-                timeout = setTimeout(hideResultsNow, 200);
-        };
-
-        function hideResultsNow() {
-                var wasVisible = select.visible();
-                select.hide();
-                clearTimeout(timeout);
-                stopLoading();
-                if (options.mustMatch) {
-                        // call search and run callback
-                        $input.search(
-                                function (result){
-                                        // if no value found, clear the input box
-                                        if( !result ) {
-                                                if (options.multiple) {
-                                                        var words = trimWords($input.val()).slice(0, -1);
-                                                        $input.val( words.join(options.multipleSeparator) + (words.length ? options.multipleSeparator : "") );
-                                                }
-                                                else {
-                                                        $input.val( "" );
-                                                        $input.trigger("result", null);
-                                                }
-                                        }
-                                }
-                        );
-                }
-        };
-
-        function receiveData(q, data) {
-                if ( data && data.length && hasFocus ) {
-                        stopLoading();
-                        select.display(data, q);
-                        autoFill(q, data[0].value);
-                        select.show();
-                } else {
-                        hideResultsNow();
-                }
-        };
-
-        function request(term, success, failure) {
-                if (!options.matchCase)
-                        term = term.toLowerCase();
-                var data = cache.load(term);
-                // recieve the cached data
-                if (data && data.length) {
-                        success(term, data);
-                // if an AJAX url has been supplied, try loading the data now
-                } else if( (typeof options.url == "string") && (options.url.length > 0) ){
-                        
-                        var extraParams = {
-                                timestamp: +new Date()
-                        };
-                        $.each(options.extraParams, function(key, param) {
-                                extraParams[key] = typeof param == "function" ? param() : param;
-                        });
-                        
-                        $.ajax({
-                                // try to leverage ajaxQueue plugin to abort previous requests
-                                mode: "abort",
-                                // limit abortion to this input
-                                port: "autocomplete" + input.name,
-                                dataType: options.dataType,
-                                url: options.url,
-                                data: $.extend({
-                                        q: lastWord(term),
-                                        limit: options.max
-                                }, extraParams),
-                                success: function(data) {
-                                        var parsed = options.parse && options.parse(data) || parse(data);
-                                        cache.add(term, parsed);
-                                        success(term, parsed);
-                                }
-                        });
-                } else {
-                        // if we have a failure, we need to empty the list -- this prevents the the [TAB] key from selecting the last successful match
-                        select.emptyList();
-                        failure(term);
-                }
-        };
-        
-        function parse(data) {
-                var parsed = [];
-                var rows = data.split("\n");
-                for (var i=0; i < rows.length; i++) {
-                        var row = $.trim(rows[i]);
-                        if (row) {
-                                row = row.split("|");
-                                parsed[parsed.length] = {
-                                        data: row,
-                                        value: row[0],
-                                        result: options.formatResult && options.formatResult(row, row[0]) || row[0]
-                                };
-                        }
-                }
-                return parsed;
-        };
-
-        function stopLoading() {
-                $input.removeClass(options.loadingClass);
-        };
-
-};
-
-$.Autocompleter.defaults = {
-        inputClass: "ac_input",
-        resultsClass: "ac_results",
-        loadingClass: "ac_loading",
-        minChars: 1,
-        delay: 400,
-        matchCase: false,
-        matchSubset: true,
-        matchContains: false,
-        cacheLength: 10,
-        max: 100,
-        mustMatch: false,
-        extraParams: {},
-        selectFirst: true,
-        formatItem: function(row) { return row[0]; },
-        formatMatch: null,
-        autoFill: false,
-        width: 0,
-        multiple: false,
-        multipleSeparator: ", ",
-        highlight: function(value, term) {
-                return value.replace(new RegExp("(?![^&;]+;)(?!<[^<>]*)(" + term.replace(/([\^\$\(\)\[\]\{\}\*\.\+\?\|\\])/gi, "\\$1") + ")(?![^<>]*>)(?![^&;]+;)", "gi"), "<strong>$1</strong>");
-        },
- scroll: true,
- scrollHeight: 180
-};
-
-$.Autocompleter.Cache = function(options) {
-
-        var data = {};
-        var length = 0;
-        
-        function matchSubset(s, sub) {
-                if (!options.matchCase)
-                        s = s.toLowerCase();
-                var i = s.indexOf(sub);
-                if (options.matchContains == "word"){
-                        i = s.toLowerCase().search("\\b" + sub.toLowerCase());
-                }
-                if (i == -1) return false;
-                return i == 0 || options.matchContains;
-        };
-        
-        function add(q, value) {
-                if (length > options.cacheLength){
-                        flush();
-                }
-                if (!data[q]){
-                        length++;
-                }
-                data[q] = value;
-        }
-        
-        function populate(){
-                if( !options.data ) return false;
-                // track the matches
-                var stMatchSets = {},
-                        nullData = 0;
-
-                // no url was specified, we need to adjust the cache length to make sure it fits the local data store
-                if( !options.url ) options.cacheLength = 1;
-                
-                // track all options for minChars = 0
-                stMatchSets[""] = [];
-                
-                // loop through the array and create a lookup structure
-                for ( var i = 0, ol = options.data.length; i < ol; i++ ) {
-                        var rawValue = options.data[i];
-                        // if rawValue is a string, make an array otherwise just reference the array
-                        rawValue = (typeof rawValue == "string") ? [rawValue] : rawValue;
-                        
-                        var value = options.formatMatch(rawValue, i+1, options.data.length);
-                        if ( value === false )
-                                continue;
-                                
-                        var firstChar = value.charAt(0).toLowerCase();
-                        // if no lookup array for this character exists, look it up now
-                        if( !stMatchSets[firstChar] )
-                                stMatchSets[firstChar] = [];
-
-                        // if the match is a string
-                        var row = {
-                                value: value,
-                                data: rawValue,
-                                result: options.formatResult && options.formatResult(rawValue) || value
-                        };
-                        
-                        // push the current match into the set list
-                        stMatchSets[firstChar].push(row);
-
-                        // keep track of minChars zero items
-                        if ( nullData++ < options.max ) {
-                                stMatchSets[""].push(row);
-                        }
-                };
-
-                // add the data items to the cache
-                $.each(stMatchSets, function(i, value) {
-                        // increase the cache size
-                        options.cacheLength++;
-                        // add to the cache
-                        add(i, value);
-                });
-        }
-        
-        // populate any existing data
-        setTimeout(populate, 25);
-        
-        function flush(){
-                data = {};
-                length = 0;
-        }
-        
-        return {
-                flush: flush,
-                add: add,
-                populate: populate,
-                load: function(q) {
-                        if (!options.cacheLength || !length)
-                                return null;
-                        /*
-                         * if dealing w/local data and matchContains than we must make sure
-                         * to loop through all the data collections looking for matches
-                         */
-                        if( !options.url && options.matchContains ){
-                                // track all matches
-                                var csub = [];
-                                // loop through all the data grids for matches
-                                for( var k in data ){
-                                        // don't search through the stMatchSets[""] (minChars: 0) cache
-                                        // this prevents duplicates
-                                        if( k.length > 0 ){
-                                                var c = data[k];
-                                                $.each(c, function(i, x) {
-                                                        // if we've got a match, add it to the array
-                                                        if (matchSubset(x.value, q)) {
-                                                                csub.push(x);
-                                                        }
-                                                });
-                                        }
-                                }                                
-                                return csub;
-                        } else
-                        // if the exact item exists, use it
-                        if (data[q]){
-                                return data[q];
-                        } else
-                        if (options.matchSubset) {
-                                for (var i = q.length - 1; i >= options.minChars; i--) {
-                                        var c = data[q.substr(0, i)];
-                                        if (c) {
-                                                var csub = [];
-                                                $.each(c, function(i, x) {
-                                                        if (matchSubset(x.value, q)) {
-                                                                csub[csub.length] = x;
-                                                        }
-                                                });
-                                                return csub;
-                                        }
-                                }
-                        }
-                        return null;
-                }
-        };
-};
-
-$.Autocompleter.Select = function (options, input, select, config) {
-        var CLASSES = {
-                ACTIVE: "ac_over"
-        };
-        
-        var listItems,
-                active = -1,
-                data,
-                term = "",
-                needsInit = true,
-                element,
-                list;
-        
-        // Create results
-        function init() {
-                if (!needsInit)
-                        return;
-                element = $("<div/>")
-                .hide()
-                .addClass(options.resultsClass)
-                .css("position", "absolute")
-                .appendTo(document.body);
-        
-                list = $("<ul/>").appendTo(element).mouseover( function(event) {
-                        if(target(event).nodeName && target(event).nodeName.toUpperCase() == 'LI') {
-         active = $("li", list).removeClass(CLASSES.ACTIVE).index(target(event));
-                         $(target(event)).addClass(CLASSES.ACTIVE);
-         }
-                }).click(function(event) {
-                        $(target(event)).addClass(CLASSES.ACTIVE);
-                        select();
-                        // TODO provide option to avoid setting focus again after selection? useful for cleanup-on-focus
-                        input.focus();
-                        return false;
-                }).mousedown(function() {
-                        config.mouseDownOnSelect = true;
-                }).mouseup(function() {
-                        config.mouseDownOnSelect = false;
-                });
-                
-                if( options.width > 0 )
-                        element.css("width", options.width);
-                        
-                needsInit = false;
-        }
-        
-        function target(event) {
-                var element = event.target;
-                while(element && element.tagName != "LI")
-                        element = element.parentNode;
-                // more fun with IE, sometimes event.target is empty, just ignore it then
-                if(!element)
-                        return [];
-                return element;
-        }
-
-        function moveSelect(step) {
-                listItems.slice(active, active + 1).removeClass(CLASSES.ACTIVE);
-                movePosition(step);
- var activeItem = listItems.slice(active, active + 1).addClass(CLASSES.ACTIVE);
- if(options.scroll) {
- var offset = 0;
- listItems.slice(0, active).each(function() {
-                                offset += this.offsetHeight;
-                        });
- if((offset + activeItem[0].offsetHeight - list.scrollTop()) > list[0].clientHeight) {
- list.scrollTop(offset + activeItem[0].offsetHeight - list.innerHeight());
- } else if(offset < list.scrollTop()) {
- list.scrollTop(offset);
- }
- }
-        };
-        
-        function movePosition(step) {
-                active += step;
-                if (active < 0) {
-                        active = listItems.size() - 1;
-                } else if (active >= listItems.size()) {
-                        active = 0;
-                }
-        }
-        
-        function limitNumberOfItems(available) {
-                return options.max && options.max < available
-                        ? options.max
-                        : available;
-        }
-        
-        function fillList() {
-                list.empty();
-                var max = limitNumberOfItems(data.length);
-                for (var i=0; i < max; i++) {
-                        if (!data[i])
-                                continue;
-                        var formatted = options.formatItem(data[i].data, i+1, max, data[i].value, term);
-                        if ( formatted === false )
-                                continue;
-                        var li = $("<li/>").html( options.highlight(formatted, term) ).addClass(i%2 == 0 ? "ac_even" : "ac_odd").appendTo(list)[0];
-                        $.data(li, "ac_data", data[i]);
-                }
-                listItems = list.find("li");
-                if ( options.selectFirst ) {
-                        listItems.slice(0, 1).addClass(CLASSES.ACTIVE);
-                        active = 0;
-                }
-                // apply bgiframe if available
-                if ( $.fn.bgiframe )
-                        list.bgiframe();
-        }
-        
-        return {
-                display: function(d, q) {
-                        init();
-                        data = d;
-                        term = q;
-                        fillList();
-                },
-                next: function() {
-                        moveSelect(1);
-                },
-                prev: function() {
-                        moveSelect(-1);
-                },
-                pageUp: function() {
-                        if (active != 0 && active - 8 < 0) {
-                                moveSelect( -active );
-                        } else {
-                                moveSelect(-8);
-                        }
-                },
-                pageDown: function() {
-                        if (active != listItems.size() - 1 && active + 8 > listItems.size()) {
-                                moveSelect( listItems.size() - 1 - active );
-                        } else {
-                                moveSelect(8);
-                        }
-                },
-                hide: function() {
-                        element && element.hide();
-                        listItems && listItems.removeClass(CLASSES.ACTIVE);
-                        active = -1;
-                },
-                visible : function() {
-                        return element && element.is(":visible");
-                },
-                current: function() {
-                        return this.visible() && (listItems.filter("." + CLASSES.ACTIVE)[0] || options.selectFirst && listItems[0]);
-                },
-                show: function() {
-                        var offset = $(input).offset();
-                        element.css({
-                                width: typeof options.width == "string" || options.width > 0 ? options.width : $(input).width(),
-                                top: offset.top + input.offsetHeight,
-                                left: offset.left
-                        }).show();
- if(options.scroll) {
- list.scrollTop(0);
- list.css({
-                                        maxHeight: options.scrollHeight,
-                                        overflow: 'auto'
-                                });
-                                
- if($.browser.msie && typeof document.body.style.maxHeight === "undefined") {
-                                        var listHeight = 0;
-                                        listItems.each(function() {
-                                                listHeight += this.offsetHeight;
-                                        });
-                                        var scrollbarsVisible = listHeight > options.scrollHeight;
- list.css('height', scrollbarsVisible ? options.scrollHeight : listHeight );
-                                        if (!scrollbarsVisible) {
-                                                // IE doesn't recalculate width when scrollbar disappears
-                                                listItems.width( list.width() - parseInt(listItems.css("padding-left")) - parseInt(listItems.css("padding-right")) );
-                                        }
- }
-
- }
-                },
-                selected: function() {
-                        var selected = listItems && listItems.filter("." + CLASSES.ACTIVE).removeClass(CLASSES.ACTIVE);
-                        return selected && selected.length && $.data(selected[0], "ac_data");
-                },
-                emptyList: function (){
-                        list && list.empty();
-                },
-                unbind: function() {
-                        element && element.remove();
-                }
-        };
-};
-
-$.fn.selection = function(start, end) {
-        if (start !== undefined) {
-                return this.each(function() {
-                        if( this.createTextRange ){
-                                var selRange = this.createTextRange();
-                                if (end === undefined || start == end) {
-                                        selRange.move("character", start);
-                                        selRange.select();
-                                } else {
-                                        selRange.collapse(true);
-                                        selRange.moveStart("character", start);
-                                        selRange.moveEnd("character", end);
-                                        selRange.select();
-                                }
-                        } else if( this.setSelectionRange ){
-                                this.setSelectionRange(start, end);
-                        } else if( this.selectionStart ){
-                                this.selectionStart = start;
-                                this.selectionEnd = end;
-                        }
-                });
-        }
-        var field = this[0];
-        if ( field.createTextRange ) {
-                var range = document.selection.createRange(),
-                        orig = field.value,
-                        teststring = "<->",
-                        textLength = range.text.length;
-                range.text = teststring;
-                var caretAt = field.value.indexOf(teststring);
-                field.value = orig;
-                this.selection(caretAt, caretAt + textLength);
-                return {
-                        start: caretAt,
-                        end: caretAt + textLength
-                }
-        } else if( field.selectionStart !== undefined ){
-                return {
-                        start: field.selectionStart,
-                        end: field.selectionEnd
-                }
-        }
-};
-
-})(jQuery);
</del><span class="cx">\ No newline at end of file
</span></span></pre></div>
<a id="trunkwpincludesjsjqueryautocompletejs"></a>
<div class="delfile"><h4>Deleted: trunk/wp-includes/js/jquery/autocomplete.js (14717 => 14718)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/wp-includes/js/jquery/autocomplete.js        2010-05-18 01:34:01 UTC (rev 14717)
+++ trunk/wp-includes/js/jquery/autocomplete.js        2010-05-18 03:48:22 UTC (rev 14718)
</span><span class="lines">@@ -1 +0,0 @@
</span><del>-(function(a){a.fn.extend({autocomplete:function(b,c){var d=typeof b=="string";c=a.extend({},a.Autocompleter.defaults,{url:d?b:null,data:d?null:b,delay:d?a.Autocompleter.defaults.delay:10,max:c&&!c.scroll?10:150},c);c.highlight=c.highlight||function(e){return e};c.formatMatch=c.formatMatch||c.formatItem;return this.each(function(){new a.Autocompleter(this,c)})},result:function(b){return this.bind("result",b)},search:function(b){return this.trigger("search",[b])},flushCache:function(){return this.trigger("flushCache")},setOptions:function(b){return this.trigger("setOptions",[b])},unautocomplete:function(){return this.trigger("unautocomplete")}});a.Autocompleter=function(l,g){var c={UP:38,DOWN:40,DEL:46,TAB:9,RETURN:13,ESC:27,COMMA:188,PAGEUP:33,PAGEDOWN:34,BACKSPACE:8};var b=a(l).attr("autocomplete","off").addClass(g.inputClass);var j;var p="";var m=a.Autocompleter.Cache(g);var e=0;var u;var x={mouseDownOnSelect:false};var r=a.Autocompleter.Select(g,l,d,x);var w;a.browser.opera&&a(l.form).bind("submit.autocomplete",function(){if(w){w=false;return false}});b.bind((a.browser.opera?"keypress":"keydown")+".autocomplete",function(y){e=1;u=y.keyCode;switch(y.keyCode){case c.UP:y.preventDefault();if(r.visible()){r.prev()}else{t(0,true)}break;case c.DOWN:y.preventDefault();if(r.visible()){r.next()}else{t(0,true)}break;case c.PAGEUP:y.preventDefault();if(r.visible()){r.pageUp()}else{t(0,true)}break;case c.PAGEDOWN:y.preventDefault();if(r.visible()){r.pageDown()}else{t(0,true)}break;case g.multiple&&a.trim(g.multipleSeparator)==","&&c.COMMA:case c.TAB:case c.RETURN:if(d()){y.preventDefault();w=true;return false}break;case c.ESC:r.hide();break;default:clearTimeout(j);j=setTimeout(t,g.delay);break}}).focus(function(){e++}).blur(function(){e=0;if(!x.mouseDownOnSelect){s()}}).click(function(){if(e++>1&&!r.visible()){t(0,true)}}).bind("search",function(){var y=(arguments.length>1)?arguments[1]:null;function z(D,C){var A;if(C&&C.length){for(var B=0;B<C.length;B++){if(C[B].result.toLowerCase()==D.toLowerCase()){A=C[B];break}}}if(typeof y=="function"){y(A)}else{b.trigger("result",A&&[A.data,A.value])}}a.each(h(b.val()),function(A,B){f(B,z,z)})}).bind("flushCache",function(){m.flush()}).bind("setOptions",function(){a.extend(g,arguments[1]);if("data" in arguments[1]){m.populate()}}).bind("unautocomplete",function(){r.unbind();b.unbind();a(l.form).unbind(".autocomplete")});function d(){var B=r.selected();if(!B){return false}var y=B.result;p=y;if(g.multiple){var E=h(b.val());if(E.length>1){var A=g.multipleSeparator.length;var D=a(l).selection().start;var C,z=0;a.each(E,function(F,G){z+=G.length;if(D<=z){C=F;return false}z+=A});E[C]=y;y=E.join(g.multipleSeparator)}y+=g.multipleSeparator}b.val(y);v();b.trigger("result",[B.data,B.value]);return true}function t(A,z){if(u==c.DEL){r.hide();return}var y=b.val();if(!z&&y==p){return}p=y;y=i(y);if(y.length>=g.minChars){b.addClass(g.loadingClass);if(!g.matchCase){y=y.toLowerCase()}f(y,k,v)}else{n();r.hide()}}function h(y){if(!y){return[""]}if(!g.multiple){return[a.trim(y)]}return a.map(y.split(g.multipleSeparator),function(z){return a.trim(y).length?a.trim(z):null})}function i(y){if(!g.multiple){return y}var A=h(y);if(A.length==1){return A[0]}var z=a(l).selection().start;if(z==y.length){A=h(y)}else{A=h(y.replace(y.substring(z),""))}return A[A.length-1]}function q(y,z){if(g.autoFill&&(i(b.val()).toLowerCase()==y.toLowerCase())&&u!=c.BACKSPACE){b.val(b.val()+z.substring(i(p).length));a(l).selection(p.length,p.length+z.length)}}function s(){clearTimeout(j);j=setTimeout(v,200)}function v(){var y=r.visible();r.hide();clearTimeout(j);n();if(g.mustMatch){b.search(function(z){if(!z){if(g.multiple){var A=h(b.val()).slice(0,-1);b.val(A.join(g.multipleSeparator)+(A.length?g.multipleSeparator:""))}else{b.val("");b.trigger("result",null)}}})}}function k(z,y){if(y&&y.length&&e){n();r.display(y,z);q(z,y[0].value);r.show()}else{v()}}function f(z,B,y){if(!g.matchCase){z=z.toLowerCase()}var A=m.load(z);if(A&&A.length){B(z,A)}else{if((typeof g.url=="string")&&(g.url.length>0)){var C={timestamp:+new Date()};a.each(g.extraParams,function(D,E){C[D]=typeof E=="function"?E():E});a.ajax({mode:"abort",port:"autocomplete"+l.name,dataType:g.dataType,url:g.url,data:a.extend({q:i(z),limit:g.max},C),success:function(E){var D=g.parse&&g.parse(E)||o(E);m.add(z,D);B(z,D)}})}else{r.emptyList();y(z)}}}function o(B){var y=[];var A=B.split("\n");for(var z=0;z<A.length;z++){var C=a.trim(A[z]);if(C){C=C.split("|");y[y.length]={data:C,value:C[0],result:g.formatResult&&g.formatResult(C,C[0])||C[0]}}}return y}function n(){b.removeClass(g.loadingClass)}};a.Autocompleter.defaults={inputClass:"ac_input",resultsClass:"ac_results",loadingClass:"ac_loading",minChars:1,delay:400,matchCase:false,matchSubset:true,matchContains:false,cacheLength:10,max:100,mustMatch:false,extraParams:{},selectFirst:true,formatItem:function(b){return b[0]},formatMatch:null,autoFill:false,width:0,multiple:false,multipleSeparator:", ",highlight:function(c,b){return c.replace(new RegExp("(?![^&;]+;)(?!<[^<>]*)("+b.replace(/([\^\$\(\)\[\]\{\}\*\.\+\?\|\\])/gi,"\\$1")+")(?![^<>]*>)(?![^&;]+;)","gi"),"<strong>$1</strong>")},scroll:true,scrollHeight:180};a.Autocompleter.Cache=function(c){var f={};var d=0;function h(l,k){if(!c.matchCase){l=l.toLowerCase()}var j=l.indexOf(k);if(c.matchContains=="word"){j=l.toLowerCase().search("\\b"+k.toLowerCase())}if(j==-1){return false}return j==0||c.matchContains}function g(j,i){if(d>c.cacheLength){b()}if(!f[j]){d++}f[j]=i}function e(){if(!c.data){return false}var k={},j=0;if(!c.url){c.cacheLength=1}k[""]=[];for(var m=0,l=c.data.length;m<l;m++){var p=c.data[m];p=(typeof p=="string")?[p]:p;var o=c.formatMatch(p,m+1,c.data.length);if(o===false){continue}var n=o.charAt(0).toLowerCase();if(!k[n]){k[n]=[]}var q={value:o,data:p,result:c.formatResult&&c.formatResult(p)||o};k[n].push(q);if(j++<c.max){k[""].push(q)}}a.each(k,function(r,s){c.cacheLength++;g(r,s)})}setTimeout(e,25);function b(){f={};d=0}return{flush:b,add:g,populate:e,load:function(n){if(!c.cacheLength||!d){return null}if(!c.url&&c.matchContains){var m=[];for(var j in f){if(j.length>0){var o=f[j];a.each(o,function(p,k){if(h(k.value,n)){m.push(k)}})}}return m}else{if(f[n]){return f[n]}else{if(c.matchSubset){for(var l=n.length-1;l>=c.minChars;l--){var o=f[n.substr(0,l)];if(o){var m=[];a.each(o,function(p,k){if(h(k.value,n)){m[m.length]=k}});return m}}}}}return null}}};a.Autocompleter.Select=function(e,j,l,p){var i={ACTIVE:"ac_over"};var k,f=-1,r,m="",s=true,c,o;function n(){if(!s){return}c=a("<div/>").hide().addClass(e.resultsClass).css("position","absolute").appendTo(document.body);o=a("<ul/>").appendTo(c).mouseover(function(t){if(q(t).nodeName&&q(t).nodeName.toUpperCase()=="LI"){f=a("li",o).removeClass(i.ACTIVE).index(q(t));a(q(t)).addClass(i.ACTIVE)}}).click(function(t){a(q(t)).addClass(i.ACTIVE);l();j.focus();return false}).mousedown(function(){p.mouseDownOnSelect=true}).mouseup(function(){p.mouseDownOnSelect=false});if(e.width>0){c.css("width",e.width)}s=false}function q(u){var t=u.target;while(t&&t.tagName!="LI"){t=t.parentNode}if(!t){return[]}return t}function h(t){k.slice(f,f+1).removeClass(i.ACTIVE);g(t);var v=k.slice(f,f+1).addClass(i.ACTIVE);if(e.scroll){var u=0;k.slice(0,f).each(function(){u+=this.offsetHeight});if((u+v[0].offsetHeight-o.scrollTop())>o[0].clientHeight){o.scrollTop(u+v[0].offsetHeight-o.innerHeight())}else{if(u<o.scrollTop()){o.scrollTop(u)}}}}function g(t){f+=t;if(f<0){f=k.size()-1}else{if(f>=k.size()){f=0}}}function b(t){return e.max&&e.max<t?e.max:t}function d(){o.empty();var u=b(r.length);for(var v=0;v<u;v++){if(!r[v]){continue}var w=e.formatItem(r[v].data,v+1,u,r[v].value,m);if(w===false){continue}var t=a("<li/>").html(e.highlight(w,m)).addClass(v%2==0?"ac_even":"ac_odd").appendTo(o)[0];a.data(t,"ac_data",r[v])}k=o.find("li");if(e.selectFirst){k.slice(0,1).addClass(i.ACTIVE);f=0}if(a.fn.bgiframe){o.bgiframe()}}return{display:function(u,t){n();r=u;m=t;d()},next:function(){h(1)},prev:function(){h(-1)},pageUp:function(){if(f!=0&&f-8<0){h(-f)}else{h(-8)}},pageDown:function(){if(f!=k.size()-1&&f+8>k.size()){h(k.size()-1-f)}else{h(8)}},hide:function(){c&&c.hide();k&&k.removeClass(i.ACTIVE);f=-1},visible:function(){return c&&c.is(":visible")},current:function(){return this.visible()&&(k.filter("."+i.ACTIVE)[0]||e.selectFirst&&k[0])},show:function(){var v=a(j).offset();c.css({width:typeof e.width=="string"||e.width>0?e.width:a(j).width(),top:v.top+j.offsetHeight,left:v.left}).show();if(e.scroll){o.scrollTop(0);o.css({maxHeight:e.scrollHeight,overflow:"auto"});if(a.browser.msie&&typeof document.body.style.maxHeight==="undefined"){var t=0;k.each(function(){t+=this.offsetHeight});var u=t>e.scrollHeight;o.css("height",u?e.scrollHeight:t);if(!u){k.width(o.width()-parseInt(k.css("padding-left"))-parseInt(k.css("padding-right")))}}}},selected:function(){var t=k&&k.filter("."+i.ACTIVE).removeClass(i.ACTIVE);return t&&t.length&&a.data(t[0],"ac_data")},emptyList:function(){o&&o.empty()},unbind:function(){c&&c.remove()}}};a.fn.selection=function(i,b){if(i!==undefined){return this.each(function(){if(this.createTextRange){var j=this.createTextRange();if(b===undefined||i==b){j.move("character",i);j.select()}else{j.collapse(true);j.moveStart("character",i);j.moveEnd("character",b);j.select()}}else{if(this.setSelectionRange){this.setSelectionRange(i,b)}else{if(this.selectionStart){this.selectionStart=i;this.selectionEnd=b}}}})}var g=this[0];if(g.createTextRange){var c=document.selection.createRange(),h=g.value,f="<->",d=c.text.length;c.text=f;var e=g.value.indexOf(f);g.value=h;this.selection(e,e+d);return{start:e,end:e+d}}else{if(g.selectionStart!==undefined){return{start:g.selectionStart,end:g.selectionEnd}}}}})(jQuery);
</del><span class="cx">\ No newline at end of file
</span></span></pre></div>
<a id="trunkwpincludesscriptloaderphp"></a>
<div class="modfile"><h4>Modified: trunk/wp-includes/script-loader.php (14717 => 14718)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/wp-includes/script-loader.php        2010-05-18 01:34:01 UTC (rev 14717)
+++ trunk/wp-includes/script-loader.php        2010-05-18 03:48:22 UTC (rev 14718)
</span><span class="lines">@@ -164,9 +164,6 @@
</span><span class="cx">         $scripts->add( 'jquery-table-hotkeys', "/wp-includes/js/jquery/jquery.table-hotkeys$suffix.js", array('jquery', 'jquery-hotkeys'), '20090102' );
</span><span class="cx">         $scripts->add_data( 'jquery-table-hotkeys', 'group', 1 );
</span><span class="cx">
</span><del>-        $scripts->add( 'jquery-autocomplete', "/wp-includes/js/jquery/autocomplete$suffix.js", array('jquery'), '1.1' );
-        $scripts->add_data( 'jquery-autocomplete', 'group', 1 );
-
</del><span class="cx">         $scripts->add( 'thickbox', "/wp-includes/js/thickbox/thickbox.js", array('jquery'), '3.1-20100407');
</span><span class="cx">         $scripts->add_data( 'thickbox', 'group', 1 );
</span><span class="cx">         $scripts->localize( 'thickbox', 'thickboxL10n', array(
</span><span class="lines">@@ -377,9 +374,6 @@
</span><span class="cx">                 $scripts->add( 'media', "/wp-admin/js/media$suffix.js", array( 'jquery-ui-draggable' ), '20090415' );
</span><span class="cx">                 $scripts->add_data( 'media', 'group', 1 );
</span><span class="cx">
</span><del>-                $scripts->add( 'codepress', '/wp-includes/js/codepress/codepress.js', false, '0.9.6' );
-                $scripts->add_data( 'codepress', 'group', 1 );
-
</del><span class="cx">                 $scripts->add( 'image-edit', "/wp-admin/js/image-edit$suffix.js", array('jquery', 'json2', 'imgareaselect'), '20091111' );
</span><span class="cx">                 $scripts->add_data( 'image-edit', 'group', 1 );
</span><span class="cx">
</span></span></pre>
</div>
</div>
</body>
</html>