Skip to content

Commit c341109

Browse files
committed
Merge branch 'master' into interactions
Conflicts: tests/unit/draggable/draggable.html tests/unit/draggable/draggable_common.js tests/unit/draggable/draggable_core.js tests/unit/draggable/draggable_options.js tests/unit/draggable/draggable_test_helpers.js tests/unit/droppable/droppable.html ui/jquery.ui.draggable.js ui/jquery.ui.droppable.js ui/jquery.ui.sortable.js
2 parents e190706 + 5a04d23 commit c341109

File tree

259 files changed

+25189
-4898
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

259 files changed

+25189
-4898
lines changed

.mailmap

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
Kris Borchers <kris.borchers@gmail.com>
2+
Kris Borchers <kris.borchers@gmail.com> <k_borchers@yahoo.com>
3+
Corey Frang <gnarf@gnarf.net>
4+
Maggie Costello Wachs <fg.maggie@gmail.com> maggiewachs <maggie@filamentgroup.com>
5+
Richard Worth <rdworth@gmail.com>
6+
Jörn Zaefferer <joern.zaefferer@gmail.com>

AUTHORS.txt

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -231,3 +231,8 @@ Pavel Selitskas <p.selitskas@gmail.com>
231231
Bjørn Johansen <bjorn.johansen@metronet.no>
232232
Matthieu Penant <thieum22@hotmail.com>
233233
Dominic Barnes <dominic@dbarnes.info>
234+
David Sullivan <david.sullivan@gmail.com>
235+
Thomas Jaggi <thomas.jaggi@gmail.com>
236+
Vahid Sohrabloo <vahid4134@gmail.com>
237+
Travis Carden <travis.carden@gmail.com>
238+
Bruno M. Custódio <bruno@brunomcustodio.com>

