[PATCH] Only ongrab kuake hotkey if the $term is not embedded.

Mark Pustjens pustjens at dds.nl
Wed Dec 7 17:05:46 CET 2011


On Wed, 7 Dec 2011, Marc Lehmann wrote:

> On Tue, Dec 06, 2011 at 05:27:20PM +0100, Mark Pustjens <pustjens at dds.nl> wrote:
>>
>> When using urxvt-tabbedex (https://github.com/stepb/urxvt-tabbedex)
>> in combination with kuake. (probably also with the tabbed
>> extension).
>
> That makes sense.
>
> The problem here is that you enable kuake for multiple terminals, but only
> one terminal can have kuake enabled.

The mechanism used to create a new urxvt instance from within a perl 
extension also copies its parents environment. (including the setting 
that enabled the kuake perl extension).

>
> You could try to enable it only for the embedding terminal, by using
> URxvt.tabbed.perl-ext: or something like that, but I am not sure that
> works.

In my setup, it is the embedding terminal (the termincal which receives 
embedded instances) which enables kuake. This also happens to be the 
terminal which creates the embedded instances, causing those also to have 
kuake enabled.

The problem is that when an embedded instance closes, the on_destroy 
handler is called, which ungrabs the key using the window it was embedded 
in.

>
> The problem with your patch is that it doesn't really make any sense to
> disable kuake for embedded terminals - users who embed their terminal and
> enable kuake might have good reasons to do so.

In my opinion, grabbing a key of a window urxvt is embedded in is not very 
nice. Shouldnt the window where urxvt is embedded in handle kuake-like 
behaviour?

>
>> When you have a few tabs open, and close one of them on_destroy is
>> called for that embedded urxvt instance. This handler Ungrabs the
>> hotkey. However, the window is still open, with another tab (and
>> hence embedded instance of urxvt).
>
> Only one terminal can sensible have the kuake extensino enabled - this is
> kind of specific to kuake, because it modifies global desktop state (the
> hotkey), and consequently requires the user to think about which terminal
> has it enabled.

So what solution do you propose?

Thanks for taking the time to answer.

>
> --
>                The choice of a       Deliantra, the free code+content MORPG
>      -----==-     _GNU_              http://www.deliantra.net
>      ----==-- _       generation
>      ---==---(_)__  __ ____  __      Marc Lehmann
>      --==---/ / _ \/ // /\ \/ /      schmorp at schmorp.de
>      -=====/_/_//_/\_,_/ /_/\_\
>
> _______________________________________________
> rxvt-unicode mailing list
> rxvt-unicode at lists.schmorp.de
> http://lists.schmorp.de/cgi-bin/mailman/listinfo/rxvt-unicode
>

Greetings/Groetjes

Mark Pustjens

-- 
It was possibly the most circumspect advance in the history of military
manoeuvres, right down at the bottom end of the scale that things like the
Charge of the Light Brigade are at the top of.
         -- The City Watch takes action
   (Terry Pratchett, Guards! Guards!)




More information about the rxvt-unicode mailing list