Commit 06c54845 authored by Leonard Grey's avatar Leonard Grey Committed by Commit Bot

Add AcceleratorProviderFromBrowser

This change allows code outside of c/b/ui/views to access the main
AcceleratorProvider (which happens to be BrowserView on desktop
platforms).

Bug: 1041639
Change-Id: I20167475c769ba3921e20ddd0cc8419aad839edc
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2399444Reviewed-by: default avatarElly Fong-Jones <ellyjones@chromium.org>
Commit-Queue: Leonard Grey <lgrey@chromium.org>
Cr-Commit-Position: refs/heads/master@{#805323}
parent 3c4e5a01
......@@ -5,8 +5,11 @@
#ifndef CHROME_BROWSER_UI_ACCELERATOR_UTILS_H_
#define CHROME_BROWSER_UI_ACCELERATOR_UTILS_H_
class Browser;
namespace ui {
class Accelerator;
class AcceleratorProvider;
}
namespace chrome {
......@@ -14,6 +17,9 @@ namespace chrome {
// Returns true if the given |accelerator| is currently registered by
// Chrome.
bool IsChromeAccelerator(const ui::Accelerator& accelerator);
// Returns the AcceleratorProvider associated with |browser|, or nullptr
// if one is not available.
ui::AcceleratorProvider* AcceleratorProviderForBrowser(Browser* browser);
} // namespace chrome
......
......@@ -8,6 +8,7 @@
#include "chrome/browser/global_keyboard_shortcuts_mac.h"
#include "chrome/browser/ui/cocoa/accelerators_cocoa.h"
#include "chrome/browser/ui/views/frame/browser_view.h"
#include "ui/base/accelerators/accelerator.h"
#import "ui/base/accelerators/platform_accelerator_cocoa.h"
#import "ui/events/keycodes/keyboard_code_conversion_mac.h"
......@@ -51,4 +52,8 @@ bool IsChromeAccelerator(const ui::Accelerator& accelerator) {
return CommandForKeyEvent(event).found();
}
ui::AcceleratorProvider* AcceleratorProviderForBrowser(Browser* browser) {
return BrowserView::GetBrowserViewForBrowser(browser);
}
} // namespace chrome
......@@ -5,6 +5,7 @@
#include <stddef.h>
#include "chrome/browser/ui/views/accelerator_table.h"
#include "chrome/browser/ui/views/frame/browser_view.h"
#include "ui/base/accelerators/accelerator.h"
#if defined(OS_CHROMEOS)
......@@ -34,4 +35,8 @@ bool IsChromeAccelerator(const ui::Accelerator& accelerator) {
return false;
}
ui::AcceleratorProvider* AcceleratorProviderForBrowser(Browser* browser) {
return BrowserView::GetBrowserViewForBrowser(browser);
}
} // namespace chrome
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment