LibGUI: Avoid needlessly copying vectors of rects

This commit is contained in:
Tom 2021-02-15 20:05:49 -07:00 committed by Andreas Kling
parent 3907bacfcd
commit cd0a1fa5b0
Notes: sideshowbarker 2024-07-18 21:55:53 +09:00

View File

@ -416,12 +416,8 @@ void Window::handle_multi_paint_event(MultiPaintEvent& event)
else if (created_new_backing_store)
set_current_backing_store(*m_back_store, true);
if (is_visible()) {
Vector<Gfx::IntRect> rects_to_send;
for (auto& r : rects)
rects_to_send.append(r);
WindowServerConnection::the().post_message(Messages::WindowServer::DidFinishPainting(m_window_id, rects_to_send));
}
if (is_visible())
WindowServerConnection::the().post_message(Messages::WindowServer::DidFinishPainting(m_window_id, rects));
}
void Window::handle_key_event(KeyEvent& event)
@ -606,10 +602,7 @@ void Window::update(const Gfx::IntRect& a_rect)
auto rects = move(m_pending_paint_event_rects);
if (rects.is_empty())
return;
Vector<Gfx::IntRect> rects_to_send;
for (auto& r : rects)
rects_to_send.append(r);
WindowServerConnection::the().post_message(Messages::WindowServer::InvalidateRect(m_window_id, rects_to_send, false));
WindowServerConnection::the().post_message(Messages::WindowServer::InvalidateRect(m_window_id, rects, false));
});
}
m_pending_paint_event_rects.append(a_rect);