You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ignite.apache.org by ak...@apache.org on 2015/11/12 04:23:20 UTC
ignite git commit: IGNITE-1859 Added tooltips for long strings and
fixed summary page drop down POJO width.
Repository: ignite
Updated Branches:
refs/heads/ignite-843-rc1 124c78855 -> 15f9b2d24
IGNITE-1859 Added tooltips for long strings and fixed summary page drop down POJO width.
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/15f9b2d2
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/15f9b2d2
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/15f9b2d2
Branch: refs/heads/ignite-843-rc1
Commit: 15f9b2d24ed5c4f2969d079f6ebfc286daa78b43
Parents: 124c788
Author: vsisko@gridgain.com <ko...@kope-mac.local>
Authored: Thu Nov 12 10:23:20 2015 +0700
Committer: Alexey Kuznetsov <ak...@apache.org>
Committed: Thu Nov 12 10:23:20 2015 +0700
----------------------------------------------------------------------
.../main/js/controllers/caches-controller.js | 1 +
.../main/js/controllers/clusters-controller.js | 1 +
.../src/main/js/controllers/common-module.js | 51 ++++++++++++++------
.../src/main/js/controllers/igfs-controller.js | 1 +
.../main/js/controllers/metadata-controller.js | 1 +
.../main/js/controllers/summary-controller.js | 1 +
.../src/main/js/public/stylesheets/style.scss | 5 ++
.../main/js/views/configuration/summary.jade | 4 +-
.../src/main/js/views/templates/select.jade | 2 +-
9 files changed, 49 insertions(+), 18 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/15f9b2d2/modules/control-center-web/src/main/js/controllers/caches-controller.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/controllers/caches-controller.js b/modules/control-center-web/src/main/js/controllers/caches-controller.js
index 41584b8..3be08e1 100644
--- a/modules/control-center-web/src/main/js/controllers/caches-controller.js
+++ b/modules/control-center-web/src/main/js/controllers/caches-controller.js
@@ -32,6 +32,7 @@ consoleModule.controller('cachesController', [
$scope.getModel = $common.getModel;
$scope.javaBuildInClasses = $common.javaBuildInClasses;
$scope.compactJavaName = $common.compactJavaName;
+ $scope.widthIsSufficient = $common.widthIsSufficient;
$scope.saveBtnTipText = $common.saveBtnTipText;
$scope.panelExpanded = $common.panelExpanded;
http://git-wip-us.apache.org/repos/asf/ignite/blob/15f9b2d2/modules/control-center-web/src/main/js/controllers/clusters-controller.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/controllers/clusters-controller.js b/modules/control-center-web/src/main/js/controllers/clusters-controller.js
index fed00c9..e3bd651 100644
--- a/modules/control-center-web/src/main/js/controllers/clusters-controller.js
+++ b/modules/control-center-web/src/main/js/controllers/clusters-controller.js
@@ -31,6 +31,7 @@ consoleModule.controller('clustersController', [
$scope.joinTip = $common.joinTip;
$scope.getModel = $common.getModel;
$scope.compactJavaName = $common.compactJavaName;
+ $scope.widthIsSufficient = $common.widthIsSufficient;
$scope.saveBtnTipText = $common.saveBtnTipText;
$scope.panelExpanded = $common.panelExpanded;
http://git-wip-us.apache.org/repos/asf/ignite/blob/15f9b2d2/modules/control-center-web/src/main/js/controllers/common-module.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/controllers/common-module.js b/modules/control-center-web/src/main/js/controllers/common-module.js
index 5e34adf..5106132 100644
--- a/modules/control-center-web/src/main/js/controllers/common-module.js
+++ b/modules/control-center-web/src/main/js/controllers/common-module.js
@@ -454,29 +454,38 @@ consoleModule.service('$common', [
* @returns {*[]} First element is length of class for single value, second element is length for pair vlaue.
*/
function availableWidth(index, id) {
- var divs = $($('#' + id).find('tr')[index - 1]).find('div');
-
- var div = null;
+ var idElem = $('#' + id);
var width = 0;
- for (var divIx = 0; divIx < divs.length; divIx ++)
- if (divs[divIx].className.length == 0 && (div == null || divs[divIx].childNodes.length > div.childNodes.length))
- div = divs[divIx];
+ switch (idElem.prop("tagName")) {
+ // Detection of available width in presentation table row.
+ case 'TABLE':
+ var cont = $(idElem.find('tr')[index - 1]).find('td')[0];
+
+ width = cont.clientWidth;
+
+ if (width > 0) {
+ var children = $(cont).children(':not("a")');
- if (div != null) {
- width = div.clientWidth;
+ _.forEach(children, function(child) {
+ if ('offsetWidth' in child)
+ width -= $(child).outerWidth(true);
+ });
+ }
- if (width > 0) {
- var children = div.childNodes;
+ break;
- for (var i = 1; i < children.length; i++) {
- var child = children[i];
+ // Detection of available width in dropdown row.
+ case 'A':
+ width = idElem.width();
+ $(idElem).children(':not("span")').each(function(ix, child) {
if ('offsetWidth' in child)
- width -= $(children[i]).outerWidth(true);
- }
- }
+ width -= child.offsetWidth;
+ });
+
+ break;
}
return width | 0;
@@ -736,6 +745,18 @@ consoleModule.service('$common', [
return result;
},
+ widthIsSufficient: function(id, index, text) {
+ try {
+ var available = availableWidth(index, id);
+
+ var required = measureText(text);
+
+ return !available || available >= Math.floor(required);
+ }
+ catch (err) {
+ return true;
+ }
+ },
ensureActivePanel: function (panels, id, focusId) {
ensureActivePanel(panels, id, focusId);
},
http://git-wip-us.apache.org/repos/asf/ignite/blob/15f9b2d2/modules/control-center-web/src/main/js/controllers/igfs-controller.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/controllers/igfs-controller.js b/modules/control-center-web/src/main/js/controllers/igfs-controller.js
index 8914a71..5743180 100644
--- a/modules/control-center-web/src/main/js/controllers/igfs-controller.js
+++ b/modules/control-center-web/src/main/js/controllers/igfs-controller.js
@@ -32,6 +32,7 @@ consoleModule.controller('igfsController', [
$scope.getModel = $common.getModel;
$scope.javaBuildInClasses = $common.javaBuildInClasses;
$scope.compactJavaName = $common.compactJavaName;
+ $scope.widthIsSufficient = $common.widthIsSufficient;
$scope.saveBtnTipText = $common.saveBtnTipText;
$scope.panelExpanded = $common.panelExpanded;
http://git-wip-us.apache.org/repos/asf/ignite/blob/15f9b2d2/modules/control-center-web/src/main/js/controllers/metadata-controller.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/controllers/metadata-controller.js b/modules/control-center-web/src/main/js/controllers/metadata-controller.js
index 64cc718..43516f1 100644
--- a/modules/control-center-web/src/main/js/controllers/metadata-controller.js
+++ b/modules/control-center-web/src/main/js/controllers/metadata-controller.js
@@ -42,6 +42,7 @@ consoleModule.controller('metadataController', [
$scope.getModel = $common.getModel;
$scope.javaBuildInClasses = $common.javaBuildInClasses;
$scope.compactJavaName = $common.compactJavaName;
+ $scope.widthIsSufficient = $common.widthIsSufficient;
$scope.saveBtnTipText = $common.saveBtnTipText;
$scope.panelExpanded = $common.panelExpanded;
http://git-wip-us.apache.org/repos/asf/ignite/blob/15f9b2d2/modules/control-center-web/src/main/js/controllers/summary-controller.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/controllers/summary-controller.js b/modules/control-center-web/src/main/js/controllers/summary-controller.js
index 2ade9e1..ca0eab6 100644
--- a/modules/control-center-web/src/main/js/controllers/summary-controller.js
+++ b/modules/control-center-web/src/main/js/controllers/summary-controller.js
@@ -23,6 +23,7 @@ consoleModule.controller('summaryController', [
$scope.tableVisibleRow = $table.tableVisibleRow;
$scope.joinTip = $common.joinTip;
$scope.getModel = $common.getModel;
+ $scope.widthIsSufficient = $common.widthIsSufficient;
$scope.showMoreInfo = $message.message;
http://git-wip-us.apache.org/repos/asf/ignite/blob/15f9b2d2/modules/control-center-web/src/main/js/public/stylesheets/style.scss
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/public/stylesheets/style.scss b/modules/control-center-web/src/main/js/public/stylesheets/style.scss
index 9ab0c12..8cba70f 100644
--- a/modules/control-center-web/src/main/js/public/stylesheets/style.scss
+++ b/modules/control-center-web/src/main/js/public/stylesheets/style.scss
@@ -144,6 +144,11 @@ ul.navbar-nav, .sidebar-nav {
color: $input-color-placeholder;
}
+.theme-line .summary-pojo-list > ul.dropdown-menu {
+ width: 100%;
+ max-width: none;
+}
+
.theme-line ul.dropdown-menu {
min-width: 120px;
max-width: 280px;
http://git-wip-us.apache.org/repos/asf/ignite/blob/15f9b2d2/modules/control-center-web/src/main/js/views/configuration/summary.jade
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/views/configuration/summary.jade b/modules/control-center-web/src/main/js/views/configuration/summary.jade
index 6b3b9a1..562ca44 100644
--- a/modules/control-center-web/src/main/js/views/configuration/summary.jade
+++ b/modules/control-center-web/src/main/js/views/configuration/summary.jade
@@ -39,8 +39,8 @@ mixin pojos(side)
.details-row
.col-xs-2.col-sm-2.col-md-2
label POJO class:
- .col-xs-10.col-sm-10.col-md-10
- button.select-toggle.form-control(ng-model='config#{side}.pojoClass' bs-select bs-options='item for item in pojoClasses()')
+ .col-xs-10.col-sm-10.col-md-10.summary-pojo-list
+ button.select-toggle.form-control(ng-model='config#{side}.pojoClass' bs-select bs-options='item for item in pojoClasses()' data-container='')
.col-xs-2.col-sm-2.col-md-2
label
.col-xs-10.col-sm-10.col-md-10
http://git-wip-us.apache.org/repos/asf/ignite/blob/15f9b2d2/modules/control-center-web/src/main/js/views/templates/select.jade
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/views/templates/select.jade b/modules/control-center-web/src/main/js/views/templates/select.jade
index 3ff8d21..5825d1e 100644
--- a/modules/control-center-web/src/main/js/views/templates/select.jade
+++ b/modules/control-center-web/src/main/js/views/templates/select.jade
@@ -21,6 +21,6 @@ ul.select.dropdown-menu(tabindex='-1' ng-show='$isVisible()' role='select')
hr(style='margin: 5px 0')
li(role='presentation' ng-repeat='match in $matches')
hr(ng-if='match.value == undefined' style='margin: 5px 0')
- a(id='li-dropdown-item-{{$index}}' role='menuitem' tabindex='-1' ng-class='{active: $isActive($index)}' ng-click='$select($index, $event)')
+ a(id='li-dropdown-item-{{$index}}' role='menuitem' tabindex='-1' ng-class='{active: $isActive($index)}' ng-click='$select($index, $event)' bs-tooltip='widthIsSufficient && !widthIsSufficient("li-dropdown-item-{{$index}}", $index, match.label) ? match.label : ""' data-placement='bottom')
i(class='{{$iconCheckmark}}' ng-if='$isActive($index)' ng-class='{active: $isActive($index)}')
span(ng-bind='match.label')