File: accelerator_priority.h

package info (click to toggle)
chromium-browser 41.0.2272.118-1
  • links: PTS, VCS
  • area: main
  • in suites: jessie-kfreebsd
  • size: 2,189,132 kB
  • sloc: cpp: 9,691,462; ansic: 3,341,451; python: 712,689; asm: 518,779; xml: 208,926; java: 169,820; sh: 119,353; perl: 68,907; makefile: 28,311; yacc: 13,305; objc: 11,385; tcl: 3,186; cs: 2,225; sql: 2,217; lex: 2,215; lisp: 1,349; pascal: 1,256; awk: 407; ruby: 155; sed: 53; php: 14; exp: 11
file content (47 lines) | stat: -rw-r--r-- 1,772 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
// Copyright 2014 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

// The accelerator priority functions are intended to distinguish between
// accelerators that should preserve the built-in Chrome keybinding semantics
// (normal) and accelerators that should always override web page key handling
// (high). High priority is used for all accelerators assigned to extensions,
// except for the Ctrl+D bookmarking shortcut which is assigned normal priority
// when bound by an extension that requests the privilege to override the
// bookmark UI. This is currently the only case where we allow an extension to
// replace a built-in Chrome accelerator, and it should have the same behavior
// as the built-in accelerator.

#ifndef CHROME_BROWSER_UI_EXTENSIONS_ACCELERATOR_PRIORITY_H_
#define CHROME_BROWSER_UI_EXTENSIONS_ACCELERATOR_PRIORITY_H_

#include <string>

#include "ui/base/accelerators/accelerator_manager.h"

namespace content {
class BrowserContext;
}

namespace extensions {
class Extension;
}

namespace ui {
class Accelerator;
}

// Returns the registration priority to be used when registering |accelerator|
// for |extension|.
ui::AcceleratorManager::HandlerPriority GetAcceleratorPriority(
    const ui::Accelerator& accelerator,
    const extensions::Extension* extension);

// Returns the registration priority to be used when registering |accelerator|
// for the extension with ID |extension_id|.
ui::AcceleratorManager::HandlerPriority GetAcceleratorPriorityById(
    const ui::Accelerator& accelerator,
    const std::string& extension_id,
    content::BrowserContext* browser_context);

#endif  // CHROME_BROWSER_UI_EXTENSIONS_ACCELERATOR_PRIORITY_H_