Page 1 of 1

FMXTabbedBrowser caret disappears in TEdit input fields after creating second TabItem

Posted: Fri May 09, 2025 11:51 am
by igor666
Hi, I noticed in FMX Tabbed Browser after creating the second tab the caret disappears in all TEdit input fields. Experimentally I found out that it disappears here in FMXWindowParent.Reparent(ParentForm.Handle), or more precisely in Reparent itself after processing the line

Code: Select all

SetWindowLong(TempChildHandle, GWL_STYLE, WS_CHILD);
I did a couple more experiments and noticed that if the WS_CHILDWINDOW parameter is replaced with WS_POPUPWINDOW or WS_POPUPWINDOW + WS_CHILDWINDOW then the carriage does not disappear and the program seems to work normally, I haven’t noticed any deviations yet :).
Is it normal to change this setting in Reparent?

Re: FMXTabbedBrowser caret disappears in TEdit input fields after creating second TabItem

Posted: Fri May 09, 2025 1:52 pm
by igor666
I noticed that this message started appearing when compiling a project:
[dcc32 Warning] uBrowserFrame.pas(290): W1012 Constant expression violates subrange bounds

Re: FMXTabbedBrowser caret disappears in TEdit input fields after creating second TabItem

Posted: Mon May 12, 2025 9:43 am
by salvadordf
Hi,

Thanks for the fix! :D

I just added a new optional parameter to TFMXWindowParent.Reparent with the value you gave as default.

Re: FMXTabbedBrowser caret disappears in TEdit input fields after creating second TabItem

Posted: Mon May 12, 2025 12:04 pm
by igor666
Thank you! :D

Re: FMXTabbedBrowser caret disappears in TEdit input fields after creating second TabItem

Posted: Fri May 16, 2025 11:16 am
by igor666
I noticed one unpleasant feature after adding WS_POPUPWINDOW, now the program after it goes to the background, i.e. if we switch to other programs, and then want to open ours, then it opens on the second or third click, and before that there is flickering, it seems to be trying to go to the foreground and then itself goes to the background :(