summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorStas Vilchik <vilchiks@gmail.com>2016-02-01 18:00:20 +0100
committerStas Vilchik <vilchiks@gmail.com>2016-02-01 18:00:20 +0100
commit67ebdfe31073e8bb8b019990d9c0f463a85da204 (patch)
tree2df1b3ae605dc2da15842113d2cd4f71113347bf
parent501b360690bd4acc6412843b6753a54f6024be0c (diff)
downloadsonarqube-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.js5
-rw-r--r--server/sonar-web/src/main/js/main/nav/global/global-nav.js13
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();
}
},