Bug 153520 - Hovering over and then off ComboBoxes in dialogs won't remove the highlight frame (kf5 only)
Summary: Hovering over and then off ComboBoxes in dialogs won't remove the highlight f...
Status: RESOLVED FIXED
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: UI (show other bugs)
Version:
(earliest affected)
7.5.0.3 release
Hardware: All All
: medium normal
Assignee: Michael Weghorn
URL:
Whiteboard: target:7.6.0 target:7.5.2
Keywords: bibisected, bisected, regression
Depends on:
Blocks: KDE, KF5
  Show dependency treegraph
 
Reported: 2023-02-10 12:44 UTC by Rafael Lima
Modified: 2023-02-20 17:22 UTC (History)
1 user (show)

See Also:
Crash report or crash signature:


Attachments
Video showing the problem (89.90 KB, video/mp4)
2023-02-10 12:44 UTC, Rafael Lima
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Rafael Lima 2023-02-10 12:44:41 UTC
Created attachment 185283 [details]
Video showing the problem

See attached video for more info.

This issue happens only in with kf5. With gtk3 it works nicely.

When you hover over a combobox with the mouse, a highlight frame is drawn around the combobox. However when the mouse leaves the combobox, the highlight should disappear, but this is not happening. The highlight frame remains.

This only happens with comboboxes where text cannot be manually entered (as is the case in the video. Comboboxes like the font selector (where you can type in a font name) do not have this issue.

Version: 7.5.0.3 (X86_64) / LibreOffice Community
Build ID: 50(Build:3)
CPU threads: 16; OS: Linux 5.19; UI render: default; VCL: kf5 (cairo+xcb)
Locale: pt-BR (pt_BR.UTF-8); UI: en-US
Ubuntu package version: 1:7.5.0~rc3-0ubuntu0.22.10.1~lo1
Calc: threaded

Also present in

Version: 7.6.0.0.alpha0+ (X86_64) / LibreOffice Community
Build ID: ff3440535e786c73237176670372c565ca3421b4
CPU threads: 16; OS: Linux 5.19; UI render: default; VCL: kf5 (cairo+xcb)
Locale: pt-BR (pt_BR.UTF-8); UI: en-US
Calc: CL threaded
Comment 1 Michael Weghorn 2023-02-14 16:04:30 UTC
(In reply to Rafael Lima from comment #0)
> This issue happens only in with kf5. With gtk3 it works nicely.

The mouseover state is incorrectly passed to QtGraphics_Controls::drawNativeControl.
gtk3 is probably not affected because it uses real gtk widgets instead and this is thus handled inside of the Gtk library.

During analysis, this turned out to be a regression from

commit 4cb11d8a6682fecd661b926a417ae7f26f76e7db
Author: Caolán McNamara <caolanm@redhat.com>
Date:   Fri Oct 7 16:40:23 2022 +0100

    Related: tdf#98067 do RollOver for Edit as well as SpinButton
    
    Change-Id: I058cc965a9b0d85e5491191e2ac712c01f700043
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/141086
    Tested-by: Caolán McNamara <caolanm@redhat.com>
    Reviewed-by: Caolán McNamara <caolanm@redhat.com>

Pending Gerrit change:
https://gerrit.libreoffice.org/c/core/+/147018
Comment 2 Commit Notification 2023-02-20 06:12:02 UTC
Michael Weghorn committed a patch related to this issue.
It has been pushed to "master":

https://git.libreoffice.org/core/commit/d5ace6bf0f1e48ee02e5eb22ce0f9f8953517f60

tdf#153520 vcl: Align listbox invalidation with mouseover check

It will be available in 7.6.0.

The patch should be included in the daily builds available at
https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
https://wiki.documentfoundation.org/Testing_Daily_Builds

Affected users are encouraged to test the fix and report feedback.
Comment 3 Commit Notification 2023-02-20 17:22:29 UTC
Michael Weghorn committed a patch related to this issue.
It has been pushed to "libreoffice-7-5":

https://git.libreoffice.org/core/commit/fd7cb42f7d17d03e4fac6d8c5f1d6c7c49a36fc6

tdf#153520 vcl: Align listbox invalidation with mouseover check

It will be available in 7.5.2.

The patch should be included in the daily builds available at
https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
https://wiki.documentfoundation.org/Testing_Daily_Builds

Affected users are encouraged to test the fix and report feedback.