Home | History | Annotate | Download | only in fullscreen
      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 base::string16 GetLabelTextForType(FullscreenExitBubbleType type,
     38                                    const GURL& url,
     39                                    ExtensionService* extension_service);
     40 base::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