Bug #55988
appliquer le style des boutons radio et cases à cocher uniques partout et pas uniquement aux formulaires wcs
0%
Description
Faire appliquer les variables widget-custom-radio-checkbox
et widget-unique-checkbox-position
à tous les champs.
Fichiers
Demandes liées
Révisions associées
Revert "forms: apply custom styles to all radio and checkbox widgets (#55988)"
This reverts commit ce295f32526cea8ad622348425ffe7dbe53cc203.
forms: apply custom styles to all radio and checkbox widgets (#55988)
Historique
Mis à jour par Serghei Mihai il y a plus de 2 ans
- Lié à Development #55849: grandlyon-glc : étendre les options d'intégration existantes pour s'appliquer également aux cases à cocher. ajouté
Mis à jour par Serghei Mihai il y a plus de 2 ans
Pour appliquer les mêmes styles partout il faudrait que le HTML généré pour les checkbox et radio soit le même que celui produit par wcs: <label><input type="checkbox" ...><span></span></label>
.
Je fais un ticket gadjo dans ce sens.
Mis à jour par Serghei Mihai il y a plus de 2 ans
- Lié à Development #56114: widgets: entourer les cases à cocher et boutons radio par la balise "label" ajouté
Mis à jour par Serghei Mihai il y a plus de 2 ans
- Fichier 0001-scss-apply-styles-to-all-radio-and-checkbox-widgets-.patch 0001-scss-apply-styles-to-all-radio-and-checkbox-widgets-.patch ajouté
- Tracker changé de Support à Bug
- Statut changé de Nouveau à Solution proposée
- Patch proposed changé de Non à Oui
Avec modifications de tous les thèmes personnalisant les boutons radio et les cases à cocher.
Mis à jour par Thomas Jund (congés, retour le 29/04) il y a plus de 2 ans
Je n'aime pas la multiplication des selecteurs. Cela complique la création de thème, rend infernal l'évolution du core et demande de patcher tous les thèmes.
Ne pourrait-on pas garder les mêmes class ?
Mis à jour par Serghei Mihai il y a plus de 2 ans
Les noms des class sont celles des widgets utilisés pour le rendu des champs. Ils sont différents dans wcs (RadiobuttonsWidget
, CheckboxWidget
, CheckboxsWidget
,...) des autres applis qui utilisent les classes django qui ont un autre nom.
Pour revenir à la duplication des selecteurs dans les variants, on doit pouvoir sûrement s'en passer car il s'agit de la personnalisation de la couleur, taille, bordure des éléments ::before
et ::after
. On pourrait gérer cela avec des variables.
Je fais un ticket.
Mis à jour par Serghei Mihai il y a plus de 2 ans
Serghei Mihai a écrit :
Pour revenir à la duplication des selecteurs dans les variants, on doit pouvoir sûrement s'en passer car il s'agit de la personnalisation de la couleur, taille, bordure des éléments
::before
et::after
. On pourrait gérer cela avec des variables.
Cela existe déjà: $widget-custom-radio-checkbox-border-color
, $widget-custom-radio-checkbox-marker-color
. Il manquerait une variable pour gérer la taille du widget (comme à la Dordogne par exemple).
Mis à jour par Thomas Jund (congés, retour le 29/04) il y a plus de 2 ans
Les noms des class sont celles des widgets utilisés pour le rendu des champs
Ok, je comprends donc qu'il n'y a aucun moyen d'avoir un selecteur commun. Passons.
On pourrait gérer cela avec des variables
De ce que je vois, il y egalement des paddings, la possibilité de différencier la couleur du contour de celle du fond, des valeurs de border-radius,
et la modification de la taille qui se fait à coup de width, height et qui demande du coup de repositionner les élements à coup de top parfois left et calc().
(Bref, réécrire tout cela devient necessaire).
Enfin même si on multiplie les variables de personnalisation, il arrivera toujours un moment où on aura besoin de personnaliser aussi via CSS.
Pour cleaner la personalisation dans les variants
Il y a toujours les @extend Sass à la rescousse :
.custom-radio-checkbox { // ici tout le code actuel } @if $widget-custom-radio-checkbox == true { .django-radio-select, .django-checkbox-input, .RadiobuttonsWidget, .CheckboxWidget, .CheckboxesWidget { @extend .custom-radio-checkbox; } }
Et s'il y a besoin de personnaliser via CSS dans un thème :
.custom-radio-checkbox { // CSS de personnalisation }
Pour moi c'est déjà plus propre, plus simple, plus mieux.
Mis à jour par Serghei Mihai il y a plus de 2 ans
Thomas Jund a écrit :
Ok, je comprends donc qu'il n'y a aucun moyen d'avoir un selecteur commun. Passons.
On peut sûrement y arriver, mais cela implique beaucoup plus de modifications de code dans wcs et gadjo que dans publik-base-theme.
Pour moi c'est déjà plus propre, plus simple, plus mieux.
Je suis d'accord.
Mis à jour par Serghei Mihai il y a plus de 2 ans
- Fichier 0001-forms-apply-custom-styles-to-all-radio-and-checkbox-.patch 0001-forms-apply-custom-styles-to-all-radio-and-checkbox-.patch ajouté
- Assigné à mis à Serghei Mihai
En suivant ta proposition de regroupement du code des styles custom.
Mis à jour par Serghei Mihai il y a plus de 2 ans
- Lié à Bug #56341: alignement case à cocher consentement GLC ajouté
Mis à jour par Thomas Jund (congés, retour le 29/04) il y a plus de 2 ans
%custom-radio-checkbox-widget { - @extend %custom-radio-checkbox-widget;
Tu n'as pas besoin de faire un @extend, c'est implicite, comme pour une class CSS
Je préfère aussi l'utilisation d'une class CSS, utilisable dans les templates, plutôt que du %truc specifique Sass.
Mis à jour par Serghei Mihai il y a plus de 2 ans
- Fichier 0001-forms-apply-custom-styles-to-all-radio-and-checkbox-.patch 0001-forms-apply-custom-styles-to-all-radio-and-checkbox-.patch ajouté
Thomas Jund a écrit :
[...]
Tu n'as pas besoin de faire un @extend, c'est implicite, comme pour une class CSS
J'ai appris une chose, merci.
Je préfère aussi l'utilisation d'une class CSS, utilisable dans les templates, plutôt que du %truc specifique Sass.
Mais on a déjà les classes RadioSelect
, etc pour ça. Et on pilote l'affichage custom via les variables Sass. Ou bien je ne saisis pas ton idée?
Mis à jour par Thomas Jund (congés, retour le 29/04) il y a plus de 2 ans
Ou bien je ne saisis pas ton idée?
Je propose de remplacer les
- %custom-radio-checkbox-widget { + .custom-radio-checkbox-widget {
et
@extend %custom-radio-checkbox-widget; @extend .custom-radio-checkbox-widget;
+ de CSS natif et - de SASS specifique.
Mis à jour par Serghei Mihai il y a plus de 2 ans
- Fichier 0001-forms-apply-custom-styles-to-all-radio-and-checkbox-.patch 0001-forms-apply-custom-styles-to-all-radio-and-checkbox-.patch ajouté
Pigé.
Mis à jour par Thomas Jund (congés, retour le 29/04) il y a plus de 2 ans
- Statut changé de Solution proposée à Solution validée
Mis à jour par Serghei Mihai il y a plus de 2 ans
- Statut changé de Solution validée à Résolu (à déployer)
commit ce295f32526cea8ad622348425ffe7dbe53cc203 (origin/main, origin/HEAD) Author: Serghei Mihai <smihai@entrouvert.com> Date: Wed Aug 11 10:33:35 2021 +0200 forms: apply custom styles to all radio and checkbox widgets (#55988)
Mis à jour par Frédéric Péters il y a plus de 2 ans
- Statut changé de Résolu (à déployer) à Solution déployée
Mis à jour par Frédéric Péters il y a plus de 2 ans
Sérieusement pas à pousser à deux jours de la mise à jour.
Mis à jour par Frédéric Péters il y a plus de 2 ans
- Statut changé de Solution déployée à Solution validée
J'ai poussé et vais déployé un revert, parce que foutage de gueule là.
Mis à jour par Serghei Mihai il y a plus de 2 ans
My bad, ce patch corrigeait le raté sur l'alignement des cases à cocher sur le thème GLC. Et au lieu de poser de code pourri dans son _custom.css
qu'il allait falloir virer de toute façon j'ai opté pour envoyer celui-ci.
J'ai fait le tour des recettes, notamment celles avec les widgets customisés, et ça a l'air ok.
Mis à jour par Frédéric Péters il y a plus de 2 ans
- Fichier strasbourg-avec-le-patch.png strasbourg-avec-le-patch.png ajouté
- Fichier strasbourg-avant.png strasbourg-avant.png ajouté
Et j'ai reverté les bouts gadjo qui allaient avec.
Une différence visible immédiatement (une fois que j'ai vu ce commit arriver c'est ce que je suis allé voir) c'est le "civilité" de Strasbourg, cf captures.
Mis à jour par Frédéric Péters il y a plus de 2 ans
J'ai fait le tour des recettes, notamment celles avec les widgets customisés, et ça a l'air ok.
De fait pas et ça vient peut-être surtout des modifications gadjo mais comme tout ça arrive tard je suis obligé d'y aller sans finesse et je vire tout plutôt qu'essayer de voir quel bout de quel patch pourrait être laissé.
Mis à jour par Frédéric Péters il y a plus de 2 ans
- Statut changé de Solution validée à En cours
Mis à jour par Serghei Mihai il y a plus de 2 ans
Frédéric Péters a écrit :
Et j'ai reverté les bouts gadjo qui allaient avec.
Une différence visible immédiatement (une fois que j'ai vu ce commit arriver c'est ce que je suis allé voir) c'est le "civilité" de Strasbourg, cf captures.
Pour revenir là-dessus. Je pense que la différence de rendu est due au fait qu'après le patch de #54642 les boutons radio ne sont plus placés dans des listes (pas de padding à gauche).
Il faudrait ajouter du padding pour le nouveau markup pour respecter le rendu.
Mis à jour par Frédéric Péters il y a plus de 2 ans
Le propos c'est que oui différence de markup différence de rendu j'en ai pointé un exemple il peut y en avoir d'autres il faut le plus rapidement possible faire correctement le tour.
Mis à jour par Thomas Jund (congés, retour le 29/04) il y a plus de 2 ans
- Statut changé de En cours à Solution validée
Je revalide.
Problème réglé par #56522
Mis à jour par Serghei Mihai il y a plus de 2 ans
- Statut changé de Solution validée à Résolu (à déployer)
commit beab6d22d1dfcabffa09957c85189694f595b115 (origin/main, origin/HEAD) Author: Serghei Mihai <smihai@entrouvert.com> Date: Wed Aug 11 10:33:35 2021 +0200 forms: apply custom styles to all radio and checkbox widgets (#55988)
Mis à jour par Frédéric Péters il y a plus de 2 ans
- Statut changé de Résolu (à déployer) à Solution déployée
forms: apply custom styles to all radio and checkbox widgets (#55988)