[Lazarus] Issue or not issue in drop down property editor

Flávio Etrusco flavio.etrusco at gmail.com
Sun Aug 28 20:12:22 CEST 2011


On Sun, Aug 28, 2011 at 4:42 AM, Max Vlasov <max.vlasov at gmail.com> wrote:
> Hi,
>
> I wanted to report this as an issue, but after thinking decided to ask.
>
> As you may know, every of use has some habits coming from delphi. One
> of mine for example is when I know that the property will drop a list
> (example: TPanel.Align), and it is not yet selected, I click at the
> right section of the value area for the item to be selected and
> instantly click once again on the button that appears so I see the
> list and choose. Clicking at the same place is for time economy
> reasons. This worked for me in Delphi and thousands of values were
> changed that way
>
> But in lazarus this is interpreted as a double click, so the next
> value is chosen (actually the list is dropped, but closed instantly
> with a new value). Seem seems also logical since what I did is a kind
> of double click for this whole area.
>
> So is this an issue or not?
>
> Thanks
>
> Max
>
> --

IMO it certainly is ;-)
This bug has existed for a long time - if not always - and I was
puzzled that nobody ever reported it.
I added it to Mantis a couple of weeks ago
(http://bugs.freepascal.org/view.php?id=19918), and I've been trying
to fix it.
I can reduce the bug to some weird behavior in ComboBox - focusing a
ComboBox in MouseDown/Up of its parent triggers a DoubleClick event if
you click immediately in the dropdown button of ComboBox (IIRC the
edit part doesn't generate a DblClick!). When the ComboBox is already
visible you can't generate a double-click at all clicking the button.
I'll attach a sample app that reproduces the bug in Mantis soon.
Focusing the ComboBox in a App.OnIdle/QueueAsyncCall method works, but
the ObjectInspector special handling for cycling the value defeats it.
I can't find an easy to detect whether the click/mouseDown is in the
buttton and .DroppedDown isn't updated soon enough.

-Flávio




More information about the Lazarus mailing list