diff --git a/src/curses/ui_save.c b/src/curses/ui_save.c index 7faa41e7..3fd39c47 100644 --- a/src/curses/ui_save.c +++ b/src/curses/ui_save.c @@ -93,6 +93,13 @@ save_create(ui_t *ui) field_opts_off(info->fields[FLD_SAVE_DISPLAYED], O_AUTOSKIP); field_opts_off(info->fields[FLD_SAVE_MESSAGE], O_VISIBLE); + // Disable field save path + if (!setting_enabled(SETTING_SAVEPATH_EDITABLE)) + { + field_opts_off(info->fields[FLD_SAVE_PATH], O_EDIT); + field_opts_off(info->fields[FLD_SAVE_PATH], O_ACTIVE); + } + // Limit max save path and file length set_max_field(info->fields[FLD_SAVE_PATH], MAX_SETTING_LEN); set_max_field(info->fields[FLD_SAVE_FILE], MAX_SETTING_LEN); diff --git a/src/setting.c b/src/setting.c index 59b29cd4..c8802c1b 100644 --- a/src/setting.c +++ b/src/setting.c @@ -61,6 +61,7 @@ setting_t settings[SETTING_COUNT] = { { SETTING_SIP_HEADER_X_CID, "sip.xcid", SETTING_FMT_STRING, "X-Call-ID|X-CID", NULL }, { SETTING_SIP_CALLS, "sip.calls", SETTING_FMT_ENUM, SETTING_OFF, SETTING_ENUM_ONOFF }, { SETTING_SAVEPATH, "savepath", SETTING_FMT_STRING, "", NULL }, + { SETTING_SAVEPATH_EDITABLE, "savepatheditable", SETTING_FMT_ENUM, SETTING_ON, SETTING_ENUM_ONOFF }, { SETTING_DISPLAY_ALIAS, "displayalias", SETTING_FMT_ENUM, SETTING_OFF, SETTING_ENUM_ONOFF }, { SETTING_ALIAS_PORT, "aliasport", SETTING_FMT_ENUM, SETTING_OFF, SETTING_ENUM_ONOFF }, { SETTING_CL_SCROLLSTEP, "cl.scrollstep", SETTING_FMT_NUMBER, "4", NULL }, diff --git a/src/setting.h b/src/setting.h index 6b664b8b..3f72a3a6 100644 --- a/src/setting.h +++ b/src/setting.h @@ -97,6 +97,7 @@ enum setting_id { SETTING_SIP_HEADER_X_CID, SETTING_SIP_CALLS, SETTING_SAVEPATH, + SETTING_SAVEPATH_EDITABLE, SETTING_DISPLAY_ALIAS, SETTING_ALIAS_PORT, SETTING_CL_SCROLLSTEP,