1 // Copyright 2014 Samsung Electronics. 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.
13 typedef void (* PermissionCallback)(bool decision, void* data);
17 PermissionCallback callback;
19 } PermissionPopupButtonData;
23 WindowUI(Window&, Browser&);
26 Evas_Object* GetNavBar() const { return navbar_; }
27 Evas_Object* GetURLBar() const { return urlbar_; }
29 void OnURLChanged(const char* url);
30 void OnLoadingStarted();
31 void OnLoadingFinished();
33 void EnableBackButton(bool);
34 void EnableForwardButton(bool);
36 void ShowPermissionPopup(const char* title, const char* description,
37 PermissionCallback, void* data);
38 void ShowInspectorURLPopup(const char* url);
40 void OnThemeColorChanged(int r, int g, int b, int a);
45 void CreateBottomBar();
46 Evas_Object* AddButton(Evas_Object*, const char*,
47 const char*, Evas_Smart_Cb);
48 Evas_Object* CreateExtraActionsMenu(Evas_Object*);
49 void ShowTextEntryPopup(const char* title,
50 const char* initial_content, Evas_Smart_Cb);
51 void ShowNotification(const char* text);
52 #if defined(PWE_SUPPORT)
53 void ShowTextEntriesPopup(const char* title,
54 const std::vector<const char*>& keys,
61 static void OnCreateWindow(void* data, Evas_Object*, void*);
62 static void OnCreateIncognitoWindow(void* data, Evas_Object*, void*);
63 static void OnBack(void* data, Evas_Object*, void*);
64 static void OnForward(void* data, Evas_Object*, void*);
65 static void OnStopOrReload(void* data, Evas_Object*, void*);
66 static void OnShowExtraActionsMenu(void* data, Evas_Object*, void*);
69 static void OnURLEntered(void* data, Evas_Object*, void*);
71 // Extra actions callbacks
72 static void OnUAOverride(void* data, Evas_Object*, void*);
73 static void OnUAOverrideEntered(void* data, Evas_Object*, void*);
74 static void OnInspectorShow(void* data, Evas_Object*, void*);
75 static void OnInspectorServerStart(void* data, Evas_Object* obj, void*);
76 static void OnUseGoogleDataProxy(void* data, Evas_Object* obj, void*);
77 static void OnRotate(void* data, Evas_Object*, void*);
78 static void OnSelectMouseInput(void* data, Evas_Object*, void*);
79 static void OnSelectTouchInput(void* data, Evas_Object*, void*);
80 static void OnStartTracing(void* data, Evas_Object*, void*);
81 static void OnStopTracing(void* data, Evas_Object*, void*);
82 static void OnAutoFittingEnabled(void* data, Evas_Object*, void*);
83 static void OnAutoFittingDisabled(void* data, Evas_Object*, void*);
84 static void OnAutoFillEnabled(void* data, Evas_Object*, void*);
85 static void OnAutoFillDisabled(void* data, Evas_Object*, void*);
87 static void OnScriptWindowOpenEnabled(void* data, Evas_Object* obj, void*);
88 static void OnScriptWindowOpenDisabled(void* data, Evas_Object* obj, void*);
90 static void ClosePopup(void* data, Evas_Object*, void*);
91 static void OnShowZoomPopup(void* data, Evas_Object*, void*);
92 static void OnTakeScreenshotAsync(void* data, Evas_Object*, void*);
93 static void OnZoomChanged(void* data, Evas_Object*, void*);
94 static void OnRememberFormDataChange(void* data, Evas_Object*, void*);
95 static void OnRememberPasswordChange(void* data, Evas_Object*, void*);
96 static void OnFormProfileChange(void* data, Evas_Object*, void*);
98 // Permission popup buttons callbacks
99 static void PermissionDeclined(void* data, Evas_Object*, void*);
100 static void PermissionGranted(void* data, Evas_Object*, void*);
102 static void Exit(void* data, Evas_Object*, void*);
106 Evas_Object* navbar_;
107 Evas_Object* urlbar_;
108 Evas_Object* url_entry_;
109 Evas_Object* stop_reload_button_;
110 Evas_Object* progress_bar_;
111 Evas_Object* forward_button_;
112 Evas_Object* back_button_;
113 Evas_Object* active_popup_;
116 bool should_show_label_;
127 #endif // _WINDOW_UI_H_