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

Unified Diff: ash/sysui/shelf_delegate_mus.cc

Issue 2235493002: mash: Disable ash_sysui; begin removal. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Connect to chrome on mash session launch; add missing gn dep. Created 4 years, 4 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « ash/sysui/shelf_delegate_mus.h ('k') | ash/sysui/sysui_application.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: ash/sysui/shelf_delegate_mus.cc
diff --git a/ash/sysui/shelf_delegate_mus.cc b/ash/sysui/shelf_delegate_mus.cc
index 129cd257b5e6b510566863fb7f37b12507b2277d..82a262636de3cb10489a319b1b3055eb93a344bf 100644
--- a/ash/sysui/shelf_delegate_mus.cc
+++ b/ash/sysui/shelf_delegate_mus.cc
@@ -27,18 +27,16 @@
#include "ui/resources/grit/ui_resources.h"
#include "ui/views/mus/window_manager_connection.h"
-using ash::mojom::UserWindowController;
-
namespace ash {
namespace sysui {
namespace {
-// A ShelfItemDelegate used for pinned items and open user windows.
+// A ShelfItemDelegate used for pinned items.
+// TODO(mash): Support open user windows, etc.
class ShelfItemDelegateMus : public ShelfItemDelegate {
public:
- explicit ShelfItemDelegateMus(UserWindowController* user_window_controller)
- : user_window_controller_(user_window_controller) {}
+ ShelfItemDelegateMus() {}
~ShelfItemDelegateMus() override {}
void SetDelegate(
@@ -90,7 +88,7 @@ class ShelfItemDelegateMus : public ShelfItemDelegate {
return command_id > 0;
}
void ExecuteCommand(int command_id, int event_flags) override {
- item_delegate_->user_window_controller_->ActivateUserWindow(command_id);
+ NOTIMPLEMENTED();
}
private:
@@ -107,9 +105,8 @@ class ShelfItemDelegateMus : public ShelfItemDelegate {
return kNewWindowCreated;
}
if (window_id_to_title_.size() == 1) {
- user_window_controller_->ActivateUserWindow(
- window_id_to_title_.begin()->first);
- return kExistingWindowActivated;
+ // TODO(mash): Activate the window and return kExistingWindowActivated.
+ NOTIMPLEMENTED();
}
return kNoAction;
}
@@ -141,7 +138,6 @@ class ShelfItemDelegateMus : public ShelfItemDelegate {
bool pinned_ = false;
std::map<uint32_t, base::string16> window_id_to_title_;
base::string16 title_;
- UserWindowController* user_window_controller_;
DISALLOW_COPY_AND_ASSIGN(ShelfItemDelegateMus);
};
@@ -175,15 +171,7 @@ gfx::ImageSkia GetShelfIconFromSerializedBitmap(
} // namespace
-ShelfDelegateMus::ShelfDelegateMus(ShelfModel* model)
- : model_(model), binding_(this) {
- ::shell::Connector* connector =
- views::WindowManagerConnection::Get()->connector();
- connector->ConnectToInterface("mojo:ash", &shelf_layout_);
- connector->ConnectToInterface("mojo:ash", &user_window_controller_);
- user_window_controller_->AddUserWindowObserver(
- binding_.CreateInterfacePtrAndBind());
-}
+ShelfDelegateMus::ShelfDelegateMus(ShelfModel* model) : model_(model) {}
ShelfDelegateMus::~ShelfDelegateMus() {}
@@ -202,8 +190,6 @@ void ShelfDelegateMus::OnShelfAlignmentChanged(Shelf* shelf) {
SetShelfPreferredSizes(shelf);
mash::shelf::mojom::Alignment alignment =
static_cast<mash::shelf::mojom::Alignment>(shelf->alignment());
- shelf_layout_->SetAlignment(alignment);
-
observers_.ForAllPtrs(
[alignment](mash::shelf::mojom::ShelfObserver* observer) {
observer->OnAlignmentChanged(alignment);
@@ -214,8 +200,6 @@ void ShelfDelegateMus::OnShelfAutoHideBehaviorChanged(Shelf* shelf) {
mash::shelf::mojom::AutoHideBehavior behavior =
static_cast<mash::shelf::mojom::AutoHideBehavior>(
shelf->auto_hide_behavior());
- shelf_layout_->SetAutoHideBehavior(behavior);
-
observers_.ForAllPtrs(
[behavior](mash::shelf::mojom::ShelfObserver* observer) {
observer->OnAutoHideBehaviorChanged(behavior);
@@ -312,7 +296,7 @@ void ShelfDelegateMus::PinItem(
model_->Add(shelf_item);
std::unique_ptr<ShelfItemDelegateMus> item_delegate(
- new ShelfItemDelegateMus(user_window_controller_.get()));
+ new ShelfItemDelegateMus());
item_delegate->SetDelegate(std::move(delegate));
item_delegate->set_pinned(true);
item_delegate->set_title(item->app_title.To<base::string16>());
@@ -345,115 +329,6 @@ void ShelfDelegateMus::SetItemImage(const mojo::String& app_id,
model_->Set(index, item);
}
-void ShelfDelegateMus::OnUserWindowObserverAdded(
- mojo::Array<ash::mojom::UserWindowPtr> user_windows) {
- for (size_t i = 0; i < user_windows.size(); ++i)
- OnUserWindowAdded(std::move(user_windows[i]));
-}
-
-void ShelfDelegateMus::OnUserWindowAdded(
- ash::mojom::UserWindowPtr user_window) {
- DCHECK(!window_id_to_shelf_id_.count(user_window->window_id));
-
- if (user_window->ignored_by_shelf)
- return;
-
- std::string app_id(user_window->window_app_id.To<std::string>());
- if (app_id_to_shelf_id_.count(app_id)) {
- ShelfID shelf_id = app_id_to_shelf_id_[app_id];
- window_id_to_shelf_id_.insert(
- std::make_pair(user_window->window_id, shelf_id));
-
- ShelfItemDelegateMus* item_delegate = GetShelfItemDelegate(shelf_id);
- item_delegate->AddWindow(user_window->window_id,
- user_window->window_title.To<base::string16>());
- return;
- }
-
- ShelfID shelf_id = model_->next_id();
- window_id_to_shelf_id_.insert(
- std::make_pair(user_window->window_id, shelf_id));
- app_id_to_shelf_id_.insert(std::make_pair(app_id, shelf_id));
- shelf_id_to_app_id_.insert(std::make_pair(shelf_id, app_id));
-
- ShelfItem item;
- item.type = TYPE_PLATFORM_APP;
- item.status = user_window->window_has_focus ? STATUS_ACTIVE : STATUS_RUNNING;
- item.image = GetShelfIconFromSerializedBitmap(user_window->window_app_icon);
- model_->Add(item);
-
- std::unique_ptr<ShelfItemDelegateMus> item_delegate(
- new ShelfItemDelegateMus(user_window_controller_.get()));
- item_delegate->AddWindow(user_window->window_id,
- user_window->window_title.To<base::string16>());
- model_->SetShelfItemDelegate(shelf_id, std::move(item_delegate));
-}
-
-void ShelfDelegateMus::OnUserWindowRemoved(uint32_t window_id) {
- if (!window_id_to_shelf_id_.count(window_id))
- return;
- ShelfID shelf_id = window_id_to_shelf_id_[window_id];
- ShelfItemDelegateMus* item_delegate = GetShelfItemDelegate(shelf_id);
- item_delegate->RemoveWindow(window_id);
- window_id_to_shelf_id_.erase(window_id);
- if (item_delegate->window_id_to_title().empty() && !item_delegate->pinned()) {
- model_->RemoveItemAt(model_->ItemIndexByID(shelf_id));
- const std::string& app_id = shelf_id_to_app_id_[shelf_id];
- app_id_to_shelf_id_.erase(app_id);
- shelf_id_to_app_id_.erase(shelf_id);
- }
-}
-
-void ShelfDelegateMus::OnUserWindowTitleChanged(
- uint32_t window_id,
- const mojo::String& window_title) {
- if (!window_id_to_shelf_id_.count(window_id))
- return;
- ShelfID shelf_id = window_id_to_shelf_id_[window_id];
- ShelfItemDelegateMus* item_delegate = GetShelfItemDelegate(shelf_id);
- item_delegate->SetWindowTitle(window_id, window_title.To<base::string16>());
-
- // There's nothing in the ShelfItem that needs to be updated. But we still
- // need to update the ShelfModel so that the observers can pick up any
- // changes.
- int index = model_->ItemIndexByID(shelf_id);
- DCHECK_GE(index, 0);
- ShelfItems::const_iterator iter = model_->ItemByID(shelf_id);
- DCHECK(iter != model_->items().end());
- model_->Set(index, *iter);
-}
-
-void ShelfDelegateMus::OnUserWindowAppIconChanged(
- uint32_t window_id,
- mojo::Array<uint8_t> app_icon) {
- if (!window_id_to_shelf_id_.count(window_id))
- return;
- // Find the shelf ID for this window.
- ShelfID shelf_id = window_id_to_shelf_id_[window_id];
- DCHECK_GT(shelf_id, 0);
-
- // Update the icon in the ShelfItem.
- int index = model_->ItemIndexByID(shelf_id);
- DCHECK_GE(index, 0);
- ShelfItem item = *model_->ItemByID(shelf_id);
- item.image = GetShelfIconFromSerializedBitmap(app_icon);
- model_->Set(index, item);
-}
-
-void ShelfDelegateMus::OnUserWindowFocusChanged(uint32_t window_id,
- bool has_focus) {
- if (!window_id_to_shelf_id_.count(window_id))
- return;
- ShelfID shelf_id = window_id_to_shelf_id_[window_id];
- int index = model_->ItemIndexByID(shelf_id);
- DCHECK_GE(index, 0);
- ShelfItems::const_iterator iter = model_->ItemByID(shelf_id);
- DCHECK(iter != model_->items().end());
- ShelfItem item = *iter;
- item.status = has_focus ? STATUS_ACTIVE : STATUS_RUNNING;
- model_->Set(index, item);
-}
-
void ShelfDelegateMus::SetShelfPreferredSizes(Shelf* shelf) {
ShelfWidget* widget = shelf->shelf_widget();
ShelfLayoutManager* layout_manager = widget->shelf_layout_manager();
« no previous file with comments | « ash/sysui/shelf_delegate_mus.h ('k') | ash/sysui/sysui_application.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698