mirror of
https://github.com/RGBCube/serenity
synced 2025-07-25 04:27:43 +00:00
parent
7191098356
commit
9f8d518e82
2 changed files with 25 additions and 6 deletions
|
@ -69,13 +69,25 @@ void InfinitelyScrollableTableView::did_scroll()
|
|||
TableView::did_scroll();
|
||||
auto& vscrollbar = vertical_scrollbar();
|
||||
auto& hscrollbar = horizontal_scrollbar();
|
||||
if (vscrollbar.is_visible() && vscrollbar.value() == vscrollbar.max()) {
|
||||
if (on_reaching_vertical_end)
|
||||
on_reaching_vertical_end();
|
||||
if (!m_vertical_scroll_end_timer->is_active()) {
|
||||
if (vscrollbar.is_visible() && vscrollbar.value() == vscrollbar.max()) {
|
||||
m_vertical_scroll_end_timer->on_timeout = [&] {
|
||||
if (on_reaching_vertical_end)
|
||||
on_reaching_vertical_end();
|
||||
m_vertical_scroll_end_timer->stop();
|
||||
};
|
||||
m_vertical_scroll_end_timer->start(50);
|
||||
}
|
||||
}
|
||||
if (hscrollbar.is_visible() && hscrollbar.value() == hscrollbar.max()) {
|
||||
if (on_reaching_horizontal_end)
|
||||
on_reaching_horizontal_end();
|
||||
if (!m_horizontal_scroll_end_timer->is_active()) {
|
||||
if (hscrollbar.is_visible() && hscrollbar.value() == hscrollbar.max()) {
|
||||
m_horizontal_scroll_end_timer->on_timeout = [&] {
|
||||
if (on_reaching_horizontal_end)
|
||||
on_reaching_horizontal_end();
|
||||
m_horizontal_scroll_end_timer->stop();
|
||||
};
|
||||
m_horizontal_scroll_end_timer->start(50);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue