VirtualBox

Ignore:
Timestamp:
Mar 28, 2025 7:34:05 PM (3 weeks ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
168222
Message:

Additions: Linux/Wayland/VBoxClient: Add IPC workflow definitions for DnD, bugref:10796.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Additions/x11/VBoxClient/wayland-helper-ipc.h

    r106808 r108787  
    6363/** IPC server socket name prefixes. */
    6464#define VBOXWL_SRV_NAME_PREFIX_CLIP     "clip"
     65#define VBOXWL_SRV_NAME_PREFIX_DND      "dnd"
    6566
    6667/** Arguments to vboxwl tool. */
     
    6869#define VBOXWL_ARG_CLIP_GH_ANNOUNCE     "--clip-gh-announce"
    6970#define VBOXWL_ARG_CLIP_GH_COPY         "--clip-gh-copy"
     71#define VBOXWL_ARG_DND_GH               "--dnd-gh"
     72#define VBOXWL_ARG_DND_HG               "--dnd-hg"
    7073#define VBOXWL_ARG_SESSION_ID           "--session-id"
    7174
     
    147150         * @param   uSessionId      IPC session ID.
    148151         * @param   hSession        IPC session handle.
     152         * @param   mcTimeout       Read operation timeout in milliseconds.
    149153         * @param   ppvData         Output buffer structured as validated
    150154         *                          IPC packet (contains size inside).
    151155         */
    152         int packet_read(uint32_t uSessionId, RTLOCALIPCSESSION hSession, void **ppvData);
     156        int packet_read(uint32_t uSessionId, RTLOCALIPCSESSION hSession, uint32_t msTimeout, void **ppvData);
    153157
    154158        /**
     
    195199             */
    196200
    197             /** IPC flow description: Copy clipboard from host to guest. */
     201            /** IPC flow description (clipboard): Copy clipboard from host to guest. */
    198202            const flow_t HGCopyFlow[4] =
    199203            {
     
    204208            };
    205209
    206             /** IPC flow description: Copy clipboard from guest to host. */
     210            /** IPC flow description (clipboard): Copy clipboard from guest to host. */
    207211            const flow_t GHCopyFlow[3] =
    208212            {
     
    212216            };
    213217
    214             /** IPC flow description: Announce guest's clipboard to the host
     218            /** IPC flow description (clipboard): Announce guest's clipboard to the host
    215219             *  and copy it to the host in format selected by host. */
    216220            const flow_t GHAnnounceAndCopyFlow[4] =
     
    219223                { VBOX_FORMAT,  FLOW_DIRECTION_CLIENT },
    220224                { VBOX_DATA,    FLOW_DIRECTION_SERVER },
     225                { CMD_MAX,      false }
     226            };
     227
     228            /** IPC flow description (DnD): DnD operation started inside guest and
     229             *  guest reports DnD content mime-type list. Host side picks up one
     230             *  of the formats and requests data in this format. Guest sends
     231             *  data in requested format. */
     232            const flow_t GHDragFlow[4] =
     233            {
     234                { VBOX_FORMATS, FLOW_DIRECTION_SERVER },
     235                { VBOX_FORMAT,  FLOW_DIRECTION_CLIENT },
     236                { VBOX_DATA,    FLOW_DIRECTION_SERVER },
     237                { CMD_MAX,      false }
     238            };
     239
     240            /** IPC flow description (DnD): DnD operation started on host and
     241             *  host reports DnD content mime-type list. Guest side picks up one
     242             *  of the formats and requests data in this format. Host sends
     243             *  data in requested format. */
     244            const flow_t HGDragFlow[4] =
     245            {
     246                { VBOX_FORMATS, FLOW_DIRECTION_CLIENT },
     247                { VBOX_FORMAT,  FLOW_DIRECTION_SERVER },
     248                { VBOX_DATA,    FLOW_DIRECTION_CLIENT },
    221249                { CMD_MAX,      false }
    222250            };
Note: See TracChangeset for help on using the changeset viewer.

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette