diff options
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.java | 46 |
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); |