From b990ab05cbcae06090cbf904e9b719cff92b8b90 Mon Sep 17 00:00:00 2001 From: George Tudor Date: Sat, 19 Mar 2022 22:07:12 +0200 Subject: [PATCH 1/3] dont show search modal when input/textarea are focused --- resources/js/app.js | 3 ++- resources/js/nav.js | 21 +++++++++++++++++++++ resources/views/layouts/_nav.blade.php | 10 +++++----- 3 files changed, 28 insertions(+), 6 deletions(-) create mode 100644 resources/js/nav.js diff --git a/resources/js/app.js b/resources/js/app.js index 0b7949816..d8db42587 100644 --- a/resources/js/app.js +++ b/resources/js/app.js @@ -5,6 +5,7 @@ import Choices from 'choices.js'; import 'choices.js/public/assets/styles/choices.css'; require('./bootstrap'); +require('./nav'); require('./search'); require('./editor'); @@ -22,4 +23,4 @@ window.highlightCode = (element) => { element.querySelectorAll('pre code').forEach((block) => { hljs.highlightBlock(block); }); -}; +}; \ No newline at end of file diff --git a/resources/js/nav.js b/resources/js/nav.js new file mode 100644 index 000000000..f09a9437f --- /dev/null +++ b/resources/js/nav.js @@ -0,0 +1,21 @@ +window.navConfig = () => { + return { + nav: false, + searchVisible: false, + searchQuery: '', + community: false, + chat: false, + settings: false, + + // Show search modal + showSearch: function (event) { + // Abort if trying to open while the following elements are focused + if (event instanceof KeyboardEvent && (event.target.tagName === 'INPUT' || event.target.tagName === 'TEXTAREA')) { + return false; + } + + this.searchVisible = true; + } + } + +} \ No newline at end of file diff --git a/resources/views/layouts/_nav.blade.php b/resources/views/layouts/_nav.blade.php index 1cec48397..9ea909f70 100644 --- a/resources/views/layouts/_nav.blade.php +++ b/resources/views/layouts/_nav.blade.php @@ -1,5 +1,5 @@