gitextensions icon indicating copy to clipboard operation
gitextensions copied to clipboard

RevisionGrid: Tooltips not updated

Open mstv opened this issue 2 years ago • 10 comments

Environment

  • Git Extensions v4 beta
  • Microsoft Windows NT 10.0.19044.0
  • .NET 6.0.9
  • DPI 96dpi (no scaling)

Issue description

It takes very long until the tooltips for the RevisionGrid are updated. This makes the Graph tooltips unusable.

Steps to reproduce

hover

Did this work in previous version of GitExtensions?

yes, 3.5

Diagnostics

No response

mstv avatar Oct 05 '22 20:10 mstv

@RussKie, is there a known issue in WinForms?

mstv avatar Oct 08 '22 08:10 mstv

I'm not observing any issues. Am I missing something?

https://user-images.githubusercontent.com/4403806/194703129-48d4cd75-7e6b-4950-b9d9-c8255ba103eb.mp4

RussKie avatar Oct 08 '22 10:10 RussKie

I cannot reproduce it on my dev machine right now. It seems to occur after long runtime. (It makes the Graph tooltips unusable.)

mstv avatar Oct 08 '22 20:10 mstv

Could this be a case where we cache tooltips, and over time the cache grows with the search becoming O(n^2)?

RussKie avatar Oct 09 '22 00:10 RussKie

Perhaps it occurs after hibernation.

SlowTooltips

mstv avatar Oct 15 '22 21:10 mstv

It depends on from where the RevisionGrid is entered.

SlowTooltips2

Graph tooltips are shown when hovering just a single-line commit message.

image

The commit tooltip is not hidden when leaving the row to other commits with single-line message.

image

mstv avatar Oct 16 '22 20:10 mstv

This is a pretty weird one: While moving the mouse inside the RevisionGrid, _gridView.MouseEnter is emitted sometimes, namely when the mouse hits the tooltip itself. If it is the last event, the tooltip is hidden by RevisionGridToolTipProvider.OnCellMouseEnter. I am removing this (inexactly named) and even unnecessary event handler at all.

mstv avatar Sep 19 '23 20:09 mstv

The removal of _gridView.MouseEnter has not resolved this issue. It reoccurred after a few days in hibernation.

mstv avatar Oct 07 '23 12:10 mstv

What are we doing this one? The report dates back to Oct 22, which is before the official release of .NET 6 and our v4. The follow up was a year later, which was presumably on .NET 6 and v4. (Quite possibly the issue lies within Windows Forms or Win32 implementations, in that case a bug with repro needs to be filed in dotnet/winforms).

RussKie avatar Jul 01 '24 07:07 RussKie

This issue still occurs at times. I do not have a clear repro.

mstv avatar Jul 01 '24 22:07 mstv