diff options
author | Stas Vilchik <vilchiks@gmail.com> | 2016-02-01 18:00:20 +0100 |
---|---|---|
committer | Stas Vilchik <vilchiks@gmail.com> | 2016-02-01 18:00:20 +0100 |
commit | 67ebdfe31073e8bb8b019990d9c0f463a85da204 (patch) | |
tree | 2df1b3ae605dc2da15842113d2cd4f71113347bf | |
parent | 501b360690bd4acc6412843b6753a54f6024be0c (diff) | |
download | sonarqube-67ebdfe31073e8bb8b019990d9c0f463a85da204.tar.gz sonarqube-67ebdfe31073e8bb8b019990d9c0f463a85da204.zip |
do not open global search or help modal when another modal is open
-rw-r--r-- | server/sonar-web/src/main/js/main/nav/global/global-nav-search.js | 5 | ||||
-rw-r--r-- | server/sonar-web/src/main/js/main/nav/global/global-nav.js | 13 |
2 files changed, 11 insertions, 7 deletions
diff --git a/server/sonar-web/src/main/js/main/nav/global/global-nav-search.js b/server/sonar-web/src/main/js/main/nav/global/global-nav-search.js index 5da1046bbde..d335a3b716e 100644 --- a/server/sonar-web/src/main/js/main/nav/global/global-nav-search.js +++ b/server/sonar-web/src/main/js/main/nav/global/global-nav-search.js @@ -38,7 +38,10 @@ export default React.createClass({ componentDidMount() { key('s', () => { - this.openSearch(); + const isModalOpen = document.querySelector('html').classList.contains('modal-open'); + if (!isModalOpen) { + this.openSearch(); + } return false; }); }, diff --git a/server/sonar-web/src/main/js/main/nav/global/global-nav.js b/server/sonar-web/src/main/js/main/nav/global/global-nav.js index e7e368d3f4f..1c2916c56de 100644 --- a/server/sonar-web/src/main/js/main/nav/global/global-nav.js +++ b/server/sonar-web/src/main/js/main/nav/global/global-nav.js @@ -34,12 +34,13 @@ export default React.createClass({ }, onKeyPress(e) { - var tagName = e.target.tagName; - if (tagName !== 'INPUT' && tagName !== 'SELECT' && tagName !== 'TEXTAREA') { - var code = e.keyCode || e.which; - if (code === 63) { - this.openHelp(); - } + const tagName = e.target.tagName; + const code = e.keyCode || e.which; + const isInput = tagName === 'INPUT' || tagName === 'SELECT' || tagName === 'TEXTAREA'; + const isTriggerKey = code === 63; + const isModalOpen = document.querySelector('html').classList.contains('modal-open'); + if (!isInput && !isModalOpen && isTriggerKey) { + this.openHelp(); } }, |