Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/lib/ipcgfx/src/client.c

    r7470d97 rafcf704  
    11/*
    2  * Copyright (c) 2021 Jiri Svoboda
     2 * Copyright (c) 2019 Jiri Svoboda
    33 * All rights reserved.
    44 *
     
    4545#include "../private/client.h"
    4646
    47 static errno_t ipc_gc_set_clip_rect(void *, gfx_rect_t *);
    4847static errno_t ipc_gc_set_color(void *, gfx_color_t *);
    4948static errno_t ipc_gc_fill_rect(void *, gfx_rect_t *);
    50 static errno_t ipc_gc_update(void *);
    5149static errno_t ipc_gc_bitmap_create(void *, gfx_bitmap_params_t *,
    5250    gfx_bitmap_alloc_t *, void **);
     
    5654
    5755gfx_context_ops_t ipc_gc_ops = {
    58         .set_clip_rect = ipc_gc_set_clip_rect,
    5956        .set_color = ipc_gc_set_color,
    6057        .fill_rect = ipc_gc_fill_rect,
    61         .update = ipc_gc_update,
    6258        .bitmap_create = ipc_gc_bitmap_create,
    6359        .bitmap_destroy = ipc_gc_bitmap_destroy,
     
    6662};
    6763
    68 /** Set clipping rectangle on IPC GC.
    69  *
    70  * @param arg IPC GC
    71  * @param rect Rectangle
    72  *
    73  * @return EOK on success or an error code
    74  */
    75 static errno_t ipc_gc_set_clip_rect(void *arg, gfx_rect_t *rect)
    76 {
    77         ipc_gc_t *ipcgc = (ipc_gc_t *) arg;
    78         async_exch_t *exch;
    79         errno_t rc;
    80 
    81         exch = async_exchange_begin(ipcgc->sess);
    82         if (rect != NULL) {
    83                 rc = async_req_4_0(exch, GC_SET_CLIP_RECT, rect->p0.x, rect->p0.y,
    84                     rect->p1.x, rect->p1.y);
    85         } else {
    86                 rc = async_req_0_0(exch, GC_SET_CLIP_RECT_NULL);
    87         }
    88 
    89         async_exchange_end(exch);
    90 
    91         return rc;
    92 }
    93 
    9464/** Set color on IPC GC.
    9565 *
     
    133103        rc = async_req_4_0(exch, GC_FILL_RECT, rect->p0.x, rect->p0.y,
    134104            rect->p1.x, rect->p1.y);
    135         async_exchange_end(exch);
    136 
    137         return rc;
    138 }
    139 
    140 /** Update display on IPC GC.
    141  *
    142  * @param arg IPC GC
    143  *
    144  * @return EOK on success or an error code
    145  */
    146 static errno_t ipc_gc_update(void *arg)
    147 {
    148         ipc_gc_t *ipcgc = (ipc_gc_t *) arg;
    149         async_exch_t *exch;
    150         errno_t rc;
    151 
    152         exch = async_exchange_begin(ipcgc->sess);
    153         rc = async_req_0_0(exch, GC_UPDATE);
    154105        async_exchange_end(exch);
    155106
Note: See TracChangeset for help on using the changeset viewer.