You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I have been bitten by this so many times! I think the simplest solution would probably be to track if the mouse press was initiated within the bounds of the tab, and only handle the release event if it happens on that same tab. The trouble is, from what I can tell, that tcell's event reporting is pretty minimal, and we would need to implement our own mouse press-release tracking.
At first blush, I thought we could just do the same handling in TabList that we do in BufPane, but I'm now pretty certain that it wouldn't work, because the state would not be shared between those two structs, unless we did the legwork to synchronize it, but that would likely open up a whole slew of new edge cases that we would have to consider.
The other solution would be to rework event handling to track the receiving Tab/BufPane for press events, and then only dispatch the next release event to that same Tab/BufPane. This would likely be a larger rewrite, but we could use it to greatly simplify mouse handling in bufpane.go, and generally make mouse handling more robust.
Is there a simpler/more robust solution that I'm not seeing here?
The interaction between the tab bar and buffer window/pane seems to be seamless, which creates some cases where the user could be confused:
Version: 2.0.14-dev.245
Commit hash: 2259fd1
OS: Debian testing (trixie)
Terminal: GNOME Console aka KGX 46.0
The text was updated successfully, but these errors were encountered: