From 46fbfb98fe86685f968b8b73418de73973d3df80 Mon Sep 17 00:00:00 2001 From: Michael Hawkins Date: Wed, 6 Nov 2019 17:07:12 +0800 Subject: [PATCH] MDL-66890 forumreport_summary: Improved filter close keyboard response --- .../report/summary/amd/build/filters.min.js | Bin 5685 -> 6021 bytes .../summary/amd/build/filters.min.js.map | Bin 22725 -> 23705 bytes mod/forum/report/summary/amd/src/filters.js | 12 +++++++++--- 3 files changed, 9 insertions(+), 3 deletions(-) diff --git a/mod/forum/report/summary/amd/build/filters.min.js b/mod/forum/report/summary/amd/build/filters.min.js index 14c9f30e183f19f939578f84564640581b02de61..ef027a50e9246f9612d6047463467f7d94f5322b 100644 GIT binary patch delta 183 zcmdn0)2hG0hEqvRO+%?PFC{fCGcPqo$=0@{vLH1-O(9V)JGIg|KP9!MX7WW&akjjY z)FLobjIFpJF*#Lp@>@>z$u?Y^lXE!LCV%1$nw-nYIr%1^S30hI8_C&ala%Tw0q`xHwqgoGJVt*#W!y3eW%m diff --git a/mod/forum/report/summary/amd/build/filters.min.js.map b/mod/forum/report/summary/amd/build/filters.min.js.map index 68e2b676b55c53952faf32c69c21ffa9cff7e976..4ae4a7500ccb1a963fc0024c6f79e0f05ea1293d 100644 GIT binary patch delta 1757 zcmeHI%}-N75YH9`qqc;PVrh{+O8Ka)7A+zq7P4>q-b0}wv{ulAv9`5f?FUk5OAtM4 z!e!#Yn2>NV@nV!bJ@^NhcryM0o;-QiqcQGm8v#uWC*#3)*f;OZ%x`CAe>3}bn>>C) zUedarOsc~3$&`nBCacnt5L3Bg>W+9X72*k0!Q%NA7_al0ck7e}Qh?3FezIb|Kb)z* zw;G}bnQLhe`RIjlCHt)}L+?T)CL4vE0G=3a~3zwgK@$0`nSmeXLXdjd9FY-Aapx11tn z_}DV#&P(h#2EubH9#0bGB^9HJ=D}#~x0ZKhU4gaMOT(j_#u>XxuP`>Erm;3`RK@g4 zyeL7+^1L<c0Jf!khK>0gEjY!oywBgt@_T=J>H;@}E0K$#wa!Z42#|KCr9vpw@Duj?-H_-BoN=xD;IzY^ftX6`-&JF=ByhlpNqY1%(&MwT+ z3u4^h0ARHZ_CPHEgvbbp&CU%0anfCb&_|KK#vFE9be|CGZj9oIyPcHawfnn$g=6Q4 zsV6oXuC~qsH{U5oiOsL?jEuAapSt=*=N<8Qt&6g4V(7xlaNZLji%{@w0ha5v~UgqK3?<5<1C8hj8B+u=p<23()$ftUIT0R0tw7&`!u#`+*J)?^ySHZi}9 Mbv698{nnd)0HJ#J0RR91 delta 1232 zcmds0&rcIU6wb7XkOs<+wn$-1DTM;*#3H278kD@9-7cj9A%y^*)b-+SMC^UXI8UywIP zRK1=%GjrpdCwWHAqGBk#YoZo=+ZAVjwqA?3~GF3WvwD(-V=8W zD+tZ4Z4&}A7*&D6zCvdJW<-S9FuwHE;t!7}k*tEE3SE~0W<}nBOs4@Z%i^48Q)0U% z$W)*jz+?s+JuPGcdp(_zNs*Zn;T1;b0J4lu0t}s$@=6wylhw2F=5_As#`a8{?wcp# zh$?u|+v_rz!rSdJh#|P=$u>UmUgEcZ@4X(>E$SsP6Wg@rTovb%OtZYZj#qqr^@e(O z2&s zOmAbH{MYJNEcFL%_0xDL)$JrYPVFkL+sZioD&ga@Htz9JLfq-Y5+Y&$h7n~%Hdh*tPb&B*5^c|^)-SGzPHbPSDe;ri zu%Y2V%UqkT(iMQ1MIBYehZR<5MrvP_OE!GInoB;;bIRuD$h_NGUMiYn@u#)8eC;h3 T#`0!+=7^Zb5UQz)+->>|G!a+) diff --git a/mod/forum/report/summary/amd/src/filters.js b/mod/forum/report/summary/amd/src/filters.js index 63040c64b8d..d53503a6fdb 100644 --- a/mod/forum/report/summary/amd/src/filters.js +++ b/mod/forum/report/summary/amd/src/filters.js @@ -96,7 +96,7 @@ export const init = (root) => { }; // Close the relevant filter. - var closeOpenFilters = (openFilterButton, openFilter) => { + const closeOpenFilters = (openFilterButton, openFilter) => { openFilter.classList.add('hidden'); openFilter.setAttribute('data-openfilter', 'false'); @@ -145,14 +145,17 @@ export const init = (root) => { // Add listeners to handle closing filter. const closeListener = e => { - if (e.target.id !== referenceElement.id && popperContent !== e.target.closest('[data-openfilter="true"]')) { + if (e.target.id !== referenceElement.id && popperContent !== e.target.closest('[data-openfilter="true"]') && + (typeof e.keyCode === 'undefined' || e.keyCode === KeyCodes.enter || e.keyCode === KeyCodes.space)) { closeOpenFilters(referenceElement, popperContent); document.removeEventListener('click', closeListener); + document.removeEventListener('keyup', closeListener); document.removeEventListener('keyup', escCloseListener); } }; document.addEventListener('click', closeListener); + document.addEventListener('keyup', closeListener); const escCloseListener = e => { if (e.keyCode === KeyCodes.escape) { @@ -205,14 +208,17 @@ export const init = (root) => { // Add listener to handle closing filter. const closeListener = e => { - if (e.target.id !== referenceElement.id && popperContent !== e.target.closest('[data-openfilter="true"]')) { + if (e.target.id !== referenceElement.id && popperContent !== e.target.closest('[data-openfilter="true"]') && + (typeof e.keyCode === 'undefined' || e.keyCode === KeyCodes.enter || e.keyCode === KeyCodes.space)) { closeOpenFilters(referenceElement, popperContent); document.removeEventListener('click', closeListener); + document.removeEventListener('keyup', closeListener); document.removeEventListener('keyup', escCloseListener); } }; document.addEventListener('click', closeListener); + document.addEventListener('keyup', closeListener); const escCloseListener = e => { if (e.keyCode === KeyCodes.escape) { -- 2.43.0