Changeset 71eff34 in mainline


Ignore:
Timestamp:
2020-04-07T18:24:05Z (4 years ago)
Author:
Jiri Svoboda <jiri@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
ef30659
Parents:
1b443cc0
Message:

Avoid artifacts when resizing a window

Location:
uspace/srv/hid/display
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • uspace/srv/hid/display/types/display/window.h

    r1b443cc0 r71eff34  
    7070        /** Display position */
    7171        gfx_coord2_t dpos;
    72         /** Preview position */
     72        /** Preview position (when moving) */
    7373        gfx_coord2_t preview_pos;
     74        /** Preview rectangle (when resizing) */
     75        gfx_rect_t preview_rect;
    7476        /** Minimum size */
    7577        gfx_coord2_t min_size;
  • uspace/srv/hid/display/window.c

    r1b443cc0 r71eff34  
    525525        wnd->state = dsw_resizing;
    526526        wnd->rsztype = rsztype;
     527        wnd->preview_rect = wnd->rect;
    527528}
    528529
     
    574575                return;
    575576
    576         gfx_rect_translate(&wnd->dpos, &wnd->rect, &drect);
    577 
    578         gc = ds_display_get_gc(wnd->display); // XXX
    579         if (gc != NULL) {
    580                 gfx_set_color(gc, wnd->display->bg_color);
    581                 gfx_fill_rect(gc, &drect);
    582         }
     577        gfx_rect_translate(&wnd->dpos, &wnd->preview_rect, &drect);
     578        (void) ds_display_paint(wnd->display, &drect);
    583579
    584580        gfx_coord2_subtract(pos, &wnd->orig_pos, &dresize);
     
    586582        ds_window_calc_resize(wnd, &dresize, &nrect);
    587583        gfx_rect_translate(&wnd->dpos, &nrect, &drect);
     584        wnd->preview_rect = nrect;
    588585
    589586        rc = gfx_color_new_rgb_i16(0xffff, 0xffff, 0xffff, &color);
Note: See TracChangeset for help on using the changeset viewer.