2 * Copyright (c) 2011 Samsung Electronics Co., Ltd All Rights Reserved
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
8 * http://www.apache.org/licenses/LICENSE-2.0
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
17 * @file core_module.cpp
18 * @author Przemyslaw Ciezkowski (p.ciezkowski@samsung.com)
20 * @brief File contains defitinions of RunnableWidgetObject implementation.
23 #ifndef RUNNABLE_WIDGET_OBJECT_H_
24 #define RUNNABLE_WIDGET_OBJECT_H_
29 class RunnableWidgetObjectState;
37 #include <widget_model.h>
38 #include <i_view_module.h>
39 #include "i_runnable_widget_object.h"
43 class RunnableWidgetObject : public IRunnableWidgetObject
46 RunnableWidgetObject(WidgetModelPtr &model, Ewk_Context* context);
47 virtual ~RunnableWidgetObject();
49 bool CheckBeforeLaunch();
50 bool PrepareView(const std::string &startUrl,
52 void Show(); //asynchronous function
57 void ReloadStartPage();
58 Evas_Object* GetCurrentWebview();
59 void SetUserDelegates(const UserDelegatesPtr& cbs);
61 void FireJavascriptEvent(int event, void* data);
65 bool CheckWACTestCertififedWidget();
67 WidgetModelPtr m_widgetModel;
68 ViewModule::IViewModulePtr m_view;
69 Ewk_Context* m_ewkContext;
71 std::shared_ptr<WRT::State::RunnableWidgetObjectState> sptr);
73 std::shared_ptr<State::RunnableWidgetObjectState> m_guardstate;
75 friend class State::StateChange;
78 #endif /* RUNNABLE_WIDGET_OBJECT_H_ */