diff --git a/app/renderer/components/tabs/tab.js b/app/renderer/components/tabs/tab.js index c8ac18f859e..5bc80d4e1e4 100644 --- a/app/renderer/components/tabs/tab.js +++ b/app/renderer/components/tabs/tab.js @@ -172,16 +172,17 @@ class Tab extends ImmutableComponent { } onMouseEnter (e) { - // relatedTarget inside mouseenter checks which element before this event was the pointer on - // if this element has a tab-like class, then it's likely that the user was previewing - // a sequency of tabs. Called here as previewMode. - const previewMode = /tab(?!pages)/i.test(e.relatedTarget.classList) + // Includes all classes that the mouse can came from + // if user is going from urlbar to webview or vice-versa + const fromVerticalAxis = + /^tab(?=stoolbar|pages)|^allowdragging|^singlepage|^bookmarks|^webview/i + .test(e.relatedTarget.classList) - // If user isn't in previewMode, we add a bit of delay to avoid tab from flashing out - // as reported here: https://github.com/brave/browser-laptop/issues/1434 if (this.props.previewTabs) { - this.hoverTimeout = - window.setTimeout(windowActions.setPreviewFrame.bind(null, this.props.frame.get('key')), previewMode ? 0 : 200) + this.hoverTimeout = window.setTimeout( + windowActions.setPreviewFrame.bind(null, this.props.frame.get('key')), + fromVerticalAxis ? 350 : 0 + ) } windowActions.setTabHoverState(this.props.frame.get('key'), true) }