Revert "Add a custom serializer for LinkedHashSet."

This reverts commit c8c4477e022bafeb3a61019ba87e3eb9ae58f57b.

Change-Id: I14ce7fff5ac450c9255f57aa95f8333b9080f660
blacklist all globals in each browser

Before we weren't being comprehensive about this and just blacklisting
names we got from Closure and other places. Instead, let's use a script
to get all the globals in a browser and blacklist them whether we think
they're likely to be used or not.

This only includes Firefox and Chrome to start; please run globals.html
in whatever browsers you have and contribute more globals files.

(We probably need to do something else to make it less likely that there
will be a conflict with a browser or extension we don't know about at
the time of release, but that's out of scope for this patch.)

Change-Id: Ib526b006a30990a4f29c19b1011472278813ed18
Review-Link: https://gwt-review.googlesource.com/#/c/5241/
add ie9 globals to blacklist

Also, add doctype to globals.html

Change-Id: I316133d15a35c754f8899fa34b154c4818153cf3
Fixed SuggestBox and Suggestion javadoc

bug: issue 7318
Change-Id: I442a4c98cadbf6bd2908ef46c35359955562833e
Set style name in AbstractCellTable instead of CellTable.

Bug: issue 8309
Change-Id: I37865162199dc2841e4945d84aa13fb258f48589
Automated refactoring to stop using deprecated DOM methods.

Change-Id: I43f400e2c05aa70f13d1af1dd16ca23f7298add2
Improves GWT event dispatch for extensibility.

New implementation introduces a dispatcher map for bitless events and
uses a 'default' dispatch function if there is no specific dispatcher
defined for the event.

Similarly, a dispatcher map for capture events introduced as well that
simplifies the boiler-plate around capture events.

With this change even if the event is not known by GWT yet, it will
still be dispatched. As most events don't need custom dispatching, no
further changes will be required to DOMImpl (e.g. MGWT will no longer
need to rebind DOMImpl for transitionEnd and animationEnd as those will
work out of the box.)

Partially fixes issue 8379

Change-Id: Ia00c177d0f007d544d4837e2291c991615795474
Review-Link: https://gwt-review.googlesource.com/#/c/5222/
Step towards eliminating com.google.gwt.user.client.Element

This commit changes all methods that used to take a user.Element to
instead take a dom.Element, while using Node.cast() to keep the return
values as user.Element and avoid breaking callers (who might try to
assign to a user.Element variable, for example).

During the next release cycle, it should be possible for users to
update their code the same way.  Then GWT can change its return values
to dom.Element, users can again do the same, and finally GWT can
eliminate user.Element altogether.

Change-Id: Id793420cae4f62c39b13b6bd1b21fd3487dcd81a
Restore HTMLPanel.add(Widget, Element) as public

Lots of users (at least within Google) rely on this method being
public.  Not sure why api-check didn't notice this would be a breaking
change.

Change-Id: I04152036a651f05f15201e822ac7bdb025c7e7e1
Add DOM.asOld(Element) to avoid NPEs

Calling cast() to convert a dom.Element into a user.Element can
introduce a NullPointerException when null elements are allowed.  To
remedy this and make the type safety slightly stronger, add a
DOM.asOld() helper method to cast from dom.Element to user.Element,
and replace as many calls to cast() with it as possible.

Rather than try to be clever and only convert cast()s where it would
actually make a difference, I adopted a strict rule of just converting
as many as possible.  In particular, this reverts all calls to cast()
that were introduced by d91ce52a.

Change-Id: I8c7a05be0c70d544006ae7f6356f7a05027fa1f3
Fixed name clash in uibinder when a field is named "owner"

bug: issue 7327
Change-Id: Id9e1a77433a09e913e8ef045c63b3f5bff4bbf17
Added @charset rule skipping

bug: issue 6736
Change-Id: I28e867b39cb1755e9bd132f2d4ddd960c21ee076
Makes LibraryBuilder path string encoding more forgiving.

When compiling actual applications Generator execution creates some
synthetic resources with an unusual path character (":"). Library
serialization was guarding against usage of this character, but it
has been changed to allow it. (This was originally correct but was
broken during out-of-context cleanup/review of the builder code).

Added a TODO to unify the Compiler on some fast and consistent
serialization library (probably protobuf) rather than the current
mixture of slow Java serialization, some protobuf, and custom
serialization.

Change-Id: Id4ef7477f3b81cf6a8b7c5eea6914a150d396fcf
Review-Link: https://gwt-review.googlesource.com/#/c/5246/
Fixes namer output for package-info classes.

JDT compilation of package-info.java classes results in the
creation of AST name nodes containing "package-info".
"-" is an illegal character in function names in output
javascript. So the javascript namers have been updated to
fix it.

Previously this was not a problem because this "-" character
was only in package-info classes and the Pruner was
removing those classes. But separate compilation does not
run the pruner, thus revealing this issue.

Change-Id: Ia322dadd36f2e117a3024cf3ed0f2cee8bfcb873
Adds a StatementRanges combining utility.

The Link system uses a StatementRanges object to know
how to and how much Javascript to write to disk. When writing
the combined Javascript from previously compiled libraries (as
part of separate compilation) it becomes necessary to combine
the StatementRanges for those libraries. Thus this change.

We want to enable separate compilation because it will be
faster than monolithic compilation.

Change-Id: I33879e213097c6335ea6c2369ad73dc274c6c8ea
Adds separate compilation flags and options.

Unlike the normal compiler entry point the separate compiler
entry point needs to be informed of precompiled input
libraries, the destination of its output library and whether
to perform linking (as linking is only performed in the last
separate compilation at the top of a compile tree).

So these options and args make it possible to drive the
separate compiler, which is deseriable since separate
compilation is faster.

Change-Id: I645f37d42b14cdecb3fd62e56cc395639a4e36bf
Review-Link: https://gwt-review.googlesource.com/#/c/5247/
Changes to make subclassing easy.

Change-Id: I0c0604b70f72403f758a482b470c6b09307285c0
Review-Link: https://gwt-review.googlesource.com/#/c/5171/
Fixes an Oracle config property lookup bug.

Out of context cleanup/review of DynamicPropertyOracle introduced a
bug by confusing com.google.gwt.dev.cfg.ConfigurationProperty and
com.google.gwt.core.ext.ConfigurationProperty.

Fixed the bug, added a regression test and added a TODO to get rid
of this duplicate class name confusion.

Change-Id: I0f7f4770ee7103a8358163e6cd986be6a04bd679
Adds RuntimePropertyRegistry for runtime rebinding.

The RuntimePropertyRegistry is necessary because runtime rebinding
depends on the execution of condition checks embedded in rebind rules,
and these condition checks depend on property value lookups which it
provides.

Runtime rebinding is needed for separate compilation since static
compile time rebinding is only possible when in possession of complete
global knowledge and thus can only be done in monolithic compiles.

Separate compilation is wanted because it makes things faster by
reducing the amount of work necessary when only a couple of files
have changed and also by making it possible to run some work in
parallel.

Change-Id: I5f688e679a1dab2fa95f6a451a779b7201aee93d
Deprecates AsyncProxy

Deprecated AsyncProxy due to lack of usage and very limited use cases.
Will be made available as third-party library.

Change-Id: I8295f44e00cf9c26b0fef024dbae93f7e1c9d83a