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(a)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(a)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() {