Changeset 7e38970d in mainline for uspace/lib/display


Ignore:
Timestamp:
2020-12-07T00:08:37Z (5 years ago)
Author:
Jiri Svoboda <jiri@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
25f26600
Parents:
7a873f0 (diff), 8596474 (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 branch 'jxsvoboda-gfx' into master

Location:
uspace/lib/display
Files:
1 added
4 edited

Legend:

Unmodified
Added
Removed
  • uspace/lib/display/include/types/display.h

    r7a873f0 r7e38970d  
    4646#define DISPLAY_DEFAULT NULL
    4747
     48struct display;
     49struct display_window;
     50
    4851/** Display server session */
    49 typedef struct {
    50         /** Session with display server */
    51         async_sess_t *sess;
    52         /** Synchronize access to display object */
    53         fibril_mutex_t lock;
    54         /** @c true if callback handler terminated */
    55         bool cb_done;
    56         /** Signalled when cb_done or ev_pending is changed */
    57         fibril_condvar_t cv;
    58         /** Windows (of display_window_t) */
    59         list_t windows;
    60 } display_t;
     52typedef struct display display_t;
     53
     54/** Display window */
     55typedef struct display_window display_window_t;
    6156
    6257/** Display window callbacks */
     
    7671} display_wnd_cb_t;
    7772
    78 /** Display window */
    79 typedef struct {
    80         /** Display associated with the window */
    81         display_t *display;
    82         /** Link to @c display->windows */
    83         link_t lwindows;
    84         /** Window ID */
    85         sysarg_t id;
    86         /** Callback functions */
    87         display_wnd_cb_t *cb;
    88         /** Argument to callback functions */
    89         void *cb_arg;
    90 } display_window_t;
    91 
    9273#endif
    9374
  • uspace/lib/display/include/types/display/wndparams.h

    r7a873f0 r7e38970d  
    4141 *
    4242 * The window's dimensions are determined by the bounding rectangle,
    43  * the position of which does not relate to its positon on the display,
     43 * the position of which does not relate to its position on the display,
    4444 * it just determines which range of logical coordinates is used
    4545 * by the window.
  • uspace/lib/display/src/display.c

    r7a873f0 r7e38970d  
    3838#include <mem.h>
    3939#include <stdlib.h>
     40#include "../private/display.h"
    4041#include "../private/params.h"
    4142
     
    198199/** Destroy display window.
    199200 *
    200  * @param window Window
     201 * @param window Window or @c NULL
    201202 * @return EOK on success or an error code. In both cases @a window must
    202203 *         not be accessed anymore
     
    206207        async_exch_t *exch;
    207208        errno_t rc;
     209
     210        if (window == NULL)
     211                return EOK;
    208212
    209213        exch = async_exchange_begin(window->display->sess);
  • uspace/lib/display/test/display.c

    r7a873f0 r7e38970d  
    3838#include <loc.h>
    3939#include <pcut/pcut.h>
     40#include "../private/display.h"
    4041
    4142PCUT_INIT;
     
    331332}
    332333
     334/** display_window_destroy() can handle NULL argument */
     335PCUT_TEST(window_destroy_null)
     336{
     337        display_window_destroy(NULL);
     338}
     339
    333340/** display_window_move_req() with server returning error response works. */
    334341PCUT_TEST(window_move_req_failure)
Note: See TracChangeset for help on using the changeset viewer.