Changeset 5271e4c in mainline for uspace/srv/hid/display
- Timestamp:
- 2020-06-22T12:20:42Z (5 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 195b7b3
- Parents:
- 66a408f7
- git-author:
- Jiri Svoboda <jiri@…> (2020-06-21 15:20:18)
- git-committer:
- Jiri Svoboda <jiri@…> (2020-06-22 12:20:42)
- Location:
- uspace/srv/hid/display
- Files:
-
- 4 added
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/srv/hid/display/ddev.c
r66a408f7 r5271e4c 141 141 } 142 142 143 rc = ds_display_paint _bg(display, NULL);143 rc = ds_display_paint(display, NULL); 144 144 if (rc != EOK) 145 145 return rc; -
uspace/srv/hid/display/display.c
r66a408f7 r5271e4c 42 42 #include <stdlib.h> 43 43 #include "client.h" 44 #include "clonegc.h" 44 45 #include "cursimg.h" 45 46 #include "cursor.h" … … 505 506 disp->rect = ddev->info.rect; 506 507 508 /* Create cloning GC */ 509 rc = ds_clonegc_create(ddev->gc, &disp->fbgc); 510 if (rc != EOK) { 511 // XXX Remove output 512 return ENOMEM; 513 } 514 507 515 /* Allocate backbuffer */ 508 516 rc = ds_display_alloc_backbuf(disp); 517 if (rc != EOK) { 518 // XXX Remove output 519 // XXX Delete clone GC 520 goto error; 521 } 522 } else { 523 /* Add new output device to cloning GC */ 524 rc = ds_clonegc_add_output(disp->fbgc, ddev->gc); 509 525 if (rc != EOK) 510 526 goto error; … … 596 612 static gfx_context_t *ds_display_get_unbuf_gc(ds_display_t *display) 597 613 { 598 ds_ddev_t *ddev; 599 600 /* 601 * XXX To properly support multiple display devices, create 602 * a cloning GC that copies rendering operation to each output. 603 */ 604 ddev = ds_display_first_ddev(display); 605 if (ddev == NULL) 606 return NULL; 607 608 return ddev->gc; 614 /* In case of unit tests */ 615 if (display->fbgc == NULL) 616 return NULL; 617 618 return ds_clonegc_get_ctx(display->fbgc); 609 619 } 610 620 -
uspace/srv/hid/display/meson.build
r66a408f7 r5271e4c 31 31 src = files( 32 32 'client.c', 33 'clonegc.c', 33 34 'cursor.c', 34 35 'cursimg.c', … … 45 46 test_src = files( 46 47 'client.c', 48 'clonegc.c', 47 49 'cursimg.c', 48 50 'cursor.c', … … 52 54 'window.c', 53 55 'test/client.c', 56 'test/clonegc.c', 54 57 'test/cursor.c', 55 58 'test/display.c', -
uspace/srv/hid/display/test/main.c
r66a408f7 r5271e4c 32 32 33 33 PCUT_IMPORT(client); 34 PCUT_IMPORT(clonegc); 34 35 PCUT_IMPORT(cursor); 35 36 PCUT_IMPORT(display); -
uspace/srv/hid/display/types/display/display.h
r66a408f7 r5271e4c 45 45 #include <types/display/cursor.h> 46 46 #include "cursor.h" 47 #include "clonegc.h" 47 48 #include "window.h" 48 49 … … 100 101 mem_gc_t *bbgc; 101 102 103 /** Frontbuffer (clone) GC */ 104 ds_clonegc_t *fbgc; 105 102 106 /** Backbuffer dirty rectangle */ 103 107 gfx_rect_t dirty_rect;
Note:
See TracChangeset
for help on using the changeset viewer.