Changeset 7bf29e5 in mainline for uspace/lib/ui/src/window.c


Ignore:
Timestamp:
2025-01-09T11:29:38Z (5 months ago)
Author:
Miroslav Cimerman <mc@…>
Children:
a5c2960e
Parents:
bc3d695 (diff), 4e1221c (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the (diff) links above to see all the changes relative to each parent.
Message:

Merge 'upstream/master' into helenraid-para

File:
1 edited

Legend:

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

    rbc3d695 r7bf29e5  
    11/*
    2  * Copyright (c) 2024 Jiri Svoboda
     2 * Copyright (c) 2025 Jiri Svoboda
    33 * All rights reserved.
    44 *
     
    189189        switch (params->placement) {
    190190        case ui_wnd_place_default:
    191                 assert(ui_is_fullscreen(window->ui));
     191        case ui_wnd_place_center:
     192                assert(params->placement != ui_wnd_place_default ||
     193                    ui_is_fullscreen(window->ui));
    192194                /* Center window */
    193195                gfx_rect_dims(&params->rect, &dims);
     
    343345        dparams.rect = params->rect;
    344346        dparams.caption = params->caption;
    345         /* Only allow making the window larger */
    346         gfx_rect_dims(&params->rect, &dparams.min_size);
     347        dparams.min_size = params->min_size;
    347348
    348349        /*
     
    358359        if ((params->flags & ui_wndf_popup) != 0)
    359360                dparams.flags |= wndf_popup;
     361        if ((params->flags & ui_wndf_nofocus) != 0)
     362                dparams.flags |= wndf_nofocus;
    360363        if ((params->flags & ui_wndf_topmost) != 0)
    361364                dparams.flags |= wndf_topmost;
     
    975978        ui_t *ui = window->ui;
    976979
    977         ui_lock(ui);
     980        fibril_mutex_lock(&ui->lock);
    978981        ui_window_send_close(window);
    979         ui_unlock(ui);
     982        fibril_mutex_unlock(&ui->lock);
    980983}
    981984
     
    986989        ui_t *ui = window->ui;
    987990
    988         ui_lock(ui);
     991        fibril_mutex_lock(&ui->lock);
    989992        (void)nfocus;
    990993
     
    995998
    996999        ui_window_send_focus(window, nfocus);
    997         ui_unlock(ui);
     1000        fibril_mutex_unlock(&ui->lock);
    9981001}
    9991002
     
    10041007        ui_t *ui = window->ui;
    10051008
    1006         ui_lock(ui);
     1009        fibril_mutex_lock(&ui->lock);
    10071010        ui_window_send_kbd(window, kbd_event);
    1008         ui_unlock(ui);
     1011        fibril_mutex_unlock(&ui->lock);
    10091012}
    10101013
     
    10201023                return;
    10211024
    1022         ui_lock(ui);
     1025        fibril_mutex_lock(&ui->lock);
    10231026
    10241027        claim = ui_wdecor_pos_event(window->wdecor, event);
    10251028        if (claim == ui_claimed) {
    1026                 ui_unlock(ui);
     1029                fibril_mutex_unlock(&ui->lock);
    10271030                return;
    10281031        }
    10291032
    10301033        ui_window_send_pos(window, event);
    1031         ui_unlock(ui);
     1034        fibril_mutex_unlock(&ui->lock);
    10321035}
    10331036
     
    10451048                return;
    10461049
    1047         ui_lock(ui);
     1050        fibril_mutex_lock(&ui->lock);
    10481051        (void) ui_window_resize(window, rect);
    10491052        ui_window_send_resize(window);
    1050         ui_unlock(ui);
     1053        fibril_mutex_unlock(&ui->lock);
    10511054}
    10521055
     
    10571060        ui_t *ui = window->ui;
    10581061
    1059         ui_lock(ui);
     1062        fibril_mutex_lock(&ui->lock);
    10601063
    10611064        if (window->wdecor != NULL && nfocus == 0) {
     
    10651068
    10661069        ui_window_send_unfocus(window, nfocus);
    1067         ui_unlock(ui);
     1070        fibril_mutex_unlock(&ui->lock);
    10681071}
    10691072
     
    12951298void ui_window_send_minimize(ui_window_t *window)
    12961299{
    1297         if (window->cb != NULL && window->cb->maximize != NULL)
     1300        if (window->cb != NULL && window->cb->minimize != NULL)
    12981301                window->cb->minimize(window, window->arg);
    12991302        else
Note: See TracChangeset for help on using the changeset viewer.