Pass the WebFrame to closeHelperPlugin().

BUG=262980, 263634, 269193

Review URL: https://chromiumcodereview.appspot.com/22909012

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@218558 0039d316-1c4b-4281-b951-d872f2087c98
[Android] Small java changes for EMMA code coverage

One piece of the overall java coverage change.
See: https://codereview.chromium.org/20210002/ 

NOTRY=True
BUG=255644

Review URL: https://chromiumcodereview.appspot.com/23253005

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@218559 0039d316-1c4b-4281-b951-d872f2087c98
Add retry option to bisect-builds.py.

Allows someone using the script to retry the same build when
bisecting, in the event that a test was inconclusive, the browser
crashed early, the result wasn't observed, etc..

NOTRY=true

Review URL: https://chromiumcodereview.appspot.com/23065008

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@218561 0039d316-1c4b-4281-b951-d872f2087c98
Add support for multiple asynchronous browser startups.

This CL adds support for easily doing multiple asynchronous startups
where every startup request can get their own callback executed. This
makes the logic in at the caller very simple by for example extracting
away usage of AndroidBrowserProcess and catching ProcessInitException.

BrowserStartupConfig is renamed to BrowserStartupController, since it
now does more than just keep the configuration. The
BrowserStartupController is called from native when the native startup
is complete. It keeps an ordered list of caller's callbacks which will
all be called when initialization is finished. If initialization has
already been completed before the async startup request is called,
the callback is called immediately.

The first users of this are content shell and chromium testshell.

BUG=260574

Review URL: https://chromiumcodereview.appspot.com/22272006

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@218562 0039d316-1c4b-4281-b951-d872f2087c98
dbus: Start using the GetRichPerfData API for collecting perf data.

On ChromeOS there are two API calls to request debugd to collect perf
data:
1) GetPerfData: This collects perf data by running "perf record -a".
2) GetRichPerfData: This collects perf data by selecting a command at
random from a set of commands supported for the CPU the platform has. It
can get non-cycle data like branches, iTLB misses, etc.

This CL changes Chrome to use GetRichPerfData API.

BUG=224056
TEST=git cl try.

Review URL: https://chromiumcodereview.appspot.com/18054004

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@218563 0039d316-1c4b-4281-b951-d872f2087c98
Disable the HMAC-SHA256 and AES_256_GCM cipher suites for
SSLClientSocketOpenSSL.

R=rsleevi@chromium.org
BUG=255241
TEST=none

Review URL: https://chromiumcodereview.appspot.com/23038011

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@218564 0039d316-1c4b-4281-b951-d872f2087c98
Set fakebox style to match key capturing state on ntp init

BUG=267147
TEST=Open NTP, set focus on the fakebox, refresh page. The fakebox should keep the focus style after refresh.

Review URL: https://chromiumcodereview.appspot.com/23172016

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@218565 0039d316-1c4b-4281-b951-d872f2087c98
Invoke the inactive frame rendering code in WM_WINDOWPOSCHANGING instead of WM_WINDOWPOSCHANGED.

This ensures that we can draw the caption as active in the browser frame before it loses activation. This
also alleviates the need to send a fake WM_NCACTIVATE message from the DesktopRootWindowHost, which has
sideeffects as seen in bug https://code.google.com/p/chromium/issues/detail?id=273194 where the extension popup
shows up and destroys itself when the browser frame is activated via the sent WM_NCCACTIVATE message.

Changes in this CL are as below:-

1. Removed the virtual function SetInactiveRenderingDisabled from the DesktopRootWindowHost interface.
2. Added a new virtual function HandleVisibilityChanging to the HWNDMessageHandlerDelegate interface.
   This is invoked from the HWNDMessageHandler::OnWindowPosChanging function.
3. Added a new virtual function OnNativeWidgetVisibilityChanging to the NativeWidgetDelegate interface and
   the corresponding implementation in the widget. This fires the OnWidgetVisibilityChanging notification
   on the WidgetObserver which is implemented by the BubbleDelegate.
3. Read the delegate_->IsInactiveRenderingDisabled result at the beginning of the HWNDMessageHandler::OnNCActivate
   function. This is needed because the delegate_->HandleActivationChanged call resets the inactive rendering flag.

Tested this with avatar bubble/extension popups in glass/classic mode.  Works well.

BUG=273194
R=sky@chromium.org

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@218568 0039d316-1c4b-4281-b951-d872f2087c98
Make AccessibilityNodeData more compact.

The only goal of this tedious changelist is
less memory usage when storing the accessible tree.

The major changes are:
* Make almost everything a "sparse" attribute.
  For example, not every element has a name or
  value, so make them optional attributes rather
  than string fields that always take up memory.
* Use UTF-8 std::strings instead of string16s.
* Use vectors of pairs rather than maps.

If there is any slowdown after this change, we
can speed up lookup in vectors by sorting the
attributes and doing a binary search. There are
also opportunities to do more referencing and
less string copying.

When reviewing, look at the changes to the header
files first and make sure you understand them.
Everything else is just a consequence of those
changes.

BUG=96700

Review URL: https://chromiumcodereview.appspot.com/21269002

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@218572 0039d316-1c4b-4281-b951-d872f2087c98
Remove obsolete TODO.

We handle certificate viewing in Java for Chrome on Android, no need to hook
it up to native.

BUG=114822
TEST=Viewing the details of HTTPS certificates always works.

