|
@@ -895,12 +895,12 @@ void laShowProgress(real p1, real p2){
|
|
|
laBoxedTheme *bt = _LA_THEME_TAB; real* fg=laThemeColor(bt,LA_BT_TEXT); real* bg=laThemeColor(bt,LA_BT_NORMAL);
|
|
|
if(!MAIN.Progress.Called){
|
|
|
laRecordTime(&MAIN.Progress.TimeCalled); MAIN.Progress.Called=1;
|
|
|
- }else{
|
|
|
+ }
|
|
|
laTimeRecorder tm; laRecordTime(&tm);
|
|
|
real t=laTimeElapsedSecondsf(&tm,&MAIN.Progress.TimeCalled); if(t<0.1){ laSpinUnlock(&MAIN.OpsLock); return; }
|
|
|
memcpy(&MAIN.Progress.TimeCalled,&tm,sizeof(laTimeRecorder));
|
|
|
- if(!MAIN.Progress.Shown){
|
|
|
- int ww=PROGRESSW+LA_RH*2;
|
|
|
+ if((!MAIN.Progress.Shown) && MAIN.Progress.Called){
|
|
|
+ int ww=PROGRESSW+LA_RH*2;
|
|
|
#ifdef LA_LINUX
|
|
|
int w=XDisplayWidth(MAIN.dpy, 0),h=XDisplayHeight(MAIN.dpy, 0);
|
|
|
XMoveResizeWindow(MAIN.dpy,MAIN.Progress.w,w/2-ww/2,h/2-LA_RH*2/2,ww,LA_RH*2);
|
|
@@ -918,7 +918,6 @@ void laShowProgress(real p1, real p2){
|
|
|
#endif
|
|
|
MAIN.Progress.Shown = 1;
|
|
|
}
|
|
|
- }
|
|
|
if(p1>=0) MAIN.Progress.p1=p1; if(p2>=0) MAIN.Progress.p2=p2;
|
|
|
#ifdef LA_LINUX
|
|
|
XClearWindow(MAIN.dpy,MAIN.Progress.w);
|
|
@@ -946,6 +945,20 @@ void laShowProgress(real p1, real p2){
|
|
|
EndPaint(MAIN.Progress.w,&ps);
|
|
|
MSG msg;
|
|
|
while (PeekMessage(&msg, 0, 0, 0, PM_REMOVE)){ TranslateMessage(&msg); DispatchMessage(&msg); };
|
|
|
+#endif
|
|
|
+#ifdef LAGUI_ANDROID
|
|
|
+ laWindow* window=MAIN.CurrentWindow; int pw=window->CW;
|
|
|
+ eglMakeCurrent(MAIN.egl_dpy, MAIN.egl_surf, MAIN.egl_surf, MAIN.glc);
|
|
|
+ tnsViewportWithScissor(0,0,window->CW,window->CH);
|
|
|
+ tnsOrtho(0,window->CW,-window->CH+LA_2RH,LA_2RH,-100,100);
|
|
|
+ tnsClearColorv(bg); tnsClearAll(); tnsUseNoTexture(); tnsColor4dv(fg);
|
|
|
+ tnsVertex2d(0,0);tnsVertex2d(pw*MAIN.Progress.p2,0);tnsVertex2d(pw*MAIN.Progress.p2,LA_RH);tnsVertex2d(0,LA_RH);
|
|
|
+ tnsPackAs(GL_TRIANGLE_FAN);
|
|
|
+ tnsVertex2d(0,LA_RH);tnsVertex2d(pw*MAIN.Progress.p1,LA_RH);tnsVertex2d(pw*MAIN.Progress.p1,LA_2RH);tnsVertex2d(0,LA_2RH);
|
|
|
+ tnsPackAs(GL_TRIANGLE_FAN);
|
|
|
+ tnsFlush();
|
|
|
+ eglSwapBuffers(MAIN.egl_dpy, MAIN.egl_surf);
|
|
|
+ eglMakeCurrent(MAIN.egl_dpy,0,0,0);
|
|
|
#endif
|
|
|
laSpinUnlock(&MAIN.OpsLock);
|
|
|
}
|
|
@@ -964,6 +977,9 @@ void laHideProgress(){
|
|
|
#ifdef _WIN32
|
|
|
ShowWindow(MAIN.Progress.w,SW_HIDE);
|
|
|
if(MAIN.CurrentWindow) UpdateWindow(MAIN.CurrentWindow->win);
|
|
|
+#endif
|
|
|
+#ifdef LAGUI_ANDROID
|
|
|
+ laRedrawAllWindows();
|
|
|
#endif
|
|
|
laSpinUnlock(&MAIN.OpsLock);
|
|
|
}
|