summaryrefslogtreecommitdiffstats
path: root/gerrit-gwtui/src/main/java/com/google/gerrit/client/account/MyPreferencesScreen.java
diff options
context:
space:
mode:
Diffstat (limited to 'gerrit-gwtui/src/main/java/com/google/gerrit/client/account/MyPreferencesScreen.java')
-rw-r--r--gerrit-gwtui/src/main/java/com/google/gerrit/client/account/MyPreferencesScreen.java46
1 files changed, 45 insertions, 1 deletions
diff --git a/gerrit-gwtui/src/main/java/com/google/gerrit/client/account/MyPreferencesScreen.java b/gerrit-gwtui/src/main/java/com/google/gerrit/client/account/MyPreferencesScreen.java
index c17a0aac2e..639a1cf79c 100644
--- a/gerrit-gwtui/src/main/java/com/google/gerrit/client/account/MyPreferencesScreen.java
+++ b/gerrit-gwtui/src/main/java/com/google/gerrit/client/account/MyPreferencesScreen.java
@@ -23,6 +23,7 @@ import com.google.gerrit.client.rpc.ScreenLoadCallback;
import com.google.gerrit.client.ui.OnEditEnabler;
import com.google.gerrit.reviewdb.client.Account;
import com.google.gerrit.reviewdb.client.AccountGeneralPreferences;
+import com.google.gerrit.reviewdb.client.AccountGeneralPreferences.CommentVisibilityStrategy;
import com.google.gwt.event.dom.client.ClickEvent;
import com.google.gwt.event.dom.client.ClickHandler;
import com.google.gwt.i18n.client.DateTimeFormat;
@@ -42,9 +43,11 @@ public class MyPreferencesScreen extends SettingsScreen {
private CheckBox copySelfOnEmails;
private CheckBox reversePatchSetOrder;
private CheckBox showUsernameInReviewCategory;
+ private CheckBox relativeDateInChangeTable;
private ListBox maximumPageSize;
private ListBox dateFormat;
private ListBox timeFormat;
+ private ListBox commentVisibilityStrategy;
private Button save;
@Override
@@ -61,6 +64,24 @@ public class MyPreferencesScreen extends SettingsScreen {
maximumPageSize.addItem(Util.M.rowsPerPage(v), String.valueOf(v));
}
+ commentVisibilityStrategy = new ListBox();
+ commentVisibilityStrategy.addItem(
+ com.google.gerrit.client.changes.Util.C.messageCollapseAll(),
+ AccountGeneralPreferences.CommentVisibilityStrategy.COLLAPSE_ALL.name()
+ );
+ commentVisibilityStrategy.addItem(
+ com.google.gerrit.client.changes.Util.C.messageExpandMostRecent(),
+ AccountGeneralPreferences.CommentVisibilityStrategy.EXPAND_MOST_RECENT.name()
+ );
+ commentVisibilityStrategy.addItem(
+ com.google.gerrit.client.changes.Util.C.messageExpandRecent(),
+ AccountGeneralPreferences.CommentVisibilityStrategy.EXPAND_RECENT.name()
+ );
+ commentVisibilityStrategy.addItem(
+ com.google.gerrit.client.changes.Util.C.messageExpandAll(),
+ AccountGeneralPreferences.CommentVisibilityStrategy.EXPAND_ALL.name()
+ );
+
Date now = new Date();
dateFormat = new ListBox();
for (AccountGeneralPreferences.DateFormat fmt : AccountGeneralPreferences.DateFormat
@@ -94,7 +115,10 @@ public class MyPreferencesScreen extends SettingsScreen {
dateTimePanel.add(dateFormat);
dateTimePanel.add(timeFormat);
}
- final Grid formGrid = new Grid(7, 2);
+
+ relativeDateInChangeTable = new CheckBox(Util.C.showRelativeDateInChangeTable());
+
+ final Grid formGrid = new Grid(9, 2);
int row = 0;
formGrid.setText(row, labelIdx, "");
@@ -125,6 +149,14 @@ public class MyPreferencesScreen extends SettingsScreen {
formGrid.setWidget(row, fieldIdx, dateTimePanel);
row++;
+ formGrid.setText(row, labelIdx, "");
+ formGrid.setWidget(row, fieldIdx, relativeDateInChangeTable);
+ row++;
+
+ formGrid.setText(row, labelIdx, Util.C.commentVisibilityLabel());
+ formGrid.setWidget(row, fieldIdx, commentVisibilityStrategy);
+ row++;
+
add(formGrid);
save = new Button(Util.C.buttonSaveChanges());
@@ -146,6 +178,8 @@ public class MyPreferencesScreen extends SettingsScreen {
e.listenTo(maximumPageSize);
e.listenTo(dateFormat);
e.listenTo(timeFormat);
+ e.listenTo(relativeDateInChangeTable);
+ e.listenTo(commentVisibilityStrategy);
}
@Override
@@ -167,6 +201,8 @@ public class MyPreferencesScreen extends SettingsScreen {
maximumPageSize.setEnabled(on);
dateFormat.setEnabled(on);
timeFormat.setEnabled(on);
+ relativeDateInChangeTable.setEnabled(on);
+ commentVisibilityStrategy.setEnabled(on);
}
private void display(final AccountGeneralPreferences p) {
@@ -180,6 +216,10 @@ public class MyPreferencesScreen extends SettingsScreen {
p.getDateFormat());
setListBox(timeFormat, AccountGeneralPreferences.TimeFormat.HHMM_12, //
p.getTimeFormat());
+ relativeDateInChangeTable.setValue(p.isRelativeDateInChangeTable());
+ setListBox(commentVisibilityStrategy,
+ AccountGeneralPreferences.CommentVisibilityStrategy.EXPAND_MOST_RECENT,
+ p.getCommentVisibilityStrategy());
}
private void setListBox(final ListBox f, final short defaultValue,
@@ -243,6 +283,10 @@ public class MyPreferencesScreen extends SettingsScreen {
p.setTimeFormat(getListBox(timeFormat,
AccountGeneralPreferences.TimeFormat.HHMM_12,
AccountGeneralPreferences.TimeFormat.values()));
+ p.setRelativeDateInChangeTable(relativeDateInChangeTable.getValue());
+ p.setCommentVisibilityStrategy(getListBox(commentVisibilityStrategy,
+ CommentVisibilityStrategy.EXPAND_MOST_RECENT,
+ CommentVisibilityStrategy.values()));
enable(false);
save.setEnabled(false);