-
Notifications
You must be signed in to change notification settings - Fork 63
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Auto-adjust track heights to their current layout height #534
Comments
Given that the default height of a track is just 100 pixels this is often a good thing to have. Otherwise users have to manually use the track resize handle to increase track height |
Proposal for this:
what do you think about that, @cmdcolin? |
My general feeling is that scrolls within scrolls is generally a problem. We have outer scroll and then each track can have scroll. This results in difficulty in even initiating an outer scroll with a mousewheel or touchpad. So my feeling is that it's better to just have autoadjust |
But what about the problem of tracks jumping around as people scroll? Many
have complained about that.
…On Mon, Jan 27, 2020 at 12:28 PM Colin Diesh ***@***.***> wrote:
My general feeling is that scrolls within scrolls is generally a problem.
We have outer scroll and then each track can have scroll. This results in
difficulty in even initiating an outer scroll with a mousewheel or
touchpad. So my feeling is that it's better to just have autoadjust
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
<#534?email_source=notifications&email_token=AAASAFMJJWSUJBZKEH5M7TDQ747X7A5CNFSM4I5ESQY2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEKA6FSA#issuecomment-578937544>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AAASAFKQSO6VUWA47IKIUK3Q747X7ANCNFSM4I5ESQYQ>
.
|
I have not heard of that complaint before |
What I have heard is that track height was difficult to configure in jb1 and I remember Suzi requesting per track scroll but I feel there are downsides to having too many scrolls |
Do you propose going back to the way JB1 does it, just refusing to render anything else once you get "max height reached"? |
I think that scrolls within scrolls that cause difficulty interacting with the outer view is my main problem. If there are other usability problems, like having the right amount of info on the screen, and having per track scroll helps, then I may be open to it. I looked at a comparison for example igv, and it does have per-track scroll in both IGV desktop and web. The per track scroll does not respond to touchscroll though which goes a long way towards not bothering me. Weirdly, the per track scroll is quite stealthy in that way. See https://igv.org/app/ the RefSeq track actually has a scroll that is not really obvious, I looked at it and said "ah yes a gene with only two isoforms, how simple..." and then I realize it actually scrolls down. |
Here is a tinyurl of an IGV web with BAM and genes http://tinyurl.com/uko8pob that has per track scrolls, and only one outer scroll |
We could make the track scrolls just not respond to mouse-wheel vertical scroll events fairly easily I think, which would make it behave like igv.js is behaving there. How about we just do that? |
We could try. I am not a huge fan of how it changes the semantics of scrolling to a custom more-non-functional-scroll but if I need to get over that I can. I feel like adding scroll if a user needs it is not that unintuive Note that, preventing scroll involves some involved stuff For one thing onScroll and onWheel event.preventDefault do nothing, they are maybe passive? I demonstrated this at one point but you can see it with a thing like this
Any wheel/touchpad scroll action of scrolling inside the red or green areas prevents outer scroll on my machine |
The way to do it is to fully override any default scrolling I think, using a custom scroller that only replies to click events maybe |
The comment above " I feel like adding scroll if a user needs it is not that unintuive" refers to the idea that we keep JB1 behavior for many cases, and add scrolling if needed maybe? |
How about we:
That would mean that tracks, when first opened, will resize themselves to not need scrolling, but after that they will not resize and will be under user control. And when you scroll with the mouse wheel any scrolling tracks won't block that. How about that? |
I'll mull it over. It seems almost like step 1 is very much like jbrowse 1, why not just go full jbrowse 1 behavior. with step 2, it is difficult without a custom scroll as mentioned above. |
Alternative to step 1: just have an opinionated stance on what a alignments track height is...on what a wiggle track height is, on what a gene track height is. |
I'm going to throw my opinion in here and say that I like Rob's original proposal (adjust a track's height when it's first opened), and if you end up with a scroll within a scroll after that, it's just fine. We're using the browser default behavior for a scrollable element inside a scrollable page, so it should be what most people expect. I, personally, have never had any trouble navigating the scrollable tracks. I think resizing the tracks on horizontal scrolling is problematic because if a track near the top resizes a lot, it could push another track that you may be looking at off the screen. |
In order to perform outer scroll when you have per-track scrolls, you have to carefully position your mouse outside of any area the tracks occupy. I have a problem with this pretty much anytime there is an outer scroll present |
Pages are much easier to deal with when there are not scrolls within scrolls |
That's not the behavior I observe. If I scroll down on a track that is already scrolled all the way down, it scrolls the page instead. |
@garrettjstevens I do not want to have to scroll a track to the bottom of it's per-track scroll to scroll the outer page |
The way I refer to as the special location is the track controls, which will possibly go away, making this problem even more difficult |
Here is a good article on the UX perspective of this issue https://baymard.com/blog/inline-scroll-areas |
Some ideas related to that article, truncation design https://baymard.com/blog/truncation-design |
see also #3858 |
random whirlpool of sort of related concepts from weekly meeting
|
I think many times if a track is auto-adjusted to it's current layout height, which is bounded by a maxHeight, it can be better than if the track has a small height and is scrollable in that small area. This has been debated before but I think having an option for it will be ideal.
The text was updated successfully, but these errors were encountered: