anchor.diff:    xfd: integer;
     KeySym: TKeySym;
     Popup: TfpgWidget;
  -  status: TStatus;
     needToWait: boolean;
   
     // debug purposes only
  
positive.code:   dx, dy: cint;
    child: TWindow;
    s: string;
    lTargetWinHandle: TWindow;
    w: TfpgX11Window;
    lAccept: clong = 0;
    msgp: TfpgMessageParams;
  begin
    {$IFDEF DNDDEBUG}
    writeln('XdndPosition event received!');
    {$ENDIF}
    FSrcWinHandle := ASource;
    FActionType   := AAction;
    FSrcTimeStamp := ATimeStamp;
    lTargetWinHandle := ATopLevelWindow.WinHandle;
    if ATopLevelWindow is TfpgWidget then      // TODO: We could use Interfaces here eg: IDragDropEnabled
      if TfpgWidget(ATopLevelWindow).AcceptDrops then
        lAccept := 1;
  
    {$IFDEF DNDDEBUG}
    s := XGetAtomName(FDisplay, AAction);
  
negative.code:   end;
    if count > 3 then
      XFree(xdndtypes);
  end;
  
  procedure TfpgX11Application.HandleDNDleave(ATopLevelWindow: TfpgX11Window;
  