1 // Copyright 2015 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.
5 #ifndef COMPONENTS_BUBBLE_BUBBLE_CLOSE_REASON_H_
6 #define COMPONENTS_BUBBLE_BUBBLE_CLOSE_REASON_H_
8 // List of reasons why a bubble might close. These correspond to various events
9 // from the UI. Not all platforms will receive all events.
10 enum BubbleCloseReason
{
11 // The bubble WILL be closed regardless of return value for |ShouldClose|.
12 // Ex: The bubble's parent window is being destroyed.
15 // Bubble was closed without any user interaction.
16 BUBBLE_CLOSE_FOCUS_LOST
,
18 // User did not interact with the bubble, but changed tab.
19 BUBBLE_CLOSE_TABSWITCHED
,
21 // User did not interact with the bubble, but detached the tab.
22 BUBBLE_CLOSE_TABDETACHED
,
24 // User dismissed the bubble. (ESC, close, etc.)
25 BUBBLE_CLOSE_USER_DISMISSED
,
27 // There has been a navigation event. (Link, URL typed, refresh, etc.)
28 BUBBLE_CLOSE_NAVIGATED
,
30 // The parent window has entered or exited fullscreen mode. Will also be
31 // called for immersive fullscreen.
32 BUBBLE_CLOSE_FULLSCREEN_TOGGLED
,
34 // The user selected an affirmative response in the bubble.
35 BUBBLE_CLOSE_ACCEPTED
,
37 // The user selected a negative response in the bubble.
38 BUBBLE_CLOSE_CANCELED
,
41 #endif // COMPONENTS_BUBBLE_BUBBLE_CLOSE_REASON_H_