Chromium Code Reviews| Index: chrome/browser/banners/app_banner_manager_emulation.cc |
| diff --git a/chrome/browser/banners/app_banner_manager_emulation.cc b/chrome/browser/banners/app_banner_manager_emulation.cc |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..0a427490965d010c7c4d95ae4bf92fa36d1fec53 |
| --- /dev/null |
| +++ b/chrome/browser/banners/app_banner_manager_emulation.cc |
| @@ -0,0 +1,44 @@ |
| +// Copyright 2016 The Chromium Authors. All rights reserved. |
| +// Use of this source code is governed by a BSD-style license that can be |
| +// found in the LICENSE file. |
| + |
| +#include "chrome/browser/banners/app_banner_manager_emulation.h" |
| + |
| +#include "base/command_line.h" |
| +#include "build/build_config.h" |
| +#include "chrome/browser/banners/app_banner_data_fetcher_desktop.h" |
| +#include "ui/display/screen.h" |
| + |
| +namespace { |
| + |
| +// We need to provide web developers with the guidance on the minimum icon |
| +// size they should list in the manifest. Since the size depends on the |
| +// device, we pick the baseline being a Nexus 5X-alike device. |
| +// We make it clear in the 'add to home screen' emulation UI that the |
|
dominickn
2016/05/06 18:29:47
Nit: It would be nice if it was also stated in the
pfeldman
2016/05/06 18:40:01
We'll get this messaging aligned with Jake.
|
| +// size does not correspond to the currently emulated device, but rather is |
| +// a generic baseline. |
| +int kMinimumIconSize = 192; |
|
dominickn
2016/05/06 18:29:47
I think this should be 144px - that has been the a
pfeldman
2016/05/06 18:40:01
Done.
|
| + |
| +} // anonymous namespace |
| + |
| +DEFINE_WEB_CONTENTS_USER_DATA_KEY(banners::AppBannerManagerEmulation); |
| + |
| +namespace banners { |
| + |
| +AppBannerDataFetcher* AppBannerManagerEmulation::CreateAppBannerDataFetcher( |
| + base::WeakPtr<AppBannerDataFetcher::Delegate> weak_delegate, |
| + bool is_debug_mode) { |
| + |
|
dominickn
2016/05/06 18:29:46
Nit: add a comment along the lines of "Divide by t
pfeldman
2016/05/06 18:40:01
Done.
|
| + int size = kMinimumIconSize / display::Screen::GetScreen()-> |
| + GetPrimaryDisplay().device_scale_factor(); |
| + |
| + return new AppBannerDataFetcherDesktop(web_contents(), weak_delegate, |
| + size, size, true); |
|
dominickn
2016/05/06 18:29:46
Nit: pass through is_debug_mode for consistency.
pfeldman
2016/05/06 18:40:01
Done.
|
| +} |
| + |
| +AppBannerManagerEmulation::AppBannerManagerEmulation( |
| + content::WebContents* web_contents) |
| + : AppBannerManager(web_contents) { |
| +} |
| + |
| +} // namespace banners |