summaryrefslogtreecommitdiff
path: root/src/cam_menu_composer.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/cam_menu_composer.c')
-rwxr-xr-xsrc/cam_menu_composer.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/cam_menu_composer.c b/src/cam_menu_composer.c
index 8893ec6..26fe5c9 100755
--- a/src/cam_menu_composer.c
+++ b/src/cam_menu_composer.c
@@ -868,6 +868,11 @@ static gboolean __is_enabled_shooting_mode(void* data)
if(!(capacity & CAM_CP_FUNC_SHOT_MODE))
return FALSE;
+ if (ad->launching_mode == CAM_LAUNCHING_MODE_EXTERNAL
+ && ad->exe_args->allow_switch == FALSE
+ && camapp->camera_mode == CAM_CAMCORDER_MODE)
+ return FALSE;
+
return TRUE;
}
@@ -879,6 +884,7 @@ static gboolean __is_enabled_recording_mode(void* data)
cam_retvm_if(camapp == NULL, FALSE, "camapp_handle is NULL");
if(ad->launching_mode == CAM_LAUNCHING_MODE_EXTERNAL
+ && ad->exe_args->allow_switch == FALSE
&& camapp->camera_mode == CAM_CAMERA_MODE)
return FALSE;
@@ -903,6 +909,7 @@ static gboolean __is_enabled_scene_mode(void* data)
return FALSE;
if(ad->launching_mode == CAM_LAUNCHING_MODE_EXTERNAL
+ && ad->exe_args->allow_switch == FALSE
&& camapp->camera_mode == CAM_CAMCORDER_MODE)
return FALSE;
@@ -995,6 +1002,7 @@ static gboolean __is_enabled_photo_resolution(void* data)
GetCamDevFuncCaps(&capacity, (void*)ad);
if(ad->launching_mode == CAM_LAUNCHING_MODE_EXTERNAL
+ && ad->exe_args->allow_switch == FALSE
&& camapp->camera_mode == CAM_CAMCORDER_MODE)
return FALSE;
@@ -1018,6 +1026,7 @@ static gboolean __is_enabled_video_resolution(void* data)
return FALSE;
if(ad->launching_mode == CAM_LAUNCHING_MODE_EXTERNAL
+ && ad->exe_args->allow_switch == FALSE
&& camapp->camera_mode == CAM_CAMERA_MODE)
return FALSE;