From d99928444b38e4637e5610b0e68e83718f2f893b Mon Sep 17 00:00:00 2001 From: Alex Hermann Date: Fri, 8 Jun 2018 14:17:12 +0200 Subject: [PATCH 1/2] feat(table): Add row-unhovered event Some users might want to know not only when the mouse is hovering a row, but also when the mouse leaves the row. For example for dynamically showing (and hiding) some row content based on mouse hovering. --- src/components/table/package.json | 18 ++++++++++++++++++ src/components/table/table.js | 10 ++++++++++ 2 files changed, 28 insertions(+) diff --git a/src/components/table/package.json b/src/components/table/package.json index aee530d61e1..f606c14410f 100755 --- a/src/components/table/package.json +++ b/src/components/table/package.json @@ -59,6 +59,24 @@ } ] }, + { + "event": "row-unhovered", + "description": "Emitted when a row is unhovered.", + "args": [ + { + "arg": "item", + "description": "Item data of the row being unhovered." + }, + { + "arg": "index", + "description": "Index of the row being unhovered." + }, + { + "arg": "event", + "description": "Native event object." + } + ] + }, { "event": "head-clicked", "description": "Emitted when a header or footer cell is clicked.", diff --git a/src/components/table/table.js b/src/components/table/table.js index 57e2383a8b8..908af3ab278 100644 --- a/src/components/table/table.js +++ b/src/components/table/table.js @@ -254,6 +254,9 @@ export default { }, mouseenter: evt => { this.rowHovered(evt, item, rowIndex) + }, + mouseleave: evt => { + this.rowUnHovered(evt, item, rowIndex) } } }, @@ -919,6 +922,13 @@ export default { } this.$emit('row-hovered', item, index, e) }, + rowUnHovered (e, item, index) { + if (this.stopIfBusy(e)) { + // If table is busy (via provider) then don't propagate + return + } + this.$emit('row-unhovered', item, index, e) + }, headClicked (e, field) { if (this.stopIfBusy(e)) { // If table is busy (via provider) then don't propagate From 0580df9699e37d7fe68fb8db6440474f233c98f3 Mon Sep 17 00:00:00 2001 From: Troy Morehouse Date: Tue, 23 Oct 2018 23:29:35 -0300 Subject: [PATCH 2/2] Make function name match event --- src/components/table/table.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/components/table/table.js b/src/components/table/table.js index b40ff041946..95040da0f0b 100644 --- a/src/components/table/table.js +++ b/src/components/table/table.js @@ -276,7 +276,7 @@ export default { this.rowHovered(evt, item, rowIndex) }, mouseleave: evt => { - this.rowUnHovered(evt, item, rowIndex) + this.rowUnhovered(evt, item, rowIndex) } } }, @@ -949,7 +949,7 @@ export default { } this.$emit('row-hovered', item, index, e) }, - rowUnHovered (e, item, index) { + rowUnhovered (e, item, index) { if (this.stopIfBusy(e)) { // If table is busy (via provider) then don't propagate return