VirtualBox

Ignore:
Timestamp:
Oct 13, 2015 11:49:33 AM (10 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
103344
Message:

DnD: Updates.

  • Introduced protocol changelog in DragAndDropSvc.h.
  • Implemented protocol v3 with HOST_DND_HG_SND_DATA_HDR message for doing proper object accounting, among other parameters like checksumming and compression flags.
  • Encapsulated a lot of functionality in class hierarchies.
  • Renamed a lot of functions to make the usage more clear.
  • Various other bugfixes.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Additions/x11/VBoxClient/draganddrop.cpp

    r57416 r58212  
    939939                    uAction = toHGCMAction(static_cast<Atom>(e.xclient.data.l[XdndStatusAction]));
    940940
    941                 rc = VbglR3DnDHGAcknowledgeOperation(&m_dndCtx, uAction);
     941                rc = VbglR3DnDHGSendAckOp(&m_dndCtx, uAction);
    942942            }
    943943            else if (e.xclient.message_type == xAtom(XA_XdndFinished))
     
    18211821    {
    18221822        /* No window to process, so send a ignore ack event to the host. */
    1823         rc = VbglR3DnDHGAcknowledgeOperation(&m_dndCtx, DND_IGNORE_ACTION);
     1823        rc = VbglR3DnDHGSendAckOp(&m_dndCtx, DND_IGNORE_ACTION);
    18241824    }
    18251825    else
     
    18661866    char szFormat[] = { "text/uri-list" };
    18671867
    1868     int rc = VbglR3DnDHGRequestData(&m_dndCtx, szFormat);
     1868    int rc = VbglR3DnDHGSendReqData(&m_dndCtx, szFormat);
    18691869    logInfo("Drop event from host resuled in: %Rrc\n", rc);
    18701870
     
    20742074    }
    20752075
    2076     rc2 = VbglR3DnDGHAcknowledgePending(&m_dndCtx, uDefAction, uAllActions, strFormats.c_str());
     2076    rc2 = VbglR3DnDGHSendAckPending(&m_dndCtx, uDefAction, uAllActions,
     2077                                    strFormats.c_str(), strFormats.length() + 1 /* Include termination */);
    20772078    LogFlowThisFunc(("uClientID=%RU32, uDefAction=0x%x, allActions=0x%x, strFormats=%s, rc=%Rrc\n",
    20782079                     m_dndCtx.uClientID, uDefAction, uAllActions, strFormats.c_str(), rc2));
     
    31963197
    31973198        /* Wait for new events. */
    3198         rc = VbglR3DnDProcessNextMessage(&dndCtx, &e.hgcm);
     3199        rc = VbglR3DnDRecvNextMsg(&dndCtx, &e.hgcm);
    31993200        if (   RT_SUCCESS(rc)
    32003201            || rc == VERR_CANCELLED)
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