Changeset 266ec54 in mainline for uspace/lib/ui/src/window.c
- Timestamp:
- 2020-11-28T23:06:31Z (4 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- db3c6795
- Parents:
- 554a5f1
- git-author:
- Jiri Svoboda <jiri@…> (2020-11-27 22:30:28)
- git-committer:
- Jiri Svoboda <jiri@…> (2020-11-28 23:06:31)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/lib/ui/src/window.c
r554a5f1 r266ec54 89 89 * 90 90 * Window parameters structure must always be initialized using this function 91 * first. 91 * first. By default, the window will be decorated. To get a non-decorated 92 * window, one needs to clear ui_wds_decorated 93 * (e.g. params->style &= ~ui_wds_decorated). 92 94 * 93 95 * @param params Window parameters structure … … 96 98 { 97 99 memset(params, 0, sizeof(ui_wnd_params_t)); 100 101 /* Make window decorated by default. */ 102 params->style = ui_wds_decorated; 98 103 } 99 104 … … 111 116 display_info_t info; 112 117 gfx_coord2_t pos; 118 gfx_coord2_t scr_dims; 113 119 display_wnd_params_t dparams; 114 120 display_window_t *dwindow = NULL; … … 129 135 130 136 if (ui->display != NULL) { 137 if (params->placement != ui_wnd_place_default) { 138 rc = display_get_info(ui->display, &info); 139 if (rc != EOK) 140 goto error; 141 } 142 143 if (params->placement == ui_wnd_place_full_screen) { 144 /* Make window the size of the screen */ 145 gfx_rect_dims(&info.rect, &scr_dims); 146 gfx_coord2_add(&dparams.rect.p0, &scr_dims, 147 &dparams.rect.p1); 148 } 149 131 150 rc = display_window_create(ui->display, &dparams, &dwnd_cb, 132 151 (void *) window, &dwindow); … … 135 154 136 155 if (params->placement != ui_wnd_place_default) { 137 rc = display_get_info(ui->display, &info);138 if (rc != EOK)139 goto error;140 141 156 pos.x = 0; 142 157 pos.y = 0; … … 146 161 assert(false); 147 162 case ui_wnd_place_top_left: 163 case ui_wnd_place_full_screen: 148 164 pos.x = info.rect.p0.x - params->rect.p0.x; 149 165 pos.y = info.rect.p0.y - params->rect.p0.y; … … 188 204 goto error; 189 205 190 ui_wdecor_set_rect(wdecor, & params->rect);206 ui_wdecor_set_rect(wdecor, &dparams.rect); 191 207 ui_wdecor_set_cb(wdecor, &wdecor_cb, (void *) window); 192 208 ui_wdecor_paint(wdecor); … … 194 210 window->ui = ui; 195 211 window->dwindow = dwindow; 196 window->rect = params->rect;212 window->rect = dparams.rect; 197 213 window->gc = gc; 198 214 window->res = res;
Note:
See TracChangeset
for help on using the changeset viewer.