Review URL: https://chromiumcodereview.appspot.com/22802015

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@218573 0039d316-1c4b-4281-b951-d872f2087c98
Fix crashes when NinePatchLayer doesn't have a resource.

First issue is that if NinePatchLayer doesn't get a ResourceId because
of memory pressure, it will DCHECK. This is a valid situation -- just
draw nothing (checkerboard would be okay as well).

Second issue is that NinePatchLayer passes the ResourceId in for the
texture in PushPropertiesTo, but does not call SetNeedsPushProperties
when painting a new resource. The documentation of Layer::Update
suggests that a side-effect of returning true from Layer::Update is
that SetNeedsCommit will be called ont this layer, but this is not
the case.

BUG=133097

Review URL: https://chromiumcodereview.appspot.com/22911024

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@218574 0039d316-1c4b-4281-b951-d872f2087c98
cc: Don't require push properties for picture layers

PictureLayer now only needs push properties if its pile has changed. In
order to make this possible, some of the non-pushing post-commit work
had to be deferred so that every layer that got committed (even if it
didn't get pushed) would go through it. This is lazily done with a
boolean flag in PictureLayerImpl, with some DCHECKs for sanity about its
state.

As every layer on the pending tree that will get drawn will be
CalcDrawEtc'd and get UpdateTilePriorities first, this seems a safe
place to put this lazy check.

This is a re-land of r214533 combined with r216218 and depends
on the bugfix https://codereview.chromium.org/23295003/.

R=danakj@chromium.org
BUG=259402

Review URL: https://chromiumcodereview.appspot.com/23129009

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@218575 0039d316-1c4b-4281-b951-d872f2087c98
Docserver: StringsDataSource and DataSourceRegistry created

Created StringsDataSource to read in strings from 
templates/json/strings.json for templates to use. Replaces the constant
dictionary in template_data_source.py.

StringsDataSource is the first data source to use the new 
DataSourceRegistry architecture. At the moment, DataSourceRegistry is
used inside of ServerInstance to create additional context for 
templates. Once all other data sources have been moved over,
SeverInstance will not know about DataSourceRegistry at all.

BUG=275039
NOTRY=true

Review URL: https://chromiumcodereview.appspot.com/22813007

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@218576 0039d316-1c4b-4281-b951-d872f2087c98
Remove unneeded DCHECK from CF's ie_event_sink test code.

BUG=NONE
TEST=NONE
TBR=bauerb

Review URL: https://chromiumcodereview.appspot.com/23123009

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@218577 0039d316-1c4b-4281-b951-d872f2087c98
Revert "Avoid adding English to the blocked languages on non-English UI"

This reverts commit r218477.

Spectulative revert to green chromium.webkit bot.
TranslationInfoBarTest.Instantiate has been crashing for a while and this
appears to be the cause.

TBR=hajimehoshi@chromium.org

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@218578 0039d316-1c4b-4281-b951-d872f2087c98
[Android] Remove all usage of com.google.common.collect

To minimize apk size, minimize dependencies on guava. This removes 7k method definitions from the dex file.
BUG=272790
NOTRY=true

Review URL: https://chromiumcodereview.appspot.com/22978010

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@218579 0039d316-1c4b-4281-b951-d872f2087c98
Create asynchronous factory for privet HTTP that does address resolution

Create a class, PrivetHTTPAsynchronousFactory that creates the PrivetHTTP object
and resolves the mDNS host to an IP address. Convert LocalDiscoveryUIHandler to
using PrivetHTTPAsynchronousFactory.

BUG=

Review URL: https://chromiumcodereview.appspot.com/22432004

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@218580 0039d316-1c4b-4281-b951-d872f2087c98
cc: TileManager perftest fix.

This fixes tile manager perftest by creating a resource provider
client, so that resource provider's constructor DCHECK can pass.

Review URL: https://chromiumcodereview.appspot.com/23172012

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@218582 0039d316-1c4b-4281-b951-d872f2087c98
Support a new remote IPC for for GetTerminationStatus.

This does three things:

1. Clean-up a lot of the code in the Linux NaCl loader.
2. Create a new IPC to the NaCl loader "Zygote" for the
main Zygote to query the termination status of processes.
3. Clean-up some code in the Zygote and fix "process tracking".

zygote_linux.cc:
 * Split GetTerminationStatus() out from HandleGetTerminationStatus().
 * Handle the case where we need to perform a remote IPC for GetTerminationStatus()
 * Use the new GetTerminationStatus() to support the remote case for HandleReapRequest().
 * Replace real_pids_to_sandbox_pids mapping with process_info_map_.
    * Update shortcut case in ForkWithRealPid() to fill this out.
    * Update GetTerminationStatus() to remove existing entries.

zygote_fork_delegate_linux.h:
 * Create a new GetTerminationStatus() interface.

nacl_helper_linux.cc:
 * Split HandleZygoteRequest() out from main().
 * Split ChildNaClLoaderInit() to handle the child side of a fork().
 * Handle a new IPC in HandleGetTerminationStatusRequest().

nacl_fork_delegate_linux.cc:
 * Implement the new GetTerminationStatus() interface.
 * Use Pickle for IPCs, make IPCs easier to write with SendIPCRequestAndReadReply().

BUG=133453
R=mseaborn@chromium.org, piman@chromium.org

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@218584 0039d316-1c4b-4281-b951-d872f2087c98
[NaCl SDK] Enable select/poll on TTY nodes.

R=binji@chromium.org

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@218585 0039d316-1c4b-4281-b951-d872f2087c98