blob: 838a433666fa6345a078c42a2efa4414d2d07fbe [file] [log] [blame]
Edwin Kempin4fd84c92014-04-30 13:23:15 +02001= Review UI
2
3Reviewing changes is an important task and the Gerrit Web UI provides
4many functionalities to make the review process comfortable and
5efficient. This is a guide through the review UI that explains the
6different functions and UI elements.
7
8[[change-screen]]
9== Change Screen
10
11The change screen shows the details of a single change and provides
12various actions on it.
13
14image::images/user-review-ui-change-screen.png[width=800, link="images/user-review-ui-change-screen.png"]
15
16[[commit-message]]
17=== Commit Message Block
18
19The focus of the change screen is on the commit message since this is
20the most important information about a change. The numeric change ID
21and the change status are displayed right above the commit message.
22
23image::images/user-review-ui-change-screen-commit-message.png[width=800, link="images/user-review-ui-change-screen-commit-message.png"]
24
Edwin Kempinf9b4bc92014-11-05 13:14:57 +010025[[permalink]]
Edwin Kempin4fd84c92014-04-30 13:23:15 +020026The numeric change ID is a link to the change and clicking on it
27refreshes the change screen. By copying the link location you can get
28the permalink of the change.
29
30image::images/user-review-ui-change-screen-permalink.png[width=800, link="images/user-review-ui-change-screen-permalink.png"]
31
Edwin Kempinf9b4bc92014-11-05 13:14:57 +010032[[change-status]]
Edwin Kempin4fd84c92014-04-30 13:23:15 +020033The change status shows the state of the change:
34
Edwin Kempinf9b4bc92014-11-05 13:14:57 +010035- [[needs]]`Needs <label>`:
Edwin Kempin4fd84c92014-04-30 13:23:15 +020036+
37The change is in review and an approval on the shown label is still
38required to make the change submittable.
39
Edwin Kempinf9b4bc92014-11-05 13:14:57 +010040- [[not]]`Not <label>`:
Edwin Kempin4fd84c92014-04-30 13:23:15 +020041+
42The change is in review and a veto vote on the shown label is
43preventing the submit.
44
Edwin Kempinf9b4bc92014-11-05 13:14:57 +010045- [[not-current]]`Not Current`:
Edwin Kempin4fd84c92014-04-30 13:23:15 +020046+
47The currently viewed patch set is outdated.
48+
49Please note that some operations, like voting, are not available on
50outdated patch sets, but only on the current patch set.
51
Edwin Kempinf9b4bc92014-11-05 13:14:57 +010052- [[ready-to-submit]]`Ready to Submit`:
Edwin Kempin4fd84c92014-04-30 13:23:15 +020053+
54The change has all necessary approvals and may be submitted.
55
Edwin Kempinf9b4bc92014-11-05 13:14:57 +010056- [[merged]]`Merged`:
Edwin Kempin4fd84c92014-04-30 13:23:15 +020057+
58The change was successfully merged into the destination branch.
59
Edwin Kempinf9b4bc92014-11-05 13:14:57 +010060- [[abandoned]]`Abandoned`:
Edwin Kempin4fd84c92014-04-30 13:23:15 +020061+
62The change was abandoned.
63
Edwin Kempinf9b4bc92014-11-05 13:14:57 +010064- [[draft]]`Draft`:
Edwin Kempin4fd84c92014-04-30 13:23:15 +020065+
66The change is a draft that is only visible to the change owner, the
67reviewers that were explicitly added to the change, and users who have
68the link:access-control.html#category_view_drafts[View Drafts] global
69capability assigned.
70
71[[commit-info]]
72=== Commit Info Block
73
74The commit info block shows information about the commit of the
75currently viewed patch set.
76
77It displays the author and the committer as links to a list of this
78person's changes that have the same status as the currently viewed
79change.
80
Orgad Shaneh306ed3c2014-07-20 08:58:28 +030081The commit ID, the parent commit(s) and the link:user-changeid.html[Change-Id] are
Edwin Kempin4fd84c92014-04-30 13:23:15 +020082displayed with a copy-to-clipboard icon that allows the ID to be copied
83into the clipboard.
84
Dave Borowitza3d67882015-06-05 15:22:23 -070085If a Git web browser, such as gitweb or Gitiles, is configured, there
Edwin Kempin4fd84c92014-04-30 13:23:15 +020086is also a link to the commit in the Git web browser.
87
88image::images/user-review-ui-change-screen-commit-info.png[width=800, link="images/user-review-ui-change-screen-commit-info.png"]
89
Orgad Shaneh306ed3c2014-07-20 08:58:28 +030090If a merge commit is viewed this is highlighted by an icon.
Edwin Kempinb6c2a3b2014-05-14 10:37:17 +020091
92image::images/user-review-ui-change-screen-commit-info-merge-commit.png[width=800, link="images/user-review-ui-change-screen-commit-info-merge-commit.png"]
93
Edwin Kempinf1a84f92014-04-30 15:37:48 +020094[[change-info]]
95=== Change Info Block
96
97The change info block contains detailed information about the change
98and offers actions on the change.
99
100image::images/user-review-ui-change-screen-change-info.png[width=800, link="images/user-review-ui-change-screen-change-info.png"]
101
Edwin Kempinf9b4bc92014-11-05 13:14:57 +0100102- [[change-owner]]Change Owner:
Edwin Kempinf1a84f92014-04-30 15:37:48 +0200103+
104The owner of the change is displayed as a link to a list of the owner's
105changes that have the same status as the currently viewed change.
106+
107image::images/user-review-ui-change-screen-change-info-owner.png[width=800, link="images/user-review-ui-change-screen-change-info-owner.png"]
108
Edwin Kempinf9b4bc92014-11-05 13:14:57 +0100109- [[reviewers]]Reviewers:
Edwin Kempinf1a84f92014-04-30 15:37:48 +0200110+
111The reviewers of the change are displayed as chip tokens.
112+
113For each reviewer there is a tooltip that shows on which labels the
114reviewer is allowed to vote.
115+
116New reviewers can be added by clicking on the `Add...` button. Typing
117into the pop-up text field activates auto completion of user and group
118names.
119+
Edwin Kempinf9b4bc92014-11-05 13:14:57 +0100120[[remove-reviewer]]
Edwin Kempinf1a84f92014-04-30 15:37:48 +0200121Reviewers can be removed from the change by clicking on the `x` icon
122in the reviewer's chip token. Removing a reviewer also removes the
123current votes of the reviewer. The removal of votes is recorded as a
124message on the change.
125+
126Removing reviewers is protected by permissions:
127
128** Users can always remove themselves.
129** The change owner may remove any zero or positive score.
130** Users with the link:access-control.html#category_remove_reviewer[
131 Remove Reviewer] access right, the branch owner, the project owner
132 and Gerrit administrators may remove anyone.
133
134+
135image::images/user-review-ui-change-screen-change-info-reviewers.png[width=800, link="images/user-review-ui-change-screen-change-info-reviewers.png"]
136
Edwin Kempinf9b4bc92014-11-05 13:14:57 +0100137- [[project-branch-topic]]Project / Branch / Topic:
Edwin Kempinf1a84f92014-04-30 15:37:48 +0200138+
139The name of the project for which the change was done is displayed as a
140link to the link:user-dashboards.html#project-default-dashboard[default
141dashboard] of the project. If no default dashboard is defined, the link
142opens a list of open changes on the project.
143+
144Clicking on the settings icon on the right side navigates to the
145project administration screen.
146+
147The name of the destination branch is displayed as a link to a list
148with all changes on this branch that have the same status as the
149currently viewed change.
150+
151If a topic was assigned to the change it is displayed below the branch.
152By clicking on the edit icon the topic can be set. This requires the
153link:access-control.html#category_edit_topic_name[Edit Topic Name]
154access right. To be able to set a topic on a closed change, the
155`Edit Topic Name` must be assigned with the `force` flag.
156+
157image::images/user-review-ui-change-screen-change-info-project-branch-topic.png[width=800, link="images/user-review-ui-change-screen-change-info-project-branch-topic.png"]
158
Edwin Kempinf9b4bc92014-11-05 13:14:57 +0100159- [[submit-strategy]]Submit Strategy:
Edwin Kempinf1a84f92014-04-30 15:37:48 +0200160+
161The link:project-setup.html#submit_type[submit strategy] that will be
162used to submit the change. The submit strategy is only displayed for
163open changes.
164+
165image::images/user-review-ui-change-screen-change-info-submit-strategy.png[width=800, link="images/user-review-ui-change-screen-change-info-submit-strategy.png"]
166+
167If a change cannot be merged due to path conflicts this is highlighted
168by a bold red `Cannot Merge` label.
169+
170image::images/user-review-ui-change-screen-change-info-cannot-merge.png[width=800, link="images/user-review-ui-change-screen-change-info-cannot-merge.png"]
171
Edwin Kempinf9b4bc92014-11-05 13:14:57 +0100172- [[update-time]]Time of Last Update:
Edwin Kempinf1a84f92014-04-30 15:37:48 +0200173+
174image::images/user-review-ui-change-screen-change-info-last-update.png[width=800, link="images/user-review-ui-change-screen-change-info-last-update.png"]
175
Edwin Kempinf9b4bc92014-11-05 13:14:57 +0100176- [[actions]]Actions:
Edwin Kempinf1a84f92014-04-30 15:37:48 +0200177+
178Depending on the change state and the permissions of the user, different
179actions are available on the change:
180
Edwin Kempinf9b4bc92014-11-05 13:14:57 +0100181** [[submit]]`Submit`:
Edwin Kempinf1a84f92014-04-30 15:37:48 +0200182+
183Submits the change and adds it to the merge queue. If possible the
184change is merged into the destination branch.
185+
David Pursehouse53b1bd02014-05-09 11:18:08 +0900186The `Submit` button is available if the change is submittable and
Edwin Kempinf1a84f92014-04-30 15:37:48 +0200187the link:access-control.html#category_submit[Submit] access right is
188assigned.
Edwin Kempinf1a84f92014-04-30 15:37:48 +0200189
Andrew Bonventre4af9d8c2016-05-26 15:08:32 -0400190** [[revert]]`Revert`:
191+
192Reverts the change via creating a new one.
193+
194The `Revert` button is available if the change has been submitted.
195+
196When the `Revert` button is pressed, a panel will appear to allow
197the user to enter a commit message for the reverting change.
198+
199Once a revert change is created, the original author and any reviewers
200of the original change are added as reviewers and a message is posted
201to the original change linking to the revert.
202
Edwin Kempinf9b4bc92014-11-05 13:14:57 +0100203** [[abandon]]`Abandon`:
Edwin Kempinf1a84f92014-04-30 15:37:48 +0200204+
205Abandons the change.
206+
207The `Abandon` button is only available if the change is open and the
208link:access-control.html#category_abandon[Abandon] access right is
209assigned.
210+
211When a change is abandoned, a panel appears that allows one to type a
212comment message to explain why the change is being abandoned.
213
Edwin Kempinf9b4bc92014-11-05 13:14:57 +0100214** [[restore]]`Restore`:
Edwin Kempinf1a84f92014-04-30 15:37:48 +0200215+
216Restores the change.
217+
218The `Restore` button is only available if the change is abandoned and
219the link:access-control.html#category_abandon[Abandon] and the
220link:access-control.html#category_push[Push] access right is
221assigned.
222+
223When a change is restored, a panel appears that allows one to type a
224comment message to explain why the change is being restored.
225
Edwin Kempinf9b4bc92014-11-05 13:14:57 +0100226** [[rebase]]`Rebase`:
Edwin Kempinf1a84f92014-04-30 15:37:48 +0200227+
228Rebases the change. The rebase is always done with content merge
229enabled. If the rebase is successful a new patch set with the rebased
230commit is created. If the rebase fails, there are conflicts that have
231to be resolved manually.
232+
233If the change does not depend on another open change, it is rebased
234onto the tip of the destination branch.
235+
236If the change depends on another open change, it is rebased onto the
237current patch set of that other change.
238+
Zalan Blenessy366d7852015-03-18 11:40:48 +0100239It is possible to change parent revision of a change. The new parent
240revision can be another change towards the same target branch, or
241the tip of the target branch.
242+
243The `Rebase` button is only available if
Edwin Kempinf1a84f92014-04-30 15:37:48 +0200244the link:access-control.html#category_rebase[Rebase] access right is
245assigned. Rebasing merge commits is not supported.
246
Edwin Kempinf9b4bc92014-11-05 13:14:57 +0100247** [[cherry-pick]]`Cherry-Pick`:
Edwin Kempinf1a84f92014-04-30 15:37:48 +0200248+
249Allows to cherry-pick the change to another branch. The destination
250branch can be selected from a dialog. Cherry-picking a change creates a
251new open change on the selected destination branch.
252+
253It is also possible to cherry-pick a change to the same branch. This is
254effectively the same as rebasing it to the current tip of the
255destination branch. This can be used to remove dependencies on other
256open changes.
257+
258Users can only cherry-pick changes to branches for which they are
259allowed to upload changes for review.
260
Edwin Kempinf9b4bc92014-11-05 13:14:57 +0100261** [[publish]]`Publish`:
Edwin Kempinf1a84f92014-04-30 15:37:48 +0200262+
263Publishes the currently viewed draft patch set. If this is the first
264patch set of a change that is published, the change will be published
265as well.
266+
267The `Publish` button is only available if a draft patch set is viewed
268and the user is the change owner or has the
269link:access-control.html#category_publish_drafts[Publish Drafts] access
270right assigned.
271
Edwin Kempinf9b4bc92014-11-05 13:14:57 +0100272** [[delete]]`Delete Change` / `Delete Revision`:
Edwin Kempinf1a84f92014-04-30 15:37:48 +0200273+
274Deletes the draft change / the currently viewed draft patch set.
275+
276The `Delete Change` / `Delete Revision` buttons are only available if a
277draft patch set is viewed and the user is the change owner or has the
278link:access-control.html#category_delete_drafts[Delete Drafts] access
279right assigned.
280
Edwin Kempinf9b4bc92014-11-05 13:14:57 +0100281** [[plugin-actions]]Further actions may be available if plugins are installed.
Edwin Kempinf1a84f92014-04-30 15:37:48 +0200282
283+
284image::images/user-review-ui-change-screen-change-info-actions.png[width=800, link="images/user-review-ui-change-screen-change-info-actions.png"]
285
Edwin Kempinf9b4bc92014-11-05 13:14:57 +0100286- [[labels]]Labels & Votes:
Edwin Kempinf1a84f92014-04-30 15:37:48 +0200287+
288Approving votes are colored green; veto votes are colored red.
289+
290image::images/user-review-ui-change-screen-change-info-labels.png[width=800, link="images/user-review-ui-change-screen-change-info-labels.png"]
291
Edwin Kempinab777f12014-05-02 11:47:57 +0200292[[files]]
293=== File List
294
295The file list shows the files that are modified in the currently viewed
296patch set.
297
298image::images/user-review-ui-change-screen-file-list.png[width=800, link="images/user-review-ui-change-screen-file-list.png"]
299
Edwin Kempinf9b4bc92014-11-05 13:14:57 +0100300[[change-screen-mark-reviewed]]
Edwin Kempinab777f12014-05-02 11:47:57 +0200301The checkboxes in front of the file names allow files to be marked as reviewed.
302
303image::images/user-review-ui-change-screen-file-list-mark-as-reviewed.png[width=800, link="images/user-review-ui-change-screen-file-list-mark-as-reviewed.png"]
304
Edwin Kempinf9b4bc92014-11-05 13:14:57 +0100305[[modification-type]]
Edwin Kempinab777f12014-05-02 11:47:57 +0200306The type of a file modification is indicated by the character in front
307of the file name:
308
309- 'no character' (Modified):
310+
311The file existed before this change and is modified.
312
313- `A` (Added):
314+
315The file is newly added.
316
317- `D` (Deleted):
318+
319The file is deleted.
320
321- `R` (Renamed):
322+
323The file is renamed.
324
325- `C` (Copied):
326+
327The file is new and is copied from an existing file.
328
329image::images/user-review-ui-change-screen-file-list-modification-type.png[width=800, link="images/user-review-ui-change-screen-file-list-modification-type.png"]
330
Edwin Kempinf9b4bc92014-11-05 13:14:57 +0100331[[rename-or-copy]]
Edwin Kempinab777f12014-05-02 11:47:57 +0200332If a file is renamed or copied, the name of the original file is
333displayed in gray below the file name.
334
335image::images/user-review-ui-change-screen-file-list-rename.png[width=800, link="images/user-review-ui-change-screen-file-list-rename.png"]
336
Edwin Kempinf9b4bc92014-11-05 13:14:57 +0100337[[repeating-path-segments]]
Edwin Kempinab777f12014-05-02 11:47:57 +0200338Repeating path segments are grayed out.
339
340image::images/user-review-ui-change-screen-file-list-repeating-paths.png[width=800, link="images/user-review-ui-change-screen-file-list-repeating-paths.png"]
341
Edwin Kempinf9b4bc92014-11-05 13:14:57 +0100342[[inline-comments-column]]
Edwin Kempinab777f12014-05-02 11:47:57 +0200343Inline comments on a file are shown in the `Comments` column.
344
345Draft comments, i.e. comments that have been written by the current
346user but not yet published, are highlighted in red.
347
348New comments from other users, that were published after the current
349user last reviewed this change, are highlighted in bold.
350
351image::images/user-review-ui-change-screen-file-list-comments.png[width=800, link="images/user-review-ui-change-screen-file-list-comments.png"]
352
Edwin Kempinf9b4bc92014-11-05 13:14:57 +0100353[[size]]
David Pursehouse8bd6f782015-01-30 11:06:38 +0900354The size of the modifications in the files can be seen in the `Size` column. The
355footer row shows the total size of the change.
Edwin Kempinab777f12014-05-02 11:47:57 +0200356
357The size information is useful to easily spot the files that contain
358the most modifications; these files are likely to be the most relevant
359files for this change. The total change size gives an estimate of how
360long a review of this change may take.
361
David Pursehouse8bd6f782015-01-30 11:06:38 +0900362When the "Show Change Sizes As Colored Bars" user preference is enabled, the
363`Size` column shows the sum of inserted and deleted lines as one number. In
364addition, the change size is shown as a bar. The size of the bar indicates the
365amount of changed lines, and its coloring shows the proportion of insertions
366(green) to deletions (red).
367
368When the "Show Change Sizes As Colored Bars" user preference is disabled, the
369colored bar is not shown. For added and renamed files, the `Size` column
370shows the number of inserted and deleted lines. For new files, the column only
371shows the total number of lines in the new file. No size is shown for binary
372files and deleted files.
373
Edwin Kempinab777f12014-05-02 11:47:57 +0200374image::images/user-review-ui-change-screen-file-list-size.png[width=800, link="images/user-review-ui-change-screen-file-list-size.png"]
375
Edwin Kempinf9b4bc92014-11-05 13:14:57 +0100376[[diff-against]]
Edwin Kempinab777f12014-05-02 11:47:57 +0200377In the header of the file list, the `Diff Against` selection can be
378changed. This selection allows one to choose if the currently viewed
379patch set should be compared against its base or against another patch
380set of this change. The file list is updated accordingly.
381
Edwin Kempinf9b4bc92014-11-05 13:14:57 +0100382[[open-all]]
Edwin Kempinab777f12014-05-02 11:47:57 +0200383The file list header also provides an `Open All` button that opens the
384diff views for all files in the file list.
385
386image::images/user-review-ui-change-screen-file-list-header.png[width=800, link="images/user-review-ui-change-screen-file-list-header.png"]
387
Edwin Kempinb2a8ae32014-05-02 15:03:22 +0200388[[patch-sets]]
389=== Patch Sets
390
391The change screen only presents one patch set at a time. Which patch
392set is currently viewed can be seen from the `Patch Sets` drop-down
393panel in the change header. It shows the number of the currently viewed
394patch set and the total number of patch sets, in the form: "current
395patch set/number of patch sets".
396
397If a non-current patch set is viewed this is indicated by the
398link:#not-current[Not Current] change state. Please note that some
399operations are only available on the current patch set.
400
401image::images/user-review-ui-change-screen-patch-sets.png[width=800, link="images/user-review-ui-change-screen-patch-sets.png"]
402
Orgad Shanehce43e0f2014-09-03 22:53:44 +0300403Another indication is a highlighted drop-down label.
404
405image::images/user-review-ui-change-screen-not-current.png[width=800, link="images/user-review-ui-change-screen-not-current.png"]
406
Edwin Kempinf9b4bc92014-11-05 13:14:57 +0100407[[patch-set-drop-down]]
Edwin Kempinb2a8ae32014-05-02 15:03:22 +0200408The patch set drop-down list shows the list of patch sets and allows to
409switch between them. The patch sets are sorted in descending order so
410that the current patch set is always on top.
411
Edwin Kempinb2a8ae32014-05-02 15:03:22 +0200412Draft patch sets are marked with `DRAFT`.
413
414image::images/user-review-ui-change-screen-patch-set-list.png[width=800, link="images/user-review-ui-change-screen-patch-set-list.png"]
415
Edwin Kempin0cb1ccb2014-05-05 13:22:03 +0200416[[download]]
417=== Download
418
419The `Download` drop-down panel in the change header offers commands and
420links for downloading the currently viewed patch set.
421
422image::images/user-review-ui-change-screen-download-commands.png[width=800, link="images/user-review-ui-change-screen-download-commands.png"]
423
424The available download commands depend on the installed Gerrit plugins.
425The most popular plugin for download commands, the
426link:https://gerrit-review.googlesource.com/#/admin/projects/plugins/download-commands[
427download-commands] plugin, provides commands to checkout, pull and
428cherry-pick a patch set.
429
430Each command has a copy-to-clipboard icon that allows the command to be
431copied into the clipboard. This makes it easy to paste and execute the
432command on a Git command line.
433
434If several download schemes are configured on the server (e.g. SSH and
435HTTP) there is a drop-down list to switch between the download schemes.
436Gerrit automatically remembers the download scheme that was last chosen
437and selects this download scheme the next time the download commands
438drop-down panel is opened.
439
440The `Patch-File` links provide the Git patch file for the currently
441viewed patch set for download. The patch file can be base64 encoded or
442zipped.
443
444The `Archive` links allow one to download an archive with the contents
445of the currently viewed patch set. The archive is offered in several
446formats (e.g. tar and tbz2); which formats are available depends on the
447configuration of the server.
448
449image::images/user-review-ui-change-screen-download-commands-list.png[width=800, link="images/user-review-ui-change-screen-download-commands-list.png"]
450
Edwin Kempin811bd582014-05-05 13:39:24 +0200451[[included-in]]
452=== Included In
453
454For merged changes the `Included In` drop-down panel is available in
455the change header.
456
457image::images/user-review-ui-change-screen-included-in.png[width=800, link="images/user-review-ui-change-screen-included-in.png"]
458
459The `Included In` drop-down panel shows the branches and tags in which
460the change is included. E.g. if a change fixes a bug, this allows to
461quickly see in which released versions the bug-fix is contained
462(assuming that every release is tagged).
463
464image::images/user-review-ui-change-screen-included-in-list.png[width=800, link="images/user-review-ui-change-screen-included-in-list.png"]
465
Edwin Kempin981cc952014-05-05 14:04:08 +0200466[[star]]
467=== Star Change
468
469The star icon in the change header allows to mark the change as a
470favorite. Clicking on the star icon again, unstars the change.
471
472image::images/user-review-ui-change-screen-star.png[width=800, link="images/user-review-ui-change-screen-star.png"]
473
474Starring a change turns on email notifications for this change.
475
476Starred changed are listed under `My` > `Starred Changes`.
477and can be queried by the link:user-search.html#is[is:starred] search
478operator.
479
Edwin Kempin8ab5b532014-05-05 17:10:31 +0200480[[related-changes]]
481=== Related Changes
482
483If there are changes that are related to the currently viewed change
484they are displayed in the third column of the change screen.
485
486There are several lists of related changes and a tab control is used to
487display each list of related changes in its own tab.
488
489The following tabs may be displayed:
490
Edwin Kempinf9b4bc92014-11-05 13:14:57 +0100491- [[related-changes-tab]]`Related Changes`:
Edwin Kempin8ab5b532014-05-05 17:10:31 +0200492+
493This tab page shows changes on which the current change depends
494(ancestors) and open changes that depend on the current change
495(descendants). For merge commits it also shows the closed changes that
496will be merged into the destination branch by submitting the merge
497commit.
498+
499The changes are sorted in the same way as the output of 'git log'. This
500means the relationship between the changes can be inferred from the
501position of the changes in the list. Changes listed above the current
502change are descendants; changes below the current change are ancestors.
503+
Edwin Kempin68cfe472014-05-12 15:10:25 +0200504For merged changes this tab is only shown if there are open
505descendants.
Edwin Kempin8ab5b532014-05-05 17:10:31 +0200506+
507image::images/user-review-ui-change-screen-related-changes.png[width=800, link="images/user-review-ui-change-screen-related-changes.png"]
508+
509Related changes may be decorated with an icon to signify dependencies
510on outdated patch sets, or commits that are not associated to changes
511under review:
512+
Edwin Kempinf9b4bc92014-11-05 13:14:57 +0100513** [[outdated]]Orange Dot:
Edwin Kempin8ab5b532014-05-05 17:10:31 +0200514+
515The selected patch set of the change is outdated; it is not the current
516patch set of the change.
517+
518If an ancestor change is marked with an orange dot it means that the
519currently viewed patch set depends on a outdated patch set of the
520ancestor change. This is because a new patch set for the ancestor
521change was uploaded in the meantime and as result the currently viewed
522patch set now needs to be rebased.
523+
524If a descendant change is marked with an orange dot it means that an
525old patch set of the descendant change depends on the currently viewed
526patch set. It may be that the descendant was rebased in the meantime
527and with the new patch set this dependency was removed.
528
Edwin Kempinf9b4bc92014-11-05 13:14:57 +0100529** [[indirect-descendant]]Green Tilde:
Edwin Kempin8ab5b532014-05-05 17:10:31 +0200530+
531The selected patch set of the change is an indirect descendant of the
532currently viewed patch set; it has a dependency to another patch set of
533this change. E.g. this could mean that a new patch set was uploaded for
534this change and the descendant change now needs to be rebased. Please
535note that following the link to an indirect descendant change may
536result in a completely different related changes listing.
537
Dave Borowitzbbaea3f2015-03-13 13:56:41 -0700538** [[closed-ancestor]]Black Dot:
Edwin Kempin8ab5b532014-05-05 17:10:31 +0200539+
Stefan Beller7e23cd02015-06-18 11:40:18 -0700540Indicates a closed ancestor, e.g. the commit was directly pushed into
Edwin Kempin8ab5b532014-05-05 17:10:31 +0200541the repository bypassing code review, or the ancestor change was
542reviewed and submitted on another branch. The latter may indicate that
543the user has accidentally pushed the commit to the wrong branch, e.g.
544the commit was done on `branch-a`, but was then pushed to
545`refs/for/branch-b`.
Stefan Beller7e23cd02015-06-18 11:40:18 -0700546A black dot is also present if the change was abandoned.
Edwin Kempin8ab5b532014-05-05 17:10:31 +0200547
Stefan Beller03d67902015-06-18 15:52:24 -0700548** [[closed-ancestor-abandoned]]Strikethrough Subject:
549+
550When the commit is abandoned, its subject line will be striked
551through.
552
Edwin Kempin8ab5b532014-05-05 17:10:31 +0200553+
554image::images/user-review-ui-change-screen-related-changes-indicators.png[width=800, link="images/user-review-ui-change-screen-related-changes-indicators.png"]
555
Edwin Kempinf9b4bc92014-11-05 13:14:57 +0100556- [[conflicts-with]]`Conflicts With`:
Edwin Kempin8ab5b532014-05-05 17:10:31 +0200557+
558This tab page shows changes that conflict with the current change.
559Non-mergeable changes are filtered out; only conflicting changes that
560are mergeable are shown.
561+
562If this change is merged, its conflicting changes will have merge
563conflicts and must be rebased. The rebase of the other changes with the
564conflict resolution must then be done manually.
565+
566image::images/user-review-ui-change-screen-conflicts-with.png[width=800, link="images/user-review-ui-change-screen-conflicts-with.png"]
567
Edwin Kempinf9b4bc92014-11-05 13:14:57 +0100568- [[same-topic]]`Same Topic`:
Edwin Kempin8ab5b532014-05-05 17:10:31 +0200569+
570This tab page shows changes that have the same topic as the current
571change. Only open changes are included in the list.
572+
573image::images/user-review-ui-change-screen-same-topic.png[width=800, link="images/user-review-ui-change-screen-same-topic.png"]
574
Stefan Beller09feaac2015-06-29 16:20:10 -0700575- [[submitted-together]]`Submitted Together`:
576+
577This tab page shows changes that will be submitted together with the
578currently viewed change, when clicking the submit button. It includes
579ancestors of the current patch set.
580+
581This may include changes and its ancestors with the same topic if
582`change.submitWholeTopic` is enabled. Only open changes with the
583same topic are included in the list.
584+
585
Edwin Kempinf9b4bc92014-11-05 13:14:57 +0100586- [[cherry-picks]]`Cherry-Picks`:
Edwin Kempin8ab5b532014-05-05 17:10:31 +0200587+
588This tab page shows changes with the same link:user-changeid.html[
589Change-Id] for the current project.
590+
591Abandoned changes are filtered out.
592+
593For each change in this list the destination branch is shown as a
594prefix in front of the change subject.
595+
596image::images/user-review-ui-change-screen-cherry-picks.png[width=800, link="images/user-review-ui-change-screen-cherry-picks.png"]
597
598If there are no related changes for a tab, the tab is not displayed.
599
Edwin Kempinc6cab612014-05-06 11:09:05 +0200600[[reply]]
601=== Reply
602
603The `Reply...` button in the change header allows to reply to the
604currently viewed patch set; one can add a summary comment, publish
605inline draft comments, and vote on the labels.
606
607image::images/user-review-ui-change-screen-reply.png[width=800, link="images/user-review-ui-change-screen-reply.png"]
608
609Clicking on the `Reply...` button opens a popup panel.
610
Sebastian Schuberth027c4352016-02-02 09:24:29 +0100611[[summary-comment]]
Edwin Kempinc6cab612014-05-06 11:09:05 +0200612A text box allows to type a summary comment for the currently viewed
Sebastian Schuberth027c4352016-02-02 09:24:29 +0100613patch set. Some basic markdown-like syntax is supported which renders
614indented lines preformatted, lines starting with "- " or "* " as list
615items, and lines starting with "> " as block quotes (also see replying to
616link:#reply-to-message[messages] and link:#reply-inline-comment[inline comments]).
Edwin Kempinc6cab612014-05-06 11:09:05 +0200617
Richard Möhne4abe9a2014-11-13 20:05:13 +0100618Note that you can set the text and tooltip of the button in
619link:config-gerrit.html#change.replyLabel[gerrit.config].
620
Edwin Kempinf9b4bc92014-11-05 13:14:57 +0100621[[vote]]
Edwin Kempinc6cab612014-05-06 11:09:05 +0200622If the current patch set is viewed, radio buttons are displayed for
623each label on which the user is allowed to vote. Voting on non-current
624patch sets is not possible.
625
Edwin Kempinc6cab612014-05-06 11:09:05 +0200626The inline draft comments that will be published are displayed in a
627separate section so that they can be reviewed before publishing. There
628are links to navigate to the inline comments which can be used if a
629comment needs to be edited.
630
631The `Post` button publishes the comments and the votes.
632
Edwin Kempinc6cab612014-05-06 11:09:05 +0200633image::images/user-review-ui-change-screen-replying.png[width=800, link="images/user-review-ui-change-screen-replying.png"]
634
Edwin Kempinf9b4bc92014-11-05 13:14:57 +0100635[[quick-approve]]
Edwin Kempinc6cab612014-05-06 11:09:05 +0200636If a user can approve a label that is still required, a quick approve
637button appears in the change header that allows to add this missing
638approval by a single click. The quick approve button only appears if
639there is a single label that is still required and can be approved by
640the user.
641
642E.g. if a change requires approvals on the 'Code-Review' and the
643'Verified' labels, and there is already a '+1 Verified' vote, then
644if the user is allowed to vote the max score on 'Code-Review', a
645`Code-Review+2` quick approve button appears that approves the
646'Code-Review' label if clicked.
647
648Using the quick approve button also publishes all inline draft
649comments; a summary comment is only added if the reply popup panel is
650open when the quick approve button is clicked.
651
652image::images/user-review-ui-change-screen-quick-approve.png[width=800, link="images/user-review-ui-change-screen-quick-approve.png"]
653
Edwin Kempin7a682812014-05-06 14:45:01 +0200654[[history]]
655=== History
656
657The history of the change can be seen in the lower part of the screen.
658
659The history contains messages for all kinds of change updates, e.g. a
660message is added when a new patch set is uploaded or when a review was
661done.
662
663Messages with new comments from other users, that were published after
664the current user last reviewed this change, are automatically expanded.
665
666image::images/user-review-ui-change-screen-history.png[width=800, link="images/user-review-ui-change-screen-history.png"]
667
Edwin Kempinf9b4bc92014-11-05 13:14:57 +0100668[[reply-to-message]]
Edwin Kempin7a682812014-05-06 14:45:01 +0200669It is possible to directly reply to a change message by clicking on the
670reply icon in the right upper corner of a change message. This opens
671the reply popup panel and prefills the text box with the quoted comment.
672Then the reply can be written below the quoted comment or inserted
Sebastian Schuberth027c4352016-02-02 09:24:29 +0100673inline. Lines starting with "> " will be rendered as a block quote.
Edwin Kempin7a682812014-05-06 14:45:01 +0200674Please note that for a correct rendering it is important to leave a blank
675line between a quoted block and the reply to it.
676
677image::images/user-review-ui-change-screen-reply-to-comment.png[width=800, link="images/user-review-ui-change-screen-reply-to-comment.png"]
678
Edwin Kempinf9b4bc92014-11-05 13:14:57 +0100679[[inline-comments-in-history]]
Edwin Kempin7a682812014-05-06 14:45:01 +0200680Inline comments are directly displayed in the change history and there
681are links to navigate to the inline comments.
682
683image::images/user-review-ui-change-screen-inline-comments.png[width=800, link="images/user-review-ui-change-screen-inline-comments.png"]
684
Edwin Kempinf9b4bc92014-11-05 13:14:57 +0100685[[expand-all]]
Edwin Kempin7a682812014-05-06 14:45:01 +0200686The `Expand All` button expands all messages; the `Collapse All` button
687collapses all messages.
688
Edwin Kempin772418f2014-05-06 15:45:35 +0200689[[update-notification]]
690=== Update Notification
691
692The change screen automatically polls for updates to the currently
693viewed change. If there is an update the user is informed by a popup
694panel in the bottom right corner.
695
696The polling frequency depends on the server configuration; by default
697it is 30 seconds. Polling may also be completely disabled by the
698administrator.
699
700image::images/user-review-ui-change-screen-change-update.png[width=800, link="images/user-review-ui-change-screen-change-update.png"]
701
Edwin Kempin41d9d302014-05-06 16:02:06 +0200702[[plugin-extensions]]
703=== Plugin Extensions
704
705Gerrit plugins may extend the change screen; they can add buttons for
706additional actions to the change info block and display arbitrary UI
707controls below the change info block.
708
709image::images/user-review-ui-change-screen-plugin-extensions.png[width=800, link="images/user-review-ui-change-screen-plugin-extensions.png"]
710
Edwin Kempind38ddf52014-05-07 14:31:42 +0200711[[side-by-side]]
712== Side-by-Side Diff Screen
713
714The side-by-side diff screen shows a single patch; the old file version
715is displayed on the left side of the screen; the new file version is
716displayed on the right side of the screen.
717
718This screen allows to review a patch and to comment on it.
719
720image::images/user-review-ui-side-by-side-diff-screen.png[width=800, link="images/user-review-ui-side-by-side-diff-screen.png"]
721
Edwin Kempinf9b4bc92014-11-05 13:14:57 +0100722[[side-by-side-header]]
Edwin Kempind38ddf52014-05-07 14:31:42 +0200723In the screen header the project name and the name of the viewed patch
724file are shown.
725
726If a Git web browser is configured on the server, the project name and
727the file path are displayed as links to the project and the folder in
728the Git web browser.
729
730image::images/user-review-ui-side-by-side-diff-screen-project-and-file.png[width=800, link="images/user-review-ui-side-by-side-diff-screen-project-and-file.png"]
731
Edwin Kempinf9b4bc92014-11-05 13:14:57 +0100732[[side-by-side-mark-reviewed]]
Edwin Kempind38ddf52014-05-07 14:31:42 +0200733The checkbox in front of the project name and the file name allows the
Edwin Kempinfe8ca4c2014-05-08 16:49:15 +0200734patch to be marked as reviewed. The link:#mark-reviewed[Mark Reviewed]
735diff preference allows to control whether the files should be
736automatically marked as reviewed when they are viewed.
Edwin Kempind38ddf52014-05-07 14:31:42 +0200737
738image::images/user-review-ui-side-by-side-diff-screen-reviewed.png[width=800, link="images/user-review-ui-side-by-side-diff-screen-reviewed.png"]
739
Edwin Kempinf9b4bc92014-11-05 13:14:57 +0100740[[scrollbar]]
Edwin Kempind38ddf52014-05-07 14:31:42 +0200741The scrollbar shows patch diffs and inline comments as annotations.
742This provides a good overview of the lines in the patch that are
743relevant for reviewing. By clicking on an annotation one can quickly
744navigate to the corresponding line in the patch.
745
746image::images/user-review-ui-side-by-side-diff-screen-scrollbar.png[width=800, link="images/user-review-ui-side-by-side-diff-screen-scrollbar.png"]
747
Edwin Kempinf9b4bc92014-11-05 13:14:57 +0100748[[gaps]]
Edwin Kempin1266ac8f2014-05-09 09:39:31 +0200749A gap between lines in the file content that is caused by aligning the
750left and right side or by displaying inline comments is shown as a
751vertical red bar in the line number column. This prevents a gap from
752being mistaken for blank lines in the file
753
754image::images/user-review-ui-side-by-side-diff-screen-red-bar.png[width=800, link="images/user-review-ui-side-by-side-diff-screen-red-bar.png"]
755
Edwin Kempind8057e52014-05-08 13:52:32 +0200756[[patch-set-selection]]
757In the header, on each side, the list of patch sets is shown. Clicking
758on a patch set changes the selection for the patch set comparison and
759the screen is refreshed to show the diff between the selected patch
760sets. The currently selected patch set is highlighted by a light blue
761background.
762
763On the left side `Base` can be selected to compare a patch set against
764its base. For merge commits `Auto Merge` is available instead which
765allows to compare the patch against the result of the auto merge. The
766auto merge version may contain Git conflict markers and is useful for
767reviewing how conflicts are resolved by a patch.
768
769Reviewers that are reviewing a patch for the first time look at its
770diff against its base; reviewers that have reviewed an old patch
771version before, may see what has changed since that version by
772comparing the old patch against the current patch.
773
774image::images/user-review-ui-side-by-side-diff-screen-patch-sets.png[width=800, link="images/user-review-ui-side-by-side-diff-screen-patch-sets.png"]
775
Edwin Kempinf9b4bc92014-11-05 13:14:57 +0100776[[download-file]]
Edwin Kempin6db9bcd2014-06-06 09:32:05 +0200777The download icon next to the patch set list allows to download the
778patch. Unless the mime type of the file is configured as safe, the
779download file is a zip archive that contains the patch file.
780
Edwin Kempinf9b4bc92014-11-05 13:14:57 +0100781[[no-differences]]
Edwin Kempin01280cc2014-05-09 09:53:30 +0200782If the compared patches are identical, this is highlighted by a red
783`No Differences` label in the screen header.
784
785image::images/user-review-ui-side-by-side-diff-screen-no-differences.png[width=800, link="images/user-review-ui-side-by-side-diff-screen-no-differences.png"]
786
Edwin Kempinf9b4bc92014-11-05 13:14:57 +0100787[[side-by-side-rename]]
Edwin Kempinafb4fcc2014-06-06 09:52:52 +0200788If a file was renamed, the old and new file paths are shown in the
789header together with a similarity index that shows how much of the file
790content is unmodified.
791
792image::images/user-review-ui-side-by-side-diff-screen-rename.png[width=800, link="images/user-review-ui-side-by-side-diff-screen-rename.png"]
Edwin Kempind8057e52014-05-08 13:52:32 +0200793
Edwin Kempinf9b4bc92014-11-05 13:14:57 +0100794[[navigation]]
Edwin Kempind37a1342014-05-08 14:02:35 +0200795For navigating between the patches in a patch set there are navigation
796buttons on the right side of the screen header. The left arrow button
797navigates to the previous patch; the right arrow button navigates to
798the next patch. The arrow up button leads back to the change screen. In
799all cases the selection for the patch set comparison is kept.
800
801image::images/user-review-ui-side-by-side-diff-screen-navigation.png[width=800, link="images/user-review-ui-side-by-side-diff-screen-navigation.png"]
802
Edwin Kempin004c3472014-05-07 16:56:59 +0200803[[inline-comments]]
804=== Inline Comments
805
806Inline comments are displayed directly in the patch file under the code
807that is commented. Inline comments can be placed on lines or on code
808blocks.
809
810If an inline comment relates to a code block, this code block is
811highlighted by a yellow background.
812
813Code blocks with comments may overlap. This means it is possible to
814attach several comments to the same code.
815
Edwin Kempinf9b4bc92014-11-05 13:14:57 +0100816[[line-links]]
Edwin Kempin004c3472014-05-07 16:56:59 +0200817The lines of the patch file are linkable. To link to a certain line in
818the patch file, '@<line-number>' must be appended to the patch link,
819e.g. `http://host:8080/#/c/56857/2/Documentation/user-review-ui.txt@665`.
820To link to a line in the old file version, '@a<line-number>' must be
821appended to the patch link. These links can be used to directly link to
822certain inline comments.
823
Edwin Kempinfe8ca4c2014-05-08 16:49:15 +0200824If the diff preference link:#expand-all-comments[Expand All Comments]
825is set to `Expand`, all inline comments will be automatically expanded.
Edwin Kempin004c3472014-05-07 16:56:59 +0200826
827image::images/user-review-ui-side-by-side-diff-screen-inline-comments.png[width=800, link="images/user-review-ui-side-by-side-diff-screen-inline-comments.png"]
828
Edwin Kempinf9b4bc92014-11-05 13:14:57 +0100829[[comment]]
Edwin Kempin004c3472014-05-07 16:56:59 +0200830In the header of the comment box, the name of the comment author and
831the timestamp of the comment are shown. If avatars are configured on
832the server, the avatar image of the comment author is displayed in the
833top left corner. Below the actual comment there are buttons to reply to
834the comment.
835
836image::images/user-review-ui-side-by-side-diff-screen-comment-box.png[width=800, link="images/user-review-ui-side-by-side-diff-screen-comment-box.png"]
837
Edwin Kempinf9b4bc92014-11-05 13:14:57 +0100838[[reply-inline-comment]]
Edwin Kempin004c3472014-05-07 16:56:59 +0200839Clicking on the `Reply` button opens an editor to type the reply.
840
841Quoting is supported, but only by manually copying & pasting the old
Sebastian Schuberth027c4352016-02-02 09:24:29 +0100842comment that should be quoted and prefixing every line by "> ". Please
Edwin Kempin004c3472014-05-07 16:56:59 +0200843note that for a correct rendering it is important to leave a blank line
844between a quoted block and the reply to it.
845
846Clicking on the `Save` button saves the comment as a draft. To make it
847visible to other users it must be published from the change screen by
848link:#reply[replying] to the change.
849
850The `Cancel` button cancels the editing and discards any changes to the
851draft comment.
852
853Clicking on the `Discard` button deletes the inline draft comment.
854
855image::images/user-review-ui-side-by-side-diff-screen-comment-reply.png[width=800, link="images/user-review-ui-side-by-side-diff-screen-comment-reply.png"]
856
Edwin Kempinf9b4bc92014-11-05 13:14:57 +0100857[[draft-inline-comment]]
Edwin Kempin004c3472014-05-07 16:56:59 +0200858Draft comments are marked by the text "Draft" in the header in the
859place of the comment author.
860
861A draft comment can be edited by clicking on the `Edit` button, or
862deleted by clicking on the `Discard` button.
863
864image::images/user-review-ui-side-by-side-diff-screen-comment-edit.png[width=800, link="images/user-review-ui-side-by-side-diff-screen-comment-edit.png"]
865
Edwin Kempinf9b4bc92014-11-05 13:14:57 +0100866[[done]]
Edwin Kempin004c3472014-05-07 16:56:59 +0200867Clicking on the `Done` button is a quick way to reply with "Done" to a
868comment. This is used to mark a comment as addressed by a follow-up
869patch set.
870
Edwin Kempin44606652014-05-09 08:31:05 +0200871image::images/user-review-ui-side-by-side-diff-screen-replied-done.png[width=800, link="images/user-review-ui-side-by-side-diff-screen-replied-done.png"]
Edwin Kempin004c3472014-05-07 16:56:59 +0200872
873[[add-inline-comment]]
874To add a new inline comment there are several possibilities:
875
876- select a code block and press 'c'
877- select a code block and click on the popup comment icon
Edwin Kempin7feeb952014-05-09 11:16:56 +0200878- go to a line, by clicking on it or by link:#key-navigation[key
879 navigation], and press 'c'
Edwin Kempin004c3472014-05-07 16:56:59 +0200880- click on a line number
881
882There are many ways to select code for commenting on it. The most
883frequently used methods are:
884
885- by mouse:
886** click and drag with the mouse to select a block
887** double-click on a word to select it
888** double-click and drag with the mouse to select a code block word-wise
889** triple-click on a line to select it
890** triple-click and drag with the mouse to select a code block line-wise
891
892- by keys (the same keys that are used for visual selection in Vim):
893** press 'v' + arrow keys (or 'h', 'j', 'k', 'l') to select a block
894** press 'V' + arrow keys (or 'j', 'k') to select a code block line-wise
895** type 'bvw' to select a word
896
Edwin Kempin004c3472014-05-07 16:56:59 +0200897image::images/user-review-ui-side-by-side-diff-screen-comment.png[width=800, link="images/user-review-ui-side-by-side-diff-screen-comment.png"]
898
899For typing the new comment, a new comment box is shown under the code
900that is commented.
901
902Clicking on the `Save` button saves the new comment as a draft. To make
903it visible to other users it must be published from the change screen
904by link:#reply[replying] to the change.
905
906Clicking on the `Discard` button deletes the new comment.
907
908image::images/user-review-ui-side-by-side-diff-screen-commented.png[width=800, link="images/user-review-ui-side-by-side-diff-screen-commented.png"]
909
Edwin Kempin9df27ac2014-05-08 13:06:18 +0200910[[file-level-comments]]
911=== File Level Comments
912
913Comments that apply to a whole file can be added on file level.
914
915File level comments are added by clicking on the comment icon in the
916header above the file.
917
918image::images/user-review-ui-side-by-side-diff-screen-file-level-comment.png[width=800, link="images/user-review-ui-side-by-side-diff-screen-file-level-comment.png"]
919
920Clicking on the comment icon opens a comment box for typing the file
921level comment.
922
923image::images/user-review-ui-side-by-side-diff-screen-file-level-commented.png[width=800, link="images/user-review-ui-side-by-side-diff-screen-file-level-commented.png"]
924
Edwin Kempin6113a1f2014-05-09 10:48:34 +0200925[[search]]
926=== Search
927
928For searching within a patch file, a Vim-like search is supported.
929Typing `/` opens the search box. Typing in the search box immediately
930highlights matches in the patch file with a yellow background. Using
931JavaScript regular expressions in the search term is supported. The
932search is case insensitive. After confirming the search by `ENTER` one
933can navigate between the matches by `n` / `N` to go to the next /
934previous match. Skipped lines are automatically expanded if they
935contain a match and one navigates to it.
936
937For additional possibilities to search please check the
938link:http://www.vim.org/docs.php[Vim documentation]. There are other
939useful ways to search, e.g. while the cursor is on a word, pressing `*`
940or `#` searches for the next or previous occurrence of the word.
941
942Searching by `Ctrl-F` finds matches only in the visible area of the
943screen unless the link:#render[Render] diff preference is set to `Slow`.
944
945image::images/user-review-ui-side-by-side-diff-screen-search.png[width=800, link="images/user-review-ui-side-by-side-diff-screen-search.png"]
946
Edwin Kempin7feeb952014-05-09 11:16:56 +0200947[[key-navigation]]
948=== Key Navigation
949
950Vim-like commands can be used to navigate within a patch file:
951
952- `h` / `j` / `k` / `l` moves the cursor left / down / up / right
953- `0` / `$` moves the cursor to the start / end of the line
954- `gg` / `G` moves to cursor to the start / end of the file
955- `Ctrl-D` / `Ctrl-U` scolls downwards / upwards
956
957Please check the link:http://www.vim.org/docs.php[Vim documentation]
958for further information.
959
Edwin Kempinfe8ca4c2014-05-08 16:49:15 +0200960[[diff-preferences]]
961=== Diff Preferences
962
963There are several options to control how patch diffs should be
964rendered. Users can configure their preferences in the diff
965preferences. The diff preferences can be accessed by clicking on the
966settings icon in the screen header.
967
968image::images/user-review-ui-side-by-side-diff-screen-preferences.png[width=800, link="images/user-review-ui-side-by-side-diff-screen-preferences.png"]
969
970The diff preferences popup allows to change the diff preferences.
971By clicking on the `Save` button changes to the diff preferences are
972saved permanently. Clicking on the `Apply` button applies the new
973diff preferences to the current screen, but they are discarded when the
974screen is refreshed. The `Save` button is only available if the user is
975signed in.
976
977image::images/user-review-ui-side-by-side-diff-screen-preferences-popup.png[width=800, link="images/user-review-ui-side-by-side-diff-screen-preferences-popup.png"]
978
979The following diff preferences can be configured:
980
Edwin Kempinf9b4bc92014-11-05 13:14:57 +0100981- [[theme]]`Theme`:
Edwin Kempinfe8ca4c2014-05-08 16:49:15 +0200982+
983Controls the theme that is used to render the file content.
984+
985E.g. users could choose to work with a dark theme.
986+
987image::images/user-review-ui-side-by-side-diff-screen-dark-theme.png[width=800, link="images/user-review-ui-side-by-side-diff-screen-dark-theme.png"]
988
Edwin Kempinf9b4bc92014-11-05 13:14:57 +0100989- [[ignore-whitespace]]`Ignore Whitespace`:
Edwin Kempinfe8ca4c2014-05-08 16:49:15 +0200990+
991Controls whether differences in whitespace should be ignored or not.
992+
993** `None`:
994+
995All differences in whitespace are highlighted.
996+
997** `At Line End`:
998+
999Whitespace differences at the end of lines are ignored.
1000+
1001** `Leading, At Line End`:
1002+
1003Whitespace differences at the beginning and end of lines are ignored.
1004+
1005** `All`:
1006+
1007All differences in whitespace are ignored.
1008
Edwin Kempinf9b4bc92014-11-05 13:14:57 +01001009- [[tab-width]]`Tab Width`:
Edwin Kempinfe8ca4c2014-05-08 16:49:15 +02001010+
1011Controls how many spaces should be displayed for a tab.
1012
Edwin Kempinf9b4bc92014-11-05 13:14:57 +01001013- [[columns]]`Columns`:
Edwin Kempinfe8ca4c2014-05-08 16:49:15 +02001014+
1015Sets the preferred line length. At this position a vertical dashed line
1016is displayed so that one can easily detect lines the exceed the
1017preferred line length.
1018+
1019image::images/user-review-ui-side-by-side-diff-screen-column.png[width=800, link="images/user-review-ui-side-by-side-diff-screen-column.png"]
1020
Edwin Kempinf9b4bc92014-11-05 13:14:57 +01001021- [[lines-of-context]]`Lines Of Context`:
Edwin Kempinfe8ca4c2014-05-08 16:49:15 +02001022+
1023The number of context lines that should be displayed before and after
1024any diff. If the `entire file` checkbox is selected, the full file is
1025rendered.
1026+
1027Skipped common lines can be expanded by clicking on the placeholder for
1028the skipped lines.
1029+
1030Clicking on "... skipped <n> common lines ..." expands the complete
1031block of skipped lines.
1032+
1033If many lines are skipped there are additional links to expand the
1034context by ten lines before and after the skipped block.
1035+
1036image::images/user-review-ui-side-by-side-diff-screen-expand-skipped-lines.png[width=800, link="images/user-review-ui-side-by-side-diff-screen-expand-skipped-lines.png"]
1037
Edwin Kempinf9b4bc92014-11-05 13:14:57 +01001038- [[intraline-difference]]`Intraline Difference`:
Edwin Kempinfe8ca4c2014-05-08 16:49:15 +02001039+
1040Controls whether intraline differences should be highlighted.
1041+
1042image::images/user-review-ui-side-by-side-diff-screen-intraline-difference.png[width=800, link="images/user-review-ui-side-by-side-diff-screen-intraline-difference.png"]
1043
Edwin Kempinf9b4bc92014-11-05 13:14:57 +01001044- [[syntax-highlighting]]`Syntax Highlighting`:
Edwin Kempinfe8ca4c2014-05-08 16:49:15 +02001045+
1046Controls whether syntax highlighting should be enabled.
1047+
1048The language for the syntax highlighting is automatically detected from
Edwin Kempin637db5e2014-05-12 08:25:26 +02001049the file extension. The language can also be set manually by selecting
1050it from the `Language` drop-down list.
Edwin Kempinfe8ca4c2014-05-08 16:49:15 +02001051+
1052image::images/user-review-ui-side-by-side-diff-screen-syntax-coloring.png[width=800, link="images/user-review-ui-side-by-side-diff-screen-syntax-coloring.png"]
1053
Edwin Kempinf9b4bc92014-11-05 13:14:57 +01001054- [[whitespace-errors]]`Whitespace Errors`:
Edwin Kempinfe8ca4c2014-05-08 16:49:15 +02001055+
1056Controls whether whitespace errors are highlighted.
1057
Edwin Kempinf9b4bc92014-11-05 13:14:57 +01001058- [[show-tabs]]`Show Tabs`:
Edwin Kempinfe8ca4c2014-05-08 16:49:15 +02001059+
1060Controls whether tabs are highlighted.
1061
Edwin Kempinf9b4bc92014-11-05 13:14:57 +01001062- [[line-numbers]]`Line Numbers`:
Edwin Kempinfe8ca4c2014-05-08 16:49:15 +02001063+
1064Controls whether line numbers are shown.
1065
Edwin Kempinf9b4bc92014-11-05 13:14:57 +01001066- [[empty-pane]]`Empty Pane`:
David Ostrovskya64d6892014-05-01 21:55:00 +02001067+
1068Controls whether empty panes are shown or not. The Left pane is empty when a
1069file was added; the right pane is empty when a file was deleted.
1070
Edwin Kempinf9b4bc92014-11-05 13:14:57 +01001071- [[left-side]]`Left Side`:
Edwin Kempin91de46f2014-05-12 08:28:32 +02001072+
David Ostrovskya000b232014-05-13 07:47:06 +02001073Controls whether the left side is shown. This preference is not
1074persistent and is ignored by the `Save` button. Every time a
1075patch diff is opened, this preference is reset to `Show`.
Edwin Kempin91de46f2014-05-12 08:28:32 +02001076
Edwin Kempinf9b4bc92014-11-05 13:14:57 +01001077- [[top-menu]]`Top Menu`:
Edwin Kempinfe8ca4c2014-05-08 16:49:15 +02001078+
1079Controls whether the top menu is shown.
1080
Edwin Kempinf9b4bc92014-11-05 13:14:57 +01001081- [[auto-hide-diff-table-header]]`Auto Hide Diff Table Header`:
Edwin Kempin1b6c6d82014-09-11 23:36:43 +02001082+
1083Controls whether the diff table header should be automatically hidden
1084when scrolling down more than half of a page.
1085
Edwin Kempinf9b4bc92014-11-05 13:14:57 +01001086- [[mark-reviewed]]`Mark Reviewed`:
Edwin Kempinfe8ca4c2014-05-08 16:49:15 +02001087+
1088Controls whether the files of the patch set should be automatically
1089marked as reviewed when they are viewed.
1090
Edwin Kempinf9b4bc92014-11-05 13:14:57 +01001091- [[expand-all-comments]]`Expand All Comments`:
Edwin Kempinfe8ca4c2014-05-08 16:49:15 +02001092+
1093Controls whether all comments should be automatically expanded.
1094
Edwin Kempinf9b4bc92014-11-05 13:14:57 +01001095- [[render]]`Render`:
Edwin Kempinfe8ca4c2014-05-08 16:49:15 +02001096+
1097Controls how patch files that exceed the screen size are rendered.
1098+
1099If `Fast` is selected file contents which are outside of the visible
1100area are not attached to the browser's DOM tree. This makes the
1101rendering fast, but searching by `Ctrl+F` only finds content which is
1102in the visible area.
1103+
1104If `Slow` is selected all file contents are attached to the browser's
1105DOM tree, which makes the rendering slow for large files. The advantage
1106of this setting is that `Ctrl+F` can be used to search in the complete
1107file.
Edwin Kempin9cc22c92014-05-12 08:16:52 +02001108+
1109Large files that exceed 4000 lines will not be fully rendered.
Edwin Kempinfe8ca4c2014-05-08 16:49:15 +02001110
Paladoxee24b3c2016-09-05 23:51:02 +01001111- [[line-wrapping]]`Line Wrapping`:
1112+
1113Controls weather to enable line wrapping or not.
1114+
1115If `false` is selected then line wrapping is disabled.
1116This is the default option.
1117+
1118If `true` is selected then line wrapping is enabled.
1119
Edwin Kempin7a85f412014-05-09 12:51:51 +02001120[[keyboard-shortcuts]]
1121== Keyboard Shortcuts
1122
1123Navigation within the review UI can be completely done by keys, and
1124most actions can be controlled by keyboard shortcuts. Typing `?` opens
1125a popup that shows a list of available keyboard shortcuts:
1126
1127- Change Screen
1128+
1129image::images/user-review-ui-change-screen-keyboard-shortcuts.png[width=800, link="images/user-review-ui-change-screen-keyboard-shortcuts.png"]
1130
1131- Side-by-Side Diff Screen
1132+
1133image::images/user-review-ui-side-by-side-diff-screen-keyboard-shortcuts.png[width=800, link="images/user-review-ui-side-by-side-diff-screen-keyboard-shortcuts.png"]
1134+
1135In addition, Vim-like commands can be used to link:#key-navigation[
1136navigate] and link:#search[search] within a patch file.
1137
Edwin Kempinb7a1c7c2014-05-09 11:21:18 +02001138[[new-vs-old]]
1139== New Review UI vs. Old Review UI
1140
1141There are some important conceptual differences between the old and
1142new review UIs:
1143
1144- The old change screen directly shows all patch sets of the change.
1145 With the new change screen only a single patch set is displayed;
1146 users can switch between the patch sets by choosing another patch
1147 set from the link:#patch-sets[Patch Sets] drop down panel in the
1148 screen header.
1149- On the old side-by-side diff screen, new comments are inserted by
1150 double-clicking on a line. With the new side-by-side diff screen
1151 double-click is used to select a word for commenting on it; there
1152 are link:#add-inline-comment[several ways to insert new comments],
1153 e.g. by selecting a code block and clicking on the popup comment
1154 icon.
1155
Edwin Kempinf9b4bc92014-11-05 13:14:57 +01001156[[limitations]]
Edwin Kempinb7a1c7c2014-05-09 11:21:18 +02001157Limitations of the new review UI:
1158
1159- The new side-by-side diff screen cannot render images.
1160
Edwin Kempin7aed5f02014-11-05 13:30:22 +01001161- The new side-by-side diff screen isn't able to highlight line
1162 endings.
1163
Edwin Kempin4fd84c92014-04-30 13:23:15 +02001164GERRIT
1165------
1166Part of link:index.html[Gerrit Code Review]
1167
1168SEARCHBOX
1169---------