merge with master
[framework/osp/web.git] / src / controls / FWebCtrl_EflWebkit.h
1 //
2 // Open Service Platform
3 // Copyright (c) 2012 Samsung Electronics Co., Ltd.
4 //
5 // Licensed under the Apache License, Version 2.0 (the License);
6 // you may not use this file except in compliance with the License.
7 // You may obtain a copy of the License at
8 //
9 //     http://www.apache.org/licenses/LICENSE-2.0
10 //
11 // Unless required by applicable law or agreed to in writing, software
12 // distributed under the License is distributed on an "AS IS" BASIS,
13 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 // See the License for the specific language governing permissions and
15 // limitations under the License.
16 //
17
18 /**
19  * @file                FWebCtrl_EflWebkit.h
20  * @brief               The file contains the declaration of _EflWebkit class.
21  *
22  * The file contains the declaration of _EflWebkit class.
23  */
24 #ifndef _FWEB_CTRL_INTERNAL_EFL_WEBKIT_H_
25 #define _FWEB_CTRL_INTERNAL_EFL_WEBKIT_H_
26
27 #include <Evas.h>
28 #include <FBaseString.h>
29
30 namespace Tizen { namespace Graphics
31 {
32 class Rectangle;
33 }} // Tizen::Graphics
34
35 namespace Tizen { namespace Ui { namespace Animations
36 {
37 class VisualElement;
38 }}} // Tizen::Ui::Animations
39
40
41 namespace Tizen { namespace Web { namespace Controls
42 {
43
44 _OSP_EXPORT_ extern const wchar_t CUSTOM_DB_DIRECTORY_PATH[];
45 _OSP_EXPORT_ extern const wchar_t USER_CONFIRM_DB_NAME[];
46 _OSP_EXPORT_ extern const wchar_t GEOLOCATION_TABLE_NAME[];
47 _OSP_EXPORT_ extern const wchar_t CUSTOM_PROTOCOL_TABLE_NAME[];
48 _OSP_EXPORT_ extern const wchar_t CUSTOM_CONTENT_TABLE_NAME[];
49
50 class _EflWebkit
51         : public Tizen::Base::Object
52 {
53 public:
54         _EflWebkit(void);
55
56         virtual ~_EflWebkit(void);
57
58         result Construct(const Tizen::Graphics::Rectangle& rect, Tizen::Ui::Animations::VisualElement& containerVisualElement);
59
60         Evas_Object* GetWebEvasObject(void) const;
61
62 //      result GetPixelBufferFromEvasObject(const Evas_Object* source, Tizen::Graphics::BufferInfo& bufferInfo);
63
64 private:
65         _EflWebkit(const _EflWebkit&);
66
67         result SetWebConfiguration(void) const;
68
69         result SetProxyAddress(void) const;
70
71         result CreateResourceDirectory(void) const;
72
73         result InitializeCustomDb() const;
74
75         _EflWebkit& operator =(const _EflWebkit&);
76
77 private:
78         Evas_Object* __pWebFrame;
79 }; // _EflWebkit
80
81 }}} // Tizen::Web::Controls
82 #endif // _FWEB_CTRL_INTERNAL_EFL_WEBKIT_H_