diff options
author | aa@chromium.org <aa@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-04-21 00:54:10 +0000 |
---|---|---|
committer | aa@chromium.org <aa@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-04-21 00:54:10 +0000 |
commit | 67f816514744e36bbb8f0328a870325d33519d77 (patch) | |
tree | 692ea98173c202d580416c193338aaea867bae50 /chrome | |
parent | a0c3e97d31ec8cad60f4ae355c36032a58cb8f64 (diff) | |
download | chromium_src-67f816514744e36bbb8f0328a870325d33519d77.zip chromium_src-67f816514744e36bbb8f0328a870325d33519d77.tar.gz chromium_src-67f816514744e36bbb8f0328a870325d33519d77.tar.bz2 |
Put apps in app tab when launched from NTP or launcher.
Also add some space between apps.
Review URL: http://codereview.chromium.org/1744001
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@45133 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome')
-rw-r--r-- | chrome/browser/dom_ui/app_launcher_handler.cc | 16 | ||||
-rw-r--r-- | chrome/browser/resources/new_new_tab.css | 2 | ||||
-rw-r--r-- | chrome/browser/resources/new_new_tab.js | 3 |
3 files changed, 15 insertions, 6 deletions
diff --git a/chrome/browser/dom_ui/app_launcher_handler.cc b/chrome/browser/dom_ui/app_launcher_handler.cc index 246371a..cdf0549 100644 --- a/chrome/browser/dom_ui/app_launcher_handler.cc +++ b/chrome/browser/dom_ui/app_launcher_handler.cc @@ -8,6 +8,7 @@ #include "base/base64.h" #include "base/utf_string_conversions.h" #include "base/values.h" +#include "chrome/browser/browser.h" #include "chrome/browser/extensions/extensions_service.h" #include "chrome/browser/tab_contents/tab_contents.h" #include "chrome/common/notification_service.h" @@ -108,14 +109,19 @@ void AppLauncherHandler::HandleLaunchApp(const Value* value) { return; } - std::string url; + std::string extension_id; const ListValue* list = static_cast<const ListValue*>(value); - if (list->GetSize() == 0 || !list->GetString(0, &url)) { + if (list->GetSize() == 0 || !list->GetString(0, &extension_id)) { NOTREACHED(); return; } - TabContents* tab_contents = dom_ui_->tab_contents(); - tab_contents->OpenURL(GURL(url), GURL(), NEW_FOREGROUND_TAB, - PageTransition::LINK); + // The extension should be a valid app because we keep the NTP up to date + // with changes by observing EXTENSION_LOADED and EXTENSION_UNLOADED. + Extension* extension = extensions_service_->GetExtensionById( + extension_id, false); // Don't include disabled. + DCHECK(extension); + DCHECK(extension->GetFullLaunchURL().is_valid()); + + Browser::OpenApplicationTab(extensions_service_->profile(), extension); } diff --git a/chrome/browser/resources/new_new_tab.css b/chrome/browser/resources/new_new_tab.css index aeb2183..451f03e 100644 --- a/chrome/browser/resources/new_new_tab.css +++ b/chrome/browser/resources/new_new_tab.css @@ -777,6 +777,8 @@ html[dir=rtl] #option-menu > [command=hide]:before { width: 115px; /* 920 / 8 */ -webkit-box-sizing: border-box; text-align: center; + + margin-right:5px; } .section + :not(.hidden) { diff --git a/chrome/browser/resources/new_new_tab.js b/chrome/browser/resources/new_new_tab.js index a2edc39..bf2b1f1 100644 --- a/chrome/browser/resources/new_new_tab.js +++ b/chrome/browser/resources/new_new_tab.js @@ -89,7 +89,7 @@ var apps = { * @this {!HTMLAnchorElement} */ handleClick_: function() { - chrome.send('launchApp', [this.href]); + chrome.send('launchApp', [this.id]); return false; }, @@ -97,6 +97,7 @@ var apps = { var a = document.createElement('a'); a.textContent = app['name']; a.href = app['launch_url']; + a.id = app['id']; a.onclick = apps.handleClick_; a.style.backgroundImage = url(app['icon']); return a; |