extension_idle_api.h revision 3345a6884c488ff3a535c2c9acdd33d74b37e311
1// Copyright (c) 2010 The Chromium Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5#ifndef CHROME_BROWSER_EXTENSIONS_EXTENSION_IDLE_API_H_
6#define CHROME_BROWSER_EXTENSIONS_EXTENSION_IDLE_API_H_
7#pragma once
8
9#include "chrome/browser/idle.h"
10#include "chrome/browser/profile.h"
11#include "chrome/browser/extensions/extension_function.h"
12
13// Event router class for events related to the idle API.
14class ExtensionIdleEventRouter {
15 public:
16  static void OnIdleStateChange(Profile* profile,
17                                IdleState idleState);
18 private:
19  DISALLOW_COPY_AND_ASSIGN(ExtensionIdleEventRouter);
20};
21
22// Implementation of the chrome.idle.queryState API.
23class ExtensionIdleQueryStateFunction : public SyncExtensionFunction {
24 public:
25  virtual bool RunImpl();
26  DECLARE_EXTENSION_FUNCTION_NAME("idle.queryState")
27};
28
29#endif  // CHROME_BROWSER_EXTENSIONS_EXTENSION_IDLE_API_H_
30