Add static/classic/amo/installed (whatever they're called) themes
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 5/5
- Tiempo estimado
- Más de una semana
- Aptitud para principiantes
- 25/100
- Tipo de issue
- Nueva funcionalidad
- Claridad
- Bastante claro
- Estado de actividad
- Estancado
- Stack tecnológico
- javascript
- Área
- frontend
Línea de trabajo
Empieza leyendo el flujo de ThemeBuilder y el uso de la browser.management API descrito en la issue; después, sigue cómo Firefox Color almacena y aplica actualmente los temas. Define cómo deben representarse los temas estáticos, los temas instalados y el override seleccionado antes de implementar los cambios de UI y de estado. Se considera terminado cuando los temas estáticos instalados se pueden mostrar, seleccionar, persistir y aplicar sin que el tema de Firefox Color tome el control.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
So this comes out of a discussion with the add-ons team, and the idea was that we might collaborate on this issue as a changing of the guard, so to speak. I was noodling around with this the other day, but didn't get very far...here's what i was thinking...certainly open to better suggestions:
- Use
browser.managementapi to get all installed themes from the user and track which one they have enabled. - Create a new set of redux actions called
staticsthat can manage the state of static themes. I think we'd need to keep a list of installed static themes, a boolean to track if a static theme should override a ff color theme, and a pointer to user's selected static theme. something like
statics.id: // id of last selected static theme
statics.isActive: // boolean if a static theme should override an FF color API theme
statics.list // list of all static themes the user has installed
- On the UI side, create a new panel in the
ThemeBuilderthat renders all the user's static themes. Something likePaginatedStaticPicker. - There are up to six themes that come from Firefox and do not exist in AMO, these are default, dark, compact light, a stripey pastel theme, the browser renaissance theme, and an outer space theme. For each of these we make representations using our theming JSON schema. For AMO themes, we can do a fetch of the BG image of each using the theme id and use that to make a representation of each AMO Theme.
- When a user clicks on one of these themes, we update the app state and override the selected FF color theme. We also pass back a message to browser.management to update to the selected static theme.
- Next time FF color starts up, it checks to see if
statics.isActiveis true before taking over and re-theming based on the current FF color theme state
- Lenguaje dominante
- JavaScript
- Estrellas
- 506
- Forks
- 100
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Preparar el entorno
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de mozilla/FirefoxColor
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
mozilla/FirefoxColor#1081 · 1 comentario ·
-
does not see browserAbierto
Dificultad 3/5 1-2 días Aptitud para principiantes 35/100
mozilla/FirefoxColor#1087 · 1 comentario ·
-
Dificultad 5/5 Más de una semana Aptitud para principiantes 35/100
mozilla/FirefoxColor#1085 · 1 comentario ·
-
Dificultad 3/5 1-2 días Aptitud para principiantes 68/100
mozilla/FirefoxColor#1084 · 1 comentario ·
-
Dificultad 5/5 Más de una semana Aptitud para principiantes 35/100
mozilla/FirefoxColor#1083 · 1 reacción ·
Todos los issues de mozilla/FirefoxColor
Issues similares
-
factory-active factory-automatic task-bug-reproduction-success task-identify-harness-labels-done task-identify-issue-type-done
Dificultad 2/5 1-3 horas Aptitud para principiantes 90/100
vercel/ai#21528 · 3 comentarios ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 88/100
Los mantenedores suelen responder en 1 día
-
status: waiting triage
Dificultad 2/5 1-3 horas Aptitud para principiantes 84/100
freeCodeCamp/freeCodeCamp#70412 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 88/100
rohitg00/ai-engineering-from-scratch#490 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 88/100
Los mantenedores suelen responder en 6 días