diff --git a/client/components/modals/libraries/EditModal.vue b/client/components/modals/libraries/EditModal.vue index 6d52a3b1..e0652d9f 100644 --- a/client/components/modals/libraries/EditModal.vue +++ b/client/components/modals/libraries/EditModal.vue @@ -12,7 +12,7 @@
- +
@@ -144,6 +144,13 @@ export default { submit() { if (!this.validate()) return + // If custom expression input is focused then unfocus it instead of submitting + if (this.$refs.tabComponent && this.$refs.tabComponent.checkBlurExpressionInput) { + if (this.$refs.tabComponent.checkBlurExpressionInput()) { + return + } + } + if (this.library) { this.submitUpdateLibrary() } else { diff --git a/client/components/modals/libraries/ScheduleScan.vue b/client/components/modals/libraries/ScheduleScan.vue index 743b6970..df664722 100644 --- a/client/components/modals/libraries/ScheduleScan.vue +++ b/client/components/modals/libraries/ScheduleScan.vue @@ -4,7 +4,7 @@

Schedule Automatic Library Scans

- +
@@ -25,6 +25,11 @@ export default { }, computed: {}, methods: { + checkBlurExpressionInput() { + // returns true if advanced cron input is focused + if (!this.$refs.cronExpressionBuilder) return false + return this.$refs.cronExpressionBuilder.checkBlurExpressionInput() + }, toggleEnableAutoScan(v) { if (!v) this.updatedCron(null) else if (!this.cronExpression) { diff --git a/client/components/ui/TextInput.vue b/client/components/ui/TextInput.vue index 7943e288..5ae15663 100644 --- a/client/components/ui/TextInput.vue +++ b/client/components/ui/TextInput.vue @@ -36,7 +36,8 @@ export default { data() { return { showPassword: false, - isHovering: false + isHovering: false, + isFocused: false } }, computed: { @@ -66,9 +67,11 @@ export default { this.inputValue = '' }, focused() { + this.isFocused = true this.$emit('focus') }, blurred() { + this.isFocused = false this.$emit('blur') }, change(e) { diff --git a/client/components/widgets/CronExpressionBuilder.vue b/client/components/widgets/CronExpressionBuilder.vue index 3e3f261b..31cb4761 100644 --- a/client/components/widgets/CronExpressionBuilder.vue +++ b/client/components/widgets/CronExpressionBuilder.vue @@ -24,7 +24,7 @@