Reland: Fall back to X11 system tray icons if libappindicator is not available.

This CL also splits out the code wrt to handling the GTK menu for the app indicator icon out of app_indicator_icon.cc in order to share code with gtk2_status_icon.cc

BUG=267195
TEST=Manual, see steps below.
1) Run chrome in a system which does not have libappindicator
2) Generate HTML 5 notifications via https://developer.cdn.mozilla.net/media/uploads/demos/e/l/elfoxero/c17223c414d8ddafb7808972b5617d9e/html5-notifications_1400214081_demo_package/index.html
3) Ensure that the bell icon shows up in the system tray and that clicking on the bell icon brings up the message center

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@273999 0039d316-1c4b-4281-b951-d872f2087c98
Bluetooth: remove Profile API

This CL removes the bluetooth.addProfile and bluetooth.removeProfile
API calls, along with the associated bluetooth.onConnection event.
Apps should now use bluetoothSocket.connect() and the family of
bluetoothSocket.listenUsing*() functions instead.

Since those are only implemented on Chrome OS right now this
temporarily breaks Windows and OS X, but should make the effort of
porting those to the new API easier by removing much of the old code.

It also cleans up the bluetooth API by removing the deprecated and
non-functional socket methods now that bluetoothSocket is complete.

BUG=349475
TEST=unit_tests and browser_tests

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@274000 0039d316-1c4b-4281-b951-d872f2087c98
Fixes possible crash in CursorHeightProvider

Crash data seems to indicate GetSystemMetrics(SM_CYCURSOR) can return
a value bigger than the bitmap height. Go figure.

BUG=378848
TEST=none
R=ananta@chromium.org

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@274001 0039d316-1c4b-4281-b951-d872f2087c98
GuestView: Move Disable Drag and Drop Out to Chrome

BUG=364141, 330264
TBR=jam@chromium.org for content/public/browser_plugin_guest_delegate code deletion.

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@274002 0039d316-1c4b-4281-b951-d872f2087c98
Add UMAs for gpu rasterization.

The recording of the histograms has already landed in r273559.

BUG=376811

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@274003 0039d316-1c4b-4281-b951-d872f2087c98
gpu: Add disable_arb_sync workaround and blacklist some MacOSX drivers.

BUG=371530

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@274004 0039d316-1c4b-4281-b951-d872f2087c98
Mojo cpp bindings: validation logic for incoming messages

BUG=None
TEST=None

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@274005 0039d316-1c4b-4281-b951-d872f2087c98
Immediately SetTitle on a new NavigationEntry created via history.pushState

We already have the title available (because we're not throwing away the old
document in the renderer process), and if we don't immediately set the title,
there is a race condition where the title may be updated in the ui before the renderer
process sends a FrameHostMsg_UpdateTitle IPC. In this case, the title will flicker to
the page url and immeidately back to the proper title.

BUG=375455
TEST=NavigationControllerTest.PushStateUpdatesTitle

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@274006 0039d316-1c4b-4281-b951-d872f2087c98
Renamed enum constants per Chrome coding guide

BUG=

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@274007 0039d316-1c4b-4281-b951-d872f2087c98
Roll FFmpeg DEPS for bug fix.

The test file is a bit too big (30mb) to stick into the regression
tests, so we'll just count on ClusterFuzz for watching this one in
the future.

Pulls in:
96481cb avformat/matroskadec: fix off by 1 error in matroska_read_seek()

BUG=378782
TEST=file no longer crashes.
TBR=wolenetz

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

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@274009 0039d316-1c4b-4281-b951-d872f2087c98
Do not mark QUIC as *broken* when a 0-RTT fails because this prevents us from verifying that TCP is also working. So instead, mark it as "recently broken" which requires handshake confirmation.

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@274010 0039d316-1c4b-4281-b951-d872f2087c98
Introduce View::CanProcessEventsWithinSubtree()

Introduce the virtual function 
View::CanProcessEventsWithinSubtree(), which returns 
true if the view and any of its descendants are 
permitted to be the target of an event. This will be 
called as part of event targeting and replaces the 
overrides of View::HitTestRect() in cases where the 
rect parameter is unused. One such replacement
(for ImageView) is made in this CL.

BUG=374325, 378530
TEST=ViewTest.CanProcessEventsWithinSubtree, ViewTargeterTest.CanProcessEventsWithinSubtree

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@274011 0039d316-1c4b-4281-b951-d872f2087c98
metrics: Shutdown LoginState after CrOSMetricsProvider tests

BUG=chromium:379140
TEST=unit tests pass

Signed-off-by: Simon Que <sque@chromium.org>

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@274012 0039d316-1c4b-4281-b951-d872f2087c98
Fixes bug where IViewManagerClient could be messaged unnecessarily

When deleting a node view manager could end up messaging client both
of the delete and to advance. If delete is sent there is no need to
send an advance too.

BUG=365012
TEST=covered by tests
R=ben@chromium.org

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@274013 0039d316-1c4b-4281-b951-d872f2087c98
test_runner: Migrate MockWebRTCDataChannelHandler to Chromium C++ style.

Changes:
1) Run clang-format through source and header files.
2) Fix member variables names.
3) Rename file name to mock_webrtc_data_channel_handler.

BUG=360000
TEST=None. No functional changes.

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@274014 0039d316-1c4b-4281-b951-d872f2087c98
athena: Add the concept of Activity and related managers.

An Activity can be a WebActivity, a SampleActivity etc. Each Activity has an
ActivityViewModel. The ActivityViewModel describes the UI for the Activity.

The ActivityManager is there to manage the list of activities. It is the source
of all the activities that various other activity-managers would use.

The ActivityViewManager is notified of activity updates from the ActivityManager,
and it creates the appropriate UI elements (views::Widget, etc.) to show the UI
for the activity to the user.

BUG=376357
R=oshima@chromium.org, skuhne@chromium.org
TBR=ben@chromium.org

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@274015 0039d316-1c4b-4281-b951-d872f2087c98
Fix race and remove unused features in cryptotoken extension

BUG=378965

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@274016 0039d316-1c4b-4281-b951-d872f2087c98
Properly prioritize the sources of an accessible name on Android.

This spec covers the right order: http://www.w3.org/TR/wai-aria-implementation

Now Android basically matches Windows, the difference is that Android has
to pick just one accessible name while Windows can have both a name and
a description.

There were existing cross-platform tests; I updated the Android
expectations.

BUG=359216

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@274017 0039d316-1c4b-4281-b951-d872f2087c98
Cast: Log audio received events for audio

Audio ACK received events are important for simulation. Logging it now.

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

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