Disallow searching for label:SUBM

This leaks an internal implementation detail; SUBM is not a real
label.

Strictly speaking we should bump the schema version for this change,
but considering how corner of a case this is, that is far more effort
than it's worth.

Change-Id: I0cba6d3dc661803a22308fc91cc758faa90df4eb
Merge "Disallow searching for label:SUBM"
Insert ChangeMessages within transactions where possible

Iae76682a moved this out of the transaction because it might belong to
a different change when cherry-picking. But it might still belong to
the same change, so detect this case and run within the transaction
when possible.

Change-Id: I302570cb38c8a4f812c7585facc606483e9ab25f
MergeOp: pass updated change to setMergedPatchSet

Change-Id: Ibce6070c3ac8ba78bbd679da18efb36aeeb14569
Fix SkipBar.expandAfter to reattach when at line 0.

Usually the skip bar does not need to be reattach when expanding after,
since it should stay attached *after* the same line. However, we attach
the line 0 skip bar *before* the first visible line, so it needs to be
reattached to the newly first visible line when expanding after.

Change-Id: Ie4ee1e48f2168ab7dbcd27a0d356d8cd6bcbe2ea
Include trailing newline in last skip.

We always add a trailing newline in SideBySide2. Allow the last skip bar
(if any) to cover it.

Change-Id: I4147cada6020e795b692d4ad90632b5bcfdfa964
Allow plugins to add entire screens to Gerrit

Add an extension screen which contains a hook that can be used by
GWT and JS plugins to integrate complete screens into the Gerrit UI.

Change-Id: I48a92ea49c4384db034177b04b2e7f0bea6a87b2
Remove hide top menu on scroll behavior in SideBySide2

Lots of people don't like it when it scrolls out of view since it
makes navigation to dashboards more difficult. Since there is now
a UI preference to *always* hide the top menu, compromise by
*always* showing the top menu if the prefence is not selected.

Change-Id: I2bd7830d97ba7913ad40f5585cb675991f0b3f29
Make rendering of the related changes panel fast

Previously an HTML table was built up as a sting in memory and applied
to the DOM in a single operation. When over 30K rows are in the table
the DOM operation can stall the UI for 10+ seconds.

Instead of using a table, use a stack of DIVs. Furthermore, only insert
the DIVs for the viewable portion of the panel and update the contents
when the panel is scrolled.

Change-Id: Ie5207ffa0207fc4228ff3c0b46711c9dc9d7216f
Merge "Make rendering of the related changes panel fast"
Merge "MergeOp: pass updated change to setMergedPatchSet"
Create ChangeUpdates with IdentifiedUsers rather than Accounts

Allows the user to be passed into MetaDataUpdate.create() so we can
create updates by arbitrary users, e.g. when posting a review on
behalf of someone else.

Change-Id: I71968d252e04651d7b597034fa17273e9749d0b0
Add ui preference to render entire file.

This will cause all lines in the file to be added to the DOM.
While being slower (especially for large files) it allows the
browser handle searching the file contents.

Change-Id: I31a9ebb079ec38ecf4fdb62ec073043723fe586f
SideBySide2: Reclaim more browser keys from vim

Ctrl-R is reload page. This is useful when developing a web UI.
In vim mode it means redo a change which was undone, which is
useless on a read-only buffer. Delete Ctrl-R and allow the browser
to handle it.

Also delete Ctrl-P (previous line, useless) and Ctrl-S.

Delete Ctrl-{0..9} so Chrome can switch between tabs.

Change-Id: I22da04bcf7d9754787214c1b7321e5ddfaf8520b
Merge "SideBySide2: Reclaim more browser keys from vim"
Merge "Create ChangeUpdates with IdentifiedUsers rather than Accounts"
SideBySide2: Expand draft comments when Expand all comments is true

Change-Id: I785ff5dbf86f4adb96eb4242fbc65ee680565adb
Merge "Allow plugins to add entire screens to Gerrit"
Update cookbook-plugin

* Use extension screens in cookbook example

Change-Id: Iaa0db0d2eea6c1d84245bad7cd62df55ddd3ff3e
Signed-off-by: Edwin Kempin <edwin.kempin@sap.com>
Remove unused injection of URL provider from SubmitStrategyFactory

Change-Id: I39a5c83886b4d5a1e6590740e5808fca28207dd1
Signed-off-by: Edwin Kempin <edwin.kempin@sap.com>