Re: [gdm-list] layout selection



08.08.2011 22:22, Ray Strode пишет:

> Previously the way it worked was SelectLayout was called any time the
> user switched layouts in the greeter.  that information would get sent
> to the processing handling the authentication conversation, so that
> after authenticating (and we knew the user's home directory was
> available) we could save the infomration in ~/.dmrc

Could you elaborate a bit - who actually write this info into .dmrc? Greeter?
Where can I find format and examples of .dmrc?

> DefaultLayoutNameChanged was emitted when the ~/.dmrc is first
> available to read, so the greeter could italicize the user's "default"
> layout in the layout list.

Same here - who actually read .dmrc - greeter? gdm?
When this is happening - right after username is entered into greeter?
After some dbus signal fired?

> The whole thing didn't work very well though.  It turns out a
> significant number of multiple layout users want to enter their
> username and password in a different layout than they want post-login.
>  Also, the code in general has been plagued with bugs (races between
> SelectLayout/DefaultLayoutNameChanged, dropping auxillary information
> about the layout in the greeter, etc).

Thanks's for the explanation - the commit comment I've found was too brief :)

> The new plan is to provide the same interface the shell is going to provide:
> 
> https://live.gnome.org/GnomeShell/Design/Guidelines/SystemStatus/InputLanguage
> 
> but make it specific to the greeter, and not the user.

So the old way is dropped and new one is not ready yet.
Just to make sure - which is the last GDM version with layout switching support?

> I believe it's something like xkl_config_rec_get_from_server to get
> the list of grouped layouts, and then xkl_engine_get_current_state to
> get the currently locked group.

Thanks a lot!

I'll try to implement this feature in my greeter.
This layout stuff is actually much trickier that it seems at first sight :)

cheers,
Max.



Attachment: signature.asc
Description: OpenPGP digital signature



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]