-
Notifications
You must be signed in to change notification settings - Fork 1.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
ID Dark Mode #8214
Comments
Hi and welcome, @CharliePlett. Dark mode definitely sounds cool. I mention it as a missing vision feature in our accessibility documentation. The toughest part will likely be maintaining two UI styles that are both look and work great. |
@quincylvania Hi, I just wanted to add to this conversation and say that before we can begin working on a dark mode, all the CSS color values in ID should be replaced with CSS variables. Compatibility will not be a problem as every browser supports CSS variables except for IE, which ID has discontinued support for. This makes standardization easier for the existing light theme and implementing dark mode would be as easy as setting up CSS variables that overwrites the light theme. This would allow for easily maintaining both themes side by side. All the theme switching would be handled by the browser based on what the user has already selected as their theme preference for their OS. This does not require any custom JS theme switcher and is the recommended way for accessibility and respecting the user's choice. Both code snippets use light mode as the default fallback if the user has no preferred theme. Example with media query :root {
--color-text-primary: #000;
}
@media (prefers-color-scheme: dark) {
:root {
--color-text-primary: #fff;
}
} The meta <meta name="color-scheme" content="light dark"> |
We haven't abandoned support for IE 11, though it's true we're not actively testing it nor expecting all features to work perfectly. I think we can still use CSS variables but have PostCSS convert them to legacy CSS at build time. For dark mode, lots of sites have a Light/Dark/Match System selection control that I think works well. We could add one for iD in the Preferences pane. |
By way of an update, we mostly if not completely dropped IE11 support in #8811. The solid black “none” background feels more at home in dark mode. #9307 would change the background to white, but maybe a black option could be restored as part of dark mode support. |
I was doing dark mode in osm-website, so I decided to do it here too. |
As noted in #10542, openstreetmap/openstreetmap-website#4761 enabled dark mode support on the OSM website, including the main map (sort of), so users with dark mode enabled may find transitions to iD a little more jarring than before. |
It's cool to have dark mode, but imo that dimmed map looks horrible. |
For now, apply this CSS with an extension like Stylus @media(prefers-color-scheme: dark) {
.leaflet-tile-container, .leaflet-tile {
filter:brightness(1) !important
}
} edit: updated CSS |
This CSS also fix performance issue on Firefox when panning because the css Edit: this is not wide spread issue on Firefox, here is a bug report https://bugzilla.mozilla.org/show_bug.cgi?id=1826576 |
@AntonKhorev sorry for missing this, it looks very good 👍 |
How exactly to continue with dark mode here depends on whether openstreetmap/openstreetmap-website#5339 gets merged. Save button is a bit tricky because it changes color depending on the number of edits. |
Hey, could we please have a dark mode?
The text was updated successfully, but these errors were encountered: