Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/lib/display/src/display.c

    r4ac11ff rc9927c66  
    11/*
    2  * Copyright (c) 2019 Jiri Svoboda
     2 * Copyright (c) 2021 Jiri Svoboda
    33 * All rights reserved.
    44 *
     
    319319}
    320320
     321/** Get display window position.
     322 *
     323 * Get display window position on the display.
     324 *
     325 * @param window Window
     326 * @param dpos Place to store position
     327 * @return EOK on success or an error code
     328 */
     329errno_t display_window_get_pos(display_window_t *window, gfx_coord2_t *dpos)
     330{
     331        async_exch_t *exch;
     332        aid_t req;
     333        ipc_call_t answer;
     334        errno_t rc;
     335
     336        exch = async_exchange_begin(window->display->sess);
     337        req = async_send_1(exch, DISPLAY_WINDOW_GET_POS, window->id, &answer);
     338        rc = async_data_read_start(exch, dpos, sizeof (gfx_coord2_t));
     339        async_exchange_end(exch);
     340        if (rc != EOK) {
     341                async_forget(req);
     342                return rc;
     343        }
     344
     345        async_wait_for(req, &rc);
     346        if (rc != EOK)
     347                return rc;
     348
     349        return EOK;
     350}
     351
    321352/** Request a window resize.
    322353 *
Note: See TracChangeset for help on using the changeset viewer.