Ticket #1497: sugar-1497.patch

File sugar-1497.patch, 2.4 KB (added by alsroot, 15 years ago)
  • data/sugar.schemas.in

    From 3a7c4da5b6a21d0f8249f72b7cd80753c9c52dcd Mon Sep 17 00:00:00 2001
    From: Aleksey Lim <alsroot@member.fsf.org>
    Date: Tue, 20 Oct 2009 17:18:14 +0000
    Subject: Name input screen should be deactivable #1497
    
    ---
     data/sugar.schemas.in      |   11 +++++++++++
     src/jarabe/intro/window.py |   18 ++++++++++++++++++
     2 files changed, 29 insertions(+), 0 deletions(-)
    
    diff --git a/data/sugar.schemas.in b/data/sugar.schemas.in
    index 8c43930..1740d7d 100644
    a b  
    1313      </locale>
    1414    </schema>
    1515    <schema>
     16      <key>/schemas/desktop/sugar/user/default_nick</key>
     17      <applyto>/desktop/sugar/user/default_nick</applyto>
     18      <owner>sugar</owner>
     19      <type>string</type>
     20      <default>passwd</default>
     21      <locale name="C">
     22        <short>Default nick</short>
     23        <long>"disabled" to ask nick on initialization; "passwd" to reuse UNIX account long name.</long>
     24      </locale>
     25    </schema>
     26    <schema>
    1627      <key>/schemas/desktop/sugar/user/color</key>
    1728      <applyto>/desktop/sugar/user/color</applyto>
    1829      <owner>sugar</owner>
  • src/jarabe/intro/window.py

    diff --git a/src/jarabe/intro/window.py b/src/jarabe/intro/window.py
    index 94c6782..42ef6b1 100644
    a b import os 
    1818import logging
    1919from gettext import gettext as _
    2020import gconf
     21import pwd
    2122
    2223import gtk
    2324import gobject
    class _NamePage(_Page): 
    111112    def get_name(self):
    112113        return self._entry.props.text
    113114
     115    def set_name(self, new_name):
     116        self._entry.props.text = new_name
     117
    114118    def activate(self):
    115119        self._entry.props.widget.grab_focus()
    116120
    class _IntroBox(hippo.CanvasBox): 
    156160        self._current_page = None
    157161        self._next_button = None
    158162
     163        client = gconf.client_get_default()
     164        default_nick = client.get_string('/desktop/sugar/user/default_nick')
     165        if default_nick != 'disabled':
     166            self._page = self.PAGE_COLOR
     167            if default_nick == 'passwd':
     168                pw = pwd.getpwuid(os.getuid())
     169                if pw.pw_gecos:
     170                    nick = pw.pw_gecos.split(',')[0]
     171                    self._name_page.set_name(nick)
     172                else:
     173                    self._name_page.set_name(pw.pw_name)
     174            else:
     175                self._name_page.set_name(default_nick)
     176
    159177        self._setup_page()
    160178
    161179    def _setup_page(self):