Index: src/wp-includes/js/wplink.js
===================================================================
--- src/wp-includes/js/wplink.js	(revision 31600)
+++ src/wp-includes/js/wplink.js	(working copy)
@@ -2,7 +2,7 @@
 var wpLink;
 
 ( function( $ ) {
-	var editor, searchTimer, River, Query,
+	var editor, searchTimer, River, Query, correctedURL, typingURL,
 		inputs = {},
 		rivers = {},
 		isTouch = ( 'ontouchend' in document );
@@ -72,6 +72,27 @@
 					wpLink.searchInternalLinks.call( self );
 				}, 500 );
 			});
+
+			function correctURL() {
+				var url = $.trim( inputs.url.val() );
+
+				if ( url && correctedURL !== url && ! /^(?:[a-z]+:|#|\?|\.|\/)/.test( url ) ) {
+					inputs.url.val( 'http://' + url );
+					correctedURL = url;
+				}
+			}
+
+			inputs.url.on( 'keydown keyup', function( event ) {
+				typingURL = event.type === 'keydown' && ! ( event.metaKey || ( event.ctrlKey && ! event.altKey ) );
+			} );
+
+			inputs.url.on( 'input', function() {
+				! typingURL && correctURL();
+			} );
+
+			inputs.url.on( 'blur', function() {
+				setTimeout( correctURL, 0 );
+			} );
 		},
 
 		open: function( editorId ) {
@@ -183,6 +204,9 @@
 
 			inputs.backdrop.hide();
 			inputs.wrap.hide();
+
+			correctedURL = false;
+
 			$( document ).trigger( 'wplink-close', inputs.wrap );
 		},
 
@@ -211,7 +235,7 @@
 			attrs = wpLink.getAttrs();
 
 			// If there's no href, return.
-			if ( ! attrs.href || attrs.href == 'http://' )
+			if ( ! attrs.href )
 				return;
 
 			// Build HTML
@@ -309,7 +333,7 @@
 				inputs.url.val( selection.replace( /&amp;|&#0?38;/gi, '&' ) );
 			} else {
 				// Set URL to default.
-				inputs.url.val( 'http://' );
+				inputs.url.val( '' );
 			}
 
 			// Set description to default.
