expose event may cause crash in single thread situation. now we use timeoutadd call back to repaint directly and use 'drawWindowBeginPaintRegion' to avoid flicker. NOW: it is stable in both LINUX and WINDOWS