AppControlActivity template refactor 36/151936/4
authorPawel Kurowski <p.kurowski2@samsung.com>
Fri, 22 Sep 2017 10:21:37 +0000 (12:21 +0200)
committerLukasz Oleksak <l.oleksak@samsung.com>
Fri, 22 Sep 2017 13:22:16 +0000 (13:22 +0000)
Registration of derived classes

Change-Id: I469cad7648a1a9d172d21865da319951c5067e86

src/AppControlActivity.cpp

index c11f075..aad1762 100644 (file)
@@ -29,8 +29,8 @@ namespace
        static constexpr const char *LAUNCH_TYPE[] = {"org.tizen.homescreen-efl", "org.tizen.lockscreen", "org.tizen.task-mgr"};
 }
 
-template <AppToLaunch appToLaunch, bool bindable>
-class AppControlActivity : public Activity, private RegisterActivity<AppControlActivity<appToLaunch, bindable>, bindable>
+template <typename DerivedType, AppToLaunch appToLaunch, bool bindable>
+class AppControlActivity : public Activity, private RegisterActivity<DerivedType, bindable>
 {
 public:
        constexpr static const char *activityType = ACTIVITY_TYPE[appToLaunch];
@@ -69,9 +69,6 @@ protected:
        Optional<app_control_h> app_control;
 };
 
-class StartHomeScreenActivity : public AppControlActivity<HOME_SCREEN, true> {};
-class StartLockScreenActivity : public AppControlActivity<LOCK_SCREEN, false> {};
-class StartTaskManagerActivity : public AppControlActivity<TASK_MGR, true> {};
-
-#undef RETURN_ON_ERROR
-#undef CHECK_ERROR
\ No newline at end of file
+class StartHomeScreenActivity : public AppControlActivity<StartHomeScreenActivity, HOME_SCREEN, true> {};
+class StartLockScreenActivity : public AppControlActivity<StartLockScreenActivity, LOCK_SCREEN, false> {};
+class StartTaskManagerActivity : public AppControlActivity<StartTaskManagerActivity, TASK_MGR, true> {};