From 0f8c8b44a736537220c69fea45b36ebfa55441ab Mon Sep 17 00:00:00 2001 From: Ankit Kumar Date: Wed, 10 Sep 2014 18:43:55 +0530 Subject: [PATCH 1/3] fix(datepicker): memory leak fix for datepicker. --- src/datepicker/datepicker.js | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/datepicker/datepicker.js b/src/datepicker/datepicker.js index f8cdf1279f..1c5f1ad046 100644 --- a/src/datepicker/datepicker.js +++ b/src/datepicker/datepicker.js @@ -605,6 +605,8 @@ function ($compile, $parse, $document, $position, dateFilter, dateParser, datepi }; var $popup = $compile(popupEl)(scope); + popupEl.remove(); + if ( appendToBody ) { $document.find('body').append($popup); } else { From 9f03d40cee6982ba68f8b9d4bba332bbb0312800 Mon Sep 17 00:00:00 2001 From: ankit Date: Fri, 2 Jan 2015 17:37:00 +0530 Subject: [PATCH 2/3] fix(datepicker): fixed working of 'show-weeks' on datepickerPopup --- src/datepicker/datepicker.js | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/datepicker/datepicker.js b/src/datepicker/datepicker.js index 05784947d0..84354204c7 100644 --- a/src/datepicker/datepicker.js +++ b/src/datepicker/datepicker.js @@ -500,6 +500,9 @@ function ($compile, $parse, $document, $position, dateFilter, dateParser, datepi if (attrs.dateDisabled) { datepickerEl.attr('date-disabled', 'dateDisabled({ date: date, mode: mode })'); } + if(attrs.showWeeks) { + datepickerEl.attr('show-weeks',attrs.showWeeks); + } function parseDate(viewValue) { if (!viewValue) { From ec04cb4710a54def4ecce54f570cfe5eecb4086e Mon Sep 17 00:00:00 2001 From: Ankit Kumar Date: Sat, 4 Apr 2015 00:41:29 +0530 Subject: [PATCH 3/3] fix(datepicker): fixed 'show-weeks' datepickerPopup. added tests. --- src/datepicker/datepicker.js | 4 ++-- src/datepicker/test/datepicker.spec.js | 24 ++++++++++++++++++++++++ 2 files changed, 26 insertions(+), 2 deletions(-) diff --git a/src/datepicker/datepicker.js b/src/datepicker/datepicker.js index 139333777e..f4ec929a09 100644 --- a/src/datepicker/datepicker.js +++ b/src/datepicker/datepicker.js @@ -530,8 +530,8 @@ function ($compile, $parse, $document, $position, dateFilter, dateParser, datepi datepickerEl.attr('date-disabled', 'dateDisabled({ date: date, mode: mode })'); } - if(attrs.showWeeks) { - datepickerEl.attr('show-weeks',attrs.showWeeks); + if (attrs.showWeeks) { + datepickerEl.attr('show-weeks', attrs.showWeeks); } if (attrs.customClass){ diff --git a/src/datepicker/test/datepicker.spec.js b/src/datepicker/test/datepicker.spec.js index 49e783884a..6bb46898a8 100644 --- a/src/datepicker/test/datepicker.spec.js +++ b/src/datepicker/test/datepicker.spec.js @@ -1640,6 +1640,30 @@ describe('datepicker directive', function () { assignElements(wrapElement); expect(dropdownEl.find('li').length).toBe(1); }); + + it('should hide weeks column on popup', function() { + var wrapElement = $compile('
')($rootScope); + $rootScope.$digest(); + assignElements(wrapElement); + + expect(getLabelsRow().find('th').eq(0)).toBeHidden(); + var tr = element.find('tbody').find('tr'); + for (var i = 0; i < 5; i++) { + expect(tr.eq(i).find('td').eq(0)).toBeHidden(); + } + }); + + it('should show weeks column on popup', function() { + var wrapElement = $compile('
')($rootScope); + $rootScope.$digest(); + assignElements(wrapElement); + + expect(getLabelsRow().find('th').eq(0)).not.toBeHidden(); + var tr = element.find('tbody').find('tr'); + for (var i = 0; i < 5; i++) { + expect(tr.eq(i).find('td').eq(0)).not.toBeHidden(); + } + }); }); describe('`ng-change`', function() {