You've already forked CEF4Delphi
mirror of
https://github.com/salvadordf/CEF4Delphi.git
synced 2025-11-23 21:34:53 +02:00
Fixed issue #446 : OSR browsers don't show the blinking caret when you click on an editable element
This commit is contained in:
@@ -89,6 +89,7 @@ type
|
||||
procedure Chromium1BeforePopup(Sender: TObject; const browser: ICefBrowser; const frame: ICefFrame; const targetUrl, targetFrameName: ustring; targetDisposition: TCefWindowOpenDisposition; userGesture: Boolean; const popupFeatures: TCefPopupFeatures; var windowInfo: TCefWindowInfo; var client: ICefClient; var settings: TCefBrowserSettings; var extra_info: ICefDictionaryValue; var noJavascriptAccess, Result: Boolean);
|
||||
procedure Chromium1TitleChange(Sender: TObject; const browser: ICefBrowser; const title: ustring);
|
||||
procedure Chromium1BeforeClose(Sender: TObject; const browser: ICefBrowser);
|
||||
procedure Chromium1CanFocus(Sender: TObject);
|
||||
|
||||
protected
|
||||
FPopUpBitmap : TBitmap;
|
||||
@@ -121,6 +122,7 @@ type
|
||||
procedure WMExitMenuLoop(var aMessage: TMessage); message WM_EXITMENULOOP;
|
||||
procedure PendingResizeMsg(var aMessage : TMessage); message CEF_PENDINGRESIZE;
|
||||
procedure ShowChildMsg(var aMessage : TMessage); message CEF_SHOWCHILD;
|
||||
procedure FocusEnabledMsg(var aMessage : TMessage); message CEF_FOCUSENABLED;
|
||||
|
||||
public
|
||||
function CreateClientHandler(var windowInfo : TCefWindowInfo; var client : ICefClient; const targetFrameName : string; const popupFeatures : TCefPopupFeatures) : boolean;
|
||||
@@ -348,6 +350,14 @@ begin
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure TChildForm.Chromium1CanFocus(Sender: TObject);
|
||||
begin
|
||||
// The browser required some time to create associated internal objects
|
||||
// before being able to accept the focus. Now we can set the focus on the
|
||||
// TBufferPanel control
|
||||
PostMessage(Handle, CEF_FOCUSENABLED, 0, 0);
|
||||
end;
|
||||
|
||||
procedure TChildForm.Chromium1CursorChange( Sender : TObject;
|
||||
const browser : ICefBrowser;
|
||||
cursor_ : TCefCursorHandle;
|
||||
@@ -819,6 +829,14 @@ begin
|
||||
Show;
|
||||
end;
|
||||
|
||||
procedure TChildForm.FocusEnabledMsg(var aMessage : TMessage);
|
||||
begin
|
||||
if Panel1.Focused then
|
||||
Chromium1.SetFocus(True)
|
||||
else
|
||||
Panel1.SetFocus;
|
||||
end;
|
||||
|
||||
procedure TChildForm.DoResize;
|
||||
begin
|
||||
try
|
||||
|
||||
Reference in New Issue
Block a user