Skip to content

Commit def57d6

Browse files
committed
remove mobile language picker
1 parent 53b9a0e commit def57d6

File tree

6 files changed

+22
-162
lines changed

6 files changed

+22
-162
lines changed

_includes/header.html

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -12,11 +12,6 @@
1212
<nav id="navbar" aria-label="primary">
1313
<input id="q" placeholder="🔎 search">
1414
<ul id="navmenu">
15-
<li>
16-
<a href="/" id="home-menu" {% if page.menu=='home' %} class="active" {% endif %}>
17-
{{ site.data[page.lang].menu.home }}
18-
</a>
19-
</li>
2015
<li id="getting-started-menu" class="submenu">
2116
<a href="/{{ page.lang }}/starter/installing.html" {% if page.menu=='starter' %} class="active" {% endif%}>
2217
{{ site.data[page.lang].menu.getting_started }}
@@ -252,6 +247,5 @@
252247
<span id="icon-sun">{% include icons/sun.svg %}</span>
253248
</button>
254249
{% include language-picker.html %}
255-
{% include language-picker-mobile.html %}
256250
</div>
257251
</header>

_includes/language-picker-mobile.html

Lines changed: 0 additions & 20 deletions
This file was deleted.

_includes/language-picker.html

Lines changed: 15 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,18 @@
11
<div class="desktop-lang-switcher">
2-
{% assign url_parts = page.url | split: '/' %}
3-
{% assign url_remainder = url_parts | slice: 2, url_parts.size | join: '/' %}
4-
{% assign current_lang = page.lang %}
5-
<button class="lang-btn" type="button" aria-haspopup="menu" aria-label="Change language">
6-
<span id="current-lang"></span>
7-
</button>
8-
<ul class="lang-list submenu-content" aria-labelledby="current-lang" >
9-
{% for lang in site.data.languages %}
10-
<li>
11-
<a href="/{{ lang.code }}/{{ url_remainder }}">
12-
{% if lang.code == current_lang %}
2+
<button class="lang-btn" type="button" aria-haspopup="menu" aria-label="Change language">
3+
{% include icons/i18n.svg %}
4+
</button>
5+
<ul class="lang-list">
6+
{% for lang in site.data.languages %}
7+
<li>
8+
<a href="/{{ lang.code }}/{{ url_remainder }}">
9+
{% if lang.code == current_lang %}
1310
<strong>{{ lang.name }}</strong>
14-
{% else %}
11+
{% else %}
1512
{{ lang.name }}
16-
{% endif %}
17-
</a>
18-
</li>
19-
{% endfor %}
20-
</ul>
21-
<div id="languageData" data-languages='{{ site.data.languages | jsonify }}' style="display:none;"></div>
22-
</div>
13+
{% endif %}
14+
</a>
15+
</li>
16+
{% endfor %}
17+
</ul>
18+
</div>

css/style.css

Lines changed: 4 additions & 64 deletions
Original file line numberDiff line numberDiff line change
@@ -802,23 +802,8 @@ button.lang-btn {
802802
cursor: pointer;
803803
color: var(--card-fg);
804804
padding: 0.2rem;
805-
font-size: inherit;
806-
display: flex;
807-
justify-content: center;
808-
align-items: center;
809-
gap: 1rem;
810-
811-
&::after {
812-
content: "";
813-
display: block;
814-
width: 0.8em;
815-
height: 0.5em;
816-
background-color: var(--card-fg);
817-
clip-path: polygon(100% 0%, 0 0%, 50% 100%);
818-
cursor: pointer;
819-
pointer-events: none;
820-
transition: transform 0.2s ease-in-out;
821-
}
805+
width: fit-content;
806+
aspect-ratio: 1;
822807
}
823808

824809
div.desktop-lang-switcher {
@@ -860,11 +845,6 @@ div.desktop-lang-switcher {
860845
}
861846
}
862847
}
863-
864-
/* rotate arrow */
865-
&:is(:hover,:focus-within) button.lang-btn::after {
866-
transform: rotate(180deg);
867-
}
868848
}
869849

870850
/* navigation */
@@ -909,7 +889,7 @@ div.desktop-lang-switcher {
909889
.submenu-content {
910890
position: absolute;
911891
top: 100%;
912-
left: 50%;
892+
left: -100%;
913893
transform: translate(-50%);
914894
margin: auto;
915895
box-shadow: 1px 2px var(--hover-fg);
@@ -953,9 +933,6 @@ div.desktop-lang-switcher {
953933
text-decoration: none;
954934
}
955935

956-
#language-picker-menu {
957-
display: none;
958-
}
959936

960937
/* TOC side menu */
961938

@@ -1320,26 +1297,6 @@ h2 a {
13201297
display: flex;
13211298
gap: 8px;
13221299
}
1323-
1324-
#language-picker-menu #navmenu>li:first-child {
1325-
display: flex;
1326-
}
1327-
1328-
#language-picker-menu #navmenu {
1329-
max-height: 70vh;
1330-
overflow-y: auto;
1331-
scrollbar-width: thin;
1332-
text-align: center;
1333-
}
1334-
1335-
#language-picker-menu {
1336-
display: block;
1337-
position: absolute;
1338-
top: 0;
1339-
right: 0;
1340-
width: 100%;
1341-
z-index: 1000;
1342-
}
13431300
}
13441301

