diff --git a/Userland/Applications/PDFViewer/PDFViewer.cpp b/Userland/Applications/PDFViewer/PDFViewer.cpp index b756ea3dd8..eedee72d24 100644 --- a/Userland/Applications/PDFViewer/PDFViewer.cpp +++ b/Userland/Applications/PDFViewer/PDFViewer.cpp @@ -101,6 +101,13 @@ void PDFViewer::paint_event(GUI::PaintEvent& event) painter.blit({ x, y }, *page, page->rect()); } +void PDFViewer::resize_event(GUI::ResizeEvent&) +{ + for (auto& map : m_rendered_page_list) + map.clear(); + update(); +} + void PDFViewer::mousewheel_event(GUI::MouseEvent& event) { if (!m_document) diff --git a/Userland/Applications/PDFViewer/PDFViewer.h b/Userland/Applications/PDFViewer/PDFViewer.h index 5f53958087..374bbfb790 100644 --- a/Userland/Applications/PDFViewer/PDFViewer.h +++ b/Userland/Applications/PDFViewer/PDFViewer.h @@ -18,6 +18,11 @@ class PDFViewer : public GUI::AbstractScrollableWidget { C_OBJECT(PDFViewer) public: + enum class PageViewMode { + Single, + Multiple, + }; + virtual ~PDFViewer() override = default; ALWAYS_INLINE u32 current_page() const { return m_current_page_index; } @@ -37,6 +42,7 @@ protected: PDFViewer(); virtual void paint_event(GUI::PaintEvent&) override; + virtual void resize_event(GUI::ResizeEvent&) override; virtual void mousewheel_event(GUI::MouseEvent&) override; virtual void mousedown_event(GUI::MouseEvent&) override; virtual void mouseup_event(GUI::MouseEvent&) override;