diff --git a/app/coffee/modules/kanban/main.coffee b/app/coffee/modules/kanban/main.coffee index d1f14c42..f3b3c95d 100644 --- a/app/coffee/modules/kanban/main.coffee +++ b/app/coffee/modules/kanban/main.coffee @@ -245,6 +245,26 @@ KanbanRowSizeFixer = -> module.directive("tgKanbanRowSizeFixer", KanbanRowSizeFixer) +############################################################################# +## Kaban Column Height Fixer Directive +############################################################################# + +KanbanColumnHeightFixerDirective = -> + mainPadding = 32 # px + + renderSize = ($el) -> + elementOffset = $el.parent().parent().offset().top + windowHeight = angular.element(window).height() + columnHeight = windowHeight - elementOffset - mainPadding + $el.css("height", "#{columnHeight}px") + + link = ($scope, $el, $attrs) -> + timeout(500, -> renderSize($el)) + + return {link:link} + + +module.directive("tgKanbanColumnHeightFixer", KanbanColumnHeightFixerDirective) ############################################################################# ## Kaban User Story Directive diff --git a/app/coffee/modules/kanban/sortable.coffee b/app/coffee/modules/kanban/sortable.coffee index c6d82619..cd495efe 100644 --- a/app/coffee/modules/kanban/sortable.coffee +++ b/app/coffee/modules/kanban/sortable.coffee @@ -37,14 +37,6 @@ module = angular.module("taigaKanban") KanbanSortableDirective = ($repo, $rs, $rootscope) -> link = ($scope, $el, $attrs) -> - timeout 500, -> - mainPadding = 32 # px - elementOffset = $el.parent().parent().offset().top - windowHeight = angular.element(window).height() - columnHeight = windowHeight - elementOffset - mainPadding - - $el.css("height", "#{columnHeight}px") - oldParentScope = null newParentScope = null itemEl = null diff --git a/app/partials/views/modules/kanban-table.jade b/app/partials/views/modules/kanban-table.jade index 3c870517..9525f0cf 100644 --- a/app/partials/views/modules/kanban-table.jade +++ b/app/partials/views/modules/kanban-table.jade @@ -10,6 +10,8 @@ div.kanban-table div.kanban-table-body div.kanban-table-inner(tg-kanban-row-size-fixer) div.kanban-uses-box.task-column(ng-repeat="status in usStatusList track by status.id", - tg-kanban-sortable, tg-kanban-wip-limit) + tg-kanban-sortable, + tg-kanban-wip-limit, + tg-kanban-column-height-fixer) div.kanban-task(ng-repeat="us in usByStatus[status.id] track by us.id", tg-kanban-userstory, ng-model="us")