13451302
/* TOC responsive */
@@ -1448,10 +1405,6 @@ h2 a {
14481405
header {
14491406
position: absolute;
14501407
}
1451-
1452-
#mobile-menu {
1453-
display:none;
1454-
}
14551408
}
14561409

14571410
/* For image callouts in writing-middleware.md */
@@ -1589,9 +1542,6 @@ h2 a {
15891542
margin-right: 0;
15901543
padding-right: 10px;
15911544
}
1592-
1593-
1594-
15951545
#blog-doc .blog-details + p > img {
15961546
margin-bottom: 15px;
15971547
}
@@ -1661,14 +1611,6 @@ blockquote {
16611611
}
16621612

16631613
@media all and (max-width: 1110px) {
1664-
.desktop-lang-switcher {
1665-
display: none;
1666-
}
1667-
1668-
#mobile-menu {
1669-
display: block;
1670-
}
1671-
16721614
.algolia-autocomplete {
16731615
display: none !important;
16741616
}
@@ -1740,6 +1682,7 @@ blockquote {
17401682

17411683
.submenu-content {
17421684
width: 100%;
1685+
left: -200%;
17431686
position: static;
17441687
display: none;
17451688
margin-top: 7px;
@@ -1749,9 +1692,6 @@ blockquote {
17491692
border: none;
17501693
border-radius: 0;
17511694
box-shadow: none;
1752-
max-height: 190px;
1753-
overflow-y: auto;
1754-
overflow-x: hidden;
17551695
transform: none;
17561696
cursor: pointer;
17571697
}

js/app.js

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,5 @@
1-
const languageElement = document.getElementById('languageData');
2-
const languagesData = languageElement ? JSON.parse(languageElement.dataset.languages) : [];
3-
const langDisplay = document.getElementById('current-lang');
41
const i18nMsgBox = document.getElementById("i18n-notice-box");
52

6-
// display current language in language picker component
7-
if (langDisplay) {
8-
const currentLanguage = window.location.pathname.split('/')[1];
9-
const matchedLang = languagesData.find(lang => lang.code === currentLanguage);
10-
langDisplay.textContent = matchedLang ? matchedLang.name : 'English';
11-
}
12-
133
// add/remove class 'scroll' on scroll by 5px
144
const scrollTarget = document.querySelector('.logo-container');
155
const scrollObserver = new IntersectionObserver(

js/menu.js

Lines changed: 3 additions & 43 deletions
Original file line numberDiff line numberDiff line change
@@ -67,13 +67,9 @@ for (const el of itemsMenu) {
6767
// Mobile Menu and Language Picker
6868

6969
const linkItemsMenu = document.querySelectorAll(".submenu > a");
70-
const languageItems = document.querySelectorAll("#language-picker-menu > #navbar > #navmenu > .submenu > a");
71-
const languagePickerMenu = document.querySelector("#language-picker-menu > #navbar > #navmenu");
7270
const menu = document.querySelector("#navmenu");
7371
const overlay = document.querySelector("#overlay");
7472
const navButton = document.querySelector("#nav-button");
75-
const languagePickerButton = document.querySelector("#language-picker-button");
76-
7773

7874
for (const el of linkItemsMenu) {
7975
el.addEventListener("click", (e) => {
@@ -85,54 +81,18 @@ for (const el of linkItemsMenu) {
8581
e.preventDefault();
8682
}
8783
});
88-
89-
}
90-
91-
for (const el of languageItems) {
92-
el.addEventListener("click", (e) => {
93-
const href = el.getAttribute("href");
94-
95-
if (href && href !== "#") {
96-
languagePickerMenu?.classList.remove("opens");
97-
overlay?.classList.remove("blurs");
98-
document.body.classList.remove("no-scroll");
99-
100-
window.location.href = href;
101-
}
102-
});
10384
}
10485

10586
navButton?.addEventListener("click", () => {
106-
const isLanguageMenuOpen = languagePickerMenu?.classList.contains("opens");
107-
if (isLanguageMenuOpen) {
108-
languagePickerMenu?.classList.remove("opens");
109-
menu?.classList.toggle("opens");
110-
} else {
111-
menu?.classList.toggle("opens");
112-
overlay?.classList.toggle("blurs");
113-
document.body.classList.toggle("no-scroll");
114-
}
115-
});
116-
117-
languagePickerButton?.addEventListener("click", () => {
118-
const isMenuOpen = menu?.classList.contains("opens");
119-
if (isMenuOpen) {
120-
menu?.classList.remove("opens");
121-
languagePickerMenu?.classList.toggle("opens");
122-
} else {
123-
languagePickerMenu?.classList.toggle("opens");
124-
overlay?.classList.toggle("blurs");
125-
document.body.classList.toggle("no-scroll");
126-
}
87+
menu?.classList.toggle("opens");
88+
overlay?.classList.toggle("blurs");
89+
document.body.classList.toggle("no-scroll");
12790
});
12891

12992
overlay?.addEventListener("click", () => {
13093
if (menu?.classList.contains("opens")) {
13194
menu.classList.remove("opens");
13295
}
133-
if (languagePickerMenu?.classList.contains("opens")) {
134-
languagePickerMenu.classList.remove("opens");
135-
}
13696
overlay.classList.remove("blurs");
13797
document.body.classList.remove("no-scroll");
13898
});

0 commit comments

Comments
 (0)