Commit 6589510
committed
qtplasmac: fix double "qtvcp" ghost windows on repeated switches to the conversational tab
conv_clear_widgets() calls setParent(None) on all widgets when leaving the conversational tab. On the next entry, conv_setup() calls conv_new_pressed(None) which calls the set_line_...() functions that call .show() on now un-parented widgets. This results in two brief top level windows titled "qtvcp" flashing on screen.
This was only triggered on subsequent conversational tab visits, not the first, since the widgets are only unparented after first the conv_clear_widgets() call. It also did't affect the NEW button since the widgets are still parented.
It's unclear why this behavior was not noticed earlier. Probably a change in Qt or window manager behavior made the unparented widget .show() calls visible. I figured this level of digging was deep enough.
Fixed by adding the "and button" guard to skip the set_line_...() calls in conv_new_pressed() when called with button=None from conv_setup(), as conv_shape_request() immediately rebuilds the layout correctly anyways.1 parent ef9e17e commit 6589510
3 files changed
Lines changed: 7 additions & 2 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
207 | 207 | | |
208 | 208 | | |
209 | 209 | | |
210 | | - | |
| 210 | + | |
211 | 211 | | |
212 | 212 | | |
213 | 213 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | | - | |
| 1 | + | |
2 | 2 | | |
3 | 3 | | |
4 | 4 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
26 | 26 | | |
27 | 27 | | |
28 | 28 | | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
29 | 34 | | |
30 | 35 | | |
31 | 36 | | |
| |||
0 commit comments