mirror of
https://github.com/Lastorder-DC/rhymix.git
synced 2026-05-10 20:44:28 +09:00
Auto-detect color scheme first, then override with user preference
This commit is contained in:
parent
6200e8d4ae
commit
0237d5c759
2 changed files with 21 additions and 10 deletions
|
|
@ -2368,7 +2368,7 @@ class Context
|
||||||
public static function getBodyClass()
|
public static function getBodyClass()
|
||||||
{
|
{
|
||||||
$class_list = self::$_instance->body_class;
|
$class_list = self::$_instance->body_class;
|
||||||
if (($color_scheme = Rhymix\Framework\UA::getColorScheme()) !== 'none')
|
if (($color_scheme = Rhymix\Framework\UA::getColorScheme()) !== 'auto')
|
||||||
{
|
{
|
||||||
$class_list[] = 'color_scheme_' . $color_scheme;
|
$class_list[] = 'color_scheme_' . $color_scheme;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -350,16 +350,11 @@ jQuery(function($) {
|
||||||
});
|
});
|
||||||
|
|
||||||
/* Detect color scheme */
|
/* Detect color scheme */
|
||||||
|
var body_element = $('body');
|
||||||
var color_scheme_cookie = XE.cookie.get('rx_color_scheme');
|
var color_scheme_cookie = XE.cookie.get('rx_color_scheme');
|
||||||
var color_scheme_check = (window.matchMedia && window.matchMedia('(prefers-color-scheme:dark)').matches) ? 'dark' : 'light';
|
var color_scheme_detected = (window.matchMedia && window.matchMedia('(prefers-color-scheme:dark)').matches) ? 'dark' : 'light';
|
||||||
console.log(color_scheme_check);
|
if (!color_scheme_cookie || (!body_element.hasClass('color_scheme_light') && !body_element.hasClass('color_scheme_dark'))) {
|
||||||
if (color_scheme_cookie && color_scheme_cookie !== color_scheme_check) {
|
body_element.addClass('color_scheme_' + color_scheme_detected).removeClass('color_scheme_' + (color_scheme_detected === 'dark' ? 'light' : 'dark'));
|
||||||
XE.cookie.set('rx_color_scheme', color_scheme_check, { path: window.XE.URI(default_url).pathname(), expires: 365 });
|
|
||||||
$('body').addClass('color_scheme_' + color_scheme_check).removeClass('color_scheme_' + (color_scheme_check === 'dark' ? 'light' : 'dark'));
|
|
||||||
} else if (color_scheme_check === 'dark') {
|
|
||||||
XE.cookie.set('rx_color_scheme', color_scheme_check, { path: window.XE.URI(default_url).pathname(), expires: 365 });
|
|
||||||
$('body').addClass('color_scheme_' + color_scheme_check).removeClass('color_scheme_' + (color_scheme_check === 'dark' ? 'light' : 'dark'));
|
|
||||||
$('#rhymix_color_scheme').hide();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Editor preview replacement */
|
/* Editor preview replacement */
|
||||||
|
|
@ -779,6 +774,22 @@ function setLangType(lang_type) {
|
||||||
XE.cookie.set('lang_type', lang_type, { path: baseurl, expires: 365 });
|
XE.cookie.set('lang_type', lang_type, { path: baseurl, expires: 365 });
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* 색상 테마 변경 */
|
||||||
|
function getColorScheme() {
|
||||||
|
if ($('body').hasClass('color_scheme_light')) {
|
||||||
|
return 'light';
|
||||||
|
} else {
|
||||||
|
return 'dark';
|
||||||
|
}
|
||||||
|
}
|
||||||
|
function setColorScheme(color_scheme) {
|
||||||
|
if (color_scheme !== 'dark') {
|
||||||
|
color_scheme = 'light';
|
||||||
|
}
|
||||||
|
$('body').addClass('color_scheme_' + color_scheme).removeClass('color_scheme_' + (color_scheme === 'dark' ? 'light' : 'dark'));
|
||||||
|
XE.cookie.set('rx_color_scheme', color_scheme, { path: window.XE.URI(default_url).pathname(), expires: 365 });
|
||||||
|
}
|
||||||
|
|
||||||
/* 미리보기 */
|
/* 미리보기 */
|
||||||
function doDocumentPreview(obj) {
|
function doDocumentPreview(obj) {
|
||||||
var fo_obj = obj;
|
var fo_obj = obj;
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue