From 7f1cf2861e372601b3e23e9b444f62f90ab79b12 Mon Sep 17 00:00:00 2001 From: "Shawn O. Pearce" Date: Tue, 14 Jun 2011 12:31:05 -0700 Subject: [PATCH] Disable editing after successful save of Access screen When the access has been successfully modified for a project, switch back to the "read-only" view where the widgets are all disabled and the Edit button is enabled. This way the user gets more visual cues that their change has been completed. Change-Id: Id9afdeda3406ce550194c93dddbecb4d89529779 --- .../client/admin/ProjectAccessScreen.java | 27 +++++++++++-------- .../client/admin/ProjectAccessScreen.ui.xml | 2 +- 2 files changed, 17 insertions(+), 12 deletions(-) diff --git a/gerrit-gwtui/src/main/java/com/google/gerrit/client/admin/ProjectAccessScreen.java b/gerrit-gwtui/src/main/java/com/google/gerrit/client/admin/ProjectAccessScreen.java index e9d38898e8..fc864de8d2 100644 --- a/gerrit-gwtui/src/main/java/com/google/gerrit/client/admin/ProjectAccessScreen.java +++ b/gerrit-gwtui/src/main/java/com/google/gerrit/client/admin/ProjectAccessScreen.java @@ -51,7 +51,10 @@ public class ProjectAccessScreen extends ProjectScreen { Button edit; @UiField - Button cancel; + Button cancel1; + + @UiField + Button cancel2; @UiField ProjectAccessEditor accessEditor; @@ -90,31 +93,31 @@ public class ProjectAccessScreen extends ProjectScreen { new ScreenLoadCallback(this) { @Override public void preDisplay(ProjectAccess access) { - edit(access); + displayReadOnly(access); } }); } - void edit(ProjectAccess access) { + private void displayReadOnly(ProjectAccess access) { this.access = access; - final boolean editing = !edit.isEnabled(); - accessEditor.setEditing(editing); + accessEditor.setEditing(false); UIObject.setVisible(editTools, !access.getOwnerOf().isEmpty()); - cancel.setVisible(editing); - UIObject.setVisible(commitTools, editing); + edit.setEnabled(!access.getOwnerOf().isEmpty()); + cancel1.setVisible(false); + UIObject.setVisible(commitTools, false); driver.edit(access); } @UiHandler("edit") void onEdit(ClickEvent event) { edit.setEnabled(false); - cancel.setVisible(true); + cancel1.setVisible(true); UIObject.setVisible(commitTools, true); accessEditor.setEditing(true); driver.edit(access); } - @UiHandler(value={"cancel", "cancel2"}) + @UiHandler(value={"cancel1", "cancel2"}) void onCancel(ClickEvent event) { Gerrit.display(PageLinks.toProjectAcceess(getProjectKey())); } @@ -142,9 +145,9 @@ public class ProjectAccessScreen extends ProjectScreen { new GerritCallback() { @Override public void onSuccess(ProjectAccess access) { - commitMessage.setText(""); - edit(access); enable(true); + commitMessage.setText(""); + displayReadOnly(access); } @Override @@ -158,5 +161,7 @@ public class ProjectAccessScreen extends ProjectScreen { private void enable(boolean enabled) { commitMessage.setEnabled(enabled); commit.setEnabled(enabled); + cancel1.setEnabled(enabled); + cancel2.setEnabled(enabled); } } diff --git a/gerrit-gwtui/src/main/java/com/google/gerrit/client/admin/ProjectAccessScreen.ui.xml b/gerrit-gwtui/src/main/java/com/google/gerrit/client/admin/ProjectAccessScreen.ui.xml index 9a74610a11..25361599eb 100644 --- a/gerrit-gwtui/src/main/java/com/google/gerrit/client/admin/ProjectAccessScreen.ui.xml +++ b/gerrit-gwtui/src/main/java/com/google/gerrit/client/admin/ProjectAccessScreen.ui.xml @@ -42,7 +42,7 @@ limitations under the License.