Greg Sheremeta has posted comments on this change.

Change subject: userportal, webadmin: convert all grids (Cells) to PatternFly 
tooltips
......................................................................


Patch Set 20:

(21 comments)

https://gerrit.ovirt.org/#/c/37935/20/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/table/cell/AbstractCell.java
File 
frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/table/cell/AbstractCell.java:

Line 64:         if (tooltipContent == null) {
Line 65:             tooltipContent = getTooltip(value);
Line 66:         }
Line 67: 
Line 68:         if (BrowserEvents.MOUSEOVER.equals(event.getType())) {
> At this point, assuming that "tooltipContent" is still null (likely scenari
Yes. A "null" tooltip is a valid value that means no tooltip. And it's possible 
for a rendered cell to change its tooltip dynamically. So if a Cell is changing 
from some tooltip to no tooltip, these methods must run.
Line 69:             TooltipMixin.configureTooltip(parent, tooltipContent, 
event);
Line 70:         }
Line 71: 
Line 72:         if (BrowserEvents.MOUSEOUT.equals(event.getType())) {


https://gerrit.ovirt.org/#/c/37935/20/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/table/cell/AbstractImageButtonCell.java
File 
frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/table/cell/AbstractImageButtonCell.java:

Line 32:     }
Line 33: 
Line 34:     @Override
Line 35:     public Set<String> getConsumedEvents() {
Line 36:         Set<String> set = new HashSet<String>();
> Why not simply:
Done
Line 37:         set.add(BrowserEvents.CLICK);
Line 38:         set.addAll(super.getConsumedEvents());
Line 39:         return set;
Line 40:     }


https://gerrit.ovirt.org/#/c/37935/20/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/table/cell/AbstractInputCell.java
File 
frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/table/cell/AbstractInputCell.java:

Line 62:         if (tooltipContent == null) {
Line 63:             tooltipContent = getTooltip(value);
Line 64:         }
Line 65: 
Line 66:         if (BrowserEvents.MOUSEOVER.equals(event.getType())) {
> Same comment as in AbstractCell.java
same response
Line 67:             TooltipMixin.configureTooltip(parent, tooltipContent, 
event);
Line 68:         }
Line 69: 
Line 70:         if (BrowserEvents.MOUSEOUT.equals(event.getType())) {


https://gerrit.ovirt.org/#/c/37935/20/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/table/cell/CompositeCell.java
File 
frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/table/cell/CompositeCell.java:

Line 65:         if (tooltipContent == null) {
Line 66:             tooltipContent = getTooltip(value);
Line 67:         }
Line 68: 
Line 69:         if (BrowserEvents.MOUSEOVER.equals(event.getType())) {
> Same comment as in AbstractCell.java
same response
Line 70:             TooltipMixin.configureTooltip(parent, tooltipContent, 
event);
Line 71:         }
Line 72: 
Line 73:         if (BrowserEvents.MOUSEOUT.equals(event.getType())) {


Line 135:             sb.appendHtmlConstant("</span>"); //$NON-NLS-1$
Line 136:         }
Line 137:         else {
Line 138:             throw new IllegalStateException("CompositeCell cannot 
render Cells that do not implement " //$NON-NLS-1$
Line 139:                     + 
"org.ovirt.engine.ui.common.widget.table.cell.Cell"); //$NON-NLS-1$
> AFAIK, you could use Class.getName() here to avoid hard-coding fully-qualif
Done
Line 140:         }
Line 141:     }
Line 142: 
Line 143:     public void setElementIdPrefix(String elementIdPrefix) {


https://gerrit.ovirt.org/#/c/37935/20/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/table/cell/EditTextCell.java
File 
frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/table/cell/EditTextCell.java:

Line 21:     private com.google.gwt.cell.client.EditTextCell delegate = new 
com.google.gwt.cell.client.EditTextCell();
Line 22: 
Line 23:     @Override
Line 24:     public Set<String> getConsumedEvents() {
Line 25:         Set<String> set = new HashSet<String>();
> Same comment as in AbstractImageButtonCell.java
Done
Line 26:         set.add(BrowserEvents.CLICK);
Line 27:         set.add(BrowserEvents.KEYUP);
Line 28:         set.add(BrowserEvents.KEYDOWN);
Line 29:         set.add(BrowserEvents.BLUR);


https://gerrit.ovirt.org/#/c/37935/20/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/table/cell/ImageButtonCell.java
File 
frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/table/cell/ImageButtonCell.java:

Line 53:      * Events to sink.
Line 54:      */
Line 55:     @Override
Line 56:     public Set<String> getConsumedEvents() {
Line 57:         Set<String> set = new HashSet<String>();
> Same comment as in AbstractImageButtonCell.java
Done
Line 58:         set.addAll(super.getConsumedEvents());
Line 59:         set.add(BrowserEvents.CLICK);
Line 60:         return set;
Line 61:     }


https://gerrit.ovirt.org/#/c/37935/20/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/table/cell/LinkCell.java
File 
frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/table/cell/LinkCell.java:

Line 23: public class LinkCell extends TextCell {
Line 24: 
Line 25:     @Override
Line 26:     public Set<String> getConsumedEvents() {
Line 27:         Set<String> set = new HashSet<String>();
> Same comment as in AbstractImageButtonCell.java
Done
Line 28:         set.add(BrowserEvents.CLICK);
Line 29:         set.addAll(super.getConsumedEvents());
Line 30:         return set;
Line 31:     }


https://gerrit.ovirt.org/#/c/37935/20/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/table/cell/ListModelListBoxCell.java
File 
frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/table/cell/ListModelListBoxCell.java:

Line 50:     }
Line 51: 
Line 52:     @Override
Line 53:     public Set<String> getConsumedEvents() {
Line 54:         Set<String> set = new HashSet<String>();
> Same comment as in AbstractImageButtonCell.java
Done
Line 55:         set.add(BrowserEvents.CHANGE);
Line 56:         set.addAll(super.getConsumedEvents());
Line 57:         return set;
Line 58:     }


https://gerrit.ovirt.org/#/c/37935/20/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/table/cell/ResizableCell.java
File 
frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/table/cell/ResizableCell.java:

Line 11:  */
Line 12: public class ResizableCell extends SafeHtmlCell {
Line 13:     @Override
Line 14:     public Set<String> getConsumedEvents() {
Line 15:         Set<String> set = new HashSet<String>();
> Same comment as in AbstractImageButtonCell.java
Done
Line 16:         set.add(BrowserEvents.CLICK);
Line 17:         set.add(BrowserEvents.MOUSEDOWN);
Line 18:         set.add(BrowserEvents.MOUSEMOVE);
Line 19:         set.addAll(super.getConsumedEvents());


https://gerrit.ovirt.org/#/c/37935/20/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/table/cell/ResizableCheckboxCell.java
File 
frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/table/cell/ResizableCheckboxCell.java:

Line 11:  */
Line 12: public class ResizableCheckboxCell extends SafeHtmlCell {
Line 13:     @Override
Line 14:     public Set<String> getConsumedEvents() {
Line 15:         Set<String> set = new HashSet<String>();
> Same comment as in AbstractImageButtonCell.java
Done
Line 16:         set.add(BrowserEvents.CLICK);
Line 17:         set.add(BrowserEvents.MOUSEDOWN);
Line 18:         set.add(BrowserEvents.MOUSEMOVE);
Line 19:         set.add(BrowserEvents.CHANGE);


https://gerrit.ovirt.org/#/c/37935/20/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/table/cell/SafeHtmlCell.java
File 
frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/table/cell/SafeHtmlCell.java:

Line 10: 
Line 11:     @Override
Line 12:     public void render(Context context, SafeHtml value, 
SafeHtmlBuilder sb, String id) {
Line 13:         if (value != null) {
Line 14:             sb.appendHtmlConstant("<div id=\" " + id + "\" 
style='display:block'>"); //$NON-NLS-1$ //$NON-NLS-2$
> Why the added space?
Done (bad rebase)
Line 15:             sb.append(value);
Line 16:             sb.appendHtmlConstant("</div>"); //$NON-NLS-1$
Line 17:         }
Line 18:     }


https://gerrit.ovirt.org/#/c/37935/20/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/table/cell/StatusCompositeCellWithElementId.java
File 
frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/table/cell/StatusCompositeCellWithElementId.java:

Line 70:             cell.render(context, hasCell.getValue(value), sb, id);
Line 71:         }
Line 72:         else {
Line 73:             throw new IllegalStateException("StatusCompositeCell 
cannot render Cells that do not implement " //$NON-NLS-1$
Line 74:                     + 
"org.ovirt.engine.ui.common.widget.table.cell.Cell"); //$NON-NLS-1$
> Same comment as in CompositeCell.java
Done
Line 75:         }
Line 76:     }
Line 77: 
Line 78:     @Override


https://gerrit.ovirt.org/#/c/37935/20/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/table/cell/TextCell.java
File 
frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/table/cell/TextCell.java:

Line 18:  *
Line 19:  * If truncation is enabled, and if the text doesn't fit in the parent 
element, it is truncated.
Line 20:  *
Line 21:  * There are two types of truncation. You can specify a length in 
characters, or if you don't, overflow
Line 22:  * will be detected and truncated via CSS 'text-overflow: ellipse'.
> ellipsis :-)
Done
Line 23:  *
Line 24:  * Truncation can also be disabled.
Line 25:  *
Line 26:  * When text is truncated, the full text will be rendered in a 
tooltip, unless a different tooltip is manually


https://gerrit.ovirt.org/#/c/37935/20/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/table/column/DiskContainersColumn.java
File 
frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/table/column/DiskContainersColumn.java:

Line 35:     }
Line 36: 
Line 37:     @Override
Line 38:     public SafeHtml getTooltip(Disk object) {
Line 39:         if (object.getNumberOfVms() < 2) {
> Is this condition consistent with original behavior?
Yes. If there is one VM, that VM's name is rendered. If there are two VMs, the 
string "2 VMs" is rendered, and the tooltip value should then list those VM 
names.
Line 40:             return null;
Line 41:         }
Line 42:         return 
SafeHtmlUtils.fromString(StringUtils.join(object.getVmNames(), ", ")); 
//$NON-NLS-1$
Line 43:     }


https://gerrit.ovirt.org/#/c/37935/20/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/table/header/ResizableHeader.java
File 
frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/table/header/ResizableHeader.java:

Line 115:         this(text, column, table,
Line 116:                 new SafeHtmlCell() {
Line 117:                     @Override
Line 118:                     public Set<String> getConsumedEvents() {
Line 119:                         Set<String> set = new HashSet<String>();
> Same comment as in AbstractImageButtonCell.java
This class is changed to an interface in latest patchset.
Line 120:                         set.add(BrowserEvents.CLICK);
Line 121:                         set.addAll(super.getConsumedEvents());
Line 122:                         return set;
Line 123:                     }


https://gerrit.ovirt.org/#/c/37935/20/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/table/header/ResizeableCheckboxHeader.java
File 
frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/table/header/ResizeableCheckboxHeader.java:

Line 22:         super(checkboxHeader.getTitle(), column, table,
Line 23:                 new SafeHtmlCell() {
Line 24:                     @Override
Line 25:                     public Set<String> getConsumedEvents() {
Line 26:                         Set<String> set = new HashSet<String>();
> Same comment as in AbstractImageButtonCell.java
Done
Line 27:                         set.add(BrowserEvents.CLICK);
Line 28:                         set.add(BrowserEvents.CHANGE);
Line 29:                         set.add(BrowserEvents.KEYDOWN);
Line 30:                         set.addAll(super.getConsumedEvents());


https://gerrit.ovirt.org/#/c/37935/20/frontend/webadmin/modules/userportal-gwtp/src/main/java/org/ovirt/engine/ui/userportal/widget/extended/vm/AbstractConsoleButtonCell.java
File 
frontend/webadmin/modules/userportal-gwtp/src/main/java/org/ovirt/engine/ui/userportal/widget/extended/vm/AbstractConsoleButtonCell.java:

Line 35:         @Template("<div id=\"{0}\" class=\"{1}\" 
data-class=\"consoleButton\" />")
Line 36:         SafeHtml consoleButton(String id, String className);
Line 37:     }
Line 38: 
Line 39:     private final CellTemplate template = 
GWT.create(CellTemplate.class);
> Could be static & initialized on first use (but we can do that later).
As we've agreed, cell templates will all move to their own giant file :)
Line 40: 
Line 41:     private final ConsoleButtonCommand command;
Line 42: 
Line 43:     private final String enabledCss;


Line 55:      * Events to sink.
Line 56:      */
Line 57:     @Override
Line 58:     public Set<String> getConsumedEvents() {
Line 59:         Set<String> set = new HashSet<String>();
> Same comment as in AbstractImageButtonCell.java
Done
Line 60:         set.addAll(super.getConsumedEvents());
Line 61:         set.add(BrowserEvents.CLICK);
Line 62:         return set;
Line 63:     }


https://gerrit.ovirt.org/#/c/37935/20/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/widget/table/cell/CustomSelectionCell.java
File 
frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/widget/table/cell/CustomSelectionCell.java:

Line 63:      * to additional events.
Line 64:      */
Line 65:     @Override
Line 66:     public Set<String> getConsumedEvents() {
Line 67:         Set<String> set = new HashSet<String>();
> Same comment as in AbstractImageButtonCell.java
Done
Line 68:         set.add(BrowserEvents.CHANGE);
Line 69:         set.addAll(super.getConsumedEvents());
Line 70:         return set;
Line 71:     }


https://gerrit.ovirt.org/#/c/37935/20/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/widget/table/cell/MenuCell.java
File 
frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/widget/table/cell/MenuCell.java:

Line 38:     }
Line 39: 
Line 40:     @Override
Line 41:     public Set<String> getConsumedEvents() {
Line 42:         Set<String> set = new HashSet<String>();
> Same comment as in AbstractImageButtonCell.java
Done
Line 43:         set.add(BrowserEvents.CLICK);
Line 44:         set.addAll(super.getConsumedEvents());
Line 45:         return set;
Line 46:     }


-- 
To view, visit https://gerrit.ovirt.org/37935
To unsubscribe, visit https://gerrit.ovirt.org/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: I54820570f3dd9cd8306ba63a263c480b33eeb65d
Gerrit-PatchSet: 20
Gerrit-Project: ovirt-engine
Gerrit-Branch: master
Gerrit-Owner: Greg Sheremeta <gsher...@redhat.com>
Gerrit-Reviewer: Alexander Wels <aw...@redhat.com>
Gerrit-Reviewer: Alona Kaplan <alkap...@redhat.com>
Gerrit-Reviewer: Daniel Erez <de...@redhat.com>
Gerrit-Reviewer: Einav Cohen <eco...@redhat.com>
Gerrit-Reviewer: Gilad Chaplik <gchap...@redhat.com>
Gerrit-Reviewer: Greg Sheremeta <gsher...@redhat.com>
Gerrit-Reviewer: Kanagaraj M <kmayi...@redhat.com>
Gerrit-Reviewer: Lior Vernia <lver...@redhat.com>
Gerrit-Reviewer: Martin Betak <mbe...@redhat.com>
Gerrit-Reviewer: Tal Nisan <tni...@redhat.com>
Gerrit-Reviewer: Tomas Jelinek <tjeli...@redhat.com>
Gerrit-Reviewer: Vojtech Szocs <vsz...@redhat.com>
Gerrit-Reviewer: automat...@ovirt.org
Gerrit-Reviewer: oVirt Jenkins CI Server
Gerrit-HasComments: Yes
_______________________________________________
Engine-patches mailing list
Engine-patches@ovirt.org
http://lists.ovirt.org/mailman/listinfo/engine-patches

Reply via email to