build/release/release.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -121,7 +121,7 @@ function getVersions() {
121121

122122
// TODO: handle 1.10.0
123123
// Also see comment above about pre-releases
124-
if ( minor === 0 ) {
124+
if ( patch === 0 ) {
125125
abort( "This script is not smart enough to handle the 1.10.0 release." );
126126
}
127127

build/tasks/build.js

Lines changed: 28 additions & 47 deletions
Original file line numberDiff line numberDiff line change
@@ -159,7 +159,7 @@ grunt.registerMultiTask( "zip", "Create a zip file for release", function() {
159159

160160
grunt.registerMultiTask( "md5", "Create list of md5 hashes for CDN uploads", function() {
161161
// remove dest file before creating it, to make sure itself is not included
162-
if ( path.existsSync( this.file.dest ) ) {
162+
if ( fs.existsSync( this.file.dest ) ) {
163163
fs.unlinkSync( this.file.dest );
164164
}
165165
var crypto = require( "crypto" ),
@@ -175,62 +175,43 @@ grunt.registerMultiTask( "md5", "Create list of md5 hashes for CDN uploads", fun
175175
});
176176

177177
grunt.registerTask( "generate_themes", function() {
178-
var download, files, done,
179-
target = "dist/" + grunt.template.process( grunt.config( "files.themes" ), grunt.config() ) + "/",
180-
distFolder = "dist/" + grunt.template.process( grunt.config( "files.dist" ), grunt.config() );
178+
var download, done,
179+
distFolder = "dist/" + grunt.template.process( grunt.config( "files.dist" ), grunt.config() ),
180+
target = "dist/" + grunt.template.process( grunt.config( "files.themes" ), grunt.config() ) + "/";
181+
181182
try {
182183
require.resolve( "download.jqueryui.com" );
183184
} catch( error ) {
184185
throw new Error( "You need to manually install download.jqueryui.com for this task to work" );
185186
}
186187

187-
// copy release files into download builder to avoid cloning again
188-
grunt.file.expandFiles( distFolder + "/**" ).forEach(function( file ) {
189-
grunt.file.copy( file, "node_modules/download.jqueryui.com/release/" + file.replace(/^dist/, "") );
190-
});
191-
192-
download = new ( require( "download.jqueryui.com" ) )();
193-
194-
files = grunt.file.expandFiles( distFolder + "/themes/base/**/*" );
195-
files.forEach(function( fileName ) {
196-
grunt.file.copy( fileName, target + fileName.replace( distFolder, "" ) );
188+
download = require( "download.jqueryui.com" )({
189+
config: {
190+
"jqueryUi": {
191+
"stable": { "path": path.resolve( __dirname + "/../../" + distFolder ) }
192+
},
193+
"jquery": "skip"
194+
}
197195
});
198196

199197
done = this.async();
200-
grunt.utils.async.forEach( download.themeroller.gallery(), function( theme, done ) {
201-
var folderName = theme.folderName(),
202-
concatTarget = "css-" + folderName,
203-
cssContent = theme.css(),
204-
cssFolderName = target + "themes/" + folderName + "/",
205-
cssFileName = cssFolderName + "jquery.ui.theme.css",
206-
cssFiles = grunt.config.get( "concat.css.src" )[ 1 ].slice();
207-
208-
grunt.file.write( cssFileName, cssContent );
209-
210-
// get css components, replace the last file with the current theme
211-
cssFiles.splice(-1);
212-
cssFiles.push( "<strip_all_banners:" + cssFileName + ">" );
213-
grunt.config.get( "concat" )[ concatTarget ] = {
214-
src: [ "<banner:meta.bannerCSS>", cssFiles ],
215-
dest: cssFolderName + "jquery-ui.css"
216-
};
217-
grunt.task.run( "concat:" + concatTarget );
218-
219-
theme.fetchImages(function( err, files ) {
220-
if ( err ) {
221-
done( err );
222-
return;
223-
}
224-
files.forEach(function( file ) {
225-
grunt.file.write( cssFolderName + "images/" + file.path, file.data );
226-
});
227-
done();
228-
});
229-
}, function( err ) {
230-
if ( err ) {
231-
grunt.log.error( err );
198+
download.buildThemesBundle(function( error, files ) {
199+
if ( error ) {
200+
grunt.log.error( error );
201+
return done( false );
232202
}
233-
done( !err );
203+
204+
done(
205+
files.every(function( file ) {
206+
try {
207+
grunt.file.write( target + file.path, file.data );
208+
} catch( err ) {
209+
grunt.log.error( err );
210+
return false;
211+
}
212+
return true;
213+
}) && grunt.log.writeln( "Generated at " + target )
214+
);
234215
});
235216
});
236217

build/tasks/testswarm.js

Lines changed: 28 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ module.exports = function( grunt ) {
44

55
var versions = {
66
"git": "git",
7+
"1.9": "1.9.0 1.9.1",
78
"1.8": "1.8.0 1.8.1 1.8.2 1.8.3",
89
"1.7": "1.7 1.7.1 1.7.2",
910
"1.6": "1.6 1.6.1 1.6.2 1.6.3 1.6.4"
@@ -32,30 +33,37 @@ var versions = {
3233
"Widget": "widget/widget.html"
3334
};
3435

35-
function submit( commit, tests, configFile, version, done ) {
36-
var test,
36+
function submit( commit, runs, configFile, version, done ) {
37+
var testName,
3738
testswarm = require( "testswarm" ),
38-
config = grunt.file.readJSON( configFile ).jqueryui,
39-
testBase = config.testUrl + commit + "/tests/unit/",
40-
testUrls = [];
41-
for ( test in tests ) {
42-
testUrls.push( testBase + tests[ test ] );
43-
}
39+
config = grunt.file.readJSON( configFile ).jqueryui;
4440
version = version ? ( version + " " ) : "";
45-
testswarm({
41+
for ( testName in runs ) {
42+
runs[ testName] = config.testUrl + commit + "/tests/unit/" + runs[ testName ];
43+
}
44+
testswarm.createClient( {
4645
url: config.swarmUrl,
4746
pollInterval: 10000,
48-
timeout: 1000 * 60 * 45,
49-
done: done
50-
}, {
51-
authUsername: config.authUsername,
52-
authToken: config.authToken,
53-
jobName: 'jQuery UI ' + version + '#<a href="https://github.com/jquery/jquery-ui/commit/' + commit + '">' + commit.substr( 0, 10 ) + '</a>',
54-
runMax: config.runMax,
55-
"runNames[]": Object.keys( tests ),
56-
"runUrls[]": testUrls,
57-
"browserSets[]": config.browserSets
58-
});
47+
timeout: 1000 * 60 * 45
48+
} )
49+
.addReporter( testswarm.reporters.cli )
50+
.auth( {
51+
id: config.authUsername,
52+
token: config.authToken
53+
} )
54+
.addjob(
55+
{
56+
name: 'jQuery UI ' + version + '#<a href="https://github.com/jquery/jquery-ui/commit/' + commit + '">' + commit.substr( 0, 10 ) + '</a>',
57+
runs: runs,
58+
runMax: config.runMax,
59+
browserSets: config.browserSets
60+
}, function( err, passed ) {
61+
if ( err ) {
62+
grunt.log.error( err );
63+
}
64+
done( passed );
65+
}
66+
);
5967
}
6068

6169
grunt.registerTask( "testswarm", function( commit, configFile ) {

demos/accordion/collapsible.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
<meta charset="utf-8">
55
<title>jQuery UI Accordion - Collapse content</title>
66
<link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
7-
<script src="../../jquery-1.8.3.js"></script>
7+
<script src="../../jquery-1.9.1.js"></script>
88
<script src="../../ui/jquery.ui.core.js"></script>
99
<script src="../../ui/jquery.ui.widget.js"></script>
1010
<script src="../../ui/jquery.ui.accordion.js"></script>

demos/accordion/custom-icons.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
<meta charset="utf-8">
55
<title>jQuery UI Accordion - Customize icons</title>
66
<link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
7-
<script src="../../jquery-1.8.3.js"></script>
7+
<script src="../../jquery-1.9.1.js"></script>
88
<script src="../../ui/jquery.ui.core.js"></script>
99
<script src="../../ui/jquery.ui.widget.js"></script>
1010
<script src="../../ui/jquery.ui.accordion.js"></script>

demos/accordion/default.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
<meta charset="utf-8">
55
<title>jQuery UI Accordion - Default functionality</title>
66
<link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
7-
<script src="../../jquery-1.8.3.js"></script>
7+
<script src="../../jquery-1.9.1.js"></script>
88
<script src="../../ui/jquery.ui.core.js"></script>
99
<script src="../../ui/jquery.ui.widget.js"></script>
1010
<script src="../../ui/jquery.ui.accordion.js"></script>

demos/accordion/fillspace.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
<meta charset="utf-8">
55
<title>jQuery UI Accordion - Fill space</title>
66
<link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
7-
<script src="../../jquery-1.8.3.js"></script>
7+
<script src="../../jquery-1.9.1.js"></script>
88
<script src="../../ui/jquery.ui.core.js"></script>
99
<script src="../../ui/jquery.ui.widget.js"></script>
1010
<script src="../../ui/jquery.ui.mouse.js"></script>

demos/accordion/hoverintent.html

Lines changed: 39 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
<meta charset="utf-8">
55
<title>jQuery UI Accordion - Open on hoverintent</title>
66
<link rel="stylesheet" href="../../themes/base/jquery.ui.all.css">
7-
<script src="../../jquery-1.8.3.js"></script>
7+
<script src="../../jquery-1.9.1.js"></script>
88
<script src="../../ui/jquery.ui.core.js"></script>
99
<script src="../../ui/jquery.ui.widget.js"></script>
1010
<script src="../../ui/jquery.ui.accordion.js"></script>
@@ -16,11 +16,11 @@
1616
});
1717
});
1818

19-
var cfg = ($.hoverintent = {
20-
sensitivity: 7,
21-
interval: 100
22-
});
23-
19+
/*
20+
* hoverIntent | Copyright 2011 Brian Cherne
21+
* http://cherne.net/brian/resources/jquery.hoverIntent.html
22+
* modified by the jQuery UI team
23+
*/
2424
$.event.special.hoverintent = {
2525
setup: function() {
2626
$( this ).bind( "mouseover", jQuery.event.special.hoverintent.handler );
@@ -29,41 +29,56 @@
2929
$( this ).unbind( "mouseover", jQuery.event.special.hoverintent.handler );
3030
},
3131
handler: function( event ) {
32-
var that = this,
32+
var currentX, currentY, timeout,
3333
args = arguments,
3434
target = $( event.target ),
35-
cX, cY, pX, pY;
35+
previousX = event.pageX,
36+
previousY = event.pageY;
3637

3738
function track( event ) {
38-
cX = event.pageX;
39-
cY = event.pageY;
39+
currentX = event.pageX;
40+
currentY = event.pageY;
4041
};
41-
pX = event.pageX;
42-
pY = event.pageY;
42+
4343
function clear() {
4444
target
4545
.unbind( "mousemove", track )
46-
.unbind( "mouseout", arguments.callee );
46+
.unbind( "mouseout", clear );
4747
clearTimeout( timeout );
4848
}
49+
4950
function handler() {
50-
if ( ( Math.abs( pX - cX ) + Math.abs( pY - cY ) ) < cfg.sensitivity ) {
51+
var prop,
52+
orig = event;
53+
54+
if ( ( Math.abs( previousX - currentX ) +
55+
Math.abs( previousY - currentY ) ) < 7 ) {
5156
clear();
52-
event.type = "hoverintent";
53-
// prevent accessing the original event since the new event
57+
58+
event = $.Event( "hoverintent" );
59+
for ( prop in orig ) {
60+
if ( !( prop in event ) ) {
61+
event[ prop ] = orig[ prop ];
62+
}
63+
}
64+
// Prevent accessing the original event since the new event
5465
// is fired asynchronously and the old event is no longer
5566
// usable (#6028)
56-
event.originalEvent = {};
57-
jQuery.event.handle.apply( that, args );
67+
delete event.originalEvent;
68+
69+
target.trigger( event );
5870
} else {
59-
pX = cX;
60-
pY = cY;
61-
timeout = setTimeout( handler, cfg.interval );
71+
previousX = currentX;
72+
previousY = currentY;
73+
timeout = setTimeout( handler, 100 );
6274
}
6375
}
64-
var timeout = setTimeout( handler, cfg.interval );
65-
target.mousemove( track ).mouseout( clear );
66-
return true;
76+
77+
timeout = setTimeout( handler, 100 );
78+
target.bind({
79+
mousemove: track,
80+
mouseout: clear
81+
});
6782
}
6883
};
6984
</script>

0 commit comments

Comments
 (0)