modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/AbstractAlertDefinitionsView.java | 12 -------- modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/table/Table.java | 14 ++++++---- modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/table/TableSection.java | 8 +++++ modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/detail/AbstractTwoLevelTabSetView.java | 8 ++--- modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/event/EventCompositeHistoryView.java | 12 ++++---- modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/detail/ResourceGroupDetailView.java | 8 ++--- modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/ResourceDetailView.java | 8 ++--- modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/configuration/ConfigurationHistoryView.java | 14 ++++------ modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/report/ReportTopView.java | 2 - 9 files changed, 41 insertions(+), 45 deletions(-)
New commits: commit 04f6d32e9f68614cb913085211d8393d6cf63d83 Author: Jay Shaughnessy jshaughn@redhat.com Date: Tue Oct 12 10:02:15 2010 -0400
Fixed some Selenium Locator issues
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/detail/AbstractTwoLevelTabSetView.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/detail/AbstractTwoLevelTabSetView.java index 84ccc47..f63e185 100644 --- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/detail/AbstractTwoLevelTabSetView.java +++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/detail/AbstractTwoLevelTabSetView.java @@ -126,15 +126,13 @@ public abstract class AbstractTwoLevelTabSetView<T, U extends Layout> extends Lo if (getSelectedItemId() == null) { CoreGUI.goToView(History.getToken()); } else { - - // selectSubTabByTitle(tabSelectedEvent.getId(), tabSelectedEvent.getSubTabId()); String tabPath = "/" + tabSelectedEvent.getId() + "/" + tabSelectedEvent.getSubTabId(); String path = this.baseViewPath + "/" + getSelectedItemId() + tabPath;
// If the tab that was selected is not already the current history item, the user clicked on the tab, rather // than going directly to the tab's URL. In this case, fire a history event to go to the tab and make it the // current history item. - if (!History.getToken().equals(path)) { + if (!History.getToken().equals(path) && !History.getToken().startsWith(path)) { CoreGUI.goToView(path); } } @@ -223,10 +221,10 @@ public abstract class AbstractTwoLevelTabSetView<T, U extends Layout> extends Lo // Handle any remaining view items (e.g. id of a selected item in a subtab that contains a Master-Details view). Canvas subView = subtab.getCanvas(); if (subView instanceof RefreshableView) { - ((RefreshableView)subView).refresh(); + ((RefreshableView) subView).refresh(); } if (subView instanceof BookmarkableView) { - ((BookmarkableView)subView).renderView(viewPath); + ((BookmarkableView) subView).renderView(viewPath); }
this.tabSet.markForRedraw(); diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/event/EventCompositeHistoryView.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/event/EventCompositeHistoryView.java index 28e91f6..4bdfdd4 100644 --- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/event/EventCompositeHistoryView.java +++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/event/EventCompositeHistoryView.java @@ -56,22 +56,22 @@ public class EventCompositeHistoryView extends TableSection { private EntityContext context; private boolean hasWriteAccess;
- public static EventCompositeHistoryView get(ResourceGroupComposite composite) { + public static EventCompositeHistoryView get(String locatorId, ResourceGroupComposite composite) { String tableTitle = "Group Event History"; EntityContext context = EntityContext.forGroup(composite.getResourceGroup().getId()); boolean hasWriteAccess = composite.getResourcePermission().isEvent(); - return new EventCompositeHistoryView(tableTitle, context, hasWriteAccess); + return new EventCompositeHistoryView(locatorId, tableTitle, context, hasWriteAccess); }
- public static EventCompositeHistoryView get(ResourceComposite composite) { + public static EventCompositeHistoryView get(String locatorId, ResourceComposite composite) { String tableTitle = "Resource Event History"; EntityContext context = EntityContext.forResource(composite.getResource().getId()); boolean hasWriteAccess = composite.getResourcePermission().isEvent(); - return new EventCompositeHistoryView(tableTitle, context, hasWriteAccess); + return new EventCompositeHistoryView(locatorId, tableTitle, context, hasWriteAccess); }
- private EventCompositeHistoryView(String tableTitle, EntityContext context, boolean hasWriteAccess) { - super("EventCompositeHistoryTable", tableTitle, new SortSpecifier[] { DEFAULT_SORT_SPECIFIER }); + private EventCompositeHistoryView(String locatorId, String tableTitle, EntityContext context, boolean hasWriteAccess) { + super(locatorId, tableTitle, new SortSpecifier[] { DEFAULT_SORT_SPECIFIER }); this.context = context; this.hasWriteAccess = hasWriteAccess;
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/detail/ResourceGroupDetailView.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/detail/ResourceGroupDetailView.java index b41d7f0..4f71441 100644 --- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/detail/ResourceGroupDetailView.java +++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/detail/ResourceGroupDetailView.java @@ -253,16 +253,16 @@ public class ResourceGroupDetailView extends AbstractTwoLevelTabSetView<Resource if (updateTab(this.configurationTab, visible, visible && this.permissions.isConfigureRead())) { //updateSubTab(this.configurationTab, this.configCurrent, new FullHTMLPane( // "/rhq/group/configuration/viewCurrent-plain.xhtml?groupId=" + groupId), true, true); - updateSubTab(this.configurationTab, this.configCurrent, - new GroupResourceConfigurationEditView(this.configCurrent.extendLocatorId("View"), - this.groupComposite), true, true); + updateSubTab(this.configurationTab, this.configCurrent, new GroupResourceConfigurationEditView( + this.configCurrent.extendLocatorId("View"), this.groupComposite), true, true); updateSubTab(this.configurationTab, this.configHistory, new FullHTMLPane( "/rhq/group/configuration/history-plain.xhtml?groupId=" + groupId), true, true); }
if (updateTab(this.eventsTab, groupCategory == GroupCategory.COMPATIBLE && facets.contains(ResourceTypeFacet.EVENT), true)) { - updateSubTab(this.eventsTab, this.eventHistory, EventCompositeHistoryView.get(groupComposite), true, true); + updateSubTab(this.eventsTab, this.eventHistory, EventCompositeHistoryView.get(this.eventsTab + .extendLocatorId("CompositeHistView"), groupComposite), true, true); }
this.show(); diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/ResourceDetailView.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/ResourceDetailView.java index 05c37b6..159a679 100644 --- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/ResourceDetailView.java +++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/ResourceDetailView.java @@ -276,13 +276,13 @@ public class ResourceDetailView extends AbstractTwoLevelTabSetView<ResourceCompo .isConfigureRead())) { updateSubTab(this.configurationTab, this.configCurrent, new ResourceConfigurationEditView(this .extendLocatorId("ResourceConfigView"), resourceComposite), true, true); - updateSubTab(this.configurationTab, this.configHistory, ConfigurationHistoryView.getHistoryOf( - resource.getId()), true, true); + updateSubTab(this.configurationTab, this.configHistory, ConfigurationHistoryView.getHistoryOf(this + .extendLocatorId("ConfigHistView"), resource.getId()), true, true); }
if (updateTab(this.eventsTab, facets.contains(ResourceTypeFacet.EVENT), true)) { - updateSubTab(this.eventsTab, this.eventHistory, EventCompositeHistoryView.get(resourceComposite), true, - true); + updateSubTab(this.eventsTab, this.eventHistory, EventCompositeHistoryView.get(this.eventsTab + .extendLocatorId("CompositeHistoryView"), resourceComposite), true, true); }
if (updateTab(this.contentTab, facets.contains(ResourceTypeFacet.CONTENT), true)) { diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/configuration/ConfigurationHistoryView.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/configuration/ConfigurationHistoryView.java index aa11b05..8b84889 100644 --- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/configuration/ConfigurationHistoryView.java +++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/configuration/ConfigurationHistoryView.java @@ -40,7 +40,6 @@ import org.rhq.enterprise.gui.coregui.client.components.table.TableSection; */ public class ConfigurationHistoryView extends TableSection { public static final String VIEW_ID = "RecentConfigurationChanges"; - private static final String LOCATOR_ID = "ConfigurationHistory"; private static final String TITLE = "Configuration History";
private Integer resourceId; @@ -48,8 +47,8 @@ public class ConfigurationHistoryView extends TableSection { /** * Use this constructor to view config histories for all viewable Resources. */ - public ConfigurationHistoryView() { - super(LOCATOR_ID, TITLE); + public ConfigurationHistoryView(String locatorId) { + super(locatorId, TITLE); final ConfigurationHistoryDataSource datasource = new ConfigurationHistoryDataSource(); setDataSource(datasource); } @@ -59,8 +58,8 @@ public class ConfigurationHistoryView extends TableSection { * * @param resourceId a Resource ID */ - public ConfigurationHistoryView(int resourceId) { - super(LOCATOR_ID, TITLE, createCriteria(resourceId)); + public ConfigurationHistoryView(String locatorId, int resourceId) { + super(locatorId, TITLE, createCriteria(resourceId)); this.resourceId = resourceId; ConfigurationHistoryDataSource datasource = new ConfigurationHistoryDataSource(); setDataSource(datasource); @@ -157,11 +156,10 @@ public class ConfigurationHistoryView extends TableSection {
}
- // -------- Static Utility loaders ------------
- public static ConfigurationHistoryView getHistoryOf(int resourceId) { - return new ConfigurationHistoryView(resourceId); + public static ConfigurationHistoryView getHistoryOf(String locatorId, int resourceId) { + return new ConfigurationHistoryView(locatorId, resourceId); }
} diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/report/ReportTopView.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/report/ReportTopView.java index 0a9359e..4970242 100644 --- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/report/ReportTopView.java +++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/report/ReportTopView.java @@ -216,7 +216,7 @@ public class ReportTopView extends LocatableHLayout implements BookmarkableView } else if (MeasurementOOBView.VIEW_ID.equals(pageName)) { content = new MeasurementOOBView(this.extendLocatorId("SuspectMetrics")); } else if (ConfigurationHistoryView.VIEW_ID.equals(pageName)) { - content = new ConfigurationHistoryView(); + content = new ConfigurationHistoryView(this.extendLocatorId("ConfigHistory")); } else if (OperationHistoryView.VIEW_ID.equals(pageName)) { content = new OperationHistoryView(this.extendLocatorId("RecentOps")); } else if (AlertsView.VIEW_ID.equals(pageName)) {
commit f1000879c9f75dfa1153919ca5ca335ef6bf0286 Author: Jay Shaughnessy jshaughn@redhat.com Date: Tue Oct 12 10:01:52 2010 -0400
Fix an issue where an F5 refresh while viewing a details page messed up the history and rendering. The problem seemed due to an assumption in the master-details impl that the master (list view) would always be rendered prior to a details page.
Also, fix an issue with null protection for RefreshableViews. Removed a showDetails() override in AbstractAlertDefinitionsView as the default behavior seems adequate.
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/AbstractAlertDefinitionsView.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/AbstractAlertDefinitionsView.java index 89a6c8b..bdaff67 100644 --- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/AbstractAlertDefinitionsView.java +++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/AbstractAlertDefinitionsView.java @@ -18,7 +18,6 @@ */ package org.rhq.enterprise.gui.coregui.client.alert.definitions;
-import com.google.gwt.user.client.History; import com.google.gwt.user.client.rpc.AsyncCallback; import com.smartgwt.client.data.Criteria; import com.smartgwt.client.widgets.Canvas; @@ -102,17 +101,6 @@ public abstract class AbstractAlertDefinitionsView extends TableSection { }
@Override - public void showDetails(ListGridRecord record) { - Canvas canvas = getDetailsView(record); - setDetailsView(canvas); - - Integer id = record.getAttributeAsInt("id"); - History.newItem(getBasePath() + "/" + id.intValue(), false); - - switchToDetailsView(); - } - - @Override public Canvas getDetailsView(ListGridRecord record) { if (record == null) { return getDetailsView(0); diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/table/Table.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/table/Table.java index fe69ec7..b4aff2b 100644 --- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/table/Table.java +++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/table/Table.java @@ -437,14 +437,18 @@ public class Table extends LocatableHLayout implements RefreshableView { private ArrayList<Integer> fieldSizes = new ArrayList<Integer>();
public void refresh(Criteria criteria) { - this.listGrid.invalidateCache(); - this.listGrid.setCriteria(criteria); - this.listGrid.markForRedraw(); + if (null != this.listGrid) { + this.listGrid.invalidateCache(); + this.listGrid.setCriteria(criteria); + this.listGrid.markForRedraw(); + } }
public void refresh() { - this.listGrid.invalidateCache(); - this.listGrid.markForRedraw(); + if (null != this.listGrid) { + this.listGrid.invalidateCache(); + this.listGrid.markForRedraw(); + } }
public void setTableTitle(String titleString) { diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/table/TableSection.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/table/TableSection.java index c8ab12b..f5118f7 100644 --- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/table/TableSection.java +++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/table/TableSection.java @@ -85,6 +85,12 @@ public abstract class TableSection extends Table implements BookmarkableView { detailsHolder.hide();
addMember(detailsHolder); + + // if the detailsView is already defined it means we want the details view to be rendered prior to + // the master view, probably due to a direct navigation or refresh (like F5 when sitting on the details page) + if (null != detailsView) { + switchToDetailsView(); + } }
@Override @@ -222,6 +228,8 @@ public abstract class TableSection extends Table implements BookmarkableView { */ protected void switchToDetailsView() { Canvas contents = getTableContents(); + + // If the Table has not yet been initialized then ignore if (contents != null) { if (contents.isVisible()) { contents.animateHide(AnimationEffect.WIPE, new AnimationCallback() {
rhq-commits@lists.fedorahosted.org