diff --git a/src/components/table/package.json b/src/components/table/package.json index dfb19125203..a54af6cef23 100755 --- a/src/components/table/package.json +++ b/src/components/table/package.json @@ -77,6 +77,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 6238561f54e..95040da0f0b 100644 --- a/src/components/table/table.js +++ b/src/components/table/table.js @@ -274,6 +274,9 @@ export default { }, mouseenter: evt => { this.rowHovered(evt, item, rowIndex) + }, + mouseleave: evt => { + this.rowUnhovered(evt, item, rowIndex) } } }, @@ -946,6 +949,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) + }, rowContextmenu (e, item, index) { if (this.stopIfBusy(e)) { // If table is busy (via provider) then don't propagate