Theme Switcher Component

Если только @B-iggy не сможет добавить опцию выбора местоположения? :smiley:

Действительно, это непросто. Если вы имеете в виду что-то вроде этого, я, возможно, смогу попробовать как-то объединить это.

Я не тестировал это со всеми темами, но дайте знать, если что-то сломается.

Что вы имеете в виду под «нижней частью»? Этот компонент переключателя тем скорее горизонтально выровнен. Вы имеете в виду уменьшение ширины?

Замена логотипа при переключении между светлым и тёмным режимом не так проста и потребует дополнительных опций. Я запишу это, возможно, для будущего.

2 лайка

Моя идея касалась меню панели (не меню панели пользователя):

Извините, это, должно быть, опечатка. Я имел в виду кнопку :smiley: Ссылка на тему Liebling была примером альтернативной кнопки.

Вам не обязательно заменять логотип. Возможно, достаточно использовать иконку fa, меняющую цвет и тень (box-shadow) через CSS, и этого будет достаточно.

1 лайк

Лучше всего использовать этот компонент: Hamburger Theme Selector - #63 by sam

Это не переключатель, но то, что вы просите, может потребовать слишком много работы.

1 лайк

Здравствуйте,

Спасибо за ваш компонент.

Жаль, что в этом компоненте нет поддержки перевода.

Привет @B-iggy, спасибо за этот компонент!

Я немного запутался в том, как настроить две темы, между которыми планирую переключаться.
У меня есть классические темы «Светлая» и «Тёмная», и я добавил обе в переключатель тем.
Однако при переключении активируется тема «Alien», а не та тёмная, которую я хотел бы использовать :thinking:

Есть ли способ заставить его использовать только эти две нужные мне темы?

Спасибо за ваше время и вклад в проект :rocket:

2 лайка

Привет, @akapetzoglou1

Ух ты, в этом году время летит с бешеной скоростью. Извини за задержку. Сейчас я борюсь с некоторыми проблемами, поэтому, к сожалению, вклад в Discourse отходит на второй план.

Это не предназначено для переключения целых тем. Только предопределённые тёмная и светлая, которые я настроил в CSS.
Кажется, существует переключатель тем, который делает именно то, что тебе нужно.
По крайней мере, если я правильно понял.

3 лайка

Привет, @B-iggy!

Есть ли способ использовать компонент для переключения между двумя цветовыми схемами?
Теперь, когда в профиле пользователя есть настройка тёмного режима, было бы здорово иметь возможность переключаться между обычной и тёмной темами.

3 лайка

Здравствуйте! Я использую этот компонент темы, но после его применения в классической теме по умолчанию при переключении в тёмный режим панель администратора выглядит так:

Весь текст становится невидимым.
Я пробовал менять вторичный цвет, но при этом меняется и весь фон темы, чего я не хочу. Мне нужно изменить только цвет вторичного текста, чтобы он был виден.
Пожалуйста, если у вас есть решение, поделитесь им, пожалуйста.

В теме Air есть компонент переключателя тем. Однако кнопка находится в меню-гамбургере. Кто-нибудь может и есть ли у кого-то время адаптировать discourse-color-scheme-toggle под компонент переключателя тем и добавить кнопку в заголовок для быстрого переключения между светлой и тёмной темой?

2 лайка

Я бы тоже с радостью! Я пытался найти время для работы, чтобы разобраться, но пока ничего не понял! Я реализовал тот, на который вы дали ссылку, но надеялся на переключатель заголовка, который невозможно не заметить.

1 лайк

В этом компоненте темы есть ошибка: если пользователь включает тёмный режим на своём устройстве, но переключает режим на светлый в настройках форума, логотип не меняется, и пользователь видит светлый логотип (предназначенный для тёмного режима) в светлом режиме.

Этот компонент темы не работает с боковой панелью. Планируется ли добавить поддержку? Спасибо за внимание и за то, что уже создано!

1 лайк

Привет, ребята,
Последние месяцы я был очень занят, но очень хотел снова уделить этому компоненту больше внимания :slight_smile:
Я постараюсь оценить, сколько работы потребуется с учётом всех недавних изменений в Discourse, и опубликую здесь обновление.

3 лайка

Хорошо, после доработки моей темы Alien Night я понял, что этот компонент больше не имеет особого смысла.

Компонент переключения «Тёмная/Светлая тема» делает именно то, что я пытался реализовать здесь, но гораздо лучше.
В долгосрочной перспективе мой подход с использованием множества классов и их постоянным перемещением не является поддерживаемым.
Вместо этого компонент ниже просто берёт две схемы цветовых палитр и переключает соответствующие CSS-переменные:

Сейчас он, apparently, сломан (хотя в моей теме Alien Night он работает), но в будущем, пожалуйста, используйте его.

Пока я пометил свой компонент как устаревший (Legacy/Deprecated).

1 лайк