diff options
author | ashbike <helloashbike@gmail.com> | 2015-02-25 12:05:14 +0530 |
---|---|---|
committer | ashbike <helloashbike@gmail.com> | 2015-02-25 12:05:14 +0530 |
commit | 88444e8b3e35e460e47cda0080957641071a2a6c (patch) | |
tree | 6cfe8d5bbf3410882cb15686fb27ff143c4616c9 /assets | |
parent | 11d1314fbe96c8f19d898cf18dc615a49a89fd0d (diff) |
A small patch which enables scroll view toggling.
If there are many columns, the board adds a horizontal scrollbar. However, This looses the full board visibility. Now there is a menu item on the Board, Action > Toggle view which switches. This can also be toggled by 'c' keypress.
Diffstat (limited to 'assets')
-rw-r--r-- | assets/css/src/board.css | 20 | ||||
-rw-r--r-- | assets/js/src/board.js | 39 |
2 files changed, 59 insertions, 0 deletions
diff --git a/assets/css/src/board.css b/assets/css/src/board.css index a1aa268d..2f168322 100644 --- a/assets/css/src/board.css +++ b/assets/css/src/board.css @@ -20,16 +20,36 @@ /* board table */ #board-container { + /* Will set the style from JS depending upon wide/compact view */ +} + +/* Board container classes for wide/compact view */ +#board-container-wide { overflow-x: scroll; padding-bottom: 180px; /* Space to avoid dropdown menu truncated */ } +.board-container-compact { + overflow-x: hidden; + padding-bottom: 180px; /* Space to avoid dropdown menu truncated */ +} + #board td, #board th { + /* Will set the style from JS depending upon wide/compact view */ + } + +/* Board table column for wide/compact view */ +.board-column-wide { min-width: 240px; max-width: 240px; } +.board-column-compact { + min-width: 0px; + max-width: 0px; +} + #board th a { text-decoration: none; color: #3366CC; diff --git a/assets/js/src/board.js b/assets/js/src/board.js index 75c44f2e..26d92c05 100644 --- a/assets/js/src/board.js +++ b/assets/js/src/board.js @@ -23,6 +23,10 @@ Kanboard.Board = (function() { Mousetrap.bind("s", function() { stack_toggle(); }); + + Mousetrap.bind("c", function() { + compactview_toggle(); + }); } // Collapse/Expand tasks @@ -351,6 +355,35 @@ Kanboard.Board = (function() { filter_apply(); } + // Toggle compact view. It will try to stuff all columns in the window + jQuery(document).on('click', ".compactview-toggle", function(e) { + e.preventDefault(); + compactview_toggle(); + }); + + function compactview_toggle() { + var compactview = Kanboard.GetStorageItem("compactview"); + if (compactview == '1') { + Kanboard.SetStorageItem("compactview",'0'); + } else { + Kanboard.SetStorageItem("compactview",'1'); + } + compactview_reload (); + } + + function compactview_reload() + { + var compactview = Kanboard.GetStorageItem("compactview"); + $("#board-container,#board th,#board td").removeClass (); + if (compactview == '1') { + $('#board-container').addClass ('board-container-compact'); + $("#board th,#board td").addClass ('board-column-compact'); + } else { + $('#board-container').addClass ('board-container-wide'); + $("#board th,#board td").addClass ('board-column-wide'); + } + } + jQuery(document).ready(function() { if (Kanboard.Exists("board")) { @@ -358,7 +391,13 @@ Kanboard.Board = (function() { filter_load_events(); stack_load_events(); keyboard_shortcuts(); + compactview_reload(); } }); + + // Reload the compactview states (shown/hidden) after an ajax call + jQuery(document).ajaxComplete(function() { + compactview_reload(); + }); })(); |