Revert "Use fMaxCharWidth as m_maxCharWidth on linux"

This reverts r160642 as it renders form controls a little too narrow
for certain fonts on linux.

BUG=322267
TBR=dglazkov@chromium.org

Review URL: https://codereview.chromium.org/93433002

git-svn-id: svn://svn.chromium.org/blink/trunk@162798 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Mark AtomicString(StringImpl*) constructor as explicit

Mark AtomicString(StringImpl*) constructor as explicit as calling it
has a cost and it is called inadvertently in several places.

R=abarth
BUG=323739

Review URL: https://codereview.chromium.org/92383002

git-svn-id: svn://svn.chromium.org/blink/trunk@162799 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Add test for style recalcs when modifying stylesheets.

This shows that modifying via textContent/innerHTML correctly does
StyleInvalidationAnalysis and modifying via CSSOM does not.

Review URL: https://codereview.chromium.org/92693004

git-svn-id: svn://svn.chromium.org/blink/trunk@162800 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Deflake fast/canvas/webgl/premultiplyalpha-test.html.

It's an async test, so it should use js-test's async code instead
of directly calling waitUntilDone/notifyDone.

BUG=321787
TBR=kbr@chromium.org

Review URL: https://codereview.chromium.org/92823002

git-svn-id: svn://svn.chromium.org/blink/trunk@162801 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Plugin elements always start content loading asynchronously.

Before r162073 [1], HTMLPlugInElement started content loading with two ways:
A) For NPAPI plugins, RenderEmbededObject registered itself to FrameView,
   and FrameView asked elements to start loading.
B) For other content, post attach callback for HTMLPlugInElement started to
   load the content.

r162073 made A asynchronous. We should make B asynchronous too
because dispatching event in Document::updateLayout*() is dangerous.

This CL unifies B with A. We always start content loading after layout
asynchronously.

Implementation:
We want to make the content loading asynchronous, but it should affect
the top-level 'load' event as ever. So, this CL increments Document::
m_loadEventDelayCount until starting actual loading, and
m_loadEventDelayCount should affect the load event correctly
(DocumentLoader::isLoadingInAPISense).

Also, this change unveiled another bug that ScriptLoader didn't decrement
the counter in a case of script load error (ScriptLoader and ScriptRunner).


Test changes:
* APPLET/EMBED/OBJECT content rendering have some delay.
  editing/editability/ignored-content.html
  fast/css/acid2-pixel.html
  fast/css/acid2.html
  fast/dom/HTMLObjectElement/form/nested-form-element.html
  fast/replaced/invalid-object-with-fallback.html
  http/tests/loading/nested_bad_objects.php
  http/tests/misc/acid2-pixel.html
  http/tests/misc/acid2.html
  plugins/gesture-events-scrolled.html
  plugins/user-gesture.html
  WebPageNewSerializerTest
  WebPageSerializerTest

* Also, Document::shouldScheduleLayout requires <body>
  fast/dom/HTMLObjectElement/beforeload-set-text-crash.xhtml

* The test code was broken.  It seems a function has never called.
  http/tests/media/video-in-iframe-crash.html


[1] http://src.chromium.org/viewvc/blink?view=revision&revision=162073

BUG=322348

Review URL: https://codereview.chromium.org/82553003

git-svn-id: svn://svn.chromium.org/blink/trunk@162802 bbb929c8-8fbe-4397-9dbb-9b2b20218538