From a5d271dd8f3c2726aa42929c923704f98ad37010 Mon Sep 17 00:00:00 2001 From: Bent Bisballe Nyeng Date: Fri, 27 Sep 2013 20:16:12 +0200 Subject: Optimise repaint events greatly improving GUI responsiveness. --- plugingui/eventhandler.cc | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'plugingui/eventhandler.cc') diff --git a/plugingui/eventhandler.cc b/plugingui/eventhandler.cc index 7eae827..cec5fab 100644 --- a/plugingui/eventhandler.cc +++ b/plugingui/eventhandler.cc @@ -27,6 +27,7 @@ #include "eventhandler.h" #include "window.h" +#include "painter.h" GUI::EventHandler::EventHandler(GUI::NativeWindow *n, GUI::Window *w) { @@ -56,6 +57,8 @@ void GUI::EventHandler::registerCloseHandler(void (*handler)(void *), void *ptr) void GUI::EventHandler::processEvents() { while(hasEvent()) { + Painter p(window); // Make sure we only redraw buffer one time. + Event *event = getNextEvent(); if(event == NULL) continue; @@ -72,7 +75,7 @@ void GUI::EventHandler::processEvents() ResizeEvent *re = (ResizeEvent*)event; if(re->width != window->width() || re->height != window->height()) { window->resized(re->width, re->height); - window->repaint_r(NULL); + //window->repaint_r(NULL); } } break; -- cgit v1.2.3