Changeset 266ec54 in mainline for uspace/app/viewer/viewer.c


Ignore:
Timestamp:
2020-11-28T23:06:31Z (3 years ago)
Author:
Jiri Svoboda <jiri@…>
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)
Message:

Viewer fullsreen mode

Fullscreen window placement is more of a stopgap. Proper
solution would probably be via maximizing the window.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/app/viewer/viewer.c

    r554a5f1 r266ec54  
    181181
    182182        ui_window_get_app_rect(window, &arect);
    183         gfx_rect_translate(&arect.p0, rect, &irect);
     183
     184        /* Center image on application area */
     185        gfx_rect_ctr_on_rect(rect, &arect, &irect);
    184186
    185187        if (image != NULL) {
     
    239241                        display_spec = argv[i++];
    240242                } else if (str_cmp(argv[i], "-f") == 0) {
     243                        ++i;
    241244                        fullscreen = true;
    242245                } else {
     
    266269                        return 3;
    267270                }
    268         }
    269 
    270         // TODO Fullscreen mode
    271         if (fullscreen) {
    272                 printf("Fullscreen mode not implemented.\n");
    273                 return 1;
    274271        }
    275272
     
    293290        params.rect.p1.y = 1;
    294291
     292        if (fullscreen) {
     293                params.style &= ~ui_wds_decorated;
     294                params.placement = ui_wnd_place_full_screen;
     295        }
     296
    295297        rc = ui_window_create(ui, &params, &window);
    296298        if (rc != EOK) {
     
    312314         * to rect
    313315         */
    314         ui_wdecor_rect_from_app(&lrect, &wrect);
     316        ui_wdecor_rect_from_app(params.style, &lrect, &wrect);
    315317        off = wrect.p0;
    316318        gfx_rect_rtranslate(&off, &wrect, &rect);
    317         rc = ui_window_resize(window, &rect);
    318         if (rc != EOK) {
    319                 printf("Error resizing window.\n");
    320                 return 1;
     319
     320        if (!fullscreen) {
     321                rc = ui_window_resize(window, &rect);
     322                if (rc != EOK) {
     323                        printf("Error resizing window.\n");
     324                        return 1;
     325                }
    321326        }
    322327
Note: See TracChangeset for help on using the changeset viewer.