Changeset 9242ad9 in mainline for uspace/lib/gui/window.c


Ignore:
Timestamp:
2020-05-20T17:35:07Z (5 years ago)
Author:
Jiri Svoboda <jiri@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
9901f267
Parents:
5480d5e
Message:

Switch to double-arrow cursors when pointer is above resize areas

File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/lib/gui/window.c

    r5480d5e r9242ad9  
    9999};
    100100
     101static void set_cursor(window_t *window, display_stock_cursor_t cursor)
     102{
     103        if (cursor != window->cursor) {
     104                (void) display_window_set_cursor(window->dwindow, cursor);
     105                window->cursor = cursor;
     106        }
     107}
     108
    101109static void paint_internal(widget_t *widget)
    102110{
     
    294302                bool close = (header) &&
    295303                    (event.hpos >= width - border_thickness - close_thickness);
     304
     305                if ((top && left) || (bottom && right))
     306                        (void) set_cursor(widget->window, dcurs_size_uldr);
     307                else if ((top && right) || (bottom && left))
     308                        (void) set_cursor(widget->window, dcurs_size_urdl);
     309                else if (top || bottom)
     310                        (void) set_cursor(widget->window, dcurs_size_ud);
     311                else if (left || right)
     312                        (void) set_cursor(widget->window, dcurs_size_lr);
     313                else
     314                        (void) set_cursor(widget->window, dcurs_arrow);
    296315
    297316                pos.x = event.hpos;
     
    654673        win->grab = NULL;
    655674        win->focus = NULL;
     675        win->cursor = dcurs_arrow;
    656676
    657677        /* Allocate resources for new surface. */
Note: See TracChangeset for help on using the changeset viewer.