Add the possibility to set/unset max column height (scrolling)
This commit is contained in:
@@ -18,6 +18,7 @@ Core functionalities moved to plugins:
|
|||||||
|
|
||||||
Improvements:
|
Improvements:
|
||||||
|
|
||||||
|
* Add the possibility to set/unset max column height (column scrolling)
|
||||||
* Show "Open this task" in dropdown menu for closed tasks
|
* Show "Open this task" in dropdown menu for closed tasks
|
||||||
* Show assignee on card only when someone is assigned (hide nobody text)
|
* Show assignee on card only when someone is assigned (hide nobody text)
|
||||||
* Highlight selected item in dropdown menus
|
* Highlight selected item in dropdown menus
|
||||||
|
|||||||
@@ -1016,4 +1016,6 @@ return array(
|
|||||||
// 'Version' => '',
|
// 'Version' => '',
|
||||||
// 'Plugins' => '',
|
// 'Plugins' => '',
|
||||||
// 'There is no plugin loaded.' => '',
|
// 'There is no plugin loaded.' => '',
|
||||||
|
// 'Set maximum column height' => '',
|
||||||
|
// 'Remove maximum column height' => '',
|
||||||
);
|
);
|
||||||
|
|||||||
@@ -1016,4 +1016,6 @@ return array(
|
|||||||
// 'Version' => '',
|
// 'Version' => '',
|
||||||
// 'Plugins' => '',
|
// 'Plugins' => '',
|
||||||
// 'There is no plugin loaded.' => '',
|
// 'There is no plugin loaded.' => '',
|
||||||
|
// 'Set maximum column height' => '',
|
||||||
|
// 'Remove maximum column height' => '',
|
||||||
);
|
);
|
||||||
|
|||||||
@@ -1016,4 +1016,6 @@ return array(
|
|||||||
// 'Version' => '',
|
// 'Version' => '',
|
||||||
// 'Plugins' => '',
|
// 'Plugins' => '',
|
||||||
// 'There is no plugin loaded.' => '',
|
// 'There is no plugin loaded.' => '',
|
||||||
|
// 'Set maximum column height' => '',
|
||||||
|
// 'Remove maximum column height' => '',
|
||||||
);
|
);
|
||||||
|
|||||||
@@ -1016,4 +1016,6 @@ return array(
|
|||||||
// 'Version' => '',
|
// 'Version' => '',
|
||||||
// 'Plugins' => '',
|
// 'Plugins' => '',
|
||||||
// 'There is no plugin loaded.' => '',
|
// 'There is no plugin loaded.' => '',
|
||||||
|
// 'Set maximum column height' => '',
|
||||||
|
// 'Remove maximum column height' => '',
|
||||||
);
|
);
|
||||||
|
|||||||
@@ -1016,4 +1016,6 @@ return array(
|
|||||||
// 'Version' => '',
|
// 'Version' => '',
|
||||||
// 'Plugins' => '',
|
// 'Plugins' => '',
|
||||||
// 'There is no plugin loaded.' => '',
|
// 'There is no plugin loaded.' => '',
|
||||||
|
// 'Set maximum column height' => '',
|
||||||
|
// 'Remove maximum column height' => '',
|
||||||
);
|
);
|
||||||
|
|||||||
@@ -1018,4 +1018,6 @@ return array(
|
|||||||
'Version' => 'Version',
|
'Version' => 'Version',
|
||||||
'Plugins' => 'Extensions',
|
'Plugins' => 'Extensions',
|
||||||
'There is no plugin loaded.' => 'Il n\'y a aucune extension chargée.',
|
'There is no plugin loaded.' => 'Il n\'y a aucune extension chargée.',
|
||||||
|
'Set maximum column height' => 'Définir la hauteur max. des colonnes',
|
||||||
|
'Remove maximum column height' => 'Enlever la hauteur max. des colonnes',
|
||||||
);
|
);
|
||||||
|
|||||||
@@ -1016,4 +1016,6 @@ return array(
|
|||||||
// 'Version' => '',
|
// 'Version' => '',
|
||||||
// 'Plugins' => '',
|
// 'Plugins' => '',
|
||||||
// 'There is no plugin loaded.' => '',
|
// 'There is no plugin loaded.' => '',
|
||||||
|
// 'Set maximum column height' => '',
|
||||||
|
// 'Remove maximum column height' => '',
|
||||||
);
|
);
|
||||||
|
|||||||
@@ -1016,4 +1016,6 @@ return array(
|
|||||||
// 'Version' => '',
|
// 'Version' => '',
|
||||||
// 'Plugins' => '',
|
// 'Plugins' => '',
|
||||||
// 'There is no plugin loaded.' => '',
|
// 'There is no plugin loaded.' => '',
|
||||||
|
// 'Set maximum column height' => '',
|
||||||
|
// 'Remove maximum column height' => '',
|
||||||
);
|
);
|
||||||
|
|||||||
@@ -1016,4 +1016,6 @@ return array(
|
|||||||
// 'Version' => '',
|
// 'Version' => '',
|
||||||
// 'Plugins' => '',
|
// 'Plugins' => '',
|
||||||
// 'There is no plugin loaded.' => '',
|
// 'There is no plugin loaded.' => '',
|
||||||
|
// 'Set maximum column height' => '',
|
||||||
|
// 'Remove maximum column height' => '',
|
||||||
);
|
);
|
||||||
|
|||||||
@@ -1016,4 +1016,6 @@ return array(
|
|||||||
// 'Version' => '',
|
// 'Version' => '',
|
||||||
// 'Plugins' => '',
|
// 'Plugins' => '',
|
||||||
// 'There is no plugin loaded.' => '',
|
// 'There is no plugin loaded.' => '',
|
||||||
|
// 'Set maximum column height' => '',
|
||||||
|
// 'Remove maximum column height' => '',
|
||||||
);
|
);
|
||||||
|
|||||||
@@ -1016,4 +1016,6 @@ return array(
|
|||||||
// 'Version' => '',
|
// 'Version' => '',
|
||||||
// 'Plugins' => '',
|
// 'Plugins' => '',
|
||||||
// 'There is no plugin loaded.' => '',
|
// 'There is no plugin loaded.' => '',
|
||||||
|
// 'Set maximum column height' => '',
|
||||||
|
// 'Remove maximum column height' => '',
|
||||||
);
|
);
|
||||||
|
|||||||
@@ -1016,4 +1016,6 @@ return array(
|
|||||||
// 'Version' => '',
|
// 'Version' => '',
|
||||||
// 'Plugins' => '',
|
// 'Plugins' => '',
|
||||||
// 'There is no plugin loaded.' => '',
|
// 'There is no plugin loaded.' => '',
|
||||||
|
// 'Set maximum column height' => '',
|
||||||
|
// 'Remove maximum column height' => '',
|
||||||
);
|
);
|
||||||
|
|||||||
@@ -1016,4 +1016,6 @@ return array(
|
|||||||
// 'Version' => '',
|
// 'Version' => '',
|
||||||
// 'Plugins' => '',
|
// 'Plugins' => '',
|
||||||
// 'There is no plugin loaded.' => '',
|
// 'There is no plugin loaded.' => '',
|
||||||
|
// 'Set maximum column height' => '',
|
||||||
|
// 'Remove maximum column height' => '',
|
||||||
);
|
);
|
||||||
|
|||||||
@@ -1016,4 +1016,6 @@ return array(
|
|||||||
// 'Version' => '',
|
// 'Version' => '',
|
||||||
// 'Plugins' => '',
|
// 'Plugins' => '',
|
||||||
// 'There is no plugin loaded.' => '',
|
// 'There is no plugin loaded.' => '',
|
||||||
|
// 'Set maximum column height' => '',
|
||||||
|
// 'Remove maximum column height' => '',
|
||||||
);
|
);
|
||||||
|
|||||||
@@ -1016,4 +1016,6 @@ return array(
|
|||||||
// 'Version' => '',
|
// 'Version' => '',
|
||||||
// 'Plugins' => '',
|
// 'Plugins' => '',
|
||||||
// 'There is no plugin loaded.' => '',
|
// 'There is no plugin loaded.' => '',
|
||||||
|
// 'Set maximum column height' => '',
|
||||||
|
// 'Remove maximum column height' => '',
|
||||||
);
|
);
|
||||||
|
|||||||
@@ -1016,4 +1016,6 @@ return array(
|
|||||||
// 'Version' => '',
|
// 'Version' => '',
|
||||||
// 'Plugins' => '',
|
// 'Plugins' => '',
|
||||||
// 'There is no plugin loaded.' => '',
|
// 'There is no plugin loaded.' => '',
|
||||||
|
// 'Set maximum column height' => '',
|
||||||
|
// 'Remove maximum column height' => '',
|
||||||
);
|
);
|
||||||
|
|||||||
@@ -1016,4 +1016,6 @@ return array(
|
|||||||
// 'Version' => '',
|
// 'Version' => '',
|
||||||
// 'Plugins' => '',
|
// 'Plugins' => '',
|
||||||
// 'There is no plugin loaded.' => '',
|
// 'There is no plugin loaded.' => '',
|
||||||
|
// 'Set maximum column height' => '',
|
||||||
|
// 'Remove maximum column height' => '',
|
||||||
);
|
);
|
||||||
|
|||||||
@@ -1016,4 +1016,6 @@ return array(
|
|||||||
// 'Version' => '',
|
// 'Version' => '',
|
||||||
// 'Plugins' => '',
|
// 'Plugins' => '',
|
||||||
// 'There is no plugin loaded.' => '',
|
// 'There is no plugin loaded.' => '',
|
||||||
|
// 'Set maximum column height' => '',
|
||||||
|
// 'Remove maximum column height' => '',
|
||||||
);
|
);
|
||||||
|
|||||||
@@ -1016,4 +1016,6 @@ return array(
|
|||||||
// 'Version' => '',
|
// 'Version' => '',
|
||||||
// 'Plugins' => '',
|
// 'Plugins' => '',
|
||||||
// 'There is no plugin loaded.' => '',
|
// 'There is no plugin loaded.' => '',
|
||||||
|
// 'Set maximum column height' => '',
|
||||||
|
// 'Remove maximum column height' => '',
|
||||||
);
|
);
|
||||||
|
|||||||
@@ -1016,4 +1016,6 @@ return array(
|
|||||||
// 'Version' => '',
|
// 'Version' => '',
|
||||||
// 'Plugins' => '',
|
// 'Plugins' => '',
|
||||||
// 'There is no plugin loaded.' => '',
|
// 'There is no plugin loaded.' => '',
|
||||||
|
// 'Set maximum column height' => '',
|
||||||
|
// 'Remove maximum column height' => '',
|
||||||
);
|
);
|
||||||
|
|||||||
@@ -1016,4 +1016,6 @@ return array(
|
|||||||
// 'Version' => '',
|
// 'Version' => '',
|
||||||
// 'Plugins' => '',
|
// 'Plugins' => '',
|
||||||
// 'There is no plugin loaded.' => '',
|
// 'There is no plugin loaded.' => '',
|
||||||
|
// 'Set maximum column height' => '',
|
||||||
|
// 'Remove maximum column height' => '',
|
||||||
);
|
);
|
||||||
|
|||||||
@@ -4,8 +4,8 @@
|
|||||||
<th class="board-swimlane-header">
|
<th class="board-swimlane-header">
|
||||||
<?php if (! $not_editable): ?>
|
<?php if (! $not_editable): ?>
|
||||||
<a href="#" class="board-swimlane-toggle" data-swimlane-id="<?= $swimlane['id'] ?>">
|
<a href="#" class="board-swimlane-toggle" data-swimlane-id="<?= $swimlane['id'] ?>">
|
||||||
<i class="fa fa-minus-circle hide-icon-swimlane-<?= $swimlane['id'] ?>"></i>
|
<i class="fa fa-chevron-circle-up hide-icon-swimlane-<?= $swimlane['id'] ?>"></i>
|
||||||
<i class="fa fa-plus-circle show-icon-swimlane-<?= $swimlane['id'] ?>" style="display: none"></i>
|
<i class="fa fa-chevron-circle-down show-icon-swimlane-<?= $swimlane['id'] ?>" style="display: none"></i>
|
||||||
</a>
|
</a>
|
||||||
|
|
||||||
<?php if (! empty($swimlane['description'])): ?>
|
<?php if (! empty($swimlane['description'])): ?>
|
||||||
@@ -95,7 +95,7 @@
|
|||||||
<div class="board-column-collapsed">
|
<div class="board-column-collapsed">
|
||||||
<div class="board-rotation-wrapper">
|
<div class="board-rotation-wrapper">
|
||||||
<div class="board-column-title board-rotation" data-column-id="<?= $column['id'] ?>" title="<?= t('Show this column') ?>">
|
<div class="board-column-title board-rotation" data-column-id="<?= $column['id'] ?>" title="<?= t('Show this column') ?>">
|
||||||
<?= $this->e($column['title']) ?>
|
<i class="fa fa-chevron-circle-up tooltip" title="<?= $this->e($column['title']) ?>"></i> <?= $this->e($column['title']) ?>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -21,6 +21,14 @@
|
|||||||
<i class="fa fa-arrows-h fa-fw"></i> <a href="#" class="filter-toggle-scrolling" title="<?= t('Keyboard shortcut: "%s"', 'c') ?>"><?= t('Horizontal scrolling') ?></a>
|
<i class="fa fa-arrows-h fa-fw"></i> <a href="#" class="filter-toggle-scrolling" title="<?= t('Keyboard shortcut: "%s"', 'c') ?>"><?= t('Horizontal scrolling') ?></a>
|
||||||
</span>
|
</span>
|
||||||
</li>
|
</li>
|
||||||
|
<li>
|
||||||
|
<span class="filter-max-height" style="display: none">
|
||||||
|
<i class="fa fa-arrows-v fa-fw"></i> <a href="#" class="filter-toggle-height"><?= t('Set maximum column height') ?></a>
|
||||||
|
</span>
|
||||||
|
<span class="filter-min-height">
|
||||||
|
<i class="fa fa-arrows-v fa-fw"></i> <a href="#" class="filter-toggle-height"><?= t('Remove maximum column height') ?></a>
|
||||||
|
</span>
|
||||||
|
</li>
|
||||||
<?php endif ?>
|
<?php endif ?>
|
||||||
<?= $this->render('project/dropdown', array('project' => $project)) ?>
|
<?= $this->render('project/dropdown', array('project' => $project)) ?>
|
||||||
</ul>
|
</ul>
|
||||||
|
|||||||
@@ -50,7 +50,7 @@
|
|||||||
<?= $this->form->hidden('id', $default_swimlane) ?>
|
<?= $this->form->hidden('id', $default_swimlane) ?>
|
||||||
|
|
||||||
<?= $this->form->label(t('Rename'), 'default_swimlane') ?>
|
<?= $this->form->label(t('Rename'), 'default_swimlane') ?>
|
||||||
<?= $this->form->text('default_swimlane', $default_swimlane, array(), array('autofocus', 'required', 'maxlength="50"')) ?><br/>
|
<?= $this->form->text('default_swimlane', $default_swimlane, array(), array('required', 'maxlength="50"')) ?><br/>
|
||||||
|
|
||||||
<?= $this->form->checkbox('show_default_swimlane', t('Show default swimlane'), 1, isset($default_swimlane['show_default_swimlane']) && $default_swimlane['show_default_swimlane'] == 1) ?>
|
<?= $this->form->checkbox('show_default_swimlane', t('Show default swimlane'), 1, isset($default_swimlane['show_default_swimlane']) && $default_swimlane['show_default_swimlane'] == 1) ?>
|
||||||
|
|
||||||
|
|||||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -61,10 +61,12 @@ td.board-column-task-collapsed {
|
|||||||
.board-rotation-wrapper {
|
.board-rotation-wrapper {
|
||||||
position: relative;
|
position: relative;
|
||||||
padding: 8px 4px;
|
padding: 8px 4px;
|
||||||
|
min-height: 150px;
|
||||||
|
overflow: auto;
|
||||||
}
|
}
|
||||||
|
|
||||||
.board-rotation {
|
.board-rotation {
|
||||||
min-width: 250px;
|
white-space: nowrap;
|
||||||
-webkit-backface-visibility: hidden;
|
-webkit-backface-visibility: hidden;
|
||||||
-webkit-transform: rotate(90deg);
|
-webkit-transform: rotate(90deg);
|
||||||
-moz-transform: rotate(90deg);
|
-moz-transform: rotate(90deg);
|
||||||
@@ -77,6 +79,10 @@ td.board-column-task-collapsed {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* column header */
|
/* column header */
|
||||||
|
.board-column-title {
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
|
||||||
.board-add-icon {
|
.board-add-icon {
|
||||||
float: left;
|
float: left;
|
||||||
padding: 0 5px;
|
padding: 0 5px;
|
||||||
@@ -125,6 +131,7 @@ a.board-swimlane-toggle {
|
|||||||
/* board task list */
|
/* board task list */
|
||||||
.board-task-list {
|
.board-task-list {
|
||||||
overflow: auto;
|
overflow: auto;
|
||||||
|
min-height: 60px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.board-task-list-limit {
|
.board-task-list-limit {
|
||||||
|
|||||||
File diff suppressed because one or more lines are too long
@@ -8,13 +8,13 @@ Board.prototype.execute = function() {
|
|||||||
this.app.swimlane.listen();
|
this.app.swimlane.listen();
|
||||||
this.restoreColumnViewMode();
|
this.restoreColumnViewMode();
|
||||||
this.compactView();
|
this.compactView();
|
||||||
|
this.columnScrolling();
|
||||||
this.poll();
|
this.poll();
|
||||||
this.keyboardShortcuts();
|
this.keyboardShortcuts();
|
||||||
this.resizeColumnHeight();
|
|
||||||
this.listen();
|
this.listen();
|
||||||
this.dragAndDrop();
|
this.dragAndDrop();
|
||||||
|
|
||||||
$(window).resize(this.resizeColumnHeight);
|
$(window).resize(this.columnScrolling);
|
||||||
};
|
};
|
||||||
|
|
||||||
Board.prototype.poll = function() {
|
Board.prototype.poll = function() {
|
||||||
@@ -85,7 +85,7 @@ Board.prototype.refresh = function(data) {
|
|||||||
this.app.refresh();
|
this.app.refresh();
|
||||||
this.app.swimlane.refresh();
|
this.app.swimlane.refresh();
|
||||||
this.app.swimlane.listen();
|
this.app.swimlane.listen();
|
||||||
this.resizeColumnHeight();
|
this.columnScrolling();
|
||||||
this.app.hideLoadingIcon();
|
this.app.hideLoadingIcon();
|
||||||
this.listen();
|
this.listen();
|
||||||
this.dragAndDrop();
|
this.dragAndDrop();
|
||||||
@@ -93,22 +93,6 @@ Board.prototype.refresh = function(data) {
|
|||||||
this.restoreColumnViewMode();
|
this.restoreColumnViewMode();
|
||||||
};
|
};
|
||||||
|
|
||||||
Board.prototype.resizeColumnHeight = function() {
|
|
||||||
if ($(".board-swimlane").length > 1) {
|
|
||||||
$(".board-task-list").each(function() {
|
|
||||||
if ($(this).height() > 500) {
|
|
||||||
$(this).height(500);
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
$(this).css("min-height", 320); // Min height is the height of the menu dropdown
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
$(".board-task-list").height($(window).height() - 145);
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
Board.prototype.dragAndDrop = function() {
|
Board.prototype.dragAndDrop = function() {
|
||||||
var self = this;
|
var self = this;
|
||||||
var params = {
|
var params = {
|
||||||
@@ -155,11 +139,58 @@ Board.prototype.listen = function() {
|
|||||||
self.toggleCompactView();
|
self.toggleCompactView();
|
||||||
});
|
});
|
||||||
|
|
||||||
|
$(document).on('click', ".filter-toggle-height", function(e) {
|
||||||
|
e.preventDefault();
|
||||||
|
self.toggleColumnScrolling();
|
||||||
|
});
|
||||||
|
|
||||||
$(document).on("click", ".board-column-title", function() {
|
$(document).on("click", ".board-column-title", function() {
|
||||||
self.toggleColumnViewMode($(this).data("column-id"));
|
self.toggleColumnViewMode($(this).data("column-id"));
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
|
Board.prototype.toggleColumnScrolling = function() {
|
||||||
|
var scrolling = localStorage.getItem("column_scroll") || 1;
|
||||||
|
localStorage.setItem("column_scroll", scrolling == 0 ? 1 : 0);
|
||||||
|
this.columnScrolling();
|
||||||
|
};
|
||||||
|
|
||||||
|
Board.prototype.columnScrolling = function() {
|
||||||
|
if (localStorage.getItem("column_scroll") == 0) {
|
||||||
|
$(".filter-max-height").show();
|
||||||
|
$(".filter-min-height").hide();
|
||||||
|
|
||||||
|
$(".board-task-list").each(function() {
|
||||||
|
$(this).css("min-height", 80);
|
||||||
|
$(this).css("height", '');
|
||||||
|
$(".board-rotation-wrapper").css("min-height", '');
|
||||||
|
});
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
|
||||||
|
$(".filter-max-height").hide();
|
||||||
|
$(".filter-min-height").show();
|
||||||
|
|
||||||
|
if ($(".board-swimlane").length > 1) {
|
||||||
|
$(".board-task-list").each(function() {
|
||||||
|
if ($(this).height() > 500) {
|
||||||
|
$(this).css("height", 500);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
$(this).css("min-height", 320); // Height of the dropdown menu
|
||||||
|
$(".board-rotation-wrapper").css("min-height", 320);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
var height = $(window).height() - 145;
|
||||||
|
|
||||||
|
$(".board-task-list").css("height", height);
|
||||||
|
$(".board-rotation-wrapper").css("min-height", height);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
Board.prototype.toggleCompactView = function() {
|
Board.prototype.toggleCompactView = function() {
|
||||||
var scrolling = localStorage.getItem("horizontal_scroll") || 1;
|
var scrolling = localStorage.getItem("horizontal_scroll") || 1;
|
||||||
localStorage.setItem("horizontal_scroll", scrolling == 0 ? 1 : 0);
|
localStorage.setItem("horizontal_scroll", scrolling == 0 ? 1 : 0);
|
||||||
@@ -233,7 +264,6 @@ Board.prototype.hideColumn = function(columnId) {
|
|||||||
});
|
});
|
||||||
|
|
||||||
$(".board-column-" + columnId + " .board-rotation").each(function() {
|
$(".board-column-" + columnId + " .board-rotation").each(function() {
|
||||||
var position = $(".board-swimlane").position();
|
|
||||||
$(this).css("width", $(".board-column-" + columnId + "").height());
|
$(this).css("width", $(".board-column-" + columnId + "").height());
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user