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

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

git-svn-id: https://src.chromium.org/svn/trunk/src/base@286356 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
Revert of MacViews: Get NativeTheme colors from the system preferences (https://codereview.chromium.org/308673006/)

Reason for revert:
Raises an exception on Snow Leopard:

chrome_browser_application_mac.mm(147)] Someone is trying to raise an exception!  NSInvalidArgumentException reason *** -numberOfComponents not defined for the NSColor NSNamedColorSpace System windowBackgroundColor; need to first convert colorspace.

Original issue's description:
> 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

NOTREECHECKS=true
NOTRY=true
TBR=tapted@chromium.org

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

git-svn-id: https://src.chromium.org/svn/trunk/src/base@286369 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
Add LINKER_INITIALIZER marker to MemoryMappedFile::Region::kWholeFile

This is a follow-up to crrev.com/394313002. const initializers which
rely on the linker zero-initialization should use the LINKER_INITIALIZER
ctor for documentation purposes.
More discussion about this in the linked CL.

BUG=394502

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

git-svn-id: https://src.chromium.org/svn/trunk/src/base@286423 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
Relanding after a fix: Attempt to load system fonts using Custom Font interface of directwrite
instead of system font collection interface.
The theory is that system font collection may sometime appear to hang or just not load fonts on systems with
large number of fonts (in order of 1000+). With custom font collection we want to take control of font loading part and explore ways to improve it further.

This particular approach is loading all fonts inside renderer, we can potentially use this same code load fonts from browser side as and when required.


BUG=394164
R=cpu@chromium.org, jam@chromium.org, scottmg@chromium.org

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

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

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