From 6e9b451734eca15cb9f86ad811f19d5d970608d4 Mon Sep 17 00:00:00 2001 From: Colin Maudry Date: Sun, 12 Jul 2026 20:30:30 +0200 Subject: [PATCH] =?UTF-8?q?feat(tableau):=20r=C3=A9server=20l'espace=20de?= =?UTF-8?q?=20la=20barre=20de=20d=C3=A9filement=20horizontale=20AG=20Grid?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit alwaysShowHorizontalScroll force la piste de scroll à rester visible en permanence (comportement déjà natif sous Chrome). Sans effet sur Firefox, dont le curseur en overlay est géré par l'OS/le navigateur et non contrôlable côté appli (#41). --- src/figures.py | 5 +++++ tests/test_figures.py | 11 +++++++++++ 2 files changed, 16 insertions(+) diff --git a/src/figures.py b/src/figures.py index 1b49db2..b769335 100644 --- a/src/figures.py +++ b/src/figures.py @@ -1149,6 +1149,11 @@ def ag_grid(grid_id: str, column_defs: list[dict]) -> "dag.AgGrid": "})" ) }, + # Réserve l'espace de la barre de défilement horizontale en permanence + # (comportement natif de Chrome). Sans effet sur Firefox : le curseur + # de la barre y reste en overlay au survol, géré par l'OS/le navigateur + # (ex. réglage GTK overlay-scrollbars), non contrôlable par l'appli. + "alwaysShowHorizontalScroll": True, }, # Pas de columnSize="responsiveSizeToFit" : les colonnes gardent leur # largeur définie dans columnDefs (cf. _column_width dans diff --git a/tests/test_figures.py b/tests/test_figures.py index 23b8383..20f5834 100644 --- a/tests/test_figures.py +++ b/tests/test_figures.py @@ -370,3 +370,14 @@ def test_ag_grid_keeps_base_appearance(): grid = ag_grid("tableau_grid", []) assert getattr(grid, "className", None) in (None, "") + + +def test_ag_grid_always_shows_horizontal_scroll(): + """Réserve l'espace de la barre de défilement horizontale en permanence + (comportement natif Chrome). Sans effet sur le curseur en overlay de + Firefox, géré par l'OS/le navigateur, non contrôlable par l'appli.""" + from src.figures import ag_grid + + grid = ag_grid("tableau_grid", []) + + assert grid.dashGridOptions["alwaysShowHorizontalScroll"] is True