| Index: chrome/browser/ui/exclusive_access/mouse_lock_controller.cc
|
| diff --git a/chrome/browser/ui/exclusive_access/mouse_lock_controller.cc b/chrome/browser/ui/exclusive_access/mouse_lock_controller.cc
|
| index bfd3025cd1d1d73f9c1bb955ac0ae704fd65091e..c0133be9c2f20629504c0237cb2cf017743c4fe7 100644
|
| --- a/chrome/browser/ui/exclusive_access/mouse_lock_controller.cc
|
| +++ b/chrome/browser/ui/exclusive_access/mouse_lock_controller.cc
|
| @@ -157,12 +157,23 @@ bool MouseLockController::OnAcceptExclusiveAccessPermission() {
|
| std::string(), CONTENT_SETTING_ALLOW);
|
| }
|
|
|
| + ExclusiveAccessContext* context =
|
| + exclusive_access_manager()->exclusive_access_context();
|
| WebContents* tab = exclusive_access_tab();
|
| - if (tab && tab->GotResponseToLockMouseRequest(true)) {
|
| - mouse_lock_state_ = MOUSELOCK_ACCEPTED;
|
| + if (context->UseCallbackForMouseLock()) {
|
| + if (tab && context->MouseLockCallback(true)) {
|
| + mouse_lock_state_ = MOUSELOCK_ACCEPTED;
|
| + } else {
|
| + mouse_lock_state_ = MOUSELOCK_NOT_REQUESTED;
|
| + SetTabWithExclusiveAccess(nullptr);
|
| + }
|
| } else {
|
| - mouse_lock_state_ = MOUSELOCK_NOT_REQUESTED;
|
| - SetTabWithExclusiveAccess(nullptr);
|
| + if (tab && tab->GotResponseToLockMouseRequest(true)) {
|
| + mouse_lock_state_ = MOUSELOCK_ACCEPTED;
|
| + } else {
|
| + mouse_lock_state_ = MOUSELOCK_NOT_REQUESTED;
|
| + SetTabWithExclusiveAccess(nullptr);
|
| + }
|
| }
|
| NotifyMouseLockChange();
|
| return true;
|
|
|