RenderTextHarfBuzz: Allow mid-glyph cursors in multi-grapheme clusters

Use the Unicode grapheme boundary algorithm via ICU BreakIterator to count graphemes in clusters

BUG=383265
TBR=jshin
NOTRY=true

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

git-svn-id: https://src.chromium.org/svn/trunk/src/base@286569 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
Add unsigned 64-bit integer support to BigEndianReader and BigEndianWriter.

BUG=None

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

git-svn-id: https://src.chromium.org/svn/trunk/src/base@286636 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
MacViews: Get NativeTheme colors from the system preferences

Mac has some basic colour customisation available in Preferences ->
General (Preferences -> Appearance in earlier OS versions). "Blue" or
"Graphite" changes menu/controls appearance. The colour for highlighted
text can be anything. Power users can also modify
~/Library/Colors/System.clr.

This change adds the scaffolding to look up these colors from the system
in NativeThemeMac. Not all colours are mapped yet.

Screenshot at http://crbug.com/379086#c2

BUG=379086

Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=286356

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

git-svn-id: https://src.chromium.org/svn/trunk/src/base@286651 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
Hide some SyzyASan specific code behind an '#if defined(COMPILER_MSVC)'.

This is necessary for the code in base/debug/... because it gets included by base_nacl which is compiled with g++ which doesn't support SyzyASan.

R=thakis@chromium.org
BUG=

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

git-svn-id: https://src.chromium.org/svn/trunk/src/base@286699 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
Draw the start of input latency using its original/ui timestamp

Currently we draw the start of input event's latencyinfo using the
timestamp when we issue the async trace event when the input event
is passing through RWH. This CL changes that we now draw the start
of input event's latencyinfo using the input event's orignial/ui
component's timestamp so visually we can better see when the input
event was created.

BUG=396236
TEST=do scroll latency tracing on pixel/android, see that now latency
     for TouchMove and GestureScrollUpdate are drawn at the same starting
     time.

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

git-svn-id: https://src.chromium.org/svn/trunk/src/base@286705 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
[Android] Pass the right listener to DatePickerDialog

BUG=395768

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

git-svn-id: https://src.chromium.org/svn/trunk/src/base@286791 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
Add builders for tracing event's structural arguments

The new classes allow building JSON-like structural arguments. Current implementation uses base::Value as backing store but that can be replaced in the future with something more efficient without changing client code.

All clients of cc/debug/traced_value.h should eventually switch to use the new builders.

BUG=361045

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

git-svn-id: https://src.chromium.org/svn/trunk/src/base@286849 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
Revert of Add builders for tracing event's structural arguments (https://codereview.chromium.org/380763002/)

Reason for revert:
linux ASAN errors.

http://build.chromium.org/p/chromium.memory/builders/Linux%20ASan%20LSan%20Tests%20%281%29/builds/4493/steps/base_unittests/logs/stdio

Original issue's description:
> Add builders for tracing event's structural arguments
> 
> The new classes allow building JSON-like structural arguments. Current implementation uses base::Value as backing store but that can be replaced in the future with something more efficient without changing client code.
> 
> All clients of cc/debug/traced_value.h should eventually switch to use the new builders.
> 
> BUG=361045
> 
> Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=286849

TBR=alph, caseq, dsinclair, nduca, willchan, yurys
NOTREECHECKS=true
NOTRY=true
BUG=361045

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

git-svn-id: https://src.chromium.org/svn/trunk/src/base@286862 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
mac: Revert "Don't draw a window title on browser windows."

The reverted CL: https://codereview.chromium.org/329793003/.

The CL was introduced because the tab's title was being drawn on the browser
window in Yosemite Beta 1. The API used to fix this problem was [NSWindow
setTitleVisibility:].

The problem no longer exists in Yosemite Beta 4. The API used to fix the
problem introduced other problems. http://crbug.com/392544.

BUG=392544, 380229
TEST=See reproduction steps in both bugs.
TBR=mark

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

git-svn-id: https://src.chromium.org/svn/trunk/src/base@286916 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
Disable certain malloc-library tests for OSX 10.9 32-bit.

Chromium's code to enable malloc corruption detection, out-of-memory
termination, and UncheckedMalloc/Calloc under older versions of the OSX malloc
library stopped working under OSX 10.9 (Mavericks).  The 64-bit malloc library
handles corruption detection the way Chromium prefers by default, allowing
everything to work correctly.  Short-circuit the tests which cannot be fixed for
the intersection of 32-bit and OSX >= 10.9.

BUG=383082

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

git-svn-id: https://src.chromium.org/svn/trunk/src/base@286917 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
base::PEIMage: Handle the case of relocations not ending with an empty record.

Make sure that relocations are contained by the relocation directory.

BUG=109259
R=cpu@chromium.org

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

git-svn-id: https://src.chromium.org/svn/trunk/src/base@286925 4ff67af0-8c30-449e-8e8b-ad334ec8d88c