-
Notifications
You must be signed in to change notification settings - Fork 13
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
Introduce Auto-Append scrolling behavior and rename Infinite behavior to Grow #72
Introduce Auto-Append scrolling behavior and rename Infinite behavior to Grow #72
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thank you very much @haydar-metin! Seems to work well. A few minor comments inline below.
@haydar-metin I think @colin-grant-work fixed the bug which is fixed in this PR also in #78. So probably it'd be best to rebase this PR on top of #78. Thanks! |
26278a8
to
710d21d
Compare
710d21d
to
43c98be
Compare
The code triggered an error if the memory could not be fetched for specific areas, so I changed: |
Based on the discussions, We now have the following options:
I suggest to go with either 1) or 2) as the current implementation for |
I agree. I don't have strong feelings about whether to show the buttons when append-by-scroll is enabled. Not showing them saves a little space; showing them gives people a little more granular control. I'd also suggest allowing append-by-scroll at the top of the container as well as the bottom - the user could decide they want to see things just above the current frame as well as just below. |
I believe we should start with option 1). And add back the button if users ask for it. If not there, it gives the user a visual indication which mode is active.
I would not add this to this mode. There is a subtle difference between scrolling downwards and upwards: |
43c98be
to
2e681c2
Compare
The latest commit now replaced
|
641c20b
to
6248009
Compare
@colin-grant-work Thank you for the code feedback! The code looks now cleaner in my opinion! |
3f5b287
to
f3e03e3
Compare
54a82cf
to
c58654f
Compare
@colin-grant-work Thank you for your guidance and sharing your knowledge with me! Your comments were helpful. I also tested the frozen case. |
Thanks so much @haydar-metin for this great work, and @colin-grant-work for the effort in reviewing and providing guidance! I found a few scenarios which might need review. But overall, I believe we are getting there. :-)
Given the size this PR has already, I am wondering if we are happy to merge it as it is and continue from here to refine via new issues? |
@jreineckearm Thank you for the feedback and extensive testing! I would appreciate it to do the changes in a follow up issue, with more specifications / requirement details.
You can reset it by using the functionality introduced by @planger
Yes, both scenarios depend on the visible rows. If any change to And if you scroll and then change any setting, then it depends on your current position. If changing the settings would result in either a) non-scrollbar b) or your current scrollbar position not to be visible, then it will also cause a refetch. However, if the change does not cause the previously mentioned issues, then it will not trigger a refetch. Summarized a refetch is always triggered when the scrollbar can not be rendered because of the current settings.
I think that is a
Yes, Primereact supports |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It's now impossible to grow the view using the "Load more bytes below" bar. At a minimum, we need to update its text to indicate that it's now moving, not loading more memory. But I believe that that is still a valid use case: appending, but not automatically.
Dismissing old review, since I assumed it would be superseded by new review.
5db35f2
to
09b0b60
Compare
The original implementation of I will now use the following criteria to show the different texts: 09b0b60 const isGrowing = props.direction === 'above' && props.shouldPrepend === true;
const growLabel = <span>Load {selector} more bytes {props.direction}</span>;
const moveLabel = <span>Move {selector} bytes {props.direction}</span>; Hint:
Yes, as discussed, we can introduce this feature if the necessity arises. Code wise, it should be something really easy to do. |
There's a lot of discussion on this PR and I'm keen we are pragmatic around moving forward. If there are no major blockers, can we merge this and see how we get on with the setup in the real world? We can always revisit this later. |
Fine with me. The recently found issues can be handled by new PRs. |
I don't believe this is correct. The original implementation always increased the number of bytes loaded - i.e. it was equivalent to |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@thegecko, I'm sorry to be a blocker, but I really don't want to merge this having lost the original behavior of the More(!)MemorySelect
headers and footers.
@colin-grant-work Oh sorry! With original I meant the version here in regard to how I didn't expect the scroll behaviors to have such a history. So, So, I'm not quite sure what to do, should I just bring |
I think for now, so we can move things forward, it would be best to bring back |
Ok and final question, should I also revert the labels (Move x bytes vs Load x more bytes) to be the same as before I started this PR? Or should And should I rename Thanks! |
Oh, I see. Similar to @haydar-metin , I was mislead by the focus of discussions on Yes, let's bring that mode back then. We definitely need to use a different name though. I believe the "what's meant with
@haydar-metin , I'd be good either way. But since we talk about preserving something that users are accustomed to, we probably should switch back to |
09b0b60
to
a863597
Compare
The latest commit now renames
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks, LGTM! Awesome work!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for the changes, and thanks for bearing with all of my comments!
What it does
Introduces the
Auto-Append
scrolling behavior and renames theInfinite
scroll behavior toGrow
.When the user provided arguments are the same then we have the following view:
If the user navigates within the table:
--
How to test
auto-append
scrolling behavior in the settingsReview checklist
Reminder for reviewers
Closes #56