amd_app_status_h status);
int amd_launch_context_set_comp_status(amd_launch_context_h h,
amd_comp_status_h status);
+void amd_launch_context_set_custom_effect(amd_launch_context_h h,
+ bool is_custom_effect);
+bool amd_launch_context_is_custom_effect(amd_launch_context_h h);
#ifdef __cplusplus
}
bool _launch_context_is_subapp(launch_h h);
bool _launch_context_is_bg_launch(launch_h h);
const struct appinfo *_launch_context_get_appinfo(launch_h h);
+void _launch_context_set_custom_effect(launch_h h, bool is_custom_effect);
+bool _launch_context_is_custom_effect(launch_h h);
void _launch_set_mode(launch_mode_e mode);
int _launch_resume_inst(int pid, request_h req);
int _launch_pause_inst(int pid, request_h req);
}
static splash_image_h __splash_screen_create_image(amd_appinfo_h ai,
- bundle *kb, int cmd, bool is_subapp)
+ bundle *kb, int cmd, bool is_subapp, bool custom_effect)
{
amd_appinfo_splash_image_h image_info;
struct splash_image_s *si;
si->rotation = rotation.angle;
si->indicator = indicator;
si->color_depth = color_depth;
-
- if (bundle_get_val(kb, AUL_K_LAUNCHER_SERVICE))
- si->custom_effect = true;
+ si->custom_effect = custom_effect;
si->timer = g_timeout_add(TIMEOUT_INTERVAL, __timeout_handler, si);
__set_splash_image(si);
cur_splash_image = __splash_screen_create_image(
amd_launch_context_get_appinfo(h), kb, cmd,
- amd_launch_context_is_subapp(h));
+ amd_launch_context_is_subapp(h),
+ amd_launch_context_is_custom_effect(h));
__splash_screen_send_image(cur_splash_image);
return 0;
const char *comp_id;
compinfo_h ci;
comp_status_h comp_status;
+ bool is_custom_effect;
};
struct fgmgr {
return h->ai;
}
+void _launch_context_set_custom_effect(launch_h h, bool is_custom_effect)
+{
+ struct launch_s *context = h;
+
+ if (!context)
+ return;
+
+ h->is_custom_effect = is_custom_effect;
+}
+
+bool _launch_context_is_custom_effect(launch_h h)
+{
+ struct launch_s *context = h;
+
+ if (!context)
+ return false;
+
+ return h->is_custom_effect;
+}
+
void _launch_set_mode(launch_mode_e mode)
{
if (mode > LAUNCH_MODE_BLOCK) {
#include <aul_cmd.h>
#include <aul_sock.h>
-#include "amd_util.h"
#include "amd_app_com.h"
-#include "amd_noti.h"
-#include "amd_request.h"
#include "amd_app_status.h"
+#include "amd_launch.h"
#include "amd_launcher_service.h"
+#include "amd_noti.h"
+#include "amd_request.h"
+#include "amd_util.h"
struct launcher_service_context_s {
char *launcher_service;
return NOTI_CONTINUE;
}
-static int __on_launch_prepare_end(const char *msg,
+static int __on_launch_prepare_start(const char *msg,
int arg1, int arg2, void *arg3, bundle *data)
{
+ launch_h h = arg3;
const char *val;
if (__context.launcher_service) {
bundle_del(data, AUL_K_LAUNCHER_SERVICE_SERIAL);
}
- _D("launcher_service(%s), serial(%s)",
- __context.launcher_service, __context.serial);
+ if (__context.launcher_service && __context.serial) {
+ _launch_context_set_custom_effect(h, true);
+ _D("launcher_service(%s), serial(%s)",
+ __context.launcher_service, __context.serial);
+ }
return NOTI_CONTINUE;
}
__on_launch_do_starting_app_end);
_noti_listen(NOTI_MSG_LAUNCH_DO_STARTING_APP_END,
__on_launch_do_starting_app_end);
- _noti_listen(NOTI_MSG_LAUNCH_PREPARE_END,
- __on_launch_prepare_end);
+ _noti_listen(NOTI_MSG_LAUNCH_PREPARE_UI_START,
+ __on_launch_prepare_start);
+ _noti_listen(NOTI_MSG_LAUNCH_PREPARE_COMPONENT_BASED_START,
+ __on_launch_prepare_start);
+
return 0;
}
{
return _launch_context_set_comp_status(h, status);
}
+
+EXPORT_API void amd_launch_context_set_custom_effect(amd_launch_context_h h,
+ bool is_custom_effect)
+{
+ _launch_context_set_custom_effect(h, is_custom_effect);
+}
+
+EXPORT_API bool amd_launch_context_is_custom_effect(amd_launch_context_h h)
+{
+ return _launch_context_is_custom_effect(h);
+}