Changeset 7888

Show
Ignore:
Timestamp:
01/23/07 21:32:43 (22 months ago)
Author:
asterix
Message:

merge fixes from trunk

Location:
branches/gajim_0.11
Files:
19 modified

Legend:

Unmodified
Added
Removed
  • branches/gajim_0.11/Changelog

    r7703 r7888  
    1 Gajim 0.11 (XX December 2006) 
     1Gajim 0.11.1 (XX February 2007) 
     2  * Fixes in gajim-remote and the way XMPP URI are handled 
     3  * Fix Idle under Windows 
     4  * Fix Gajim under non-ascii languages Windows 
     5  * Fix when removing active privacy list 
     6  * Fix problem with adhoc command and multi-step forms 
     7  * KDE integration for XMPP URI 
     8  * Support of XEP-0202 (Entity Time) 
     9 
     10Gajim 0.11 (19 December 2006) 
    211  * New build system, using GNU autotools. See README.html 
    312  * Support for link-local messaging via Zeroconf using Avahi (XEP-0174) 
  • branches/gajim_0.11/ChangeLog

    r7845 r7888  
     1Gajim 0.11.1 (XX February 2007) 
     2  * Fixes in gajim-remote and the way XMPP URI are handled 
     3  * Fix Idle under Windows 
     4  * Fix Gajim under non-ascii languages Windows 
     5  * Fix International Domain Name usage 
     6  * Fix when removing active privacy list 
     7  * Fix problem with adhoc command and multi-step forms 
     8  * KDE integration for XMPP URI 
     9  * Support of XEP-0202 (Entity Time) 
     10 
    111Gajim 0.11 (19 December 2006) 
    212  * New build system, using GNU autotools. See README.html 
  • branches/gajim_0.11/data/glade/advanced_configuration_window.glade

    r7787 r7888  
    9494              <property name="visible">True</property> 
    9595              <property name="can_focus">True</property> 
    96               <property name="hscrollbar_policy">GTK_POLICY_AUTOMATIC</property> 
     96              <property name="hscrollbar_policy">GTK_POLICY_NEVER</property> 
    9797              <property name="vscrollbar_policy">GTK_POLICY_AUTOMATIC</property> 
    9898              <property name="shadow_type">GTK_SHADOW_IN</property> 
  • branches/gajim_0.11/data/glade/atom_entry_window.glade

    r7475 r7888  
    1818  <property name="gravity">GDK_GRAVITY_NORTH_WEST</property> 
    1919  <property name="focus_on_map">True</property> 
     20  <property name="urgency_hint">False</property> 
    2021 
    2122  <child> 
     
    158159            <widget class="GtkLabel" id="feed_tagline_label"> 
    159160              <property name="visible">True</property> 
    160               <property name="label" translatable="yes">&lt;small&gt;Romeo and Juliet&lt;/small&gt;</property> 
     161              <property name="label">&lt;small&gt;Romeo and Juliet&lt;/small&gt;</property> 
    161162              <property name="use_underline">False</property> 
    162163              <property name="use_markup">True</property> 
     
    185186            <widget class="GtkLabel" id="last_modified_label"> 
    186187              <property name="visible">True</property> 
    187               <property name="label" translatable="yes">2003-12-13T18:30:02Z</property> 
     188              <property name="label">2003-12-13T18:30:02Z</property> 
    188189              <property name="use_underline">False</property> 
    189190              <property name="use_markup">False</property> 
     
    219220                <widget class="GtkLabel" id="feed_title_label"> 
    220221                  <property name="visible">True</property> 
    221                   <property name="label" translatable="yes">Old stories</property> 
     222                  <property name="label">Old stories</property> 
    222223                  <property name="use_underline">False</property> 
    223224                  <property name="use_markup">True</property> 
     
    256257                <widget class="GtkLabel" id="entry_title_label"> 
    257258                  <property name="visible">True</property> 
    258                   <property name="label" translatable="yes">Soliloquy</property> 
     259                  <property name="label">Soliloquy</property> 
    259260                  <property name="use_underline">False</property> 
    260261                  <property name="use_markup">True</property> 
  • branches/gajim_0.11/data/glade/preferences_window.glade

    r7841 r7888  
    490490                  <property name="visible">True</property> 
    491491                  <property name="homogeneous">False</property> 
    492                   <property name="spacing">0</property> 
     492                  <property name="spacing">5</property> 
    493493 
    494494                  <child> 
     
    545545                  <property name="visible">True</property> 
    546546                  <property name="homogeneous">False</property> 
    547                   <property name="spacing">6</property> 
     547                  <property name="spacing">5</property> 
    548548 
    549549                  <child> 
     
    565565                          <property name="xalign">0.5</property> 
    566566                          <property name="yalign">0.5</property> 
    567                           <property name="xpad">0</property> 
     567                          <property name="xpad">1</property> 
    568568                          <property name="ypad">0</property> 
    569569                          <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> 
  • branches/gajim_0.11/data/glade/profile_window.glade

    r7787 r7888  
    1717  <property name="gravity">GDK_GRAVITY_NORTH_WEST</property> 
    1818  <property name="focus_on_map">True</property> 
     19  <property name="urgency_hint">False</property> 
    1920  <signal name="key_press_event" handler="on_profile_window_key_press_event" last_modification_time="Fri, 08 Sep 2006 11:39:24 GMT"/> 
    2021  <signal name="destroy" handler="on_profile_window_destroy" last_modification_time="Fri, 08 Sep 2006 11:39:32 GMT"/> 
     
    991992 
    992993              <child> 
    993                 <widget class="GtkButton" id="PHOTO_button"> 
    994                   <property name="can_focus">True</property> 
    995                   <property name="relief">GTK_RELIEF_NORMAL</property> 
    996                   <property name="focus_on_click">True</property> 
    997                   <signal name="button_press_event" handler="on_PHOTO_button_press_event" last_modification_time="Sun, 10 Sep 2006 10:44:01 GMT"/> 
    998  
    999                   <child> 
    1000                     <widget class="GtkEventBox" id="PHOTO_eventbox3"> 
    1001                       <property name="visible">True</property> 
    1002                       <property name="visible_window">False</property> 
    1003                       <property name="above_child">False</property> 
    1004  
    1005                       <child> 
    1006                         <widget class="GtkImage" id="PHOTO_image"> 
    1007                           <property name="visible">True</property> 
    1008                           <property name="xalign">0.5</property> 
    1009                           <property name="yalign">0</property> 
    1010                           <property name="xpad">0</property> 
    1011                           <property name="ypad">0</property> 
    1012                         </widget> 
    1013                       </child> 
    1014                     </widget> 
    1015                   </child> 
    1016                 </widget> 
    1017                 <packing> 
    1018                   <property name="left_attach">1</property> 
    1019                   <property name="right_attach">4</property> 
    1020                   <property name="top_attach">6</property> 
    1021                   <property name="bottom_attach">7</property> 
    1022                   <property name="x_options"></property> 
    1023                   <property name="y_options">expand</property> 
    1024                 </packing> 
    1025               </child> 
    1026  
    1027               <child> 
    1028994                <widget class="GtkLabel" id="label58"> 
    1029995                  <property name="visible">True</property> 
     
    10501016                  <property name="x_options">fill</property> 
    10511017                  <property name="y_options"></property> 
     1018                </packing> 
     1019              </child> 
     1020 
     1021              <child> 
     1022                <widget class="GtkHBox" id="hbox3"> 
     1023                  <property name="visible">True</property> 
     1024                  <property name="homogeneous">False</property> 
     1025                  <property name="spacing">0</property> 
     1026 
     1027                  <child> 
     1028                    <widget class="GtkButton" id="PHOTO_button"> 
     1029                      <property name="can_focus">True</property> 
     1030                      <property name="relief">GTK_RELIEF_NORMAL</property> 
     1031                      <property name="focus_on_click">True</property> 
     1032                      <signal name="button_press_event" handler="on_PHOTO_button_press_event" last_modification_time="Sun, 10 Sep 2006 10:44:01 GMT"/> 
     1033 
     1034                      <child> 
     1035                        <widget class="GtkEventBox" id="PHOTO_eventbox3"> 
     1036                          <property name="visible">True</property> 
     1037                          <property name="visible_window">False</property> 
     1038                          <property name="above_child">False</property> 
     1039 
     1040                          <child> 
     1041                            <widget class="GtkImage" id="PHOTO_image"> 
     1042                              <property name="visible">True</property> 
     1043                              <property name="xalign">0.5</property> 
     1044                              <property name="yalign">0</property> 
     1045                              <property name="xpad">0</property> 
     1046                              <property name="ypad">0</property> 
     1047                            </widget> 
     1048                          </child> 
     1049                        </widget> 
     1050                      </child> 
     1051                    </widget> 
     1052                    <packing> 
     1053                      <property name="padding">0</property> 
     1054                      <property name="expand">False</property> 
     1055                      <property name="fill">False</property> 
     1056                    </packing> 
     1057                  </child> 
     1058 
     1059                  <child> 
     1060                    <widget class="GtkButton" id="NOPHOTO_button"> 
     1061                      <property name="visible">True</property> 
     1062                      <property name="can_focus">True</property> 
     1063                      <property name="label" translatable="yes">Click to set your avatar</property> 
     1064                      <property name="use_underline">True</property> 
     1065                      <property name="relief">GTK_RELIEF_NORMAL</property> 
     1066                      <property name="focus_on_click">True</property> 
     1067                      <signal name="button_press_event" handler="on_PHOTO_button_press_event" last_modification_time="Tue, 23 Jan 2007 12:25:27 GMT"/> 
     1068                    </widget> 
     1069                    <packing> 
     1070                      <property name="padding">0</property> 
     1071                      <property name="expand">False</property> 
     1072                      <property name="fill">False</property> 
     1073                    </packing> 
     1074                  </child> 
     1075                </widget> 
     1076                <packing> 
     1077                  <property name="left_attach">1</property> 
     1078                  <property name="right_attach">4</property> 
     1079                  <property name="top_attach">6</property> 
     1080                  <property name="bottom_attach">7</property> 
     1081                  <property name="x_options"></property> 
     1082                  <property name="y_options">expand</property> 
    10521083                </packing> 
    10531084              </child> 
  • branches/gajim_0.11/data/glade/service_discovery_window.glade

    r6483 r7888  
    352352 
    353353          <child> 
    354             <widget class="GtkHButtonBox" id="action_buttonbox"> 
    355               <property name="visible">True</property> 
    356               <property name="layout_style">GTK_BUTTONBOX_END</property> 
     354            <widget class="GtkLabel" id="label363"> 
     355              <property name="visible">True</property> 
     356              <property name="label" translatable="yes"></property> 
     357              <property name="use_underline">False</property> 
     358              <property name="use_markup">False</property> 
     359              <property name="justify">GTK_JUSTIFY_LEFT</property> 
     360              <property name="wrap">False</property> 
     361              <property name="selectable">False</property> 
     362              <property name="xalign">0.5</property> 
     363              <property name="yalign">0.5</property> 
     364              <property name="xpad">0</property> 
     365              <property name="ypad">0</property> 
     366              <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> 
     367              <property name="width_chars">-1</property> 
     368              <property name="single_line_mode">False</property> 
     369              <property name="angle">0</property> 
     370            </widget> 
     371            <packing> 
     372              <property name="padding">0</property> 
     373              <property name="expand">True</property> 
     374              <property name="fill">True</property> 
     375            </packing> 
     376          </child> 
     377 
     378          <child> 
     379            <widget class="GtkHBox" id="action_buttonbox"> 
     380              <property name="visible">True</property> 
     381              <property name="homogeneous">False</property> 
    357382              <property name="spacing">6</property> 
    358383 
     
    369394                  <signal name="clicked" handler="on_close_button_clicked" last_modification_time="Sat, 26 Mar 2005 15:05:59 GMT"/> 
    370395                </widget> 
     396                <packing> 
     397                  <property name="padding">0</property> 
     398                  <property name="expand">False</property> 
     399                  <property name="fill">False</property> 
     400                  <property name="pack_type">GTK_PACK_END</property> 
     401                </packing> 
    371402              </child> 
    372403            </widget> 
    373404            <packing> 
    374405              <property name="padding">0</property> 
    375               <property name="expand">True</property> 
     406              <property name="expand">False</property> 
    376407              <property name="fill">True</property> 
    377408            </packing> 
  • branches/gajim_0.11/src/adhoc_commands.py

    r7829 r7888  
    443443                        # no commands => no commands stage 
    444444                        # commands => command selection stage 
    445                         items = response.getTag('query').getTags('item') 
     445                        query = response.getTag('query') 
     446                        if query: 
     447                                items = query.getTags('item') 
     448                        else: 
     449                                items = [] 
    446450                        if len(items)==0: 
    447451                                self.commandlist = [] 
  • branches/gajim_0.11/src/common/connection_handlers.py

    r7829 r7888  
    13251325                qp = iq_obj.setTag('time') 
    13261326                qp.setTagData('utc', strftime("%Y-%m-%dT%TZ", gmtime())) 
    1327                 qp.setTagData('tzo', "%+03d:00"% (time.timezone/(60*60))) 
     1327                qp.setTagData('tzo', "%+03d:00"% (-time.timezone/(60*60))) 
    13281328                self.connection.send(iq_obj) 
    13291329                raise common.xmpp.NodeProcessed 
     
    13871387                jid = helpers.get_jid_from_iq(msg) 
    13881388                no_log_for = gajim.config.get_per('accounts', self.name, 
    1389                         'no_log_for').split() 
     1389                        'no_log_for') 
     1390                if not no_log_for: 
     1391                        no_log_for = '' 
     1392                no_log_for = no_log_for.split() 
    13901393                encrypted = False 
    13911394                chatstate = None 
  • branches/gajim_0.11/src/common/connection.py

    r7829 r7888  
    343343                self._hostname = hostname 
    344344                if use_srv: 
    345                         # add request for srv query to the resolve, on result '_on_resolve' will be called 
    346                         gajim.resolver.resolve('_xmpp-client._tcp.' + h.encode('utf-8'), self._on_resolve) 
     345                        # add request for srv query to the resolve, on result '_on_resolve' 
     346                        # will be called 
     347                        gajim.resolver.resolve('_xmpp-client._tcp.' + helpers.idn_to_ascii(h), 
     348                                self._on_resolve) 
    347349                else: 
    348350                        self._on_resolve('', []) 
  • branches/gajim_0.11/src/common/helpers.py

    r7787 r7888  
    2626import sha 
    2727from encodings.punycode import punycode_encode 
     28from encodings import idna 
    2829 
    2930import gajim 
     
    8586 
    8687        return prep(*decompose_jid(jidstring)) 
     88 
     89def idn_to_ascii(host): 
     90        '''convert IDN (Internationalized Domain Names) to ACE (ASCII-compatible encoding)''' 
     91        labels = idna.dots.split(host) 
     92        converted_labels = [] 
     93        for label in labels: 
     94                converted_labels.append(idna.ToASCII(label)) 
     95        return ".".join(converted_labels) 
    8796 
    8897def parse_resource(resource): 
  • branches/gajim_0.11/src/common/optparser.py

    r7829 r7888  
    373373                '''fill time_stamp from before_time and after_time''' 
    374374                if self.old_values.has_key('before_time'): 
    375                         gajim.config.set('time_stamp', '%s%%H:%%M%s ' % ( 
     375                        gajim.config.set('time_stamp', '%s%%X%s ' % ( 
    376376                                self.old_values['before_time'], self.old_values['after_time'])) 
    377377                gajim.config.set('version', '0.11.0.1') 
  • branches/gajim_0.11/src/common/passwords.py

    r7829 r7888  
    1919USER_HAS_GNOMEKEYRING = False 
    2020USER_USES_GNOMEKEYRING = False 
    21 if gajim.config.get('use_gnomekeyring'): 
    22         try: 
    23                 import gnomekeyring 
    24         except ImportError: 
    25                 pass 
    26         else: 
    27                 USER_HAS_GNOMEKEYRING = True 
    28                 if gnomekeyring.is_available(): 
    29                         USER_USES_GNOMEKEYRING = True 
    30                 else: 
    31                         USER_USES_GNOMEKEYRING = False 
     21gnomekeyring = None 
    3222 
    3323class PasswordStorage(object): 
     
    10393        global storage 
    10494        if storage is None: # None is only in first time get_storage is called 
     95                if gajim.config.get('use_gnomekeyring'): 
     96                        global gnomekeyring 
     97                        try: 
     98                                import gnomekeyring 
     99                        except ImportError: 
     100                                pass 
     101                        else: 
     102                                global USER_HAS_GNOMEKEYRING 
     103                                global USER_USES_GNOMEKEYRING 
     104                                USER_HAS_GNOMEKEYRING = True 
     105                                if gnomekeyring.is_available(): 
     106                                        USER_USES_GNOMEKEYRING = True 
     107                                else: 
     108                                        USER_USES_GNOMEKEYRING = False 
    105109                if USER_USES_GNOMEKEYRING: 
    106110                        try: 
  • branches/gajim_0.11/src/config.py

    r7841 r7888  
    234234                if gajim.config.get('print_time') == 'never': 
    235235                        self.xml.get_widget('time_never_radiobutton').set_active(True) 
    236                         self._set_sensitivity_for_before_after_time_widgets(False) 
    237236                elif gajim.config.get('print_time') == 'sometimes': 
    238237                        self.xml.get_widget('time_sometimes_radiobutton').set_active(True) 
    239                         self._set_sensitivity_for_before_after_time_widgets(False) 
    240238                else: 
    241239                        self.xml.get_widget('time_always_radiobutton').set_active(True) 
     
    697695                self.on_checkbutton_toggled(widget, 'ignore_incoming_xhtml') 
    698696                 
    699         def _set_sensitivity_for_before_after_time_widgets(self, sensitive): 
    700                 self.xml.get_widget('time_stamp_label').set_sensitive(sensitive) 
    701                 self.xml.get_widget('time_stamp_textview').set_sensitive(sensitive) 
    702          
    703697        def on_time_never_radiobutton_toggled(self, widget): 
    704698                if widget.get_active(): 
    705699                        gajim.config.set('print_time', 'never') 
    706                 self._set_sensitivity_for_before_after_time_widgets(False) 
    707700                gajim.interface.save_config() 
    708701 
     
    710703                if widget.get_active(): 
    711704                        gajim.config.set('print_time', 'sometimes') 
    712                 self._set_sensitivity_for_before_after_time_widgets(False) 
    713705                gajim.interface.save_config() 
    714706 
     
    716708                if widget.get_active(): 
    717709                        gajim.config.set('print_time', 'always') 
    718                 self._set_sensitivity_for_before_after_time_widgets(True) 
    719710                gajim.interface.save_config() 
    720711 
     
    22792270                        if self.infos.has_key('registered'): 
    22802271                                del self.infos['registered'] 
    2281                         else: 
    2282                                 gajim.interface.roster.add_transport_to_roster(self.account, 
    2283                                         self.service) 
    22842272                        gajim.connections[self.account].register_agent(self.service, 
    22852273                                self.infos, True) # True is for is_form 
     
    22932281                        if self.infos.has_key('registered'): 
    22942282                                del self.infos['registered'] 
    2295                         else: 
    2296                                 gajim.interface.roster.add_transport_to_roster(self.account, 
    2297                                         self.service) 
    22982283                        gajim.connections[self.account].register_agent(self.service, 
    22992284                                self.infos) 
     
    29912976                                dialogs.ErrorDialog(pritext, sectext) 
    29922977                                return 
    2993                         server = widgets['server_comboboxentry'].child.get_text() 
     2978                        server = widgets['server_comboboxentry'].child.get_text().decode('utf-8') 
    29942979                        savepass = widgets['save_password_checkbutton'].get_active() 
    2995                         password = widgets['pass1_entry'].get_text() 
     2980                        password = widgets['pass1_entry'].get_text().decode('utf-8') 
    29962981 
    29972982                        if not self.modify: 
  • branches/gajim_0.11/src/conversation_textview.py

    r7841 r7888  
    246246                        before_img_iter.backward_char() # one char back (an image also takes one char) 
    247247                        buffer.apply_tag_by_name('focus-out-line', before_img_iter, end_iter) 
     248 
     249                        self.allow_focus_out_line = False 
    248250 
    249251                        # update the iter we hold to make comparison the next time 
  • branches/gajim_0.11/src/disco.py

    r7635 r7888  
    4848import gtkgui_helpers 
    4949import groups 
     50import adhoc_commands 
    5051 
    5152from common import gajim 
     
    987988                self.register_button = None 
    988989                self.join_button = None 
     990                self.execute_button = None 
    989991                # Keep track of our treeview signals 
    990992                self._view_signals = [] 
     
    11411143        def _add_actions(self): 
    11421144                AgentBrowser._add_actions(self) 
     1145                self.execute_button = gtk.Button() 
     1146                image = gtk.image_new_from_stock(gtk.STOCK_EXECUTE, gtk.ICON_SIZE_BUTTON) 
     1147                label = gtk.Label(_('_Execute Command...'))