Re: UI change of "Languge" selection in gdm2



Chookij,

What is the proposed scope for a change to the "greeter language"
through the greeter itself?  Does it just affect the current display,
or the entire system?  Does it affect future sessions on the current
display?

In general, unless this is a temporary change which only applies to
the current session (in which case it seems rather pointless to just
change the greeter language but not the user session language),
arbitrary users should not have the ability to effect the system-wide
configuration.  Even if the change is constrained to a particular
display, on a shared system such as Sun Ray displays are allocated on
a dynamic basis, and have no persistent binding to a physical monitor
or location, so one user's change can affect other random users in
future, which is not appropriate.

I realize there is some precedent in current dtlogin behavior, but
that is a very old legacy behavior which pre-dates current
shared-server display usage, and today it is more of a handicap than
an advantage.  We've been unable to change the behavior due to legacy
usage for dtlogin.  Since we have an opportunity to change the model
in ways that make sense for gdm2, I request that we do not follow this
particular dtlogin path.  Instead, there should be no way to make
persistent language changes to the greeter, except from an
administrative tool that requires administrative authentication to run
(e.g. root-edits to files in /etc/default :-).

If we accept this, then I see little point to having two options for
language changes within the greeter.  There should be only one option,
and it should affect the current instantiation of the greeter and any
subsequent user session.  Nobody wants to use different languages for
their greeter and their session, do they?

Perhaps the persistent-greeter-language-change-through-the-greeter
capability could be turned on and off.  It would be acceptable to us
if the system shipped with the capability enabled, which we could
disable through a command-line tool during Sun Ray Server Software
installation.  But this may be needlessly complex.  It would certainly
create extra test burden and I'd be concerned about bugs slipping
through the process due to lack of test coverage.

-Bob

Chookij Vanatham wrote:

Hi George,

I have been working on enhancement of "Language" selection in gdm2
(bugzilla id: 108820) and I have got some snapshots of UI
change. I'd like to ask help to review the UI change and any feedback
would be really appreciated to get this work done.

Here are the reasons of UI change.

1) Once gdm2 starts up, there is NO-WAY to switch its greeter GUIs
  to any other languages without restarting gdm2 with the new
  languages/locales (before users loggining to the system).
2) "Language" menu at greeter is using for the case when users want
  to have their own sessions running in different languages(locales)
  other than the language (locales) specified in ~/.dmrc user
  configuration file and also, greeter doesn't restart/refresh GUI
  to be displayed in that particular language on the fly.

  Ex:  ~/.dmrc
       [Desktop]
       Session=gnome.desktop
       Language=ja_JP.SJIS

   In CDE, dtlogin/dtgreeter has the same feature but, dtgreeter
   is also restarted/refreshed on the fly when users select new
   language from "language" menu, even the language selected is
   actually using for users's own session after users's logging-in.

   I'd like to point out that this behavior in dtlogin/dtgreeter is
   causing the demand to have gdm greeter to restart greeter's GUI
   on the fly after selecting new language. The point is that,
   actually, there are two different things which can be applied
   with "language".

       1) Language applying to greeter (gdmlogin, gdmgreeter)
       2) Language applying to users' session

   Another word is that "Language" menu GUI is a little bit easier
   to confuse users' behavior between greeter's GUI and users'
   session GUI.

Here are the list of UI change (feature changed/added).

1) Language selection for log-in screen (greeter) and users's session
  is seperated at the "Language" menu which will have 2 options,
  "Greeter Language" and "Users' session Language".

  Attached snapshots:
  o gdmgreeter_lang_stock_button_action.jpeg.gz
    When "Language" stock button clicked, there will be the
    pop-up window for users to select if language is for greeter
    or for user's session.

2) "Greeter Language" will restart log-in screen in new language
   selected.

  Attached snapshots:
  o gdmlogin_greeter_lang.jpeg.gz
    When selected, gdmlogin will be restarted to the new language
    selected. There are no "Last" and "System Default" entries.
  o gdmgreeter_lang.jpeg.gz
    If user chooses language for greeter, language selection window
    will be pop-uped. There are no "Last" and "System Default"
    entries. After new language selected and "Ok" button clicked,
    gdmgreeter will be restarted with new language.

3) "Users' session Language" will have the new extra pop-up sub-menu
  for experience users to select their preference of "character set"
  they want for their session, otherwise, gdm2 will assign the
  default character set associated with language users select for
  their session.

  Attached snapshots:
  o gdmlogin_usr_sess_lang.jpeg.gz
    When selected, gdmlogin will use the language selected for
    user's session. gdmlogin won't be restarted.
    There are "Last" and "System Default" entries.
  o gdmlogin_usr_sess_charset.jpeg.gz
    User can choose "character set @ modifier" for particurlar
    language selected for user's session, otherwise "character
    set @ modifier" will be default (according to
    /etc/X11/gdm/locale.alias)
  o gdmgreeter_usr_sess_lang.jpeg.gz
    If user choose language for user's session, language
    selection window will be pop-uped. There are "Last" and
    "System Deafult" entries. There is new stock button named
    "Information" at the dialog. When "Information" stock button
    clicked, users can change "character set @ modifier" of
    language selected for user's session.
  o gdmgreeter_usr_sess_charset.jpeg.gz
    Users can choose "character set @ modifier" for language
    used within session.

4) A new tab called "Session Languages" tab is for customizing the
  default detail information of each language for users's session
  by super-user through the gdmsetup tool.

  Attached snapshots:
  o gdmsetup_lang_tab.jpeg.gz
    This new session language tab is used to change the default
    "character set @ modifier" for any languages which will be used
    as the default for users' session if users don't activate
    "Information" stock button.

Please let me know any suggestion. In the next week or so, I'll
give you the patch.

PS:
snapshot.tar.gz contains 8 jpeg files.
a ./gdmgreeter_lang.jpeg 313K
a ./gdmgreeter_lang_stock_button_action.jpeg 282K
a ./gdmgreeter_usr_sess_charset.jpeg 311K
a ./gdmgreeter_usr_sess_lang.jpeg 308K
a ./gdmlogin_greeter_lang.jpeg 171K
a ./gdmlogin_usr_sess_charset.jpeg 69K
a ./gdmlogin_usr_sess_lang.jpeg 208K
a ./gdmsetup_lang_tab.jpeg 87K



Thanks,

Chookij V.





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