Fix Top Chrome Layout with Custom Theme Installed.

With a custom theme installed, the layout for top chrome was incorrect while in material mode.

PlatformStyle::CreateLabelButtonBorder sets insets on borders for material modes, while LabelButtonAssetBorder applies them for normal. However ToolbarButton and WrenchToolbarButton were only adjusting for these when dealing with a system theme.

Furthermore applying a custom theme was caching the current images. When switching the mode between normal and material, the assets were not updating. Custom theme caching has been updated to create a pack for the current MaterialDesignController::Mode. If modes are switched the custom theme will be re-applied but with the correct assets.

TEST=manual testing on device, ExtensionServiceTest
BUG=511329

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

Cr-Commit-Position: refs/heads/master@{#350560}
3 files changed