summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--chrome/browser/automation/testing_automation_provider.cc2
-rw-r--r--chrome/browser/background/background_mode_manager.cc2
-rw-r--r--chrome/browser/extensions/extension_management_api.cc2
-rw-r--r--chrome/browser/extensions/extension_omnibox_api.cc3
-rw-r--r--chrome/browser/resources/ntp4/apps_page.js17
-rw-r--r--chrome/browser/resources/shared/js/util.js16
-rw-r--r--chrome/browser/ui/browser.cc68
-rw-r--r--chrome/browser/ui/browser.h8
-rw-r--r--chrome/browser/ui/browser_browsertest.cc1
-rw-r--r--chrome/browser/ui/browser_init.cc4
-rw-r--r--chrome/browser/ui/panels/panel_app_browsertest.cc1
-rw-r--r--chrome/browser/ui/webui/ntp/app_launcher_handler.cc86
-rw-r--r--chrome/browser/ui/webui/ntp/app_launcher_handler.h9
-rw-r--r--chrome/browser/ui/webui/ntp/new_tab_ui.cc4
14 files changed, 103 insertions, 120 deletions
diff --git a/chrome/browser/automation/testing_automation_provider.cc b/chrome/browser/automation/testing_automation_provider.cc
index b403ec4..a3ee268 100644
--- a/chrome/browser/automation/testing_automation_provider.cc
+++ b/chrome/browser/automation/testing_automation_provider.cc
@@ -5642,7 +5642,7 @@ void TestingAutomationProvider::LaunchApp(
// This observer will delete itself.
new AppLaunchObserver(&old_contents->controller(), this, reply_message,
launch_container);
- Browser::OpenApplication(profile(), extension, launch_container,
+ Browser::OpenApplication(profile(), extension, launch_container, GURL(),
CURRENT_TAB);
}
diff --git a/chrome/browser/background/background_mode_manager.cc b/chrome/browser/background/background_mode_manager.cc
index 93f5347..de71250 100644
--- a/chrome/browser/background/background_mode_manager.cc
+++ b/chrome/browser/background/background_mode_manager.cc
@@ -242,7 +242,7 @@ void BackgroundModeManager::LaunchBackgroundApplication(
extension_misc::LaunchContainer launch_container =
service->extension_prefs()->GetLaunchContainer(
extension, ExtensionPrefs::LAUNCH_REGULAR);
- Browser::OpenApplication(profile, extension, launch_container,
+ Browser::OpenApplication(profile, extension, launch_container, GURL(),
NEW_FOREGROUND_TAB);
}
diff --git a/chrome/browser/extensions/extension_management_api.cc b/chrome/browser/extensions/extension_management_api.cc
index 912f726..53906fa 100644
--- a/chrome/browser/extensions/extension_management_api.cc
+++ b/chrome/browser/extensions/extension_management_api.cc
@@ -356,7 +356,7 @@ bool LaunchAppFunction::RunImpl() {
extension_misc::LaunchContainer launch_container =
service()->extension_prefs()->GetLaunchContainer(
extension, ExtensionPrefs::LAUNCH_DEFAULT);
- Browser::OpenApplication(profile(), extension, launch_container,
+ Browser::OpenApplication(profile(), extension, launch_container, GURL(),
NEW_FOREGROUND_TAB);
UMA_HISTOGRAM_ENUMERATION(extension_misc::kAppLaunchHistogram,
extension_misc::APP_LAUNCH_EXTENSION_API,
diff --git a/chrome/browser/extensions/extension_omnibox_api.cc b/chrome/browser/extensions/extension_omnibox_api.cc
index 524f65b..1590927b 100644
--- a/chrome/browser/extensions/extension_omnibox_api.cc
+++ b/chrome/browser/extensions/extension_omnibox_api.cc
@@ -291,5 +291,6 @@ void LaunchAppFromOmnibox(const AutocompleteMatch& match,
service->extension_prefs()->GetLaunchContainer(
extension, ExtensionPrefs::LAUNCH_REGULAR);
- Browser::OpenApplication(profile, extension, launch_container, disposition);
+ Browser::OpenApplication(profile, extension, launch_container, GURL(),
+ disposition);
}
diff --git a/chrome/browser/resources/ntp4/apps_page.js b/chrome/browser/resources/ntp4/apps_page.js
index dd96ad5..aff343f 100644
--- a/chrome/browser/resources/ntp4/apps_page.js
+++ b/chrome/browser/resources/ntp4/apps_page.js
@@ -238,8 +238,7 @@ cr.define('ntp4', function() {
this.appContents_.addEventListener('contextmenu',
cr.ui.contextMenuHandler);
- this.isStore_ = this.appData_.is_webstore;
- if (this.isStore_)
+ if (this.appData_.is_webstore)
this.createAppsPromoExtras_();
this.addEventListener('mousedown', this.onMousedown_, true);
@@ -435,8 +434,18 @@ cr.define('ntp4', function() {
* @private
*/
onClick_: function(e) {
+ var is_promo = this.appsPromoExtras_ &&
+ window.getComputedStyle(this.appsPromoExtras_).display != 'none';
+ var url = !this.appData_.is_webstore ? '' :
+ is_promo ? appendParam(this.appsPromoLink_.href,
+ 'utm_source',
+ 'chrome-ntp-promo') :
+ appendParam(this.appData_.url,
+ 'utm_source',
+ 'chrome-ntp-icon');
+
chrome.send('launchApp',
- [this.appId, APP_LAUNCH.NTP_APPS_MAXIMIZED,
+ [this.appId, APP_LAUNCH.NTP_APPS_MAXIMIZED, url,
e.altKey, e.ctrlKey, e.metaKey, e.shiftKey, e.button]);
// Don't allow the click to trigger a link or anything
@@ -451,7 +460,7 @@ cr.define('ntp4', function() {
onKeydown_: function(e) {
if (e.keyIdentifier == 'Enter') {
chrome.send('launchApp',
- [this.appId, APP_LAUNCH.NTP_APPS_MAXIMIZED,
+ [this.appId, APP_LAUNCH.NTP_APPS_MAXIMIZED, '',
e.altKey, e.ctrlKey, e.metaKey, e.shiftKey, 0]);
e.preventDefault();
e.stopPropagation();
diff --git a/chrome/browser/resources/shared/js/util.js b/chrome/browser/resources/shared/js/util.js
index 9552fd9..a669297 100644
--- a/chrome/browser/resources/shared/js/util.js
+++ b/chrome/browser/resources/shared/js/util.js
@@ -187,3 +187,19 @@ document.addEventListener('click', function(e) {
}
}
});
+
+/**
+ * Creates a new URL which is the old URL with a GET param of key=value.
+ * @param {string} url The base URL. There is not sanity checking on the URL so
+ * it must be passed in a proper format.
+ * @param {string} key The key of the param.
+ * @param {string} value The value of the param.
+ * @return {string}
+ */
+function appendParam(url, key, value) {
+ var param = encodeURIComponent(key) + '=' + encodeURIComponent(value);
+
+ if (url.indexOf('?') == -1)
+ return url + '?' + param;
+ return url + '&' + param;
+}
diff --git a/chrome/browser/ui/browser.cc b/chrome/browser/ui/browser.cc
index 35f6c63..49d66f9 100644
--- a/chrome/browser/ui/browser.cc
+++ b/chrome/browser/ui/browser.cc
@@ -250,6 +250,33 @@ bool HasInternalURL(const NavigationEntry* entry) {
return false;
}
+// Get the launch URL for a given extension, with optional override/fallback.
+// |override_url|, if non-empty, will be preferred over the extension's
+// launch url.
+GURL UrlForExtension(const Extension* extension, const GURL& override_url) {
+ if (!extension)
+ return override_url;
+
+ GURL url;
+ if (!override_url.is_empty()) {
+ DCHECK(extension->web_extent().MatchesURL(override_url));
+ url = override_url;
+ } else {
+ url = extension->GetFullLaunchURL();
+ }
+
+ // For extensions lacking launch urls, determine a reasonable fallback.
+ if (!url.is_valid()) {
+ url = extension->options_url();
+ if (!url.is_valid()) {
+ url = GURL(std::string(chrome::kChromeUISettingsURL) +
+ chrome::kExtensionsSubPage);
+ }
+ }
+
+ return url;
+}
+
} // namespace
////////////////////////////////////////////////////////////////////////////////
@@ -581,6 +608,7 @@ TabContents* Browser::OpenApplication(
Profile* profile,
const Extension* extension,
extension_misc::LaunchContainer container,
+ const GURL& override_url,
WindowOpenDisposition disposition) {
#if defined(USE_AURA)
// On aura we're experimenting with making all apps open in windows.
@@ -596,10 +624,11 @@ TabContents* Browser::OpenApplication(
case extension_misc::LAUNCH_WINDOW:
case extension_misc::LAUNCH_PANEL:
tab = Browser::OpenApplicationWindow(profile, extension, container,
- GURL(), NULL);
+ override_url, NULL);
break;
case extension_misc::LAUNCH_TAB: {
- tab = Browser::OpenApplicationTab(profile, extension, disposition);
+ tab = Browser::OpenApplicationTab(profile, extension, override_url,
+ disposition);
break;
}
default:
@@ -616,22 +645,13 @@ TabContents* Browser::OpenApplicationWindow(
extension_misc::LaunchContainer container,
const GURL& url_input,
Browser** app_browser) {
- GURL url;
- if (!url_input.is_empty()) {
- if (extension)
- DCHECK(extension->web_extent().MatchesURL(url_input));
- url = url_input;
- } else {
- DCHECK(extension); // Empty url and no extension. Nothing to open.
- url = extension->GetFullLaunchURL();
- }
+ DCHECK(!url_input.is_empty() || extension);
+ GURL url = UrlForExtension(extension, url_input);
std::string app_name;
- if (extension)
- app_name =
- web_app::GenerateApplicationNameFromExtensionId(extension->id());
- else
- app_name = web_app::GenerateApplicationNameFromURL(url);
+ app_name = extension ?
+ web_app::GenerateApplicationNameFromExtensionId(extension->id()) :
+ web_app::GenerateApplicationNameFromURL(url);
Type type = extension && (container == extension_misc::LAUNCH_PANEL) ?
TYPE_PANEL : TYPE_POPUP;
@@ -690,6 +710,7 @@ TabContents* Browser::OpenAppShortcutWindow(Profile* profile,
// static
TabContents* Browser::OpenApplicationTab(Profile* profile,
const Extension* extension,
+ const GURL& override_url,
WindowOpenDisposition disposition) {
Browser* browser = BrowserList::FindTabbedBrowser(profile, false);
TabContents* contents = NULL;
@@ -723,15 +744,7 @@ TabContents* Browser::OpenApplicationTab(Profile* profile,
if (launch_type == ExtensionPrefs::LAUNCH_PINNED)
add_type |= TabStripModel::ADD_PINNED;
- // For extensions lacking launch urls, determine a reasonable fallback.
- GURL extension_url = extension->GetFullLaunchURL();
- if (!extension_url.is_valid()) {
- extension_url = extension->options_url();
- if (!extension_url.is_valid())
- extension_url = GURL(std::string(chrome::kChromeUISettingsURL) +
- chrome::kExtensionsSubPage);
- }
-
+ GURL extension_url = UrlForExtension(extension, override_url);
// TODO(erikkay): START_PAGE doesn't seem like the right transition in all
// cases.
browser::NavigateParams params(browser, extension_url,
@@ -744,7 +757,7 @@ TabContents* Browser::OpenApplicationTab(Profile* profile,
TabStripModel* model = browser->tabstrip_model();
int tab_index = model->GetWrapperIndex(existing_tab);
- existing_tab->OpenURL(extension->GetFullLaunchURL(), existing_tab->GetURL(),
+ existing_tab->OpenURL(extension_url, existing_tab->GetURL(),
disposition, content::PAGE_TRANSITION_LINK);
if (params.tabstrip_add_types & TabStripModel::ADD_PINNED) {
model->SetTabPinned(tab_index, true);
@@ -764,8 +777,9 @@ TabContents* Browser::OpenApplicationTab(Profile* profile,
// Today we open the tab, but stay in full screen mode. Should we leave
// full screen mode in this case?
if (launch_type == ExtensionPrefs::LAUNCH_FULLSCREEN &&
- !browser->window()->IsFullscreen())
+ !browser->window()->IsFullscreen()) {
browser->ToggleFullscreenMode(false);
+ }
return contents;
}
diff --git a/chrome/browser/ui/browser.h b/chrome/browser/ui/browser.h
index 6479821..3b32062 100644
--- a/chrome/browser/ui/browser.h
+++ b/chrome/browser/ui/browser.h
@@ -263,11 +263,13 @@ class Browser : public TabHandlerDelegate,
static void OpenURLOffTheRecord(Profile* profile, const GURL& url);
// Open |extension| in |container|, using |disposition| if container type is
- // TAB. Returns the TabContents* that was created or NULL.
+ // TAB. Returns the TabContents* that was created or NULL. If non-empty,
+ // |override_url| is used in place of the app launch url.
static TabContents* OpenApplication(
Profile* profile,
const Extension* extension,
extension_misc::LaunchContainer container,
+ const GURL& override_url,
WindowOpenDisposition disposition);
// Opens a new application window for the specified url. If |as_panel|
@@ -295,9 +297,11 @@ class Browser : public TabHandlerDelegate,
bool update_shortcut);
// Open an application for |extension| using |disposition|. Returns NULL if
- // there are no appropriate existing browser windows for |profile|.
+ // there are no appropriate existing browser windows for |profile|. If
+ // non-empty, |override_url| is used in place of the app launch url.
static TabContents* OpenApplicationTab(Profile* profile,
const Extension* extension,
+ const GURL& override_url,
WindowOpenDisposition disposition);
// Opens a new window and opens the bookmark manager.
diff --git a/chrome/browser/ui/browser_browsertest.cc b/chrome/browser/ui/browser_browsertest.cc
index 44e1c50..0619f17 100644
--- a/chrome/browser/ui/browser_browsertest.cc
+++ b/chrome/browser/ui/browser_browsertest.cc
@@ -1063,6 +1063,7 @@ IN_PROC_BROWSER_TEST_F(BrowserTest, OpenAppWindowLikeNtp) {
Browser::OpenApplication(browser()->profile(),
extension_app,
extension_misc::LAUNCH_WINDOW,
+ GURL(),
NEW_WINDOW);
ASSERT_TRUE(app_window);
diff --git a/chrome/browser/ui/browser_init.cc b/chrome/browser/ui/browser_init.cc
index 1760d46..a20c607 100644
--- a/chrome/browser/ui/browser_init.cc
+++ b/chrome/browser/ui/browser_init.cc
@@ -813,7 +813,7 @@ bool BrowserInit::LaunchWithProfile::OpenApplicationTab(Profile* profile) {
RecordCmdLineAppHistogram();
- TabContents* app_tab = Browser::OpenApplicationTab(profile, extension,
+ TabContents* app_tab = Browser::OpenApplicationTab(profile, extension, GURL(),
NEW_FOREGROUND_TAB);
return (app_tab != NULL);
}
@@ -842,7 +842,7 @@ bool BrowserInit::LaunchWithProfile::OpenApplicationWindow(Profile* profile) {
RecordCmdLineAppHistogram();
TabContents* tab_in_app_window = Browser::OpenApplication(
- profile, extension, launch_container, NEW_WINDOW);
+ profile, extension, launch_container, GURL(), NEW_WINDOW);
return (tab_in_app_window != NULL);
}
diff --git a/chrome/browser/ui/panels/panel_app_browsertest.cc b/chrome/browser/ui/panels/panel_app_browsertest.cc
index 0f6fdde..84ace96 100644
--- a/chrome/browser/ui/panels/panel_app_browsertest.cc
+++ b/chrome/browser/ui/panels/panel_app_browsertest.cc
@@ -53,6 +53,7 @@ class PanelAppBrowserTest : public ExtensionBrowserTest {
extension,
// Overriding manifest to open in a panel.
extension_misc::LAUNCH_PANEL,
+ GURL(),
NEW_WINDOW);
// Now we have a new browser instance.
diff --git a/chrome/browser/ui/webui/ntp/app_launcher_handler.cc b/chrome/browser/ui/webui/ntp/app_launcher_handler.cc
index f262926..e79381b 100644
--- a/chrome/browser/ui/webui/ntp/app_launcher_handler.cc
+++ b/chrome/browser/ui/webui/ntp/app_launcher_handler.cc
@@ -53,12 +53,6 @@
namespace {
-// The URL prefixes used by the NTP to signal when the web store or an app
-// has launched so we can record the proper histogram.
-const char* kPingLaunchAppByID = "record-app-launch-by-id";
-const char* kPingLaunchWebStore = "record-webstore-launch";
-const char* kPingLaunchAppByURL = "record-app-launch-by-url";
-
const UnescapeRule::Type kUnescapeRules =
UnescapeRule::NORMAL | UnescapeRule::URL_SPECIAL_CHARS;
@@ -76,7 +70,6 @@ extension_misc::AppLaunchBucket ParseLaunchSource(
AppLauncherHandler::AppLauncherHandler(ExtensionService* extension_service)
: extension_service_(extension_service),
- promo_active_(false),
ignore_changes_(false),
attempted_bookmark_app_install_(false),
has_loaded_apps_(false) {
@@ -190,49 +183,6 @@ void AppLauncherHandler::CreateAppInfo(const Extension* extension,
value->SetInteger("page_index", page_index);
}
-// TODO(estade): remove this. We record app launches via js calls rather than
-// pings for ntp4.
-// static
-bool AppLauncherHandler::HandlePing(Profile* profile, const std::string& path) {
- std::vector<std::string> params;
- base::SplitString(path, '+', &params);
-
- // Check if the user launched an app from the most visited or recently
- // closed sections.
- if (kPingLaunchAppByURL == params.at(0)) {
- CHECK(params.size() == 3);
- RecordAppLaunchByURL(
- profile, params.at(1), ParseLaunchSource(params.at(2)));
- return true;
- }
-
- bool is_web_store_ping = kPingLaunchWebStore == params.at(0);
- bool is_app_launch_ping = kPingLaunchAppByID == params.at(0);
-
- if (!is_web_store_ping && !is_app_launch_ping)
- return false;
-
- CHECK(params.size() >= 2);
-
- bool is_promo_active = params.at(1) == "true";
-
- // At this point, the user must have used the app launcher, so we hide the
- // promo if its still displayed.
- if (is_promo_active) {
- DCHECK(profile->GetExtensionService());
- profile->GetExtensionService()->apps_promo()->ExpireDefaultApps();
- }
-
- if (is_web_store_ping) {
- RecordWebStoreLaunch(is_promo_active);
- } else {
- CHECK(params.size() == 3);
- RecordAppLaunchByID(is_promo_active, ParseLaunchSource(params.at(2)));
- }
-
- return true;
-}
-
WebUIMessageHandler* AppLauncherHandler::Attach(WebUI* web_ui) {
registrar_.Add(this, chrome::NOTIFICATION_APP_INSTALLED_TO_NTP,
content::Source<TabContents>(web_ui->tab_contents()));
@@ -514,10 +464,8 @@ void AppLauncherHandler::HandleGetApps(const ListValue* args) {
&apps_promo_just_expired)) {
dictionary.SetBoolean("showPromo", true);
FillPromoDictionary(&dictionary);
- promo_active_ = true;
} else {
dictionary.SetBoolean("showPromo", false);
- promo_active_ = false;
}
// If the default apps have just expired (user viewed them too many times with
@@ -562,6 +510,7 @@ void AppLauncherHandler::HandleGetApps(const ListValue* args) {
void AppLauncherHandler::HandleLaunchApp(const ListValue* args) {
std::string extension_id;
double source = -1.0;
+ std::string url;
bool alt_key = false;
bool ctrl_key = false;
bool meta_key = false;
@@ -570,12 +519,14 @@ void AppLauncherHandler::HandleLaunchApp(const ListValue* args) {
CHECK(args->GetString(0, &extension_id));
CHECK(args->GetDouble(1, &source));
- if (args->GetSize() > 2) {
- CHECK(args->GetBoolean(2, &alt_key));
- CHECK(args->GetBoolean(3, &ctrl_key));
- CHECK(args->GetBoolean(4, &meta_key));
- CHECK(args->GetBoolean(5, &shift_key));
- CHECK(args->GetDouble(6, &button));
+ if (args->GetSize() > 2)
+ CHECK(args->GetString(2, &url));
+ if (args->GetSize() > 3) {
+ CHECK(args->GetBoolean(3, &alt_key));
+ CHECK(args->GetBoolean(4, &ctrl_key));
+ CHECK(args->GetBoolean(5, &meta_key));
+ CHECK(args->GetBoolean(6, &shift_key));
+ CHECK(args->GetDouble(7, &button));
}
extension_misc::AppLaunchBucket launch_bucket =
@@ -603,20 +554,21 @@ void AppLauncherHandler::HandleLaunchApp(const ListValue* args) {
ctrl_key, meta_key, shift_key);
if (extension_id != extension_misc::kWebStoreAppId) {
- RecordAppLaunchByID(promo_active_, launch_bucket);
+ RecordAppLaunchByID(launch_bucket);
extension_service_->apps_promo()->ExpireDefaultApps();
} else if (NewTabUI::NTP4Enabled()) {
- RecordWebStoreLaunch(promo_active_);
+ RecordWebStoreLaunch(url.find("chrome-ntp-promo") != std::string::npos);
}
if (disposition == NEW_FOREGROUND_TAB || disposition == NEW_BACKGROUND_TAB) {
// TODO(jamescook): Proper support for background tabs.
Browser::OpenApplication(
- profile, extension, extension_misc::LAUNCH_TAB, disposition);
+ profile, extension, extension_misc::LAUNCH_TAB, GURL(url), disposition);
} else if (disposition == NEW_WINDOW) {
// Force a new window open.
Browser::OpenApplication(
- profile, extension, extension_misc::LAUNCH_WINDOW, disposition);
+ profile, extension, extension_misc::LAUNCH_WINDOW, GURL(url),
+ disposition);
} else {
// Look at preference to find the right launch container. If no preference
// is set, launch as a regular tab.
@@ -632,7 +584,7 @@ void AppLauncherHandler::HandleLaunchApp(const ListValue* args) {
old_contents = browser->GetSelectedTabContents();
TabContents* new_contents = Browser::OpenApplication(
- profile, extension, launch_container,
+ profile, extension, launch_container, GURL(url),
old_contents ? CURRENT_TAB : NEW_FOREGROUND_TAB);
// This will also destroy the handler, so do not perform any actions after.
@@ -910,17 +862,11 @@ void AppLauncherHandler::RecordWebStoreLaunch(bool promo_active) {
// static
void AppLauncherHandler::RecordAppLaunchByID(
- bool promo_active, extension_misc::AppLaunchBucket bucket) {
+ extension_misc::AppLaunchBucket bucket) {
CHECK(bucket != extension_misc::APP_LAUNCH_BUCKET_INVALID);
UMA_HISTOGRAM_ENUMERATION(extension_misc::kAppLaunchHistogram, bucket,
extension_misc::APP_LAUNCH_BUCKET_BOUNDARY);
-
- if (!promo_active) return;
-
- UMA_HISTOGRAM_ENUMERATION(extension_misc::kAppsPromoHistogram,
- extension_misc::PROMO_LAUNCH_APP,
- extension_misc::PROMO_BUCKET_BOUNDARY);
}
// static
diff --git a/chrome/browser/ui/webui/ntp/app_launcher_handler.h b/chrome/browser/ui/webui/ntp/app_launcher_handler.h
index da8ac07..82b55fb 100644
--- a/chrome/browser/ui/webui/ntp/app_launcher_handler.h
+++ b/chrome/browser/ui/webui/ntp/app_launcher_handler.h
@@ -45,9 +45,6 @@ class AppLauncherHandler : public WebUIMessageHandler,
ExtensionService* service,
base::DictionaryValue* value);
- // Callback for pings related to launching apps on the NTP.
- static bool HandlePing(Profile* profile, const std::string& path);
-
// WebUIMessageHandler implementation.
virtual WebUIMessageHandler* Attach(WebUI* web_ui) OVERRIDE;
virtual void RegisterMessages() OVERRIDE;
@@ -126,8 +123,7 @@ class AppLauncherHandler : public WebUIMessageHandler,
// Records an app launch in the corresponding |bucket| of the app launch
// histogram. |promo_active| specifies if the web store promotion was active.
- static void RecordAppLaunchByID(bool promo_active,
- extension_misc::AppLaunchBucket bucket);
+ static void RecordAppLaunchByID(extension_misc::AppLaunchBucket bucket);
// Records an app launch in the corresponding |bucket| of the app launch
// histogram if the |escaped_url| corresponds to an installed app.
@@ -184,9 +180,6 @@ class AppLauncherHandler : public WebUIMessageHandler,
// The id of the extension we are prompting the user about.
std::string extension_id_prompting_;
- // Whether the promo is currently being shown.
- bool promo_active_;
-
// When true, we ignore changes to the underlying data rather than immediately
// refreshing. This is useful when making many batch updates to avoid flicker.
bool ignore_changes_;
diff --git a/chrome/browser/ui/webui/ntp/new_tab_ui.cc b/chrome/browser/ui/webui/ntp/new_tab_ui.cc
index f8639e9..b3a8dc8 100644
--- a/chrome/browser/ui/webui/ntp/new_tab_ui.cc
+++ b/chrome/browser/ui/webui/ntp/new_tab_ui.cc
@@ -295,9 +295,7 @@ void NewTabUI::NewTabHTMLSource::StartDataRequest(const std::string& path,
int request_id) {
DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
- if (AppLauncherHandler::HandlePing(profile_, path)) {
- return;
- } else if (!path.empty() && path[0] != '#') {
+ if (!path.empty() && path[0] != '#') {
// A path under new-tab was requested; it's likely a bad relative
// URL from the new tab page, but in any case it's an error.
NOTREACHED() << path << " should not have been requested on the NTP";