Skip to content

fix(LogTable): implement virtual scrolling #1505

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

Merged
merged 6 commits into from
Apr 22, 2025
Merged

Conversation

Antreesy
Copy link
Collaborator

@Antreesy Antreesy commented Feb 4, 2025

Ref #1262

Attempt to implement 'virtual scrolling':

  • copied from server/apps/settings/src/components/Users/VirtualList.vue, omitting some redundant logic for logreader

TODO:

  • expanded LogTableRow is taking more vertical space, but doesn't seem to break scroller in general, and atm collapses after leaving viewport
  • ILogEntry should contain the id, as it's not the part of the log entry from file
  • log a line for further debugging: ResizeObserver for virtual list updated', { rendered: number, total: number })

@Antreesy Antreesy added this to the Nextcloud 32 milestone Feb 4, 2025
@Antreesy Antreesy requested a review from susnux February 4, 2025 10:31
@Antreesy Antreesy self-assigned this Feb 4, 2025
@Antreesy Antreesy force-pushed the fix/1262/virtual-scroller branch from 99e0518 to 3b34500 Compare March 3, 2025 23:04
@Antreesy Antreesy requested a review from ShGKme March 3, 2025 23:05
@Antreesy Antreesy marked this pull request as ready for review March 3, 2025 23:06
@Antreesy Antreesy changed the title [WIP] fix(LogTable): implement virtual scrolling fix(LogTable): implement virtual scrolling Mar 3, 2025
ShGKme

This comment was marked as resolved.

@Antreesy Antreesy force-pushed the fix/1262/virtual-scroller branch from 3b34500 to bcde1f7 Compare March 5, 2025 12:00
@Antreesy

This comment was marked as resolved.

@Antreesy Antreesy force-pushed the fix/1262/virtual-scroller branch from bcde1f7 to c0a3862 Compare March 6, 2025 17:28
@Antreesy Antreesy force-pushed the fix/1262/virtual-scroller branch from c0a3862 to 582c0a8 Compare April 15, 2025 07:25
@Antreesy Antreesy requested review from ShGKme and removed request for Pytal April 15, 2025 07:25
Copy link

@ShGKme ShGKme left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fine by me, but not a fan of having virtual scroll login and log table mixes in a single component.

@Antreesy Antreesy force-pushed the fix/1262/virtual-scroller branch from 582c0a8 to ba32da8 Compare April 16, 2025 15:55
- required to have all entries of same height initially

Signed-off-by: Maksim Sukharev <[email protected]>
@Antreesy Antreesy force-pushed the fix/1262/virtual-scroller branch from 69f5377 to bfc9e39 Compare April 22, 2025 07:28
@Antreesy
Copy link
Collaborator Author

/backport to stable31

@Antreesy
Copy link
Collaborator Author

/backport to stable30

@Antreesy Antreesy force-pushed the fix/1262/virtual-scroller branch from b453bc3 to 10140c2 Compare April 22, 2025 07:42
- copied from server/apps/settings/src/components/Users/VirtualList.vue, omitting some redundant logic

Signed-off-by: Maksim Sukharev <[email protected]>
Signed-off-by: Maksim Sukharev <[email protected]>
@Antreesy Antreesy force-pushed the fix/1262/virtual-scroller branch from 10140c2 to 25ee6fc Compare April 22, 2025 07:44
@Antreesy
Copy link
Collaborator Author

/compile /

Signed-off-by: nextcloud-command <[email protected]>
@Antreesy
Copy link
Collaborator Author

Since the approve:

  • rebased
  • extended ILogEntry type with 'id' field (present since NC14 in output)
  • move ITableRow condition from template to computed
  • splitted into commits
  • smoke tested (23/400 rows)

@Antreesy Antreesy merged commit eac6772 into master Apr 22, 2025
31 of 32 checks passed
@Antreesy Antreesy deleted the fix/1262/virtual-scroller branch April 22, 2025 07:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants