Vojtech Szocs has uploaded a new change for review. Change subject: webadmin,userportal: @NotableWorkaround annotation ......................................................................
webadmin,userportal: @NotableWorkaround annotation This patch adds @NotableWorkaround source-level annotation that indicates a notable workaround related to 3rd party code or runtime environment. For example, workarounds (typically Java methods) for known GWT(P) or browser-specific issues can use @NotableWorkaround so that these can be reviewed later when migrating to new GWT(P) version. In other words, the purpose of this annotation is to ease migration with regard to existing frontend code. Change-Id: I336da10b2931825a7b44c24b663e18593f489979 Signed-off-by: Vojtech Szocs <vsz...@redhat.com> --- M frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/presenter/DynamicTabContainerPresenter.java A frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/system/NotableWorkaround.java M frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/MenuBar.java M frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/SearchPanelView.java M frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/uicommon/model/SystemTreeModelProvider.java 5 files changed, 21 insertions(+), 3 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/95/24995/1 diff --git a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/presenter/DynamicTabContainerPresenter.java b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/presenter/DynamicTabContainerPresenter.java index 752fd8e..ea3bcb9 100644 --- a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/presenter/DynamicTabContainerPresenter.java +++ b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/presenter/DynamicTabContainerPresenter.java @@ -19,6 +19,7 @@ import com.gwtplatform.mvp.client.proxy.Proxy; import com.gwtplatform.mvp.client.proxy.RevealContentHandler; import com.gwtplatform.mvp.client.proxy.TabContentProxy; +import org.ovirt.engine.ui.common.system.NotableWorkaround; /** * A {@link TabContainerPresenter} that handles tabs added dynamically during runtime. @@ -63,6 +64,7 @@ } @Override + @NotableWorkaround // override setInSlot to get hold of TabContentProxy in case of Presenter public void setInSlot(Object slot, PresenterWidget<?> content) { super.setInSlot(slot, content); diff --git a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/system/NotableWorkaround.java b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/system/NotableWorkaround.java new file mode 100644 index 0000000..f62b4e2 --- /dev/null +++ b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/system/NotableWorkaround.java @@ -0,0 +1,13 @@ +package org.ovirt.engine.ui.common.system; + +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; + +/** + * Source-level annotation that indicates a notable workaround related to 3rd party code or runtime environment. + * <p> + * When migrating to new GWT(P) version, annotated elements should be checked if they're still valid. + */ +@Retention(RetentionPolicy.SOURCE) +public @interface NotableWorkaround { +} diff --git a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/MenuBar.java b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/MenuBar.java index b77e76c..4a364f9 100644 --- a/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/MenuBar.java +++ b/frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/widget/MenuBar.java @@ -1,5 +1,6 @@ package org.ovirt.engine.ui.common.widget; +import org.ovirt.engine.ui.common.system.NotableWorkaround; import org.ovirt.engine.ui.common.utils.PopupUtils; import com.google.gwt.user.client.DOM; @@ -8,16 +9,14 @@ import com.google.gwt.user.client.ui.MenuItem; import com.google.gwt.user.client.ui.PopupPanel; - /** - * * MenuBar that adjusts sub menu popup location to fit screen * * It is workaround to the problem described below- * http://code.google.com/p/google-web-toolkit/issues/detail?id=407 * http://code.google.com/p/google-web-toolkit/issues/detail?id=3924 - * */ +@NotableWorkaround public class MenuBar extends com.google.gwt.user.client.ui.MenuBar { public MenuBar() { super(); diff --git a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/SearchPanelView.java b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/SearchPanelView.java index f71d00f..b8124bd 100644 --- a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/SearchPanelView.java +++ b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/view/SearchPanelView.java @@ -2,6 +2,7 @@ import org.ovirt.engine.ui.common.idhandler.ElementIdHandler; import org.ovirt.engine.ui.common.idhandler.WithElementId; +import org.ovirt.engine.ui.common.system.NotableWorkaround; import org.ovirt.engine.ui.common.view.AbstractView; import org.ovirt.engine.ui.uicommonweb.models.CommonModel; import org.ovirt.engine.ui.webadmin.ApplicationConstants; @@ -251,6 +252,7 @@ } @Override + @NotableWorkaround public HasKeyDownHandlers getSearchInputHandlers() { // Workaround GWT bug 3533. SuggestBox mistakenly fires key-downs twice. The workaround is // to set the key-down handler on the SuggestBox's internal ValueBox. diff --git a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/uicommon/model/SystemTreeModelProvider.java b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/uicommon/model/SystemTreeModelProvider.java index b69f6dd..8efcc13 100644 --- a/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/uicommon/model/SystemTreeModelProvider.java +++ b/frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/uicommon/model/SystemTreeModelProvider.java @@ -6,6 +6,7 @@ import org.ovirt.engine.core.compat.Guid; import org.ovirt.engine.ui.common.presenter.popup.DefaultConfirmationPopupPresenterWidget; +import org.ovirt.engine.ui.common.system.NotableWorkaround; import org.ovirt.engine.ui.common.uicommon.model.DataBoundTabModelProvider; import org.ovirt.engine.ui.common.widget.tree.TreeModelWithElementId; import org.ovirt.engine.ui.uicommonweb.models.SystemTreeItemModel; @@ -93,6 +94,7 @@ return selectionModel; } + @NotableWorkaround public void setSelectedItem(Guid id) { display.setKeyboardSelectionPolicy(KeyboardSelectionPolicy.ENABLED); // open small GWT workaround selectionModel.setSelected(getModel().getItemById(id), true); -- To view, visit http://gerrit.ovirt.org/24995 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I336da10b2931825a7b44c24b663e18593f489979 Gerrit-PatchSet: 1 Gerrit-Project: ovirt-engine Gerrit-Branch: master Gerrit-Owner: Vojtech Szocs <vsz...@redhat.com> _______________________________________________ Engine-patches mailing list Engine-patches@ovirt.org http://lists.ovirt.org/mailman/listinfo/engine-patches