Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/lib/ui/src/window.c

    r9aa51406 r29ed06d  
    11/*
    2  * Copyright (c) 2024 Jiri Svoboda
     2 * Copyright (c) 2023 Jiri Svoboda
    33 * All rights reserved.
    44 *
     
    318318{
    319319        ui_window_t *window;
    320         ui_window_t *pwindow = NULL;
    321320        display_info_t info;
    322321        gfx_coord2_t scr_dims;
     
    343342        dparams.rect = params->rect;
    344343        dparams.caption = params->caption;
    345         dparams.min_size = params->min_size;
     344        /* Only allow making the window larger */
     345        gfx_rect_dims(&params->rect, &dparams.min_size);
    346346
    347347        /*
     
    505505        *rwindow = window;
    506506
    507         if (ui_is_fullscreen(ui))
    508                 pwindow = ui_window_get_active(ui);
    509 
    510507        list_append(&window->lwindows, &ui->windows);
    511 
    512         if (ui_is_fullscreen(ui)) {
    513                 /* Send unfocus event to previously active window */
    514                 if (pwindow != NULL)
    515                         ui_window_send_unfocus(pwindow, 0);
    516         }
    517 
    518508        return EOK;
    519509error:
     
    541531{
    542532        ui_t *ui;
    543         ui_window_t *nwindow;
    544533
    545534        if (window == NULL)
     
    569558        if (ui_is_fullscreen(ui)) {
    570559                ui_paint(ui);
    571                 /* Send focus event to newly active window */
    572                 nwindow = ui_window_get_active(ui);
    573                 if (nwindow != NULL)
    574                         ui_window_send_focus(nwindow, 0);
    575560        }
    576561
     
    10461031        ui_lock(ui);
    10471032        (void) ui_window_resize(window, rect);
    1048         ui_window_send_resize(window);
     1033        (void) ui_window_paint(window);
    10491034        ui_unlock(ui);
    10501035}
     
    12941279void ui_window_send_minimize(ui_window_t *window)
    12951280{
    1296         if (window->cb != NULL && window->cb->minimize != NULL)
     1281        if (window->cb != NULL && window->cb->maximize != NULL)
    12971282                window->cb->minimize(window, window->arg);
    12981283        else
     
    13921377        else
    13931378                return ui_window_def_unfocus(window, nfocus);
    1394 }
    1395 
    1396 /** Send window resize event.
    1397  *
    1398  * @param window Window
    1399  */
    1400 void ui_window_send_resize(ui_window_t *window)
    1401 {
    1402         if (window->cb != NULL && window->cb->resize != NULL)
    1403                 window->cb->resize(window, window->arg);
    1404         else
    1405                 return ui_window_def_resize(window);
    14061379}
    14071380
     
    15841557        if (window->control != NULL)
    15851558                ui_control_unfocus(window->control, nfocus);
    1586 }
    1587 
    1588 /** Default window resize routine.
    1589  *
    1590  * @param window Window
    1591  * @return EOK on success or an error code
    1592  */
    1593 void ui_window_def_resize(ui_window_t *window)
    1594 {
    1595         ui_window_paint(window);
    15961559}
    15971560
Note: See TracChangeset for help on using the changeset viewer.