electron/atom/browser/ui/win/taskbar_host.h

41 lines
911 B
C
Raw Normal View History

// Copyright (c) 2015 GitHub, Inc.
// Use of this source code is governed by the MIT license that can be
// found in the LICENSE file.
2015-08-06 02:30:22 +00:00
#ifndef ATOM_BROWSER_UI_WIN_TASKBAR_HOST_H_
#define ATOM_BROWSER_UI_WIN_TASKBAR_HOST_H_
#include <windows.h>
#include <map>
#include <vector>
#include "atom/browser/native_window.h"
namespace atom {
2015-08-06 02:30:22 +00:00
class TaskbarHost {
public:
2015-08-06 02:30:22 +00:00
explicit TaskbarHost(HWND window);
~TaskbarHost();
bool SetThumbarButtons(
const std::vector<NativeWindow::ThumbarButton>& buttons);
bool HandleThumbarButtonEvent(int button_id);
private:
using ThumbarButtonClickedCallbackMap = std::map<
int, NativeWindow::ThumbarButtonClickedCallback>;
ThumbarButtonClickedCallbackMap thumbar_button_clicked_callback_map_;
bool is_initialized_;
HWND window_;
2015-08-06 02:30:22 +00:00
DISALLOW_COPY_AND_ASSIGN(TaskbarHost);
};
} // namespace atom
2015-08-06 02:30:22 +00:00
#endif // ATOM_BROWSER_UI_WIN_TASKBAR_HOST_H_