From 181d9206d9fb8c98348bfa107f42a71fc85efda6 Mon Sep 17 00:00:00 2001 From: eight Date: Wed, 6 Dec 2017 03:11:23 +0800 Subject: [PATCH] Fix: hide colorpicker on mousedown --- manage/config-dialog.js | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/manage/config-dialog.js b/manage/config-dialog.js index 6b24fdaa..868f774b 100644 --- a/manage/config-dialog.js +++ b/manage/config-dialog.js @@ -9,6 +9,8 @@ function configDialog(style) { const elements = []; const colorpicker = window.colorpicker(); + document.addEventListener('mousedown', onMouseDown); + buildConfigForm(); renderValues(); @@ -29,6 +31,7 @@ function configDialog(style) { t('confirmCancel') ] }).then(({button, esc}) => { + document.removeEventListener('mousedown', onMouseDown); if (button !== 1) { colorpicker.hide(); } @@ -194,4 +197,10 @@ function configDialog(style) { window.addEventListener('keydown', messageBox.listeners.key, true); } } + + function onMouseDown(e) { + if (!e.target.closest('.colorpicker-popup')) { + colorpicker.hide(); + } + } }