Cette documentation n'est applicable qu'à la version 2.10.4 de Page Shadow
Les règles de filtre permettent de corriger l'affichage des sites web lorsque les fonctions Augmenter le contraste et/ou Inverser les couleurs sont activées. Les corrections peuvent porter sur la désactivation de la modification du style d'un élément (couleur d'arrière-plan, couleur des textes ou des liens, inversion de la couleur) ou le fait de forcer un style sur un élément. Ces règles permettent par exemple de corriger l'affichage de certains éléments qui n'apparaissent pas. Il vous est possible d'écrire vos propres règles de filtre. Si vous avez des connaissances en HTML/CSS, c'est assez simple. Dans un fichier de filtre, une seule règle par ligne est possible.
Vous pouvez utiliser l'éditeur interne à l'extension (Filtres > Éditer mon filtre) qui dispose de la coloration syntaxique adaptée et qui auto-complète automatiquement les règles que vous écrivez.
La syntaxe d'un filtre est de la forme suivante : siteOuPageWeb[1]|regle[2]|selecteurCss ou paramètre[3]
Chaque partie du filtre est divisée par un caractère |
(barre verticale).
La première partie de la règle (siteOuPageWeb) indique le site web/la page web sur laquelle le filtre doit être appliqué. Cette partie peut être de la forme suivante :
eliastiksofts.com
ou www.eliastiksofts.com
(ces deux domaines sont traités séparément)https://www.eliastiksofts.com/fr/page-shadow/filters/guide/index.php
*eliastiksofts.com/en/*
matche toutes les pages du site Eliastik's Softs en version anglaise/(.*)google.(.*)recaptcha(.*)/
matche les Google ReCaptchaCette partie du filtre correspond à la règle en elle-même. Il existe plusieurs règles différentes qui sont reconnues par l'extension :
disableContrastFor
: désactive complètement la fonction Augmenter le contraste pour un ou plusieurs élémentsforceTransparentBackground
: force un arrière-plan transparent pour un ou plusieurs élémentsdisableBackgroundStylingFor
: désactive la coloration de l'arrière-plan par la fonction Augmenter le contraste pour un ou plusieurs élémentsdisableTextColorStylingFor
: désactive la coloration des textes par la fonction Augmenter le contraste pour un ou plusieurs élémentsdisableInputBorderStylingFor
: désactive la coloration de la bordure des champs de formulaire par la fonction Augmenter le contraste pour un ou plusieurs élémentsdisableLinkStylingFor
: désactive la coloration des liens par la fonction Augmenter le contraste pour un ou plusieurs élémentsdisableFontFamilyStylingFor
: désactive la modification de la police de caractères (thèmes personnalisés) par la fonction Augmenter le contraste pour un ou plusieurs élémentsdisableElementInvertFor
: désactive l'inversion des couleurs par la fonction Inverser les couleurs pour un ou plusieurs élémentshasBackgroundImg
: indique à Page Shadow qu'un ou plusieurs éléments ont une image d'arrière-planforceCustomLinkColorFor
: force la modification de la couleur des liens par la fonction Augmenter le contraste pour un ou plusieurs élémentsforceCustomBackgroundColorFor
: force la modification de la couleur d'arrière-plan par la fonction Augmenter le contraste pour un ou plusieurs élémentsforceCustomTextColorFor
: force la modification de la couleur des textes par la fonction Augmenter le contraste pour un ou plusieurs élémentsdisableShadowRootsCustomStyle
: force la désactivation des styles des Shadow Roots par la fonction Augmenter le contraste pour un ou plusieurs élémentsforceCustomVisitedLinkColor
: force la modification de la couleur des liens visités pour un ou plusieurs élémentsdisableCustomVisitedLinkColor
: désactive la modification de la couleur des liens visités pour un ou plusieurs élémentsforceFontFamilyStylingFor
: force la police de caractère personnalisée pour les thèmes personnalisés pour un ou plusieurs élémentsforceInputBorderStylingFor
: force l'affichage d'une bordure pour un ou plusieurs champs de formulaireforceCustomLinkColorAsBackground
: met la couleur d'arrière-plan d'un ou plusieurs éléments à celle des liens du thèmeforceCustomTextColorAsBackground
: met la couleur d'arrière-plan d'un ou plusieurs éléments à celle des textes du thèmeforceCustomLinkVisitedColorAsBackground
: met la couleur d'arrière-plan d'un ou plusieurs éléments à celle des liens visités du thèmeforceDisableDefaultBackgroundColor
: force la désactivation de la couleur d'arrière-plan par défaut d'un ou plusieurs éléments, à utiliser en dernier recoursforceDisableDefaultBackground
: force la désactivation de l'arrière-plan par défaut d'un ou plusieurs éléments, à utiliser en dernier recoursforceDisableDefaultFontColor
: force la désactivation de la police de caractères par défaut d'un ou plusieurs éléments, à utiliser en dernier recoursenablePseudoElementsStyling
: active la modification du style des pseudo-éléments CSS :after et :before par l'extension pour un ou plusieurs éléments, désactivé par défautoverrideShadowRootsCustomStyle
: même règle que disableShadowRootsCustomStyleinvertElementAsImage
: active l'inversion des couleurs d'un ou plusieurs éléments en tant qu'imageinvertElementAsVideo
: active l'inversion des couleurs d'un ou plusieurs éléments en tant que vidéoinvertElementAsBackground
: active l'inversion des couleurs d'un ou plusieurs éléments en tant qu'image d'arrière-planenableSelectiveInvert
: active l'inversion sélective pour un ou plusieurs élémentsenablePseudoElementSelectiveInvert
: active l'inversion sélective pour un ou plusieurs pseudo-élémentsinvertPseudoElement
: active l'inversion des couleurs pour un ou plusieurs pseudo-élémentsCes règles modifient la façon dont Page Shadow fonctionne de manière interne. Elles permettent d'activer ou désactiver certaines fonctionnalités.
enablePerformanceMode
: active le mode performance pour le site ou la page web. Cette règle ne nécessite pas de sélecteur CSS. Cela revient à désactiver la détection des images d'arrière-plan et à activer les règles disableTransparentBackgroundAutoDetect, disableMutationObserversForSubChilds, disableMutationObserverAttributes, disableMutationObserverClass, disableMutationObserverStyle et disableShadowRootStyleOverride. Cela peut donc causer des problèmes d'affichage sur certains sites avec la fonction Augmenter le contraste (qui peuvent être compensés avec les règles standard sur les éléments mal affichés).disablePerformanceMode
: désactive le mode performance pour le site ou la page web. Règle destinée à être combinée avec la règle enablePerformanceMode
pour activer par exemple le mode performance pour le site web globalement et pour le désactiver pour quelques pages.disableTransparentBackgroundAutoDetect
: désactive la détection automatique des arrières-plan transparents, n'améliore pas les performances lorsque désactivé seulenableTransparentBackgroundAutoDetect
: active la détection automatique des arrières-plan transparents (cette fonctionnalité est activée de base par défaut)opacityDetectedAsTransparentThreshold
: paramètre la limite pour laquelle la fonction de détection automatique des arrières-plan transparents traite une opacité comme étant un arrière-plan transparent (par défaut toute opacité inférieure ou égale à 0.1 est traitée comme un fond transparent)enableMutationObserversForSubChilds
: lorsque activé, l'extension parcourera tous les sous-éléments d'un élément ajouté à la page (activé par défaut)disableMutationObserversForSubChilds
: désactive le parcours de tous les sous-éléments d'un élément ajouté à la page, peut améliorer les performances mais peut causer des problèmes d'affichageenableMutationObserverAttributes
: active la détection des mutations d'attributs (style ou class en HTML), activé par défautdisableMutationObserverAttributes
: désactive la détection des mutations d'attributs, peut améliorer les performancesenableMutationObserverClass
: active la détection des mutations de l'attribut HTML class (désactivé par défaut)disableMutationObserverClass
: désative la détection des mutations de l'attribut HTML class, peut améliorer les performancesenableMutationObserverStyle
: active la détection des mutations de l'attribut HTML style (activé par défaut)disableMutationObserverStyle
: désactive la détection des mutations de l'attribut HTML style, peut améliorer les performancesenableShadowRootStyleOverride
: active l'écrasement des styles par défaut des éléments Shadow Roots (activé par défaut)disableShadowRootStyleOverride
: désactive l'écrasement des styles par défaut des éléments Shadow Roots, peut améliorer les performances sur les sites qui utilisent cette fonctionnalitéshadowRootStyleOverrideDelay
: paramètre le délai (par défaut 100 ms) nécessaire avant d'analyser un élement qui contient un Shadow Root pour améliorer leur détection, indiquer un délai inférieur ou égal à 0 désactive cette fonctionnalitéenableThrottleMutationObserverBackgrounds
: active le ralentissement du traitement des Mutation Observers, améliore considérablement les performances. Désactivé par défautdisableThrottleMutationObserverBackgrounds
: désactive le ralentissement du traitement des Mutation ObserversdelayMutationObserverBackgrounds
: délai en ms appliqué au traitement des Mutation Observers lorsque la règle enableThrottleMutationObserverBackgrounds est activée. Par défaut 0, ce qui signifie que les mutations sont traitées dès que possibleenableAutoThrottleMutationObserverBackgrounds
: active automatiquement le ralentissement du traitement des Mutation Observers lorsque cela est nécessaire : c'est-à-dire lorsqu'un grand nombre de mutations sont traitées (paramétrable grâce à la règle de filtre autoThrottleMutationObserverBackgroundsTreshold), et désactive à nouveau lorsque cela n'est plus nécessaire. Activé par défaut.disableAutoThrottleMutationObserverBackgrounds
: désactive l'option de ralentissement automatique des Mutation ObserversautoThrottleMutationObserverBackgroundsTreshold
: seuil du nombre de Mutation Observers traitées avant que le ralentissement automatique soit activé, par défaut 75throttledMutationObserverTreatedByCall
: nombre de mutations à traiter à chaque appel, par défaut 50. Un nombre élevé réduit les performances.delayApplyMutationObserversSafeTimer
: délai avant de réappliquer les paramètres de Page Shadow après une détection par Mutation ObserversenableObserveBodyChange
/disableObserveBodyChange
: observe le changement d'état de l'élément body (suppression puis création d'un nouvel élément body). Corrige des problèmes avec certains sites web (comme Github) ou applications SPA. Désactiver cette option peut améliorer les performancesobserveBodyChangeTimerInterval
: l'observation du changement d'état de l'élément body s'appuie sur un timer qui s'exécute à un intervalle donné (au lieu d'utiliser les Mutation Observer). L'intervalle est en msenableBrightColorDetection
/disableBrightColorDetection
: détecte les éléments avec des couleurs vives et, si l'option est activée par l'utilisateur, désactive la fonction Augmenter le contraste pour ces éléments. La désactivation de cette option peut améliorer les performancesbrightColorLightnessTresholdMin
: si un élément a une valeur de luminosité supérieure à ce seuil et inférieure à la valeur maximum, l'élément sera détecté comme élément de couleur vivebrightColorLightnessTresholdMax
: si un élément a une valeur de luminosité inférieure à ce seuil et supérieure à la valeur minimum, l'élément sera détecté comme élément de couleur viveenableThrottleBackgroundDetection
/disableThrottleBackgroundDetection
: applique un délai à la détection des arrière-plans au chargement des pages, ce qui permet d'améliorer les performances sur les grandes pagesthrottleBackgroundDetectionElementsTreatedByCall
: défini le nombre d'éléments traités par chaque appel de boucle lorsque la détection des arrière-plans est ralentie. Une valeur élevée peut impacter les performancesbackgroundDetectionStartDelay
: applique un délai avant d'appliquer le traitement de l'arrière-plan des éléments. Par défaut 1 ms.useBackgroundDetectionAlreadyProcessedNodes
: utilise une liste d'éléments déjà traités pour le traitement des arrière-plans pour éviter de traiter à nouveau les mêmes éléments. Peut améliorer les performances, mais peut augmenter l'utilisation de la mémoire.enableBrightColorDetectionSubelement
/disableBrightColorDetectionSubelement
: active ou désactive le traitement des sous-éléments des éléments avec couleurs vives. Désactiver cette option peut potentiellement améliorer les performances, mais des problèmes d'affichage peuvent se produire sur certains sites en utilisant la fonction de préservation des éléments avec couleurs vivesobserveDocumentChange
: observe le changement d'état du document (élément HTML), et plus particulièrement de l'attribut style. Corrige des problèmes avec certains sites web qui écrasent la valeur de l'attribut style qui est utilisée pour gérer les variables CSS de Page Shadow. Désactiver cette option peut améliorer les performances.observeDocumentChangeTimerInterval
: l'observation du changement d'état du document (élément HTML) s'appuie sur un timer qui s'exécute à un intervalle donné (au lieu d'utiliser les Mutation Observer). L'intervalle est en ms.enableDarkImageDetection
/disableDarkImageDetection
: active ou désactive la détection des images/arrières-plans comportant un grand nombre de couleurs sombres (comme par exemple les textes et logos), afin d'inverser leurs couleurs si le paramètre Inverser les couleurs > Sélectif est activé par l'utilisateur. Désactiver cette option améliore les performances.darkImageDetectionHslTreshold
: si un pixel a une valeur de luminosité inférieure à ce seuil, le pixel sera considéré comme sombre. La valeur maximale est 1, la valeur minimale est 0 (pourcentage).darkImageDetectionDarkPixelCountTreshold
: si le nombre de pixels considérés comme sombre est supérieur à ce pourcentage, l'image sera inversée si l'utilisateur a activé le paramètre Inverser les couleurs > Sélectif. La valeur est en pourcentage décimal (multiplier par 100 pour avoir le pourcentage) correspondant au ratio du nombre de pixels sur le nombre de pixels considérés comme sombres.Il est possible d'indiquer plusieurs règles du même type en les séparant par une virugle. Le nom des règles est sensible à la casse.
Cette partie du filtre contient le sélecteur CSS correspondant aux éléments sur lesquels appliquer le filtre. Il est possible de spécifier plusieurs sélecteurs en les séparant par une virgule. Si le sélecteur n'est pas valide, la règle sera ignorée. Le sélecteur CSS est traité par la fonction document.querySelectorAll au sein du code de l'extension. Pour la liste complète des sélecteurs CSS disponibles, rendez-vous sur la documentation MDN.
Cette partie peut aussi correspondre à un paramètre qui n'est pas un sélecteur CSS, par exemple certaines règles spéciales comme les règles suivantes nécessitent un paramètre (par exemple un nombre) : opacityDetectedAsTransparentThreshold, shadowRootStyleOverrideDelay, delayMutationObserverBackgrounds, autoThrottleMutationObserverBackgroundsTreshold, throttledMutationObserverTreatedByCall, delayApplyMutationObserversSafeTimer, observeBodyChangeTimerInterval, brightColorLightnessTresholdMin, brightColorLightnessTresholdMax, throttleBackgroundDetectionElementsTreatedByCall, observeDocumentChangeTimerInterval, darkImageDetectionHslTreshold et darkImageDetectionDarkPixelCountTreshold. La règle spéciale shadowRootStyleOverrideDelay nécessite aussi un paramètre supplémentaire (le délai en ms).
Ce filtre est utilisé pour corriger l'affichage des Google ReCaptcha lorsque la fonction Augmenter le contraste est activé. Elle désactive la fonction pour certains éléments qui étaient cachés.
/(.*)google.(.*)recaptcha(.*)/|disableContrastFor|.rc-imageselect-checkbox,.rc-imageselect-checkbox *,.rc-button-default,.rc-button-default *,.rc-imageselect-candidates,.rc-imageselect-candidates *,.rc-imageselect-desc,.rc-imageselect-desc *
Il est possible de créer un fichier complet de filtre. Pour cela, il est nécessaire que le fichier commence avec le code suivant qui contient les méta-données du fichier de filtre :
#! Page Shadow Filter 1.0
#! Name: Titre du filtre
#! Homepage: https://www.pagedaccueildufiltre.com
#! Sourcename: Nom de la source du site (nom du site web ou autre)
#! Version: Version du filtre
#! License: Licence
#! Expires: Nombre de jours correspondant à l'expiration du cache du filtre du côté de l'utilisateur, suivi d'une mise à jour automatique
#! Description: Description du filtre
Il faut ensuite écrire une règle de filtre par ligne.