Skip to content

Commit

Permalink
Merge pull request #4270 from pranavmangal/prefer-user-theme
Browse files Browse the repository at this point in the history
Prefer user selected theme over system theme
  • Loading branch information
szarnyasg authored Dec 6, 2024
2 parents 5332a58 + 63141bf commit 341f255
Show file tree
Hide file tree
Showing 6 changed files with 23 additions and 45 deletions.
10 changes: 1 addition & 9 deletions _layouts/community_extension_doc.html
Original file line number Diff line number Diff line change
Expand Up @@ -23,15 +23,7 @@

{% seo title=false %}

<script>
var userPrefersDark = localStorage.getItem('mode') === 'dark';
var systemPrefersDark = window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches;
if (userPrefersDark || systemPrefersDark) {
document.documentElement.classList.add('darkmode');
document.documentElement.classList.add('disable-transitions');
}
</script>

<script src="{{ site.baseurl }}/js/determine_color_scheme.js?{{ site.data['hash'] }}"></script>
</head>

<body class="documentation communityextensions{% if page.body_class %} {{ page.body_class }} {% endif %}">
Expand Down
10 changes: 1 addition & 9 deletions _layouts/default.html
Original file line number Diff line number Diff line change
Expand Up @@ -32,15 +32,7 @@

{% seo title=false %}

<script>
var userPrefersDark = localStorage.getItem('mode') === 'dark';
var systemPrefersDark = window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches;
if (userPrefersDark || systemPrefersDark) {
document.documentElement.classList.add('darkmode');
document.documentElement.classList.add('disable-transitions');
}
</script>

<script src="{{ site.baseurl }}/js/determine_color_scheme.js?{{ site.data['hash'] }}"></script>
</head>
<body {% if page.body_class %} class="{{ page.body_class }}" {% endif %}>

Expand Down
10 changes: 1 addition & 9 deletions _layouts/docu.html
Original file line number Diff line number Diff line change
Expand Up @@ -31,16 +31,8 @@
<meta http-equiv="Content-Security-Policy" content="upgrade-insecure-requests" />

{% seo title=false %}

<script>
var userPrefersDark = localStorage.getItem('mode') === 'dark';
var systemPrefersDark = window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches;
if (userPrefersDark || systemPrefersDark) {
document.documentElement.classList.add('darkmode');
document.documentElement.classList.add('disable-transitions');
}
</script>

<script src="{{ site.baseurl }}/js/determine_color_scheme.js?{{ site.data['hash'] }}"></script>
</head>

{% capture issue_title %}Issue found on page '{{ page.title }}'{% endcapture %}
Expand Down
10 changes: 1 addition & 9 deletions _layouts/post.html
Original file line number Diff line number Diff line change
Expand Up @@ -36,15 +36,7 @@
{% seo title=false %}
{% endif %}

<script>
var userPrefersDark = localStorage.getItem('mode') === 'dark';
var systemPrefersDark = window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches;
if (userPrefersDark || systemPrefersDark) {
document.documentElement.classList.add('darkmode');
document.documentElement.classList.add('disable-transitions');
}
</script>

<script src="{{ site.baseurl }}/js/determine_color_scheme.js?{{ site.data['hash'] }}"></script>
</head>
<body {% if page.body_class %} class="{{ page.body_class }}" {% endif %}>

Expand Down
10 changes: 1 addition & 9 deletions _layouts/postarchive.html
Original file line number Diff line number Diff line change
Expand Up @@ -36,15 +36,7 @@
{% seo title=false %}
{% endif %}

<script>
var userPrefersDark = localStorage.getItem('mode') === 'dark';
var systemPrefersDark = window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches;
if (userPrefersDark || systemPrefersDark) {
document.documentElement.classList.add('darkmode');
document.documentElement.classList.add('disable-transitions');
}
</script>

<script src="{{ site.baseurl }}/js/determine_color_scheme.js?{{ site.data['hash'] }}"></script>
</head>
<body {% if page.body_class %} class="{{ page.body_class }}" {% endif %}>

Expand Down
18 changes: 18 additions & 0 deletions js/determine_color_scheme.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
(function() {
function setDarkMode() {
document.documentElement.classList.add("darkmode");
document.documentElement.classList.add('disable-transitions')
}

const userColorSchemePref = localStorage.getItem("mode");
if (userColorSchemePref !== null) {
// Use user preference
return userColorSchemePref === 'dark' && setDarkMode();
}

// Fallback to system preference
var systemPrefersDark = window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches;
if (systemPrefersDark) {
setDarkMode()
}
})();

0 comments on commit 341f255

Please sign in to comment.