1effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch// Copyright 2014 The Chromium Authors. All rights reserved. 2effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch// Use of this source code is governed by a BSD-style license that can be 3effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch// found in the LICENSE file. 4effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch 5effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch#ifndef CHROME_BROWSER_ANDROID_NEW_TAB_PAGE_URL_HANDLER_H_ 6effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch#define CHROME_BROWSER_ANDROID_NEW_TAB_PAGE_URL_HANDLER_H_ 7effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch 8effb81e5f8246d0db0270817048dc992db66e9fbBen Murdochclass GURL; 9effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch 10effb81e5f8246d0db0270817048dc992db66e9fbBen Murdochnamespace content { 11effb81e5f8246d0db0270817048dc992db66e9fbBen Murdochclass BrowserContext; 12effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch} 13effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch 14effb81e5f8246d0db0270817048dc992db66e9fbBen Murdochnamespace chrome { 15effb81e5f8246d0db0270817048dc992db66e9fbBen Murdochnamespace android { 16effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch 17effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch// Rewrites old-style Android NTP URLs to new-style NTP URLs: 18effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch// - chrome://newtab -> chrome-native://newtab 19effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch// - chrome://newtab#most_visited -> chrome-native://newtab 20effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch// - chrome://newtab#incognito -> chrome-native://newtab 21effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch// - chrome://newtab#bookmarks -> chrome-native://bookmarks 22effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch// - chrome://newtab#bookmarks:99 -> chrome-native://bookmarks 23effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch// - chrome://newtab#open_tabs -> chrome-native://recent-tabs 24effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch// - chrome-native://recent_tabs -> chrome-native://recent-tabs 25effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch// 26effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch// TODO(newt): Once most users have upgraded past M34, simplify this down to a 27effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch// single rule: chrome://newtab -> chrome-native://newtab 28effb81e5f8246d0db0270817048dc992db66e9fbBen Murdochbool HandleAndroidNewTabURL(GURL* url, 29effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch content::BrowserContext* browser_context); 30effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch 31effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch} // namespace android 32effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch} // namespace chrome 33effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch 34effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch#endif // CHROME_BROWSER_ANDROID_NEW_TAB_PAGE_URL_HANDLER_H_ 35