[BREAKING CHANGE] Fix camel-casing of countNonInternalElements

Also add minor optimisations.

Breaking change: function renamed.

Change-Id: Id3d6da8730eb81e4cab99c91521a7b6d1b46684a
Fix expandRange( 'root' ) to not include the internal list

Change-Id: I61752657f49a4e1709a63f012d5b1f6bc99dfc05
Copy annotation indexes before returning

Otherwise modifying the set can change your original data,
which is bad.

Bug: 68677
Change-Id: Ia120b08ee385f881407696ce3c5d9cb606afe1c8
ve.ui.AnnotationInspector: Allow content insertion without annotating

Needed by Ie4a633ed in mediawiki/extensions/VisualEditor.

I think this makes a bit more sense. Previously, you could only insert
content if you were going to annotate it – now, you can always insert
it *unless* you are going to de-annotate it. (Without this condition,
clicking the 'remove' button of an inspector for a collapsed range
would insert content, which is silly.)

This is technically a backwards-incompatible change, but it doesn't
break anything in core or MW as far as I can see.

Change-Id: Icc2e368ac2f7951f53981d834029ef8b8f075d61
Function name fix

Change-Id: I831612dc467b463f52eed8434639204e645f6fc1
Remove unused CSS classes

By searching for CSS classes that don't exist in the code.

Change-Id: Ib45f86beb96021cdbfa8272660d7416a0ccaa737
Merge "Function name fix"
Add 'snowman' and '☃' in comment for greppability

Change-Id: I53ca642a199352cc5478c31028d595edb230de29
Merge "Add 'snowman' and '☃' in comment for greppability"
Localisation updates from https://translatewiki.net.

Change-Id: I586b0792537a50434e6b4dcd2da0abe9a5c3374d
CommentNode: Change icon from orange to grey

We have no other bright solid colours in Apex or Vector so it looks quite
out of place. Also it conflicts with the selection colour in FF/Linux.

Also swapped implementation to use the file from OOjs UI instead since
they're now equal. Made sure dimeneions and alignment stay the same. Couldn't
append an instance of OO.ui.IndicatorElement as it doesn't allow invisible
content (the em space for selection), using the underlying mixin instead.

Also removed top/bottom margin around the inline block which
previously caused the line height of the containing paragraph to
increase by 0.15em in both directions.

Change-Id: Ic2133b9a588050f5fc159cadf0e6f315ae701a10
Update OOjs UI to v0.1.0-pre (e9cf571db2)

New changes:
1e7fcaa build: Remove over-ride on jscs's disallowQuotedKeysInObjects and make pass
170f607 Use native style property names instead of jQuery's css map
eb9b38f Localisation updates from https://translatewiki.net.
b812471 Unified demo page
6b06deb SVG fixes
970e35b Localisation updates from https://translatewiki.net.
bbfdfa8 Localisation updates from https://translatewiki.net.
9e8f965 Fix copypasta in WindowManager documentation
7fe05d5 demos: Rename demos.html to index.html for convenience
55beb80 demos: Add example of menu item with a long label
694e81c Update oojs to v1.0.11

Change-Id: I908933a4fa025d48e2d868a83039f7636356911c
Merge "Copy annotation indexes before returning"
Merge "CommentNode: Change icon from orange to grey"
Merge "Update OOjs UI to v0.1.0-pre (e9cf571db2)"
Generate only one pair of snowmen for multi-sibling nodes

If you had a leaf node rendered as 3 siblings (i.e. $element.length = 3),
then ve.ce.getDomText() would return 6 snowman characters, but the
correct number is 2. Put in a guard against double-snowmanning these nodes.

Also clean up the surrounding code a bit:
* Use Node.FOO_NODE constants directly
* Get rid of check for Node.CDATA_SECTION_NODE (who uses that?!)

Add unit tests, combining the tests for getDomHash and getDomText, and
including cases to test all code paths, including this one.

Bug: 67992
Bug: 68147
Bug: 68151
Bug: 68733
Bug: 68740
Change-Id: Ibf64fc0d3d03c639b2ad0f434949e75a42cef9ef
Merge "Generate only one pair of snowmen for multi-sibling nodes"
Comment icon positioning

* Tweak vertical position
* Add padding to make click target larger
* Add comment-in-heading test to demo

Change-Id: I7bf62e2f9422a2e6c1fdf7b1cfdcfa92e4642d61
[BREAKING CHANGE] Fix ve.ui.Overlay classes

Rename to ve-ui-overlay-(global|local) and give the overlay
in the language input widget a global class otherwise it doesn't
shield the personal toolbar.

Breaking change: ve-ui-surface-(global|local)Overlay renamed.

Bug: 68486
Change-Id: Ia99d368a41ab581a2bd4e3e39d6fc6efe5e6ffb4
ve.ce.TextNode: Use getChar() helper

The repeated `if (array) {…} else if (string) {…}` check is ugly.
There already is a setChar() helper here.

Change-Id: I41ca00567aca2b891f8256fe4b0d0614ad5bb321