|
|
@@ -458,19 +458,30 @@
|
|
|
};
|
|
|
|
|
|
ko.bindingHandlers.toggleOverflow = {
|
|
|
- render: function ($element) {
|
|
|
+ render: function ($element, options) {
|
|
|
if (hueUtils.isOverflowing($element.find('.toggle-overflow'))) {
|
|
|
$('<div>').addClass('toggle-overflow-gradient').html('<i class="fa fa-caret-down muted"></i>').appendTo($element);
|
|
|
$element.on('click', function () {
|
|
|
- $element.find('.toggle-overflow-gradient').hide();
|
|
|
- $element.find('.toggle-overflow').css('height', '');
|
|
|
- $element.css('cursor', 'default');
|
|
|
+ if ($element.find('.toggle-overflow-gradient i').hasClass('fa-caret-down')){
|
|
|
+ $element.find('.toggle-overflow').css('height', '');
|
|
|
+ $element.css('cursor', 'n-resize');
|
|
|
+ $element.find('.toggle-overflow-gradient').css('cursor', 'n-resize');
|
|
|
+ $element.find('.toggle-overflow-gradient i').removeClass('fa-caret-down').addClass('fa-caret-up');
|
|
|
+ }
|
|
|
+ else {
|
|
|
+ if (options.height) {
|
|
|
+ $element.find('.toggle-overflow').height(options.height);
|
|
|
+ }
|
|
|
+ $element.css('cursor', 's-resize');
|
|
|
+ $element.find('.toggle-overflow-gradient').css('cursor', 's-resize');
|
|
|
+ $element.find('.toggle-overflow-gradient i').removeClass('fa-caret-up').addClass('fa-caret-down');
|
|
|
+ }
|
|
|
});
|
|
|
}
|
|
|
},
|
|
|
init: function (element, valueAccessor) {
|
|
|
var $element = $(element);
|
|
|
- var options = $.extend(valueAccessor(), {});
|
|
|
+ var options = valueAccessor() || {};
|
|
|
$element.wrapInner('<div class="toggle-overflow"></div>');
|
|
|
if (options.height) {
|
|
|
$element.find('.toggle-overflow').height(options.height);
|
|
|
@@ -481,8 +492,9 @@
|
|
|
},
|
|
|
update: function (element, valueAccessor) {
|
|
|
var $element = $(element);
|
|
|
+ var options = valueAccessor() || {};
|
|
|
window.setTimeout(function () {
|
|
|
- ko.bindingHandlers.toggleOverflow.render($element);
|
|
|
+ ko.bindingHandlers.toggleOverflow.render($element, options);
|
|
|
}, 100);
|
|
|
}
|
|
|
};
|