| OLD | NEW |
| 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_api.h" | 5 #include "chrome/browser/extensions/api/tabs/tabs_api.h" |
| 6 | 6 |
| 7 #include <algorithm> | 7 #include <algorithm> |
| 8 #include <limits> | 8 #include <limits> |
| 9 #include <vector> | 9 #include <vector> |
| 10 | 10 |
| (...skipping 499 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 510 window_type = Browser::TYPE_POPUP; | 510 window_type = Browser::TYPE_POPUP; |
| 511 extension_id = extension()->id(); | 511 extension_id = extension()->id(); |
| 512 break; | 512 break; |
| 513 case windows::CREATE_TYPE_PANEL: | 513 case windows::CREATE_TYPE_PANEL: |
| 514 case windows::CREATE_TYPE_DETACHED_PANEL: { | 514 case windows::CREATE_TYPE_DETACHED_PANEL: { |
| 515 extension_id = extension()->id(); | 515 extension_id = extension()->id(); |
| 516 bool use_panels = PanelManager::ShouldUsePanels(extension_id); | 516 bool use_panels = PanelManager::ShouldUsePanels(extension_id); |
| 517 if (use_panels) { | 517 if (use_panels) { |
| 518 create_panel = true; | 518 create_panel = true; |
| 519 // Non-ash supports both docked and detached panel types. | 519 // Non-ash supports both docked and detached panel types. |
| 520 if (chrome::GetActiveDesktop() != chrome::HOST_DESKTOP_TYPE_ASH && | 520 if (chrome::GetActiveDesktop() != ui::HOST_DESKTOP_TYPE_ASH && |
| 521 create_data->type == windows::CREATE_TYPE_DETACHED_PANEL) { | 521 create_data->type == windows::CREATE_TYPE_DETACHED_PANEL) { |
| 522 panel_create_mode = PanelManager::CREATE_AS_DETACHED; | 522 panel_create_mode = PanelManager::CREATE_AS_DETACHED; |
| 523 } | 523 } |
| 524 } else { | 524 } else { |
| 525 window_type = Browser::TYPE_POPUP; | 525 window_type = Browser::TYPE_POPUP; |
| 526 } | 526 } |
| 527 break; | 527 break; |
| 528 } | 528 } |
| 529 case windows::CREATE_TYPE_NONE: | 529 case windows::CREATE_TYPE_NONE: |
| 530 case windows::CREATE_TYPE_NORMAL: | 530 case windows::CREATE_TYPE_NORMAL: |
| (...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 575 focused = *create_data->focused; | 575 focused = *create_data->focused; |
| 576 saw_focus_key = true; | 576 saw_focus_key = true; |
| 577 } | 577 } |
| 578 } | 578 } |
| 579 | 579 |
| 580 if (create_panel) { | 580 if (create_panel) { |
| 581 if (urls.empty()) | 581 if (urls.empty()) |
| 582 urls.push_back(GURL(chrome::kChromeUINewTabURL)); | 582 urls.push_back(GURL(chrome::kChromeUINewTabURL)); |
| 583 | 583 |
| 584 #if defined(USE_ASH) | 584 #if defined(USE_ASH) |
| 585 if (chrome::GetActiveDesktop() == chrome::HOST_DESKTOP_TYPE_ASH) { | 585 if (chrome::GetActiveDesktop() == ui::HOST_DESKTOP_TYPE_ASH) { |
| 586 AppWindow::CreateParams create_params; | 586 AppWindow::CreateParams create_params; |
| 587 create_params.window_type = AppWindow::WINDOW_TYPE_V1_PANEL; | 587 create_params.window_type = AppWindow::WINDOW_TYPE_V1_PANEL; |
| 588 create_params.window_key = extension_id; | 588 create_params.window_key = extension_id; |
| 589 create_params.window_spec.bounds = window_bounds; | 589 create_params.window_spec.bounds = window_bounds; |
| 590 create_params.focused = saw_focus_key && focused; | 590 create_params.focused = saw_focus_key && focused; |
| 591 AppWindow* app_window = new AppWindow( | 591 AppWindow* app_window = new AppWindow( |
| 592 window_profile, | 592 window_profile, |
| 593 new ChromeAppDelegate(make_scoped_ptr(new ScopedKeepAlive)), | 593 new ChromeAppDelegate(make_scoped_ptr(new ScopedKeepAlive)), |
| 594 extension()); | 594 extension()); |
| 595 AshPanelContents* ash_panel_contents = new AshPanelContents(app_window); | 595 AshPanelContents* ash_panel_contents = new AshPanelContents(app_window); |
| (...skipping 18 matching lines...) Expand all Loading... |
| 614 panel->ShowInactive(); | 614 panel->ShowInactive(); |
| 615 else | 615 else |
| 616 panel->Show(); | 616 panel->Show(); |
| 617 | 617 |
| 618 SetResult(panel->extension_window_controller()->CreateWindowValueWithTabs( | 618 SetResult(panel->extension_window_controller()->CreateWindowValueWithTabs( |
| 619 extension())); | 619 extension())); |
| 620 return true; | 620 return true; |
| 621 } | 621 } |
| 622 | 622 |
| 623 // Create a new BrowserWindow. | 623 // Create a new BrowserWindow. |
| 624 chrome::HostDesktopType host_desktop_type = chrome::GetActiveDesktop(); | 624 ui::HostDesktopType host_desktop_type = chrome::GetActiveDesktop(); |
| 625 if (create_panel) | 625 if (create_panel) |
| 626 window_type = Browser::TYPE_POPUP; | 626 window_type = Browser::TYPE_POPUP; |
| 627 Browser::CreateParams create_params(window_type, window_profile, | 627 Browser::CreateParams create_params(window_type, window_profile, |
| 628 host_desktop_type); | 628 host_desktop_type); |
| 629 if (extension_id.empty()) { | 629 if (extension_id.empty()) { |
| 630 create_params.initial_bounds = window_bounds; | 630 create_params.initial_bounds = window_bounds; |
| 631 } else { | 631 } else { |
| 632 create_params = Browser::CreateParams::CreateForApp( | 632 create_params = Browser::CreateParams::CreateForApp( |
| 633 web_app::GenerateApplicationNameFromExtensionId(extension_id), | 633 web_app::GenerateApplicationNameFromExtensionId(extension_id), |
| 634 false /* trusted_source */, | 634 false /* trusted_source */, |
| (...skipping 1414 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2049 ZoomModeToZoomSettings(zoom_mode, &zoom_settings); | 2049 ZoomModeToZoomSettings(zoom_mode, &zoom_settings); |
| 2050 zoom_settings.default_zoom_factor.reset(new double( | 2050 zoom_settings.default_zoom_factor.reset(new double( |
| 2051 content::ZoomLevelToZoomFactor(zoom_controller->GetDefaultZoomLevel()))); | 2051 content::ZoomLevelToZoomFactor(zoom_controller->GetDefaultZoomLevel()))); |
| 2052 | 2052 |
| 2053 results_ = api::tabs::GetZoomSettings::Results::Create(zoom_settings); | 2053 results_ = api::tabs::GetZoomSettings::Results::Create(zoom_settings); |
| 2054 SendResponse(true); | 2054 SendResponse(true); |
| 2055 return true; | 2055 return true; |
| 2056 } | 2056 } |
| 2057 | 2057 |
| 2058 } // namespace extensions | 2058 } // namespace extensions |
| OLD | NEW |