Merge "SideBySide2: Make the header background match gutter background"
Add acceptance test for getting account diff preferences via REST

Change-Id: I6d35fe405b7967f505d752f06c8dbb2515b43d82
Allow user names that start with a numerical value

That means it allows numerical only user names which
helps to setup Gerrit with Active Directory.

Change-Id: I34a2b0ac2fb4c42adaadf30723a41fe0175e0b6c
Signed-off-by: Eryk Szymanski <eryksz@google.com>
Clean-up of formatDate method in SshLogLayout

Change-Id: Idf321a7f91354f6e232e2cc4f945e74156902713
canReadCommit: move check for READ on refs/* on top

This should improve performance for those users who have READ access
on refs/*. Since this check is much cheaper than walking potentially
large commit graphs, move it to the top of the method. Only when user
doesn't have READ on refs/* do the usual reachability check from
all readable branches and tags.

Change-Id: I48341112347c1c4708c4b6b94c3326da6de8d8fb
SideBySide2: remove unnecessary padding

There was a bit too much space at the bottom of the window when
SideBySide2 is open and the headers are "scrolled off".  Its caused
by using 10px in the padding computation.  5px is sufficient to keep
everything in view. Use 5px, giving 5px back to CM3 and the rest of
the UI.

Change-Id: Ic77c4f63d014d4d813bf0d81c4b7e963d11ae6c1
Merge changes Icb5f77c9,Iae59a403

* changes:
  SideBySide2: Draw a line under the file header when "fullscreen"
  SideBySide2: Simplify logic for showing/hiding header
Merge "Add acceptance test for getting account diff preferences via REST"
Merge "Revision API: add cherry pick method"
Only show conflicting changes which were updated during the last month

Many projects have lots of old changes which are unlikely to ever be
merged. These old changes do conflict with more recent changes but
there are of not much interest. This is why we are now only showing
changes as conflicting which were updated during the last month.

Change-Id: I883351b25010621b9965db528621a835abc954ac
Signed-off-by: Edwin Kempin <edwin.kempin@sap.com>
SideBySide2: Batch updates to CodeMirror3 during onShowView

Colby recently observed opening files is sluggish.  Digging into
profile data shows CM3 doing multiple relayouts if its internal
DOM during onShowView(), once for each method being invoked. Batch
these together into an operation() call, allowing CM3 to buffer
the updates and update its DOM only once.

Change-Id: Iefbc112a37016c4031515b4422a02368e5af16c1
SideBySide2: Allow CM3 to buffer all updates when rendering

While styling lines with diff markers and inserting comment widgets
avoid reflow by running the work inside of an operation() method on
each CM3 instance.

Change-Id: Ib90dd4a679b74d30c63b51a7e7623babf0a942d7
Merge changes Ib90dd4a6,Iefbc112a

* changes:
  SideBySide2: Allow CM3 to buffer all updates when rendering
  SideBySide2: Batch updates to CodeMirror3 during onShowView
ChangeScreen2: Fix related changes tab from expanding too tall

The height of the tab bar header must be subtracted from the maximum
height given by the other columns in the header, otherwise a related
changes tab can cause the UI to shift the "Files" table down when
it is selected.

Remove the padding on the bottom panel, it saves some space and
ensures the header substraction is accurate.

Change-Id: Ie2ce21bb81c1ca56c1fe13af433d76e5d8508b16
ChangeScreen2: Fix missing ellipsis on long subject lines

white-space must be set to nowrap to obtain an ellipsis when overflow
is hidden. Add the missing property to the subject CSS class.

Change-Id: I50e293440748986eaebbbf0a15dbee634c2b9dc8
Merge "ChangeScreen2: Fix related changes tab from expanding too tall"
ChangeScreen2: Add key binding for Expand All/Collapse All buttons

eb924ff74a90bbeb37cd3856dae4e9325598656b inroduced one of the most wanted
features, that the whole community has been waiting for years. Let's add
key bindings for that too.

Change-Id: I9b159a9a877cf95edd1628329a9448de3a59fe21
Use rev-parse to find gitdir when generating commit-msg hook hint

This updates the Change-Id validator hint to advise the user to use
"git rev-parse --git-dir" to find the proper gitdir, in case the
user is using submodules.  Also, the gitdir is stored into a temp
variable, because msysgit has an unusual behavior related to the
path returned by rev-parse otherwise.

Change-Id: Ie4fcd0a73bd1cee12a052f38541f83aa8821c886
ChangeScreen2: Prevent loading the same revision again

Reload of the revision is done over Reload link or 'R' shortcut.
Use a non-link color for the current revision and disable pointer
events on the anchor.

Change-Id: I83f0ad693391024b5e922861e5c7ea97169dbe06
(cherry picked from commit 13f8c68a3f0fa4ed7f3c6f6ea55449885704cc8a)
ChangeScreen2: Fix click inside of messages

Clicking within a message body should not collapse the message.  It
should have only the default browser behavior.

This is annoyingly obvious if a change message contains a hyperlink
and you click the link.  The message collapses but the link opens in a
new tab.  If the message had another link you also wish to follow, it
is necessary to first re-expand the message.

Move the click listener onto a new <div> that contains only the first
line (aka the header line), which is the natural click target.

Change-Id: Ic3398447df033aa69369c785166ba841f168a83d
(cherry picked from commit cd2fc945ae6ebfc482e4e78c28b781ebff4c9aee)