[Release] wrt_0.8.213
[platform/framework/web/wrt.git] / src / domain / widget_model.h
index 51ff9fc..6c2d6c4 100644 (file)
@@ -25,6 +25,7 @@
 #include <dpl/event/model.h>
 #include <dpl/event/property.h>
 #include <dpl/optional.h>
+#include <dpl/optional_typedefs.h>
 #include <string>
 
 #include "widget_data_types.h"
@@ -48,8 +49,18 @@ class WidgetModel : public DPL::Event::Model
 
     /**
      * @brief Tizen id
+     *
+     *  ex> "TizenIDabc.appname"
+     *
+     *  - TizenId / AppId : "TizenIDabc.appname"
+     *  - TzPkgId         : "TizenIDabc"
+     *  - App name        : "appname"
+     *
      */
     DPL::String TizenId;
+    DPL::Event::Property<WrtDB::TizenPkgId,
+                         DPL::Event::PropertyReadOnly,
+                         DPL::Event::PropertyStorageDynamicCached> TzPkgId;
 
     /**
      * @brief Widget type
@@ -57,8 +68,23 @@ class WidgetModel : public DPL::Event::Model
      * Note: This is a readonly property
      */
     DPL::Event::Property<WrtDB::WidgetType,
-    DPL::Event::PropertyReadOnly,
-    DPL::Event::PropertyStorageDynamicCached> Type;
+                         DPL::Event::PropertyReadOnly,
+                         DPL::Event::PropertyStorageDynamicCached> Type;
+
+    /**
+     * @brief Config file based csp policy
+     */
+    DPL::Event::Property<DPL::OptionalString,
+                         DPL::Event::PropertyReadOnly,
+                         DPL::Event::PropertyStorageDynamicCached> CspPolicy;
+
+    /**
+     * @brief Config file based csp policy - report only
+     */
+    DPL::Event::Property<DPL::OptionalString,
+                         DPL::Event::PropertyReadOnly,
+                         DPL::Event::PropertyStorageDynamicCached>
+    CspReportOnlyPolicy;
 
     /**
      * @brief Current widget actual size
@@ -69,8 +95,9 @@ class WidgetModel : public DPL::Event::Model
      * @brief Current widget preferred size
      */
     DPL::Event::Property<WidgetSize,
-                  DPL::Event::PropertyReadOnly,
-                  DPL::Event::PropertyStorageDynamicCached> PreferredSize;
+                         DPL::Event::PropertyReadOnly,
+                         DPL::Event::PropertyStorageDynamicCached>
+    PreferredSize;
 
     /**
      * @brief Start URL for widget
@@ -96,29 +123,30 @@ class WidgetModel : public DPL::Event::Model
      * Gets path in which files of widget are being kept
      */
     DPL::Event::Property<DPL::String,
-                  DPL::Event::PropertyReadOnly,
-                  DPL::Event::PropertyStorageDynamicCached> InstallPath;
+                         DPL::Event::PropertyReadOnly,
+                         DPL::Event::PropertyStorageDynamicCached> InstallPath;
 
     /**
      * @brief Path to widget's persistent storage.
      *
      * Gets path in which widget may store its persistent private data.
      */
-    DPL::Event::Property<DPL::String, DPL::Event::PropertyReadOnly> PersistentStoragePath;
+    DPL::Event::Property<DPL::String> PersistentStoragePath;
 
     /**
      * @brief Path to widget's temporary storage.
      *
      * Gets path in which widget may store its temporary private data.
      */
-    DPL::Event::Property<DPL::String, DPL::Event::PropertyReadOnly> TemporaryStoragePath;
+    DPL::Event::Property<DPL::String> TemporaryStoragePath;
 
     /**
      * @brief Widget defaultlocale
      */
     DPL::Event::Property<DPL::OptionalString,
-                  DPL::Event::PropertyReadOnly,
-                  DPL::Event::PropertyStorageDynamicCached> defaultlocale;
+                         DPL::Event::PropertyReadOnly,
+                         DPL::Event::PropertyStorageDynamicCached>
+    defaultlocale;
 
     /**
      * @brief Widget name
@@ -154,15 +182,15 @@ class WidgetModel : public DPL::Event::Model
      * @brief Widget splash image src
      */
     DPL::Event::Property<DPL::OptionalString,
-                  DPL::Event::PropertyReadOnly,
-                  DPL::Event::PropertyStorageDynamicCached> SplashImg;
+                         DPL::Event::PropertyReadOnly,
+                         DPL::Event::PropertyStorageDynamicCached> SplashImg;
 
     /**
      * @brief window mode
      */
     DPL::Event::Property<WrtDB::WindowModeList,
-                  DPL::Event::PropertyReadOnly,
-                  DPL::Event::PropertyStorageDynamic> WindowModes;
+                         DPL::Event::PropertyReadOnly,
+                         DPL::Event::PropertyStorageDynamic> WindowModes;
 
     //    /**
     //     * @brief Value of network element.
@@ -179,35 +207,43 @@ class WidgetModel : public DPL::Event::Model
      * @brief Is back supported
      */
     DPL::Event::Property<bool,
-                  DPL::Event::PropertyReadOnly,
-                  DPL::Event::PropertyStorageDynamicCached> BackSupported;
+                         DPL::Event::PropertyReadOnly,
+                         DPL::Event::PropertyStorageDynamicCached>
+    BackSupported;
 
     /**
      * @brief Widget access list
      */
     DPL::Event::Property<WidgetAccessList> AccessList;
 
-    /**
-     * @brief Is this DeveloperWidget
-     */
-    DPL::Event::Property<bool,
-                  DPL::Event::PropertyReadOnly,
-                  DPL::Event::PropertyStorageDynamicCached> IsTestWidget;
-
-
     DPL::Event::Property<WidgetSettingList> SettingList;
 
     /**
-     * @brief Widget Application Service list
+     * @brief Widget app-control list
      */
-    DPL::Event::Property<WidgetApplicationServiceList> AppServiceList;
+    DPL::Event::Property<WrtDB::WidgetAppControlList> AppControlList;
+    DPL::Event::Property<DPL::OptionalUInt> AppControlIndex;
+
+    DPL::Event::Property<WrtDB::WidgetSecurityModelVersion,
+                         DPL::Event::PropertyReadOnly,
+                         DPL::Event::PropertyStorageDynamicCached> SecurityModelVersion;
+
+    DPL::Event::Property<WrtDB::SettingsType,
+                         DPL::Event::PropertyReadOnly,
+                         DPL::Event::PropertyStorageDynamicCached> SecurePopupUsage;
+    DPL::Event::Property<WrtDB::SettingsType,
+                         DPL::Event::PropertyReadOnly,
+                         DPL::Event::PropertyStorageDynamicCached> GeolocationUsage;
+    DPL::Event::Property<WrtDB::SettingsType,
+                         DPL::Event::PropertyReadOnly,
+                         DPL::Event::PropertyStorageDynamicCached> WebNotificationUsage;
+    DPL::Event::Property<WrtDB::SettingsType,
+                         DPL::Event::PropertyReadOnly,
+                         DPL::Event::PropertyStorageDynamicCached> WebStorageUsage;
 
     WidgetModel(const std::string &tizenId);
 
   private:
-    // Custom read write delegates
-    static DPL::String           getTimestamp();
-
     DPL::String getTizenId() const;
 };