[Geany-devel] Resetting menu accels - Re: Super modifier in keybindings - Re: Strange Geany behavior

Lex Trotman elextr at xxxxx
Wed Aug 12 11:48:08 UTC 2009


2009/8/12 Nick Treleaven <nick.treleaven at btinternet.com>:
> On Wed, 12 Aug 2009 13:48:21 +1000
> Lex Trotman <elextr at gmail.com> wrote:
>
>> I've attached a simple program which demonstrates the super modifier
>> problem, so the good news is, it isn't a Geany problem.  I will raise
>> a GTK bug.
>
> OK.
>
>> The bad? news is that the program  also demonstrates that accelerators
>> can be removed and new ones added and they update the UI nicely.  Each
>> time you activate the button either by accelerator key or by clicking
>> the menu the accelerator key is incremented.
>>
>> Note that I had to keep the accel group around to pass it to the
>> remove call, I'm not sure Geany creates once and uses the same
>> accel_group everywhere, that may have been the problem if it didn't
>> work for you in the past.
>
> Hmm, not sure. Anyway it's great you found out how to do it. Seems
> simple now, but we couldn't figure it out...
>
>> Or maybe it was a bug in the past :-) Note the documentation note that
>> says they can't be changed means that they can't be *changed* like
>> accel_map entries can, not that they can't be removed and a new one
>> added.
>
> Yes, this was confusing.
>
>> But this might make the whole keybinding code much simpler :-)
>
> Not sure, there are keybindings that don't have a menu item associated
> with it.

It just needs to be some widget that the signal can be delivered to.

I hope that you havn't violated the "good GUI guidelines" by having
functionality that is only available via keybindings and not by menu
;-)

>
>> Or change the whole thing to use gtk_accel_map that does its own
>> loading and saving and all.  Or leave it as is, but it is doing extra
>> work and using nested loops as well.  Decisions, decisions ...
>
> I haven't looked at gtk_accel_map, perhaps it's easier to keep the
> existing code. Anyway at some point we can fix this.

I'm not suggesting rushing into this, IMHO gtk_accel_map is quite
poorly documented & I am not sure I totally understand about
accelerator paths but it seems the future direction.

Leaving it as is only has the downside of some overhead although the
menu accelerator labels are not being updated until Geany is restarted
which could be confusing.

Cheers
Lex
>
> Regards,
> Nick
> _______________________________________________
> Geany-devel mailing list
> Geany-devel at uvena.de
> http://lists.uvena.de/cgi-bin/mailman/listinfo/geany-devel
>



More information about the Devel mailing list