diff --git a/web/client/plugins/__tests__/Timeline-test.jsx b/web/client/plugins/__tests__/Timeline-test.jsx
index ff9ec814f6..b9584cd9ba 100644
--- a/web/client/plugins/__tests__/Timeline-test.jsx
+++ b/web/client/plugins/__tests__/Timeline-test.jsx
@@ -134,6 +134,22 @@ describe('Timeline Plugin', () => {
ReactDOM.render(, document.getElementById("container"));
expect(document.querySelector('.timeline-plugin.hidden')).toBeTruthy();
});
+ it('shows the warning when the hidden selected layer is not displayed in the timeline', () => {
+ const state = {
+ ...FALSY_STATE,
+ layers: {
+ ...FALSY_STATE.layers,
+ flat: FALSY_STATE.layers.flat.map(layer =>
+ layer.id === 'TEST_LAYER_2' ? { ...layer, visibility: true } : layer
+ )
+ }
+ };
+ const { Plugin } = getPluginForTest(TimelinePlugin, state);
+ ReactDOM.render(, document.getElementById("container"));
+
+ const warning = document.querySelector('.ms-timeline-visibility-warning');
+ expect(warning).toBeTruthy();
+ });
it('Timeline plugin is not visible when there are no layers with dimension data', ()=>{
const { Plugin } = getPluginForTest(TimelinePlugin, {});
ReactDOM.render(, document.getElementById("container"));
diff --git a/web/client/themes/default/less/timeline.less b/web/client/themes/default/less/timeline.less
index 58c249bd33..b78308bd26 100644
--- a/web/client/themes/default/less/timeline.less
+++ b/web/client/themes/default/less/timeline.less
@@ -378,11 +378,13 @@
font-weight: bold;
}
}
- .ms-timeline-expand {
+ .ms-timeline-expand,
+ .ms-timeline-visibility-warning {
flex-shrink: 0;
border-radius: 4px;
height: 30px;
width: 30px;
+ margin-right: 4px;
}
/* local mixin to highlight handlers on timeline, used on active and over */
diff --git a/web/client/translations/data.de-DE.json b/web/client/translations/data.de-DE.json
index c186fa5f87..670693b79c 100644
--- a/web/client/translations/data.de-DE.json
+++ b/web/client/translations/data.de-DE.json
@@ -3181,6 +3181,7 @@
"disableRange": "Zeitbereich deaktivieren",
"enablePlayBack": "Aktivieren Sie die Wiedergabesteuerung",
"disablePlayBack": "Deaktivieren Sie die Wiedergabesteuerung",
+ "hiddenGuideLayerWarning": "Die Führungslayer ist im Inhaltsverzeichnis und auf der Karte ausgeblendet, steuert aber weiterhin das Einrasten der Zeitleiste.",
"expand": "Erweitern Sie den Zeitschieberegler",
"collapse": "Schieberegler für die Zeitspanne reduzieren",
"reset": {
diff --git a/web/client/translations/data.en-US.json b/web/client/translations/data.en-US.json
index 05c9e9dc49..07af09da29 100644
--- a/web/client/translations/data.en-US.json
+++ b/web/client/translations/data.en-US.json
@@ -3150,6 +3150,7 @@
"disableRange": "Disable time range",
"enablePlayBack": "Enable playback controls",
"disablePlayBack": "Disable playback controls",
+ "hiddenGuideLayerWarning": "The guide layer is hidden in the TOC and on the map, but continues to control timeline snapping.",
"expand": "Expand time slider",
"collapse": "Collapse time slider",
"reset": {
diff --git a/web/client/translations/data.es-ES.json b/web/client/translations/data.es-ES.json
index 5f1a516a0e..eb393b78b0 100644
--- a/web/client/translations/data.es-ES.json
+++ b/web/client/translations/data.es-ES.json
@@ -3138,6 +3138,7 @@
"disableRange": "Desactivar intervalo de tiempo",
"enablePlayBack": "Habilitar controles de reproducción",
"disablePlayBack": "Deshabilitar los controles de reproducción",
+ "hiddenGuideLayerWarning": "La capa guía está oculta en la TOC y en el mapa, pero sigue controlando el ajuste de la línea de tiempo.",
"expand": "Expandir el control deslizante de tiempo",
"collapse": "Minimizar el control deslizante de tiempo",
"reset": {
diff --git a/web/client/translations/data.fr-FR.json b/web/client/translations/data.fr-FR.json
index 9251f841d6..8e5a6990c7 100644
--- a/web/client/translations/data.fr-FR.json
+++ b/web/client/translations/data.fr-FR.json
@@ -3142,6 +3142,7 @@
"disableRange": "Désactiver la plage de temps",
"enablePlayBack": "Activer les contrôles de lecture",
"disablePlayBack": "Désactiver les contrôles de lecture",
+ "hiddenGuideLayerWarning": "Le couche de référence est masquée dans la TOC et sur la carte, mais continue de contrôler l'accrochage de la chronologie.",
"expand": "Développer le curseur temporel",
"collapse": "Réduire le curseur temporel",
"reset": {
diff --git a/web/client/translations/data.it-IT.json b/web/client/translations/data.it-IT.json
index 0ab5574b87..c1e85322cc 100644
--- a/web/client/translations/data.it-IT.json
+++ b/web/client/translations/data.it-IT.json
@@ -3142,6 +3142,7 @@
"disableRange": "Disabilita intervallo",
"enablePlayBack": "Abilita i controlli di riproduzione",
"disablePlayBack": "Disabilita i controlli di riproduzione",
+ "hiddenGuideLayerWarning": "Il layer guida è nascosto nel TOC e sulla mappa, ma continua a controllare l'aggancio della timeline.",
"expand": "Espandi",
"collapse": "Riduci",
"reset": {