chromium/chrome/browser/extensions/api/system_indicator/system_indicator_manager.cc

// Copyright 2012 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/extensions/api/system_indicator/system_indicator_manager.h"

#include <utility>

#include "base/containers/contains.h"
#include "base/memory/ptr_util.h"
#include "base/memory/raw_ptr.h"
#include "base/strings/utf_string_conversions.h"
#include "chrome/browser/profiles/profile.h"
#include "chrome/browser/status_icons/status_icon.h"
#include "chrome/browser/status_icons/status_icon_observer.h"
#include "chrome/browser/status_icons/status_tray.h"
#include "chrome/common/extensions/api/system_indicator.h"
#include "chrome/common/extensions/api/system_indicator/system_indicator_handler.h"
#include "content/public/browser/web_contents.h"
#include "extensions/browser/event_router.h"
#include "extensions/browser/extension_action.h"
#include "extensions/browser/extension_icon_image.h"
#include "extensions/common/extension.h"
#include "extensions/common/icons/extension_icon_set.h"

namespace extensions {

system_indicator;

// Observes clicks on a given status icon and forwards the event to the
// appropriate extension.  Handles icon updates, and responsible for creating
// and removing the icon from the notification area during construction and
// destruction.
class ExtensionIndicatorIcon : public StatusIconObserver,
                               public IconImage::Observer {};

std::unique_ptr<ExtensionIndicatorIcon> ExtensionIndicatorIcon::Create(
    const Extension& extension,
    const ExtensionIconSet& icon_set,
    Profile* profile,
    StatusTray* status_tray) {}

ExtensionIndicatorIcon::~ExtensionIndicatorIcon() {}

void ExtensionIndicatorIcon::SetDynamicIcon(gfx::Image dynamic_icon) {}

void ExtensionIndicatorIcon::OnStatusIconClicked() {}

void ExtensionIndicatorIcon::OnExtensionIconImageChanged(IconImage* image) {}

ExtensionIndicatorIcon::ExtensionIndicatorIcon(
    const Extension& extension,
    const ExtensionIconSet& manifest_icon_set,
    Profile* profile,
    StatusTray* status_tray)
    :{}

SystemIndicatorManager::SystemIndicator::SystemIndicator() {}
SystemIndicatorManager::SystemIndicator::~SystemIndicator() = default;

SystemIndicatorManager::SystemIndicatorManager(Profile* profile,
                                               StatusTray* status_tray)
    :{}

SystemIndicatorManager::~SystemIndicatorManager() {}

void SystemIndicatorManager::Shutdown() {}

void SystemIndicatorManager::SetSystemIndicatorDynamicIcon(
    const Extension& extension,
    gfx::Image icon) {}

void SystemIndicatorManager::SetSystemIndicatorEnabled(
    const Extension& extension,
    bool is_enabled) {}

void SystemIndicatorManager::OnExtensionLoaded(
    content::BrowserContext* browser_context,
    const Extension* extension) {}

void SystemIndicatorManager::OnExtensionUnloaded(
    content::BrowserContext* browser_context,
    const Extension* extension,
    UnloadedExtensionReason reason) {}

bool SystemIndicatorManager::SendClickEventToExtensionForTest(
    const ExtensionId& extension_id) {}

}  // namespace extensions