diff --git a/src/i18n/app_en.json b/src/i18n/app_en.json
index b520aae9..8965a5bd 100644
--- a/src/i18n/app_en.json
+++ b/src/i18n/app_en.json
@@ -33,7 +33,8 @@
"VIGICRUES_LEVEL_4": "Major flood risk",
"REMOVE_LABEL": "$t(REMOVE_LABEL)",
"REMOVE_DIALOG_TITLE": "Remove {{layer}} ?",
- "REMOVE_DIALOG_MESSAGE": "Are you sure you want to remove {{layer}} from your workspace ?"
+ "REMOVE_DIALOG_MESSAGE": "Are you sure you want to remove {{layer}} from your workspace ?",
+ "ZOOM_TO_LABEL": "Zoom to"
},
"MapActivity": {
"TOGGLE_FULLSCREEN": "Fullscreen",
diff --git a/src/i18n/app_fr.json b/src/i18n/app_fr.json
index 63ba0a23..a210edaa 100644
--- a/src/i18n/app_fr.json
+++ b/src/i18n/app_fr.json
@@ -33,7 +33,8 @@
"VIGICRUES_LEVEL_4": "Risque de crue majeure",
"REMOVE_LABEL": "$t(REMOVE_LABEL)",
"REMOVE_DIALOG_TITLE": "Supprimer {{layer}} ?",
- "REMOVE_DIALOG_MESSAGE": "Etes vous sûr de vouloier supprimer {{layer}} de votre espace de travail ?"
+ "REMOVE_DIALOG_MESSAGE": "Etes vous sûr de vouloier supprimer {{layer}} de votre espace de travail ?",
+ "ZOOM_TO_LABEL": "Zoomer sur"
},
"MapActivity": {
"TOGGLE_FULLSCREEN": "Plein écran",
diff --git a/src/mixins/mixin.activity.js b/src/mixins/mixin.activity.js
index 60d8ddcd..5cb45ab9 100644
--- a/src/mixins/mixin.activity.js
+++ b/src/mixins/mixin.activity.js
@@ -15,6 +15,7 @@ export default {
this.layers = {}
this.layerHandlers = {
toggle: (layer) => this.onTriggerLayer(layer),
+ zoomTo: (layer) => this.onZoomToLayer(layer),
remove: (layer) => this.onRemoveLayer(layer)
}
const catalogService = this.$api.getService('catalog')
@@ -29,9 +30,13 @@ export default {
})
},
onLayerAdded (layer) {
- // FIXME: Add supported actions
+ // Add supported actions
if (layer.type === 'OverlayLayer') {
layer.actions = [{
+ name: 'zoomTo',
+ label: this.$t('Activity.ZOOM_TO_LABEL'),
+ icon: 'remove_circle'
+ }, {
name: 'remove',
label: this.$t('Activity.REMOVE_LABEL'),
icon: 'remove_circle'
@@ -45,6 +50,9 @@ export default {
this.hideLayer(layer.name)
}
},
+ onZoomToLayer (layer) {
+ this.zoomToLayer(layer.name)
+ },
onRemoveLayer (layer) {
Dialog.create({
title: this.$t('Activity.REMOVE_DIALOG_TITLE', { layer: layer.name }),