Fix memory leak of SubIndex.NrtFuture objects

The SubIndex.NrtFuture objects are added as listeners of
searchManager who was found to hold on to them forever.

Fixed. There are also some code refactoring in NrtFuture.

Change-Id: If87cb62890a1cfa6c6336f6c7953a1cb56d42937
Merge "Fix memory leak of SubIndex.NrtFuture objects" into stable-2.8
Correct Javadoc of RestReadView in extension API

The resource parameter specifies the resource to be read,
not the resource to be modified.

Change-Id: I4010674a348cefad02c234118ff25cf332dd76b4
Update cookbook plugin to latest revision

- Fix plugin name in REST API documentation synopsis lines

Change-Id: I3bcf6da0e4ec3fb76aab3a93e08da427df39c09b
Fix inconsistent behavior of diff view when viewing binary files

In the new change screen, if the user clicks on a binary file in
the file list, the unified view is used.  Then when navigating to
a previous or next file that is not binary, the diff view stays in
the old unified setting.  It is only possible to get back to the
new side-by-side view by going back to the change screen and then
opening the non-binary file from there.

To keep consistent behavior of diff view, always use unified diff
for binary files.  Use the user's preference setting for non-binary
files.

Change-Id: Ie4ece4cb740df8a69cbf3d2d42e4b0fb05461520
Do not refresh project list if filter did not change

Every time key up event is raised in the project list filter text box,
the project list was getting refreshed even if the filter did not
change (e.g. moving the cursor was refreshing the list).

Only call the refresh if the filter changed or if enter key is pressed.

Change-Id: I2e608d89e16dbef0cfe1e503ac2feb4639c27f5d
Fix link behaviour inconsistencies in change info panel

In the change info panel there are links on the project name, branch
name, and topic name.  They all behave differently:

 project: opens the project admin page
 branch: opens a query for changes on the branch and topic
 topic: opens a dialog to edit the topic name

Also, next to the project is a query icon that opens the project
default dashboard which is a query for recent changes.

These inconsistent links reduce the useability of the UI.  With this
change, they are made more consistent:

 project: opens the project default dashboard
 branch: opens a query for changes on the branch (without topic)
 topic: opens a query for changes on the topic

The project query icon is replaced with a settings icon that opens
the project admin page.  The topic can still be edited by clicking
on the edit icon.

Change-Id: I09c36bf80949efd8a6237669c8284275c3372d9c
Fix: Failure of acceptance tests.

a7e34313 broken the acceptance tests.
Fixed.

Change-Id: I577cc875bcce3013cabd2f1b6813e7be820d4b3c
Add option 'S' to projects REST API to support query offset

List projects endpoint has an option to limit the number of results
returned but it was missing an option to start at a nonzero offset in
order to support results paging.

Add and document 'S' option which allow to query project list starting
at a nonzero offset. Also add missing documentation for the 'n' option
which limits the number of results.

Those 2 options will be then used to render project list with pagination
in web UI.

Change-Id: I19c4cd1cfa6ed78f22c84f249af54a5c30387561
Implement pagination in project list screen

The project list screen was taking a long time to render over a large
amount of projects (1,000+) and with even larger number of projects
(3,000+), it could make the browser unresponsive.

Project list screen now uses pagination to resolve this issue. The
number of projects displayed is determined by the 'Maximum Page Size'
user preference.

Bug: issue 2215
Change-Id: Icd0a7d54fd5c5b3c2301c31026e7c6717a648a24
Fix 'parents' field name of CommitInfo in REST documentation

Change-Id: I804ab1f8034ac9fb1be9d178acce509f6d997d09
Signed-off-by: Edwin Kempin <edwin.kempin@sap.com>
Merge "Fix 'parents' field name of CommitInfo in REST documentation" into stable-2.8
Improve wording of 'parents' field description in CommitInfo

Change-Id: I5d136856f4d9794b74914579b39f2a1da3eb4ce8
Signed-off-by: Edwin Kempin <edwin.kempin@sap.com>
Always auto confirm adding reviewers for set-reviewers SSH command

If a group contains more than 'addreviewer.maxWithoutConfirmation'
members adding it as reviewer to a change requires a confirmation. A
user should only be asked for the confirmation when reviewers are
added from the WebUI but not when the set-reviewers SSH command is
used. This is also how 'addreviewer.maxWithoutConfirmation' is
documented in 'config-gerrit.txt'.

Bug: issue 2599
Change-Id: Ieab601e573115a0b034e1dcebe1c602adda6770b
Signed-off-by: Edwin Kempin <edwin.kempin@sap.com>
Merge "Always auto confirm adding reviewers for set-reviewers SSH command" into stable-2.8
Merge "Fix link behaviour inconsistencies in change info panel" into stable-2.9
SideBySide2: Show [ and ] shortcut keys in nav arrow tooltips

In the top right corner of a file the navigation cluster has a
tooltip on the up arrow but did not show the tooltip on the left
or right arrows. Show the key in the tooltip.

Change-Id: I192ef0ab8155c15b4bb35a18da33f74f15bb5537
Merge branch 'stable-2.8' into stable-2.9

* stable-2.8:
  SideBySide2: Show [ and ] shortcut keys in nav arrow tooltips
  Always auto confirm adding reviewers for set-reviewers SSH command
  Improve wording of 'parents' field description in CommitInfo
  Fix 'parents' field name of CommitInfo in REST documentation
  Implement pagination in project list screen
  Add option 'S' to projects REST API to support query offset
  Fix: Failure of acceptance tests.
  Do not refresh project list if filter did not change
  Fix inconsistent behavior of diff view when viewing binary files
  Update cookbook plugin to latest revision
  Correct Javadoc of RestReadView in extension API
  Fix memory leak of SubIndex.NrtFuture objects

Conflicts:
	gerrit-gwtui/src/main/java/com/google/gerrit/client/Dispatcher.java
	gerrit-gwtui/src/main/java/com/google/gerrit/client/diff/Header.java
	gerrit-server/src/main/java/com/google/gerrit/server/change/PostReviewers.java

Change-Id: I4d432c6ce27d3fd76dd9f86b8685be15ec8f123d
Fix JavaDoc warning

The JavaDoc generation reported the following warning:

  .../EmailReviewCommentsExecutor.java:29: warning - Tag @link:
    reference not found: EmailReviewComments

Change-Id: If30a0e08ccbcea0ee55d208cc2dc6840c4dab00e
Signed-off-by: Edwin Kempin <edwin.kempin@sap.com>
Merge "Fix JavaDoc warning" into stable-2.9