Loading client/src/components/Panels/Common/ToolPanelLabel.vue +18 −12 Original line number Diff line number Diff line <template> <div v-b-tooltip.topright.hover class="tool-panel-label" :title="description" @mouseover="hover = true" @mouseleave="hover = false"> <div v-b-tooltip.topright.hover class="tool-panel-label" tabindex="0" :title="description"> {{ definition.text }} <ToolPanelLinks :show="hover" :links="definition.links" /> <ToolPanelLinks :links="definition.links" /> </div> </template> Loading @@ -21,11 +16,6 @@ export default { required: true, }, }, data() { return { hover: false, }; }, computed: { description() { return this.definition.description; Loading @@ -33,3 +23,19 @@ export default { }, }; </script> <style scoped lang="scss"> .tool-panel-label { &:deep(.tool-panel-links) { display: none; } &:hover, &:focus, &:focus-within { &:deep(.tool-panel-links) { display: inline; } } } </style> client/src/components/Panels/Common/ToolPanelLinks.vue +4 −5 Original line number Diff line number Diff line <template> <span v-if="link"> <span v-if="link" class="tool-panel-links"> <a :href="link" target="_blank" style="display: inline"> <font-awesome-icon v-show="show" v-b-tooltip.hover title="Link" icon="external-link-alt" /> <font-awesome-icon v-b-tooltip.hover title="Link" icon="external-link-alt" /> <span class="sr-only">Link</span> </a> </span> </template> Loading @@ -18,9 +19,7 @@ export default { props: { links: { type: Object, }, show: { type: Boolean, default: () => ({}), }, }, computed: { Loading client/src/components/Panels/Common/ToolSection.vue +20 −7 Original line number Diff line number Diff line Loading @@ -3,22 +3,21 @@ <div v-b-tooltip.topright.hover :class="['toolSectionTitle', `tool-menu-section-${sectionName}`]" :title="title" @mouseover="hover = true" @mouseleave="hover = false" @focus="hover = true" @blur="hover = false"> :title="title"> <a class="title-link" href="javascript:void(0)" @click="toggleMenu()"> <span class="name"> {{ name }} </span> <ToolPanelLinks :links="links" :show="hover" /> <ToolPanelLinks :links="links" /> </a> </div> <transition name="slide"> <div v-if="opened"> <template v-for="[key, el] in sortedElements"> <ToolPanelLabel v-if="category.text" :key="key" :definition="el" /> <ToolPanelLabel v-if="category.text || el.model_class === 'ToolSectionLabel'" :key="key" :definition="el" /> <tool v-else :key="key" Loading Loading @@ -253,4 +252,18 @@ export default { overflow: hidden; max-height: 0; } .title-link { &:deep(.tool-panel-links) { display: none; } &:hover, &:focus, &:focus-within { &:deep(.tool-panel-links) { display: inline; } } } </style> test/integration_selenium/test_edam_tool_panel_views.py +1 −1 Original line number Diff line number Diff line Loading @@ -38,4 +38,4 @@ class TestEdamToolPanelViewsSeleniumIntegration(SeleniumIntegrationTestCase): labels = tool_panel.panel_labels.all() assert len(labels) > 0 label0 = labels[0] assert label0.text.strip() == "ANALYSIS" assert label0.text.strip().startswith("ANALYSIS") Loading
client/src/components/Panels/Common/ToolPanelLabel.vue +18 −12 Original line number Diff line number Diff line <template> <div v-b-tooltip.topright.hover class="tool-panel-label" :title="description" @mouseover="hover = true" @mouseleave="hover = false"> <div v-b-tooltip.topright.hover class="tool-panel-label" tabindex="0" :title="description"> {{ definition.text }} <ToolPanelLinks :show="hover" :links="definition.links" /> <ToolPanelLinks :links="definition.links" /> </div> </template> Loading @@ -21,11 +16,6 @@ export default { required: true, }, }, data() { return { hover: false, }; }, computed: { description() { return this.definition.description; Loading @@ -33,3 +23,19 @@ export default { }, }; </script> <style scoped lang="scss"> .tool-panel-label { &:deep(.tool-panel-links) { display: none; } &:hover, &:focus, &:focus-within { &:deep(.tool-panel-links) { display: inline; } } } </style>
client/src/components/Panels/Common/ToolPanelLinks.vue +4 −5 Original line number Diff line number Diff line <template> <span v-if="link"> <span v-if="link" class="tool-panel-links"> <a :href="link" target="_blank" style="display: inline"> <font-awesome-icon v-show="show" v-b-tooltip.hover title="Link" icon="external-link-alt" /> <font-awesome-icon v-b-tooltip.hover title="Link" icon="external-link-alt" /> <span class="sr-only">Link</span> </a> </span> </template> Loading @@ -18,9 +19,7 @@ export default { props: { links: { type: Object, }, show: { type: Boolean, default: () => ({}), }, }, computed: { Loading
client/src/components/Panels/Common/ToolSection.vue +20 −7 Original line number Diff line number Diff line Loading @@ -3,22 +3,21 @@ <div v-b-tooltip.topright.hover :class="['toolSectionTitle', `tool-menu-section-${sectionName}`]" :title="title" @mouseover="hover = true" @mouseleave="hover = false" @focus="hover = true" @blur="hover = false"> :title="title"> <a class="title-link" href="javascript:void(0)" @click="toggleMenu()"> <span class="name"> {{ name }} </span> <ToolPanelLinks :links="links" :show="hover" /> <ToolPanelLinks :links="links" /> </a> </div> <transition name="slide"> <div v-if="opened"> <template v-for="[key, el] in sortedElements"> <ToolPanelLabel v-if="category.text" :key="key" :definition="el" /> <ToolPanelLabel v-if="category.text || el.model_class === 'ToolSectionLabel'" :key="key" :definition="el" /> <tool v-else :key="key" Loading Loading @@ -253,4 +252,18 @@ export default { overflow: hidden; max-height: 0; } .title-link { &:deep(.tool-panel-links) { display: none; } &:hover, &:focus, &:focus-within { &:deep(.tool-panel-links) { display: inline; } } } </style>
test/integration_selenium/test_edam_tool_panel_views.py +1 −1 Original line number Diff line number Diff line Loading @@ -38,4 +38,4 @@ class TestEdamToolPanelViewsSeleniumIntegration(SeleniumIntegrationTestCase): labels = tool_panel.panel_labels.all() assert len(labels) > 0 label0 = labels[0] assert label0.text.strip() == "ANALYSIS" assert label0.text.strip().startswith("ANALYSIS")