Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(71)

Side by Side Diff: chrome/browser/extensions/api/tabs/tabs.cc

Issue 10689071: Deprecate --aura-panels (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Rebase Created 8 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "chrome/browser/extensions/api/tabs/tabs.h" 5 #include "chrome/browser/extensions/api/tabs/tabs.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 #include <limits> 8 #include <limits>
9 #include <vector> 9 #include <vector>
10 10
(...skipping 536 matching lines...) Expand 10 before | Expand all | Expand 10 after
547 std::string type_str; 547 std::string type_str;
548 if (args->HasKey(keys::kWindowTypeKey)) { 548 if (args->HasKey(keys::kWindowTypeKey)) {
549 EXTENSION_FUNCTION_VALIDATE(args->GetString(keys::kWindowTypeKey, 549 EXTENSION_FUNCTION_VALIDATE(args->GetString(keys::kWindowTypeKey,
550 &type_str)); 550 &type_str));
551 if (type_str == keys::kWindowTypeValuePopup) { 551 if (type_str == keys::kWindowTypeValuePopup) {
552 window_type = Browser::TYPE_POPUP; 552 window_type = Browser::TYPE_POPUP;
553 extension_id = GetExtension()->id(); 553 extension_id = GetExtension()->id();
554 } else if (type_str == keys::kWindowTypeValuePanel) { 554 } else if (type_str == keys::kWindowTypeValuePanel) {
555 extension_id = GetExtension()->id(); 555 extension_id = GetExtension()->id();
556 bool use_panels = false; 556 bool use_panels = false;
557 #if !defined(OS_ANDROID) 557 #if !defined(OS_ANDROID) && !defined(USE_ASH)
558 use_panels = PanelManager::ShouldUsePanels(extension_id); 558 use_panels = PanelManager::ShouldUsePanels(extension_id);
559 #endif 559 #endif
560 #if defined(USE_ASH)
561 if (CommandLine::ForCurrentProcess()->HasSwitch(
562 ash::switches::kAuraPanelManager))
563 use_panels = true;
564 #endif
565 if (use_panels) 560 if (use_panels)
566 window_type = Browser::TYPE_PANEL; 561 window_type = Browser::TYPE_PANEL;
567 else 562 else
568 window_type = Browser::TYPE_POPUP; 563 window_type = Browser::TYPE_POPUP;
569 } else if (type_str != keys::kWindowTypeValueNormal) { 564 } else if (type_str != keys::kWindowTypeValueNormal) {
570 error_ = keys::kInvalidWindowTypeError; 565 error_ = keys::kInvalidWindowTypeError;
571 return false; 566 return false;
572 } 567 }
573 } 568 }
574 } 569 }
575 570
576 if (window_type == Browser::TYPE_PANEL) { 571 if (window_type == Browser::TYPE_PANEL) {
577 std::string title = 572 std::string title =
578 web_app::GenerateApplicationNameFromExtensionId(extension_id); 573 web_app::GenerateApplicationNameFromExtensionId(extension_id);
579 #if defined(USE_ASH) 574 #if !defined(USE_ASH)
580 // Aura Panels create a new PanelViewAura.
581 if (CommandLine::ForCurrentProcess()->HasSwitch(
582 ash::switches::kAuraPanelManager)) {
583 // Note: Panels ignore all but the first url provided.
584 PanelViewAura* panel_view = new PanelViewAura(title);
585 panel_view->Init(window_profile, urls[0], panel_bounds);
586 result_.reset(panel_view->extension_window_controller()->
587 CreateWindowValueWithTabs());
588 return true;
589 }
590 #else
591 if (CommandLine::ForCurrentProcess()->HasSwitch( 575 if (CommandLine::ForCurrentProcess()->HasSwitch(
592 switches::kBrowserlessPanels)) { 576 switches::kBrowserlessPanels)) {
593 // Note: Panels ignore all but the first url provided. 577 // Note: Panels ignore all but the first url provided.
594 Panel* panel = PanelManager::GetInstance()->CreatePanel( 578 Panel* panel = PanelManager::GetInstance()->CreatePanel(
595 title, window_profile, urls[0], panel_bounds.size()); 579 title, window_profile, urls[0], panel_bounds.size());
596 580
597 // Unlike other window types, Panels do not take focus by default. 581 // Unlike other window types, Panels do not take focus by default.
598 if (!saw_focus_key || !focused) 582 if (!saw_focus_key || !focused)
599 panel->ShowInactive(); 583 panel->ShowInactive();
600 else 584 else
(...skipping 1225 matching lines...) Expand 10 before | Expand all | Expand 10 after
1826 // called for every API call the extension made. 1810 // called for every API call the extension made.
1827 GotLanguage(language); 1811 GotLanguage(language);
1828 } 1812 }
1829 1813
1830 void DetectTabLanguageFunction::GotLanguage(const std::string& language) { 1814 void DetectTabLanguageFunction::GotLanguage(const std::string& language) {
1831 result_.reset(Value::CreateStringValue(language.c_str())); 1815 result_.reset(Value::CreateStringValue(language.c_str()));
1832 SendResponse(true); 1816 SendResponse(true);
1833 1817
1834 Release(); // Balanced in Run() 1818 Release(); // Balanced in Run()
1835 } 1819 }
OLDNEW
« no previous file with comments | « chrome/browser/chromeos/login/login_utils.cc ('k') | chrome/browser/extensions/window_open_apitest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698