Make the NSS SSL state a Leaky LazyInstance

Because NSS SSL may be used on worker threads, make the associated
LazyInstance used to initialize NSS Leaky.

BUG=none
R=wtc

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@242826 0039d316-1c4b-4281-b951-d872f2087c98
Change message wording for System Settings.

This CL addresses a change in how the iOS Settings app is refered to.

BUG=228181

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@242827 0039d316-1c4b-4281-b951-d872f2087c98
Implement eliding/truncating at end in RenderText


The eliding is determined using binary search similar to the ElideText
in ui/gfx/text_elider.cc.

The mixed LTR-RTL handling for ellipsis is done using LTR/RTL markers.
There is no other way of rendering the ellipsis with the directionality
of preceding strong-directional characters. Previous scheme worked
because it rendered LTR and RTL sub-strings as different RenderText
instances.

Added helper method to be able to determine directionality of the
trailing text.

Made StringSlicer used by text_elider.cc public to be shared by RenderText.

Additional Fix:
- Changed ellipsis width check to use render text (render_Text.cc)
- Modify tests to never have a scenario where the input is less wide than the elided.

BUG=327833
TEST=ui_unittests,base_unittests
R=msw@chromium.org
TBR=jshin@chromium.org,pkasting@chromium.org

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@242828 0039d316-1c4b-4281-b951-d872f2087c98
Don't use the in-image section in chrome_elf on VS2012 or above.

As per the bug, writeable executable sections appear not to be supported on VS2012 and up (or at least they cause a warning to be emitted). Disable them temporarily on those versions until I figure out whether they are still generated as desired.

BUG=330435
TEST=NONE

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@242829 0039d316-1c4b-4281-b951-d872f2087c98
Mojo: Proper implementations of WriteData/ReadData.

These no longer use the two-phase versions, and thus write/read as much
as possible (not merely as much as possible in a single memcpy).

R=davemoore@chromium.org

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@242830 0039d316-1c4b-4281-b951-d872f2087c98
Introduce RenderProcessHostObserver::RenderProcessExited, use it in a new RenderProcessHostWatcher, and switch browser tests over to that new watcher.

BUG=170921
TEST=no change

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@242832 0039d316-1c4b-4281-b951-d872f2087c98
cc: Improve worker pool performance by using std:make_heap instead of std:priority_queue.

This reduces the complexity of building a new "ready to run" queue in
WorkerPool::SetTaskGraph() from O(N·log(N)) to O(N).

This refactor is also useful for supporting shared worker threads as it
makes it easy to reuse the compare function and maintain a heap of
ready to run task namespaces.

BUG=246546

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@242833 0039d316-1c4b-4281-b951-d872f2087c98
Add tests to make sure ChromeELF.dll imports are correct:

1. Make sure chrome_elf.dll imports nothing besides kernel32 and some
msvc libs (DEBUG builds)
2. make sure chrome_elf.dll is always the first entry in chrome.exe's
import table.

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@242834 0039d316-1c4b-4281-b951-d872f2087c98
Sets 100% width for the hidden input field in local ntp.
After Chrome M32 input fields to use shrink-to-fit for width property when using position absolute.

BUG=330584
TEST=Open a local NTP and test the context menu in the fakebox, it should be the same for the entire fakebox. Also check with Chrome Dev Tools that the hidden input field expands to fill the fakebox.

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@242836 0039d316-1c4b-4281-b951-d872f2087c98
[spell] Always prompt user when enabling online spellchecker.

When the user enables "Use a web service to help resolve spelling errors"
option on the settings page, Chrome should confirm the user choice every
time. The patch accomplishes this by passing an undefined "confirmed_pref"
to ConfirmDialog constructor. From the documentation of this dialog:

confirmed_pref: A pref used to remember whether the user has confirmed the
    dialog before. This ensures that the user is presented with the dialog
    only once. If left |undefined| or |null|, the dialog will pop up every
    time the user attempts to set |pref| to |true|.

BUG=331291

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@242837 0039d316-1c4b-4281-b951-d872f2087c98
[Android] Explicitly disable ScaleGestureDetector's "QuickScale" feature

With the latest Android SDK release, the platform ScaleGestureDetector provides
support for double-tap drag zoom.  This conflicts with the current double-tap
drag zoom implementation in ContentViewGestureHandler.  Explicitly disable this
feature until adoption of ScaleGestureDetector's QuickScale feature, preventing
issues if the Android API target is more recent than JB MR2.

BUG=331092

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@242838 0039d316-1c4b-4281-b951-d872f2087c98
Fix scaling of hiDPI plugins in software composited mode

Previously the device scale that a plugin is painted at was not being accounted for when transforming the plugin layer in software composited mode. This takes that into account.

BUG=330948

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@242839 0039d316-1c4b-4281-b951-d872f2087c98
Add a java ToolbarModel.

Exposes the java WebContents out of TabBase as that will allow the
implementors of ToolbarModelDelegate to use it.

A follow up change will remove all the ToolbarModel cruft from
TabModel (once downstream is using this class instead).

BUG=331129

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@242840 0039d316-1c4b-4281-b951-d872f2087c98
Fix Comment Typos in registry.h

TBR=cpu@chromium.org
BUG=

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@242841 0039d316-1c4b-4281-b951-d872f2087c98
Small refactoring: make the Process* routines return void.

This makes my subsequent change easier: the Process* routines will need to either carry out the task or delegate to an elevated host instance and I want those routines, not the caller, to handle the error condition.

BUG=325567

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@242842 0039d316-1c4b-4281-b951-d872f2087c98
rAc: bring Android and Desktop into better alignment re: security

1) don't allow the dialog on insecure sites just because it's not asking for CC info (other PII is security-sensitive as well)
2) manage security-based rejection in the same place (should make the override flag work on Android)

BUG=272512

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@242843 0039d316-1c4b-4281-b951-d872f2087c98
Replace the GetAssociatedRenderView call with GetAssociatedRenderFrame in task manager code.

BUG=304341
R=nasko@chromium.org

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@242844 0039d316-1c4b-4281-b951-d872f2087c98
Don't fill combo boxes with the warning color; only the border.

BUG=326017
R=estade@chromium.org, pkasting@chromium.org, sadrul@chromium.org

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@242846 0039d316-1c4b-4281-b951-d872f2087c98
Minor cleanup: Don't generate ash_resources_map, they're not used.

BUG=297672
R=ajwong@chromium.org
TBR=oshima

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@242847 0039d316-1c4b-4281-b951-d872f2087c98
[GCM] Add heartbeat manager and reconnection logic due to heartbeat failure

The heartbeat manager maintains the heartbeat timer, handles heartbeat
interval updates from the server, and automatically triggers connection resets
if the heartbeat isn't properly acknowledged in a timely manner.

Also fixes an issue in reconnection where the client socket handle doesn't deal
well with a connection reset due to passing ownership of the socket.

BUG=284553

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

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