Skip to content

Commit 25f91a7

Browse files
authored
Merge pull request #184 from kaitai-io/accessblty
Fix accessibility issues
2 parents 2b6cfd5 + ff3f94f commit 25f91a7

File tree

16 files changed

+532
-206
lines changed

16 files changed

+532
-206
lines changed

LICENSE-3RD-PARTY.txt

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1117,6 +1117,27 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
11171117
THE SOFTWARE.
11181118
================================================================================
11191119

1120+
================================================================================
1121+
a11y-dialog
1122+
1123+
License name: MIT
1124+
License URL: https://github.com/KittyGiraudel/a11y-dialog/blob/main/LICENSE
1125+
License applies to files under the folder lib/_npm/a11y-dialog/
1126+
1127+
Website: https://a11y-dialog.netlify.app/
1128+
Source: https://github.com/KittyGiraudel/a11y-dialog
1129+
================================================================================
1130+
The MIT License (MIT)
1131+
1132+
Copyright (c) 2024 Kitty Giraudel
1133+
1134+
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
1135+
1136+
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
1137+
1138+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
1139+
================================================================================
1140+
11201141
================================================================================
11211142
bowser
11221143

css/HexViewer.css

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616

1717
.hexViewer .hexRow { height:21px; }
1818

19-
.hexViewer .addrPart { color: #ccc; }
19+
.hexViewer .addrPart { color: #b50000; }
2020
.hexViewer .hexPart { margin-left: 8px; }
2121
.hexViewer .asciiPart { margin-left: 8px; }
2222
.hexViewer .hexcell.cell8 { margin-left: 4px; }

css/app.css

Lines changed: 38 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,12 @@
1+
a {
2+
text-decoration: underline;
3+
text-underline-position: under;
4+
}
5+
a:hover,
6+
a:focus {
7+
text-decoration: none;
8+
}
9+
110
/*.lm_content>div { height: 100%; width: 100% }*/
211
.lm_splitter.lm_horizontal .lm_drag_handle { left:-5px; width:15px }
312
.lm_splitter.lm_vertical .lm_drag_handle { top:-5px; height:15px }
@@ -25,8 +34,32 @@ body { line-height:normal }
2534
#fileTree .jstree-ocl { display:none }
2635
#fileTreeCont .footer { position:absolute; bottom:0; width:100%; padding-left:2px }
2736
#fileTreeCont .footer .btn { width:33.3%; border-radius:0; font-size:13px; padding:3px 10px }
37+
.jstree-default-dark .jstree-anchor {
38+
color: #ccc;
39+
}
40+
.jstree-default-dark .jstree-clicked,
41+
.jstree-default-dark .jstree-checked,
42+
.jstree-default-dark .jstree-hovered {
43+
color: white;
44+
}
45+
.ace-monokai .ace_entity.ace_name.ace_tag,
46+
.ace-monokai .ace_keyword,
47+
.ace-monokai .ace_meta.ace_tag,
48+
.ace-monokai .ace_storage {
49+
color: #fc6f09;
50+
}
51+
.ace-monokai .ace_comment {
52+
color: #9db44a;
53+
}
54+
.ace-monokai .ace_gutter {
55+
background: #333;
56+
color: #ccc;
57+
}
2858
body { color:#333 }
2959
.dropdown { position: absolute; display:none; z-index:9999 }
60+
.dropdown a {
61+
text-decoration: none;
62+
}
3063
.dropdown-menu { z-index:9999 }
3164
.dropdown .dropdown-menu { font-size:13px; border-color:#375a7f; border-radius:0 }
3265
.dropdown .glyphicon { margin-right:5px; }
@@ -43,19 +76,18 @@ body { color:#333 }
4376
#unsupportedBrowser .closeBtn { float:right; margin-top: 1px; cursor: pointer }
4477
.marker_solution { background:rgba(255, 80, 80, 0.3); }
4578
.marker_user { background:rgba(80, 255, 80, 0.30); }
46-
#parsedDataTree .intVal, #parsedDataTree .enumDesc { color:#bbb }
79+
#parsedDataTree .intVal, #parsedDataTree .enumDesc { color:#b50000 }
4780
#parsedDataTree .flags { color:#933; font-weight: bold }
4881
#parsedDataTree .propName { color: blue; }
4982
#parsedDataTree .className { color: green; }
5083
#parsedDataTree .primitiveValue { font-weight: bold }
51-
#infoPanel { background: #222222; }
52-
#infoPanel { color: #eee; display:none; padding: 10px }
53-
#aboutWebIde { position:absolute; bottom:10px; right:10px; font-size:12px }
84+
#infoPanel { background: #222222; color: #eee; padding: 10px; height: 100%; overflow: auto }
85+
#aboutWebIde { float: right; margin-top: 5px; font-size:12px }
5486
#disableLazyParsingDiv, #exportToJsonDiv, #unparsedDiv, #bytesDiv, #parsedPathDiv, #selectionLengthDiv { font-size:13px; margin-top:5px }
5587
#parsedPath { word-break: break-all; }
5688
#unparsedDiv { margin-top:0 }
5789
#disableLazyParsingDiv label { margin-left:2px; font-weight:normal; vertical-align:middle }
5890
#welcomeModalLabel { text-align:center }
59-
#welcomeModal .licenses { font-size:12px; margin-bottom:10px }
60-
#converterPanel { display:none }
91+
.welcome-modal-licenses { font-size:12px; margin-bottom:10px }
92+
#converterPanel { height: 100%; overflow: auto }
6193
/*.marker_match { background:rgba(80, 255, 80, 0.30); }*/

css/contextmenu.css

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,24 @@
1+
.dropdown-container,
2+
.dropdown-overlay {
3+
position: fixed;
4+
top: 0;
5+
right: 0;
6+
bottom: 0;
7+
left: 0;
8+
}
9+
10+
.dropdown-container {
11+
z-index: 1050;
12+
}
13+
14+
/**
15+
* 1. Make sure the dialog container and all its descendants are not
16+
* visible and not focusable when it is hidden.
17+
*/
18+
.dropdown-container[aria-hidden='true'] {
19+
display: none; /* 1 */
20+
}
21+
122
.dropdown-submenu {
223
position:relative;
324
}

css/dialog.css

Lines changed: 75 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,75 @@
1+
.dialog-container,
2+
.dialog-overlay {
3+
position: fixed;
4+
top: 0;
5+
right: 0;
6+
bottom: 0;
7+
left: 0;
8+
}
9+
10+
.dialog-container {
11+
z-index: 1050;
12+
overflow-x: hidden;
13+
overflow-y: auto;
14+
}
15+
16+
/**
17+
* 1. Make sure the dialog container and all its descendants are not
18+
* visible and not focusable when it is hidden.
19+
*/
20+
.dialog-container[aria-hidden='true'] {
21+
display: none; /* 1 */
22+
}
23+
24+
.dialog-overlay {
25+
z-index: 1040;
26+
background-color: #000;
27+
opacity: 0.7;
28+
animation: fade-in .3s both;
29+
}
30+
31+
.dialog-content {
32+
z-index: 2;
33+
position: relative;
34+
35+
background-color: #303030;
36+
color: #fff;
37+
background-clip: padding-box;
38+
border: 1px solid #999;
39+
border: 1px solid rgba(0, 0, 0, 0.2);
40+
border-radius: 6px;
41+
-webkit-box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);
42+
box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);
43+
width: auto;
44+
margin: 10px;
45+
animation: fade-in .3s .2s both, slide-down .3s .2s both;
46+
}
47+
48+
@media (min-width: 768px) {
49+
.dialog-content {
50+
width: 600px;
51+
margin: 30px auto;
52+
-webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);
53+
box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);
54+
}
55+
}
56+
57+
/* https://a11y-dialog.netlify.app/advanced/animations */
58+
@keyframes fade-in {
59+
from {
60+
opacity: 0;
61+
}
62+
}
63+
64+
@keyframes slide-down {
65+
from {
66+
transform: translateY(-25%);
67+
}
68+
}
69+
70+
@media (prefers-reduced-motion: reduce) {
71+
.dialog-overlay,
72+
.dialog-content {
73+
animation: none;
74+
}
75+
}

docs/wiki/3rd-party-libraries.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,13 @@ Source: https://github.com/vuejs/vue
5555

5656
License: MIT (https://raw.githubusercontent.com/vuejs/vue/dev/LICENSE)
5757

58+
## a11y-dialog
59+
Website: https://a11y-dialog.netlify.app/
60+
61+
Source: https://github.com/KittyGiraudel/a11y-dialog
62+
63+
License: MIT (https://github.com/KittyGiraudel/a11y-dialog/blob/main/LICENSE)
64+
5865
## bowser
5966
Source: https://github.com/ded/bowser
6067

0 commit comments

Comments
 (0)