Index: chrome/browser/extensions/api/app_current_window_internal/app_current_window_internal_api.cc |
diff --git a/chrome/browser/extensions/api/app_current_window_internal/app_current_window_internal_api.cc b/chrome/browser/extensions/api/app_current_window_internal/app_current_window_internal_api.cc |
index 7cde5b5c20cdc57c1bea63b380a0423e7b4f20e5..f4cccdb8a81c77f49a0cfab1ff9cc7b2074c732d 100644 |
--- a/chrome/browser/extensions/api/app_current_window_internal/app_current_window_internal_api.cc |
+++ b/chrome/browser/extensions/api/app_current_window_internal/app_current_window_internal_api.cc |
@@ -28,6 +28,8 @@ namespace SetIcon = app_current_window_internal::SetIcon; |
namespace SetBadgeIcon = app_current_window_internal::SetBadgeIcon; |
namespace SetShape = app_current_window_internal::SetShape; |
namespace SetAlwaysOnTop = app_current_window_internal::SetAlwaysOnTop; |
+namespace SetVisibleOnAllWorkspaces = |
+ app_current_window_internal::SetVisibleOnAllWorkspaces; |
using apps::AppWindow; |
using app_current_window_internal::Bounds; |
@@ -399,4 +401,18 @@ bool AppCurrentWindowInternalSetAlwaysOnTopFunction::RunWithWindow( |
return true; |
} |
+bool AppCurrentWindowInternalSetVisibleOnAllWorkspacesFunction::RunWithWindow( |
+ AppWindow* window) { |
+ if (GetCurrentChannel() > chrome::VersionInfo::CHANNEL_DEV) { |
+ error_ = kDevChannelOnly; |
+ return false; |
+ } |
+ |
+ scoped_ptr<SetVisibleOnAllWorkspaces::Params> params( |
+ SetVisibleOnAllWorkspaces::Params::Create(*args_)); |
+ CHECK(params.get()); |
+ window->GetBaseWindow()->SetVisibleOnAllWorkspaces(params->always_visible); |
+ return true; |
+} |
+ |
} // namespace extensions |