Bug 336228 - pressing f12 (or the equivalent closekey) causes respawn of yakuake if mouse is in yakuake
Summary: pressing f12 (or the equivalent closekey) causes respawn of yakuake if mouse ...
Status: RESOLVED FIXED
Alias: None
Product: yakuake
Classification: Applications
Component: general (show other bugs)
Version: Git (Frameworks 5)
Platform: unspecified Linux
: NOR normal
Target Milestone: ---
Assignee: Eike Hein
URL:
Keywords:
: 342638 346110 351268 (view as bug list)
Depends on:
Blocks:
 
Reported: 2014-06-14 16:05 UTC by Gerion
Modified: 2016-03-03 06:25 UTC (History)
11 users (show)

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Gerion 2014-06-14 16:05:28 UTC
See the following steps

Reproducible: Always

Steps to Reproduce:
1. Press F12 to open yakuake
2. Move your mouse to the yakuake window.
3. Press F12 to close yakuake
Actual Results:  
The Yakuake windows disappears for a few milliseconds and then appears again.

Expected Results:  
The Yakuake window disappears until you press F12 again.

Without the mouse in the window, yakuake acts as normal.
Comment 1 Eike Hein 2014-06-14 16:14:13 UTC
Is this the KDE 4 version or the KF5 version?
Comment 2 Gerion 2014-06-15 15:03:51 UTC
This is the KF5 version (I use the gentoo package from kde overlay).
Comment 3 Eike Hein 2014-06-15 17:37:34 UTC
Thanks. I can't reproduce this locally, could you attach your ~/.config/yakuakrc in case it depends on an option?
Comment 4 Gerion 2014-06-15 19:09:42 UTC
It's not that long, so I copy pasted it directly:
[Desktop Entry]
DefaultProfile=Shell.profile

[Favorite Profiles]
Favorites=

[Shortcuts]
close-active-terminal=Ctrl+Shift+R
close-session=Ctrl+Shift+W
decrease-window-height=Alt+Shift+Up
decrease-window-width=Alt+Shift+Left
file_quit=Ctrl+Shift+Q
grow-terminal-bottom=Ctrl+Alt+Down
grow-terminal-left=Ctrl+Alt+Left
grow-terminal-right=Ctrl+Alt+Right
grow-terminal-top=Ctrl+Alt+Up
help_whats_this=Shift+F1
increase-window-height=Alt+Shift+Down
increase-window-width=Alt+Shift+Right
move-session-left=Ctrl+Shift+Left
move-session-right=Ctrl+Shift+Right
new-session=Ctrl+Shift+T
next-session=Shift+Right
next-terminal=Ctrl+Shift+Down
previous-session=Shift+Left
previous-terminal=Ctrl+Shift+Up
rename-session=Ctrl+Alt+S
split-left-right=Ctrl+(
split-top-bottom=Ctrl+)
toggle-session-monitor-activity=Ctrl+Shift+A
toggle-session-monitor-silence=Ctrl+Shift+I
view-full-screen=Ctrl+Shift+F11

[Window]
Height=60
KeepOpen=false
ShowTabBar=false
Width=98
Comment 5 Eike Hein 2014-06-16 05:02:44 UTC
I can reproduce it now. I don't have time to look into it any deeper today, unfortunately, but from a quick look the action is triggered twice - I'm curious if this might actually be a bug in KGlobalAccel.
Comment 6 Gerion 2014-10-18 15:40:05 UTC
This behaviour still exists with kglobalaccel 5.3.0, if there is the bug.
Comment 7 Martin Sandsmark 2015-06-22 18:42:49 UTC
*** Bug 346110 has been marked as a duplicate of this bug. ***
Comment 8 Justin Zane Chudgar 2015-07-05 01:53:00 UTC
As of 2015-06-30, v2.9.9.94.ge2b603d-1, yakuake will not "stay raised". That is to say, with <F12> being the global shortcut to toggle yakuake's raised/lowered state, pressing <F12> with yakuake raised (hidden) works as expected. However, pressing <F12> with yakuake lowered (shown), it raises and _immediately_ lowers. The only way to effectively raise it is by shifting focus to another window.
Comment 9 Justin Zane Chudgar 2015-07-05 01:55:51 UTC
If one uses one of the "thin" themes, when the mouse appears to not be in yakuake window, but is not outside the window rectangle -- the cursor is in a transparent area, this also happens. While this may be obvious to most, idiots like myself need the pedantic on occasion. :)
Comment 10 Kott 2015-08-14 00:51:52 UTC
*** Bug 351268 has been marked as a duplicate of this bug. ***
Comment 11 Till Schäfer 2016-01-04 19:33:08 UTC
Same here, additionally i have identified a necessary trigger to reproduce this bug, one needs do deactivate the option: 

 [ ] keep window open when it loses focus

If the option is enabled, the bug does not appear
Comment 12 Till Schäfer 2016-01-11 18:59:27 UTC
Bug 357861 has a similar trigger (mouse position)
Comment 13 Rémi Verschelde 2016-01-17 13:31:01 UTC
I can confirm the bug on Plasma 5.5.3 with yakuake built from the current "frameworks" branch (as of 2016-01-16).

As Till Schäfer pointed out, it seems to be triggered by the "Keep window open when it loses focus" option.
If activated, toggling yakuake will work fine regardless of the position of the mouse pointer.
If deactivated, toggling yakuake works when the mouse pointer is not over the yakuake panel, but produces an immediate re-toggle of the panel if the mouse pointer was over the panel.

Screencast that shows the issue (7 MB): http://remi.verschelde.fr/files/misc/yakuake-retoggle.mkv
Comment 14 Eike Hein 2016-03-01 10:09:01 UTC
*** Bug 342638 has been marked as a duplicate of this bug. ***
Comment 15 Eike Hein 2016-03-01 12:31:23 UTC
This should be fixed by http://commits.kde.org/yakuake/71c1d8d86b7901488d4a025e6112cfcb56a5babf
Comment 16 Eike Hein 2016-03-01 12:33:48 UTC
And it is, but it breaks other stuff ... back to the drawing board.
Comment 18 Till Schäfer 2016-03-01 20:41:46 UTC
first of all. thx for the fix. 

just a small style comment: "!(KWindowSystem::activeWindow() == winId())" looks a bit complicated. why not use "!="?
Comment 19 Eike Hein 2016-03-02 08:00:08 UTC
^  Thanks, that happened because of how it was written before the change. I simplified it now.
Comment 20 Rémi Verschelde 2016-03-02 17:40:36 UTC
I can confirm the fix on the current HEAD of the frameworks branch, I've update my Mageia package and it works like a charm.

Thanks a lot! I use yakuake extensively and this issue was quite annoying :)
Comment 21 Eike Hein 2016-03-03 06:25:07 UTC
Thanks for the test and confirm!

There will be a release of the KF5-based Yakuake soon now btw.