1 // Copyright (c) 2012 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_UI_FULLSCREEN_FULLSCREEN_EXIT_BUBBLE_TYPE_H_ 6 #define CHROME_BROWSER_UI_FULLSCREEN_FULLSCREEN_EXIT_BUBBLE_TYPE_H_ 7 8 #include "base/strings/string16.h" 9 #include "url/gurl.h" 10 11 class ExtensionService; 12 13 // Describes the contents of the fullscreen exit bubble. 14 // For example, if the user already agreed to fullscreen mode and the 15 // web page then requests mouse lock, "do you want to allow mouse lock" 16 // will be shown. 17 enum FullscreenExitBubbleType { 18 FEB_TYPE_NONE = 0, 19 20 // For tab fullscreen mode. 21 // More comments about tab and browser fullscreen mode can be found in 22 // chrome/browser/ui/fullscreen/fullscreen_controller.h. 23 FEB_TYPE_FULLSCREEN_BUTTONS, 24 FEB_TYPE_FULLSCREEN_MOUSELOCK_BUTTONS, 25 FEB_TYPE_MOUSELOCK_BUTTONS, 26 FEB_TYPE_FULLSCREEN_EXIT_INSTRUCTION, 27 FEB_TYPE_FULLSCREEN_MOUSELOCK_EXIT_INSTRUCTION, 28 FEB_TYPE_MOUSELOCK_EXIT_INSTRUCTION, 29 30 // For browser fullscreen mode. 31 FEB_TYPE_BROWSER_FULLSCREEN_EXIT_INSTRUCTION, 32 FEB_TYPE_BROWSER_EXTENSION_FULLSCREEN_EXIT_INSTRUCTION 33 }; 34 35 namespace fullscreen_bubble { 36 37 string16 GetLabelTextForType(FullscreenExitBubbleType type, 38 const GURL& url, 39 ExtensionService* extension_service); 40 string16 GetDenyButtonTextForType(FullscreenExitBubbleType type); 41 bool ShowButtonsForType(FullscreenExitBubbleType type); 42 void PermissionRequestedByType(FullscreenExitBubbleType type, 43 bool* tab_fullscreen, 44 bool* mouse_lock); 45 46 } // namespace fullscreen_bubble 47 48 #endif // CHROME_BROWSER_UI_FULLSCREEN_FULLSCREEN_EXIT_BUBBLE_TYPE_H_ 49