Bug in TAdvSmoothTouchKeyBoard?

I am using TAdvSmoothTouchKeyBoard V1.5.2. I notice that after you have clicked a button (for example 'a') if you then click the background (for example the area to the left of ENTER) the last key stays down wrongly. My fix is shown below with the two lines '<<<<<added'.

 
Another question - how does CTRL work? I try clicking the CTRL key and it stays down. I click the 'a' key but my app only gets 'a', not Control-A. How do I enter 'a' alone and also specify CTRL-A?
Thanks
========================

      else
      begin
//        TODO timer event?
//        if (FSpecialKey <> skApp) Then
//          FOwner.StartTimer(item);
      end;

      FKeyNormalPosition := False;
      if (FSpecialKey in [skShift, skCaps, skAlt, skCtrl, skAltGr]) then
      begin
        FOwner.ItemKeyDown(item);
      end;
      Changed;
    end;
  end
 else                                     // <<<<< added
  FDownKey := nil;               // <<<<<<<<< added
end;

procedure TAdvSmoothTouchKeyBoard.MouseUp(Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
var
  nxtitem, item: integer;
=================