Changeset 1b92d4b in mainline for uspace/app/taskbar/taskbar.c


Ignore:
Timestamp:
2022-11-01T13:22:48Z (18 months ago)
Author:
Jiri Svoboda <jiri@…>
Branches:
master, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
fc00f0d
Parents:
913add60
git-author:
Jiri Svoboda <jiri@…> (2022-10-31 18:22:34)
git-committer:
Jiri Svoboda <jiri@…> (2022-11-01 13:22:48)
Message:

Update window buttons based on window added/removed events

File:
1 edited

Legend:

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

    r913add60 r1b92d4b  
    5353};
    5454
    55 static void taskbar_wm_window_added(void *, sysarg_t);
    56 static void taskbar_wm_window_removed(void *, sysarg_t);
    57 
    58 static wndmgt_cb_t taskbar_wndmgt_cb = {
    59         .window_added = taskbar_wm_window_added,
    60         .window_removed = taskbar_wm_window_removed
    61 };
    62 
    6355/** Window close button was clicked.
    6456 *
     
    9688        }
    9789
    98         if (wndmgt_svc != NULL) {
    99                 rc = wndmgt_open(wndmgt_svc, &taskbar_wndmgt_cb,
    100                     (void *)taskbar, &taskbar->wndmgt);
    101                 if (rc != EOK)
    102                         goto error;
    103         }
    104 
    10590        rc = ui_create(display_spec, &taskbar->ui);
    10691        if (rc != EOK) {
     
    177162        }
    178163
    179         rc = wndlist_create(ui_res, taskbar->fixed, &taskbar->wndlist);
     164        rc = wndlist_create(taskbar->window, taskbar->fixed, &taskbar->wndlist);
    180165        if (rc != EOK) {
    181166                printf("Error creating window list.\n");
     
    183168        }
    184169
    185         rc = wndlist_attach_wm(taskbar->wndlist, taskbar->wndmgt);
     170        rc = wndlist_open_wm(taskbar->wndlist, wndmgt_svc);
    186171        if (rc != EOK) {
    187172                printf("Error attaching window management service.\n");
     
    233218        if (taskbar->ui != NULL)
    234219                ui_destroy(taskbar->ui);
    235         if (taskbar->wndmgt != NULL)
    236                 wndmgt_close(taskbar->wndmgt);
    237220        return rc;
    238221
     
    246229        ui_window_destroy(taskbar->window);
    247230        ui_destroy(taskbar->ui);
    248         if (taskbar->wndmgt != NULL)
    249                 wndmgt_close(taskbar->wndmgt);
    250231}
    251232
    252 /** Handle WM window added event.
    253  *
    254  * @param arg Argument (taskbar_t *)
    255  * @param wnd_id Window ID
    256  */
    257 static void taskbar_wm_window_added(void *arg, sysarg_t wnd_id)
    258 {
    259         taskbar_t *taskbar = (taskbar_t *)arg;
    260 
    261         printf("wm_window_added: taskbar=%p wnd_id=%zu\n",
    262             (void *)taskbar, wnd_id);
    263 }
    264 
    265 /** Handle WM window removed event.
    266  *
    267  * @param arg Argument (taskbar_t *)
    268  * @param wnd_id Window ID
    269  */
    270 static void taskbar_wm_window_removed(void *arg, sysarg_t wnd_id)
    271 {
    272         taskbar_t *taskbar = (taskbar_t *)arg;
    273 
    274         printf("wm_window_removed: taskbar=%p wnd_id=%zu\n",
    275             (void *)taskbar, wnd_id);
    276 }
    277 
    278233/** @}
    279234 */
Note: See TracChangeset for help on using the changeset viewer.