Skip to content
This repository was archived by the owner on Jul 25, 2019. It is now read-only.

Commit a4920a8

Browse files
committed
Handsontable 0.9.14
2 parents 2347ab2 + c0545c7 commit a4920a8

16 files changed

+302
-22
lines changed

Diff for: CHANGELOG.md

+8
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,11 @@
1+
## [0.9.14](https://github.com/warpech/jquery-handsontable/tree/v0.9.13) (Aug 20, 2013)
2+
3+
Bugfixes:
4+
5+
- fixed selecting date using jQuery UI Datepicker ([#970](https://github.com/warpech/jquery-handsontable/issues/970))
6+
- fixed opening cell editor after clearing cell data with Delete or Backspace ([#975](https://github.com/warpech/jquery-handsontable/issues/975))
7+
8+
19
## [0.9.13](https://github.com/warpech/jquery-handsontable/tree/v0.9.13) (Aug 16, 2013)
210

311
Features:

Diff for: Gruntfile.js

+2
Original file line numberDiff line numberDiff line change
@@ -203,6 +203,7 @@ module.exports = function (grunt) {
203203
'demo/js/backbone/lodash.underscore.js',
204204
'demo/js/backbone/backbone.js',
205205
'demo/js/backbone/backbone-relational/backbone-relational.js',
206+
'lib/jquery-ui/js/jquery-ui.custom.js',
206207
'extensions/jquery.handsontable.removeRow.js'
207208
],
208209
options: {
@@ -214,6 +215,7 @@ module.exports = function (grunt) {
214215
'test/jasmine/css/SpecRunner.css',
215216
'dist/jquery.handsontable.css',
216217
'lib/jQuery-contextMenu/jquery.contextMenu.css',
218+
'lib/jquery-ui/css/ui-bootstrap/jquery-ui.custom.css',
217219
'extensions/jquery.handsontable.removeRow.css'
218220
],
219221
vendor: [

Diff for: bower.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "handsontable",
3-
"version": "0.9.13",
3+
"version": "0.9.14",
44
"main": ["./dist/jquery.handsontable.full.js", "./dist/jquery.handsontable.full.css"],
55
"ignore": [
66
"**/.*",

Diff for: dist/jquery.handsontable.css

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
/**
2-
* Handsontable 0.9.13
2+
* Handsontable 0.9.14
33
* Handsontable is a simple jQuery plugin for editable tables with basic copy-paste compatibility with Excel and Google Docs
44
*
55
* Copyright 2012, Marcin Warpechowski
66
* Licensed under the MIT license.
77
* http://handsontable.com/
88
*
9-
* Date: Fri Aug 16 2013 00:58:19 GMT+0200 (Central European Daylight Time)
9+
* Date: Tue Aug 20 2013 14:50:33 GMT+0200 (CEST)
1010
*/
1111

1212
.handsontable {

Diff for: dist/jquery.handsontable.full.css

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
/**
2-
* Handsontable 0.9.13
2+
* Handsontable 0.9.14
33
* Handsontable is a simple jQuery plugin for editable tables with basic copy-paste compatibility with Excel and Google Docs
44
*
55
* Copyright 2012, Marcin Warpechowski
66
* Licensed under the MIT license.
77
* http://handsontable.com/
88
*
9-
* Date: Fri Aug 16 2013 00:58:19 GMT+0200 (Central European Daylight Time)
9+
* Date: Tue Aug 20 2013 14:50:33 GMT+0200 (CEST)
1010
*/
1111

1212
.handsontable {

Diff for: dist/jquery.handsontable.full.js

+23-4
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
/**
2-
* Handsontable 0.9.13
2+
* Handsontable 0.9.14
33
* Handsontable is a simple jQuery plugin for editable tables with basic copy-paste compatibility with Excel and Google Docs
44
*
55
* Copyright 2012, Marcin Warpechowski
66
* Licensed under the MIT license.
77
* http://handsontable.com/
88
*
9-
* Date: Fri Aug 16 2013 00:58:19 GMT+0200 (Central European Daylight Time)
9+
* Date: Tue Aug 20 2013 14:50:33 GMT+0200 (CEST)
1010
*/
1111
/*jslint white: true, browser: true, plusplus: true, indent: 4, maxerr: 50 */
1212

@@ -2739,7 +2739,7 @@ Handsontable.Core = function (rootElement, userSettings) {
27392739
/**
27402740
* Handsontable version
27412741
*/
2742-
this.version = '0.9.13'; //inserted by grunt from package.json
2742+
this.version = '0.9.14'; //inserted by grunt from package.json
27432743
};
27442744

27452745
var DefaultSettings = function () {
@@ -4003,7 +4003,7 @@ HandsontableTextEditorClass.prototype.bindTemporaryEvents = function (td, row, c
40034003
}
40044004
event.preventDefault(); //prevent new line at the end of textarea
40054005
event.stopImmediatePropagation();
4006-
} else if ([8, 9, 33, 34, 35, 36, 37, 38, 39, 40, 46].indexOf(event.keyCode) == -1){ // other non printable character
4006+
} else if ([9, 33, 34, 35, 36, 37, 38, 39, 40].indexOf(event.keyCode) == -1){ // other non printable character
40074007
that.instance.addHookOnce('beforeKeyDown', beforeKeyDownHook);
40084008
}
40094009
};
@@ -4522,8 +4522,13 @@ function HandsontableDateEditorClass(instance) {
45224522

45234523
this.isCellEdited = false;
45244524
this.instance = instance;
4525+
var that = this;
45254526
this.createElements();
45264527
this.bindEvents();
4528+
4529+
this.instance.addHook('afterDestroy', function(){
4530+
that.destroyElements();
4531+
})
45274532
}
45284533

45294534
Handsontable.helper.inherit(HandsontableDateEditorClass, HandsontableTextEditorClass);
@@ -4535,6 +4540,7 @@ HandsontableDateEditorClass.prototype.createElements = function () {
45354540
HandsontableTextEditorClass.prototype.createElements.call(this);
45364541

45374542
this.datePicker = document.createElement('DIV');
4543+
this.instance.view.wt.wtDom.addClass(this.datePicker, 'htDatepickerHolder');
45384544
this.datePickerStyle = this.datePicker.style;
45394545
this.datePickerStyle.position = 'absolute';
45404546
this.datePickerStyle.top = 0;
@@ -4555,9 +4561,22 @@ HandsontableDateEditorClass.prototype.createElements = function () {
45554561
}
45564562
};
45574563
this.$datePicker.datepicker(defaultOptions);
4564+
4565+
/**
4566+
* Prevent recognizing clicking on jQuery Datepicker as clicking outside of table
4567+
*/
4568+
this.$datePicker.on('mousedown', function(event){
4569+
event.stopPropagation();
4570+
});
4571+
45584572
this.hideDatepicker();
45594573
};
45604574

4575+
HandsontableDateEditorClass.prototype.destroyElements = function(){
4576+
this.$datePicker.datepicker('destroy');
4577+
this.$datePicker.remove();
4578+
};
4579+
45614580
/**
45624581
* @see HandsontableTextEditorClass.prototype.beginEditing
45634582
*/

Diff for: dist/jquery.handsontable.js

+23-4
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
/**
2-
* Handsontable 0.9.13
2+
* Handsontable 0.9.14
33
* Handsontable is a simple jQuery plugin for editable tables with basic copy-paste compatibility with Excel and Google Docs
44
*
55
* Copyright 2012, Marcin Warpechowski
66
* Licensed under the MIT license.
77
* http://handsontable.com/
88
*
9-
* Date: Fri Aug 16 2013 00:58:19 GMT+0200 (Central European Daylight Time)
9+
* Date: Tue Aug 20 2013 14:50:33 GMT+0200 (CEST)
1010
*/
1111
/*jslint white: true, browser: true, plusplus: true, indent: 4, maxerr: 50 */
1212

@@ -2739,7 +2739,7 @@ Handsontable.Core = function (rootElement, userSettings) {
27392739
/**
27402740
* Handsontable version
27412741
*/
2742-
this.version = '0.9.13'; //inserted by grunt from package.json
2742+
this.version = '0.9.14'; //inserted by grunt from package.json
27432743
};
27442744

27452745
var DefaultSettings = function () {
@@ -4003,7 +4003,7 @@ HandsontableTextEditorClass.prototype.bindTemporaryEvents = function (td, row, c
40034003
}
40044004
event.preventDefault(); //prevent new line at the end of textarea
40054005
event.stopImmediatePropagation();
4006-
} else if ([8, 9, 33, 34, 35, 36, 37, 38, 39, 40, 46].indexOf(event.keyCode) == -1){ // other non printable character
4006+
} else if ([9, 33, 34, 35, 36, 37, 38, 39, 40].indexOf(event.keyCode) == -1){ // other non printable character
40074007
that.instance.addHookOnce('beforeKeyDown', beforeKeyDownHook);
40084008
}
40094009
};
@@ -4522,8 +4522,13 @@ function HandsontableDateEditorClass(instance) {
45224522

45234523
this.isCellEdited = false;
45244524
this.instance = instance;
4525+
var that = this;
45254526
this.createElements();
45264527
this.bindEvents();
4528+
4529+
this.instance.addHook('afterDestroy', function(){
4530+
that.destroyElements();
4531+
})
45274532
}
45284533

45294534
Handsontable.helper.inherit(HandsontableDateEditorClass, HandsontableTextEditorClass);
@@ -4535,6 +4540,7 @@ HandsontableDateEditorClass.prototype.createElements = function () {
45354540
HandsontableTextEditorClass.prototype.createElements.call(this);
45364541

45374542
this.datePicker = document.createElement('DIV');
4543+
this.instance.view.wt.wtDom.addClass(this.datePicker, 'htDatepickerHolder');
45384544
this.datePickerStyle = this.datePicker.style;
45394545
this.datePickerStyle.position = 'absolute';
45404546
this.datePickerStyle.top = 0;
@@ -4555,9 +4561,22 @@ HandsontableDateEditorClass.prototype.createElements = function () {
45554561
}
45564562
};
45574563
this.$datePicker.datepicker(defaultOptions);
4564+
4565+
/**
4566+
* Prevent recognizing clicking on jQuery Datepicker as clicking outside of table
4567+
*/
4568+
this.$datePicker.on('mousedown', function(event){
4569+
event.stopPropagation();
4570+
});
4571+
45584572
this.hideDatepicker();
45594573
};
45604574

4575+
HandsontableDateEditorClass.prototype.destroyElements = function(){
4576+
this.$datePicker.datepicker('destroy');
4577+
this.$datePicker.remove();
4578+
};
4579+
45614580
/**
45624581
* @see HandsontableTextEditorClass.prototype.beginEditing
45634582
*/

Diff for: dist_wc/x-handsontable/jquery.handsontable.full.css

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
/**
2-
* Handsontable 0.9.13
2+
* Handsontable 0.9.14
33
* Handsontable is a simple jQuery plugin for editable tables with basic copy-paste compatibility with Excel and Google Docs
44
*
55
* Copyright 2012, Marcin Warpechowski
66
* Licensed under the MIT license.
77
* http://handsontable.com/
88
*
9-
* Date: Fri Aug 16 2013 00:58:19 GMT+0200 (Central European Daylight Time)
9+
* Date: Tue Aug 20 2013 14:50:33 GMT+0200 (CEST)
1010
*/
1111

1212
.handsontable {

Diff for: dist_wc/x-handsontable/jquery.handsontable.full.js

+23-4
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
/**
2-
* Handsontable 0.9.13
2+
* Handsontable 0.9.14
33
* Handsontable is a simple jQuery plugin for editable tables with basic copy-paste compatibility with Excel and Google Docs
44
*
55
* Copyright 2012, Marcin Warpechowski
66
* Licensed under the MIT license.
77
* http://handsontable.com/
88
*
9-
* Date: Fri Aug 16 2013 00:58:19 GMT+0200 (Central European Daylight Time)
9+
* Date: Tue Aug 20 2013 14:50:33 GMT+0200 (CEST)
1010
*/
1111
/*jslint white: true, browser: true, plusplus: true, indent: 4, maxerr: 50 */
1212

@@ -2739,7 +2739,7 @@ Handsontable.Core = function (rootElement, userSettings) {
27392739
/**
27402740
* Handsontable version
27412741
*/
2742-
this.version = '0.9.13'; //inserted by grunt from package.json
2742+
this.version = '0.9.14'; //inserted by grunt from package.json
27432743
};
27442744

27452745
var DefaultSettings = function () {
@@ -4003,7 +4003,7 @@ HandsontableTextEditorClass.prototype.bindTemporaryEvents = function (td, row, c
40034003
}
40044004
event.preventDefault(); //prevent new line at the end of textarea
40054005
event.stopImmediatePropagation();
4006-
} else if ([8, 9, 33, 34, 35, 36, 37, 38, 39, 40, 46].indexOf(event.keyCode) == -1){ // other non printable character
4006+
} else if ([9, 33, 34, 35, 36, 37, 38, 39, 40].indexOf(event.keyCode) == -1){ // other non printable character
40074007
that.instance.addHookOnce('beforeKeyDown', beforeKeyDownHook);
40084008
}
40094009
};
@@ -4522,8 +4522,13 @@ function HandsontableDateEditorClass(instance) {
45224522

45234523
this.isCellEdited = false;
45244524
this.instance = instance;
4525+
var that = this;
45254526
this.createElements();
45264527
this.bindEvents();
4528+
4529+
this.instance.addHook('afterDestroy', function(){
4530+
that.destroyElements();
4531+
})
45274532
}
45284533

45294534
Handsontable.helper.inherit(HandsontableDateEditorClass, HandsontableTextEditorClass);
@@ -4535,6 +4540,7 @@ HandsontableDateEditorClass.prototype.createElements = function () {
45354540
HandsontableTextEditorClass.prototype.createElements.call(this);
45364541

45374542
this.datePicker = document.createElement('DIV');
4543+
this.instance.view.wt.wtDom.addClass(this.datePicker, 'htDatepickerHolder');
45384544
this.datePickerStyle = this.datePicker.style;
45394545
this.datePickerStyle.position = 'absolute';
45404546
this.datePickerStyle.top = 0;
@@ -4555,9 +4561,22 @@ HandsontableDateEditorClass.prototype.createElements = function () {
45554561
}
45564562
};
45574563
this.$datePicker.datepicker(defaultOptions);
4564+
4565+
/**
4566+
* Prevent recognizing clicking on jQuery Datepicker as clicking outside of table
4567+
*/
4568+
this.$datePicker.on('mousedown', function(event){
4569+
event.stopPropagation();
4570+
});
4571+
45584572
this.hideDatepicker();
45594573
};
45604574

4575+
HandsontableDateEditorClass.prototype.destroyElements = function(){
4576+
this.$datePicker.datepicker('destroy');
4577+
this.$datePicker.remove();
4578+
};
4579+
45614580
/**
45624581
* @see HandsontableTextEditorClass.prototype.beginEditing
45634582
*/

Diff for: handsontable.jquery.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"name": "handsontable",
33
"title": "Handsontable",
4-
"version": "0.9.13",
4+
"version": "0.9.14",
55
"author": {
66
"name": "Marcin Warpechowski",
77
"email": "[email protected]",

Diff for: package.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
"url": "https://github.com/warpech/jquery-handsontable/issues"
77
},
88
"author": "Marcin Warpechowski <[email protected]>",
9-
"version": "0.9.13",
9+
"version": "0.9.14",
1010
"devDependencies": {
1111
"grunt": "~0.4.1",
1212
"grunt-replace": "~0.4.4",

Diff for: src/editors/dateEditor.js

+19
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,13 @@ function HandsontableDateEditorClass(instance) {
55

66
this.isCellEdited = false;
77
this.instance = instance;
8+
var that = this;
89
this.createElements();
910
this.bindEvents();
11+
12+
this.instance.addHook('afterDestroy', function(){
13+
that.destroyElements();
14+
})
1015
}
1116

1217
Handsontable.helper.inherit(HandsontableDateEditorClass, HandsontableTextEditorClass);
@@ -18,6 +23,7 @@ HandsontableDateEditorClass.prototype.createElements = function () {
1823
HandsontableTextEditorClass.prototype.createElements.call(this);
1924

2025
this.datePicker = document.createElement('DIV');
26+
this.instance.view.wt.wtDom.addClass(this.datePicker, 'htDatepickerHolder');
2127
this.datePickerStyle = this.datePicker.style;
2228
this.datePickerStyle.position = 'absolute';
2329
this.datePickerStyle.top = 0;
@@ -38,9 +44,22 @@ HandsontableDateEditorClass.prototype.createElements = function () {
3844
}
3945
};
4046
this.$datePicker.datepicker(defaultOptions);
47+
48+
/**
49+
* Prevent recognizing clicking on jQuery Datepicker as clicking outside of table
50+
*/
51+
this.$datePicker.on('mousedown', function(event){
52+
event.stopPropagation();
53+
});
54+
4155
this.hideDatepicker();
4256
};
4357

58+
HandsontableDateEditorClass.prototype.destroyElements = function(){
59+
this.$datePicker.datepicker('destroy');
60+
this.$datePicker.remove();
61+
};
62+
4463
/**
4564
* @see HandsontableTextEditorClass.prototype.beginEditing
4665
*/

Diff for: src/editors/textEditor.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -182,7 +182,7 @@ HandsontableTextEditorClass.prototype.bindTemporaryEvents = function (td, row, c
182182
}
183183
event.preventDefault(); //prevent new line at the end of textarea
184184
event.stopImmediatePropagation();
185-
} else if ([8, 9, 33, 34, 35, 36, 37, 38, 39, 40, 46].indexOf(event.keyCode) == -1){ // other non printable character
185+
} else if ([9, 33, 34, 35, 36, 37, 38, 39, 40].indexOf(event.keyCode) == -1){ // other non printable character
186186
that.instance.addHookOnce('beforeKeyDown', beforeKeyDownHook);
187187
}
188188
};

0 commit comments

Comments
 (0)