Changeset 593e023 in mainline for uspace/lib/gui/terminal.c


Ignore:
Timestamp:
2014-08-12T17:14:32Z (10 years ago)
Author:
Martin Decky <martin@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
c3bdc92
Parents:
ce3efa0
Message:

allow compositor and console to coexist side-by-side, use the input server as a poor man's seat arbitrator

  • kernel console notifies both about the release and grab events
  • input server arbitrates the seat selection between kernel console and any number of user space UIs (currently the console server and the compositor server)
  • input port yield and reclaim methods have been removed (they are used only on Ski and Niagara, both already need a more generic mechanism for the kernel/user space cooperation)
  • console and compositor server keep track of the kernel console via the input arbitration
  • move the waiting for a character device from init and terminal widget to getterm
File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/lib/gui/terminal.c

    rce3efa0 r593e023  
    104104static void getterm(const char *svc, const char *app)
    105105{
    106         char term[LOC_NAME_MAXLEN];
    107         snprintf(term, LOC_NAME_MAXLEN, "%s/%s", LOCFS_MOUNT_POINT, svc);
    108        
    109         /* Wait for the terminal service to be ready */
    110         service_id_t service_id;
    111         int rc = loc_service_get_id(svc, &service_id, IPC_FLAG_BLOCKING);
    112         if (rc != EOK)
    113                 return;
    114        
    115         task_spawnl(NULL, APP_GETTERM, APP_GETTERM, "-w", term, app, NULL);
     106        task_spawnl(NULL, APP_GETTERM, APP_GETTERM, svc, LOCFS_MOUNT_POINT,
     107            "--msg", "--wait", "--", app, NULL);
    116108}
    117109
Note: See TracChangeset for help on using the changeset viewer.