Text fields behaviour bugs

Miroticey1 posted 1 year ago in General

Text fields in HeidiSQL don't behave like text fields of native applications, making HeidiSQL an alien in GNU/Linux. The bugs seem to be distro independent, as I get bitten by them on both Sabayon and Arch Linux.

  • Single click: Place cursor. That works as expected both in native applications and HeidiSQL.
  • Double click: Select text up to word boundary. That works as expected both in native applications and HeidiSQL.
  • Triple click: Native applications select whole text, while HeidiSQL clears selection.
  • Quadruple click: Native applications clear selection, while HeidiSQL does "Double click" + "Double click".
  • Ctrl+A: Native applications select whole text, while HeidiSQL does nothing (in connection manager, works fine in text/cell editor).

HeidiSQL should mimic the native behaviour. I don't know if the observed HeidiSQL behaviour is akin to Windows. If it is, HeidiSQL should special case Wine.

kalvaro posted 1 year ago

Thank you for the feedback, but I think you're doing assertions on stuff that's not so straightforward:

  • HeidiSQL is, of course, a Windows application. If you make it mimic some Linux desktop environment then it will no longer behave as a native application.

  • What does native behaviour mean exactly? There're many different GUI libraries on Windows (and I'm sure it's worse in Linux). HeidiSQL's "Query" pane appears to behave exactly like Windows Notepad and I don't think you can find anything more native than that. Also, my copy of Windows is localised to Spanish so Notepad and most other Microsoft apps expect Ctrl+E to select all.

  • What does "text field" mean anyway? You can type text in a Query pane and you can type text in a Filter box and it isn't unreasonable to expect different behaviours between them.

Said that, I wouldn't mind that tripe-click would select something, at least on synedit-powered panes, even if it's non-standard. PhpStorm selects the whole line and that's nice.

Miroticey1 posted 1 year ago

Regarding first point: Yes, its' a Windows application but also advertises to run with Wine flawlessly. It's always a bit unfortunate that Windows applications feel alien in the Linux desktop environment. To improve on this front, HeidiSQL could detect Wine and behave differently.

Regarding second point: With native behaviour I mean the behaviour of non-Wine apps (that is, applications that run natively on Linux). There are two mainstream GUI toolkits: GTK+ and QT. They behave in the same way regarding clicking. (Actually there is no quadruple click. I confused it with single click.)

Ctrl+E vs Ctrl+A: This is similar to first paragraph. HeidiSQL could detect Wine and bind keys differently.

Regarding third point: I refer to single line text fields. I agree multi line editors may behave differently.

It seems we agree that triple click should select whole text in single line text fields.

ansgar posted 1 year ago

There is no simple way to change the behaviour of triple clicks in standard text fields when programming Delphi apps. The click behaviour is implemented in some underlying Windows dll. I also doubt that all applications do the same on a triple click. Many applications bring modified components with them, which often behave totally differently. For the SQL editors in HeidiSQL, you could probably file a feature request at the SynEdit tracker.

HeidiSQL already detects if it's running on Wine, and prevents the user from running into some known crashes and graphical issues.

Please login to leave a reply, or register at first.