blob: c6ffcc4a877975d43e6e2c42a5f1e86bb57e903c [file] [log] [blame]
// Copyright 2022 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "chrome/browser/ui/webui/feed/feed_handler.h"
#include <utility>
#include "base/functional/bind.h"
#include "base/task/thread_pool.h"
namespace feed {
FeedHandler::FeedHandler(
mojo::PendingReceiver<feed::mojom::FeedSidePanelHandler> pending_receiver,
mojo::PendingRemote<feed::mojom::FeedSidePanel> pending_side_panel)
: receiver_(this, std::move(pending_receiver)),
side_panel_(std::move(pending_side_panel)) {}
FeedHandler::~FeedHandler() = default;
void FeedHandler::DoSomething() {
base::ThreadPool::PostTaskAndReply(
FROM_HERE, base::BindOnce([]() {
// Do some work here.
}),
base::BindOnce(&FeedHandler::OnSomethingDone,
weak_ptr_factory_.GetWeakPtr()));
}
void FeedHandler::OnSomethingDone() {
side_panel_->OnEventOccurred("DoSomething is done");
}
} // namespace feed