patches/gnome-pilot-01-all-in-one.diff
changeset 7376 609397372f40
equal deleted inserted replaced
7375:dd6bce4363fb 7376:609397372f40
       
     1 diff -u -r gnome-pilot-2.0.13/ChangeLog ../sun/gnome-pilot/ChangeLog
       
     2 --- gnome-pilot-2.0.13/ChangeLog	2005-04-09 12:29:56.000000000 +0800
       
     3 +++ ../sun/gnome-pilot/ChangeLog	2005-12-16 10:58:42.479709000 +0800
       
     4 @@ -1,3 +1,77 @@
       
     5 +2005-12-15 Calvin Liu <[email protected]>
       
     6 +
       
     7 +	Fix bug 6354707
       
     8 +	* capplet/gpilotd-capplet.glade, add accessible name
       
     9 +
       
    10 +2005-12-15 Calvin Liu <[email protected]>
       
    11 +
       
    12 +	Fix bug 6354682, 6354711
       
    13 +	* conduits/backup/backup_conduit.c, add mnemonic names
       
    14 +
       
    15 +2005-11-21 Calvin Liu <[email protected]>
       
    16 +
       
    17 +	Fix bug 6338059, together with patch for bug 6338086, 6338096.
       
    18 +	* capplet/gpilotd-capplet.glade
       
    19 +	* capplet/gnome-pilot-druid.c
       
    20 +
       
    21 +2005-11-16 Calvin Liu <[email protected]>
       
    22 +
       
    23 +	Fix bug 6338086, 6338096, change labels in glade files.
       
    24 +	* applet/pilot-applet.glade
       
    25 +	* capplet/gpilotd-capplet.glade
       
    26 +
       
    27 +2005-11-15 Jijun Yu <[email protected]>
       
    28 +	* capplet/util.c: add a device type to check when checking device 
       
    29 +	  settings 
       
    30 +
       
    31 +2005-11-15 Jijun Yu <[email protected]>
       
    32 +	* gpilotd/gnome-pilot-structures.h: add two members to a structure
       
    33 +	* gpilotd/gnome-pilot-structures.c: free the allocated memory for 
       
    34 +	  the added member in a structure
       
    35 +	* capplet/util.c: add two function definitions
       
    36 +	* capplet/gnome-pilot-ddialog.c: restore the original value when 
       
    37 +	  checking that device settings are invalid
       
    38 +
       
    39 +2005-11-10 Jijun Yu <[email protected]>
       
    40 +	* conduits/backup/backup_conduit.h: add a member to a structure
       
    41 +	* conduits/backup/backup_conduit.c: restore the original value when
       
    42 +          checking that an invalid backup directory is set
       
    43 +
       
    44 +2005-11-10 Jijun Yu <[email protected]>
       
    45 +	* gpilotd/gnome-pilot-structures.h: add a member to a structure  
       
    46 +	* capplet/util.h: change the type of a function from void to gboolean
       
    47 +	* capplet/util.c: add two function definitions 
       
    48 +	* capplet/gnome-pilot-pdialog.c: restore the original value when 
       
    49 +	  checking that an invalid base directory is set
       
    50 +
       
    51 +2005-10-28 Jijun Yu <[email protected]>
       
    52 +	* conduits/backup/backup_conduit.c: include the definition of 
       
    53 +	  ENABLE_NLS
       
    54 +
       
    55 +2005-10-28 Jijun Yu <[email protected]>
       
    56 +	* configure.in :  support a language 'zh_HK'
       
    57 +	* intltool-update.in : add conduits specific
       
    58 +	* po/POTFILES.in: support i18n for conduits 
       
    59 +	* conduits/backup/backup.conduit.in : support i18n for the 
       
    60 +	  description of backup conduit
       
    61 +	* conduits/file/file.conduit.in : support i18n for the description 
       
    62 +	  of file conduit 
       
    63 +	* conduits/test/test.conduit.in : suppot i18n for the description 
       
    64 +	  of test conduit
       
    65 +
       
    66 +2005-10-24 Jijun Yu <[email protected]>
       
    67 +	* capplet/gnome-pilot-ddialog.c : modify the save type of the 
       
    68 +	  modified settings after a Error message in Pilot Settings -> 
       
    69 +	  Device Settings 
       
    70 +
       
    71 +2005-10-21 Jijun Yu <[email protected]>
       
    72 +
       
    73 +	* capplet/gnome-pilot-druid.c : change the default type to "USB"
       
    74 +	* capplet/util.c : change the default port to "usb:"
       
    75 +	* capplet/gpilotd-capplet.glade : add a new lable "usb:" 
       
    76 +	  in port list 
       
    77 +
       
    78 +
       
    79  2005-04-09  JP Rosevear  <[email protected]>
       
    80  
       
    81  	* configure.in: bump version
       
    82 diff -u -r gnome-pilot-2.0.13/applet/Makefile.am ../sun/gnome-pilot/applet/Makefile.am
       
    83 --- gnome-pilot-2.0.13/applet/Makefile.am	2005-04-09 12:13:01.000000000 +0800
       
    84 +++ ../sun/gnome-pilot/applet/Makefile.am	2005-08-12 18:10:14.000000000 +0800
       
    85 @@ -15,7 +15,8 @@
       
    86  	$(NULL)
       
    87  
       
    88  %.c %.h: %.gob
       
    89 -	$(GOB2) --always-private-header -w $<
       
    90 +	if test $(GOB2) != "no" ; then \
       
    91 +	$(GOB2) --always-private-header -w $< ; fi
       
    92  
       
    93  gpilot_applet_SOURCES =		\
       
    94  	$(GOB_BUILT_SRCS)	\
       
    95 diff -u -r gnome-pilot-2.0.13/applet/Makefile.in ../sun/gnome-pilot/applet/Makefile.in
       
    96 --- gnome-pilot-2.0.13/applet/Makefile.in	2005-04-09 12:15:02.000000000 +0800
       
    97 +++ ../sun/gnome-pilot/applet/Makefile.in	2005-08-12 18:10:14.000000000 +0800
       
    98 @@ -672,7 +672,9 @@
       
    99  
       
   100  
       
   101  %.c %.h: %.gob
       
   102 -	$(GOB2) --always-private-header -w $<
       
   103 +	if test $(GOB2) != "no" ; then \
       
   104 +	$(GOB2) --always-private-header -w $< ; fi
       
   105 +
       
   106  $(server_in_files:.server.in.in=.server.in): $(server_in_files)
       
   107  	sed -e "s|\@LIBEXECDIR\@|$(libexecdir)|" $< > $@
       
   108  
       
   109 diff -u -r gnome-pilot-2.0.13/applet/pilot-applet.glade ../sun/gnome-pilot/applet/pilot-applet.glade
       
   110 --- gnome-pilot-2.0.13/applet/pilot-applet.glade	2005-03-27 12:31:35.000000000 +0800
       
   111 +++ ../sun/gnome-pilot/applet/pilot-applet.glade	2005-11-16 11:00:32.000000000 +0800
       
   112 @@ -10,6 +10,12 @@
       
   113    <property name="modal">False</property>
       
   114    <property name="resizable">True</property>
       
   115    <property name="destroy_with_parent">False</property>
       
   116 +  <property name="decorated">True</property>
       
   117 +  <property name="skip_taskbar_hint">False</property>
       
   118 +  <property name="skip_pager_hint">False</property>
       
   119 +  <property name="type_hint">GDK_WINDOW_TYPE_HINT_DIALOG</property>
       
   120 +  <property name="gravity">GDK_GRAVITY_NORTH_WEST</property>
       
   121 +  <property name="focus_on_map">True</property>
       
   122    <property name="has_separator">True</property>
       
   123  
       
   124    <child internal-child="vbox">
       
   125 @@ -31,6 +37,7 @@
       
   126  	      <property name="label">gtk-ok</property>
       
   127  	      <property name="use_stock">True</property>
       
   128  	      <property name="relief">GTK_RELIEF_NORMAL</property>
       
   129 +	      <property name="focus_on_click">True</property>
       
   130  	      <property name="response_id">0</property>
       
   131  	    </widget>
       
   132  	  </child>
       
   133 @@ -43,6 +50,7 @@
       
   134  	      <property name="label">gtk-cancel</property>
       
   135  	      <property name="use_stock">True</property>
       
   136  	      <property name="relief">GTK_RELIEF_NORMAL</property>
       
   137 +	      <property name="focus_on_click">True</property>
       
   138  	      <property name="response_id">0</property>
       
   139  	    </widget>
       
   140  	  </child>
       
   141 @@ -89,6 +97,10 @@
       
   142  	      <property name="yalign">0.5</property>
       
   143  	      <property name="xpad">0</property>
       
   144  	      <property name="ypad">0</property>
       
   145 +	      <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
       
   146 +	      <property name="width_chars">-1</property>
       
   147 +	      <property name="single_line_mode">False</property>
       
   148 +	      <property name="angle">0</property>
       
   149  	    </widget>
       
   150  	    <packing>
       
   151  	      <property name="type">label_item</property>
       
   152 @@ -114,6 +126,12 @@
       
   153    <property name="default_width">500</property>
       
   154    <property name="resizable">True</property>
       
   155    <property name="destroy_with_parent">False</property>
       
   156 +  <property name="decorated">True</property>
       
   157 +  <property name="skip_taskbar_hint">False</property>
       
   158 +  <property name="skip_pager_hint">False</property>
       
   159 +  <property name="type_hint">GDK_WINDOW_TYPE_HINT_DIALOG</property>
       
   160 +  <property name="gravity">GDK_GRAVITY_NORTH_WEST</property>
       
   161 +  <property name="focus_on_map">True</property>
       
   162    <property name="has_separator">True</property>
       
   163  
       
   164    <child internal-child="vbox">
       
   165 @@ -135,6 +153,7 @@
       
   166  	      <property name="label">gtk-cancel</property>
       
   167  	      <property name="use_stock">True</property>
       
   168  	      <property name="relief">GTK_RELIEF_NORMAL</property>
       
   169 +	      <property name="focus_on_click">True</property>
       
   170  	      <property name="response_id">0</property>
       
   171  	    </widget>
       
   172  	  </child>
       
   173 @@ -167,6 +186,10 @@
       
   174  	      <property name="yalign">0.5</property>
       
   175  	      <property name="xpad">0</property>
       
   176  	      <property name="ypad">0</property>
       
   177 +	      <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
       
   178 +	      <property name="width_chars">-1</property>
       
   179 +	      <property name="single_line_mode">False</property>
       
   180 +	      <property name="angle">0</property>
       
   181  	    </widget>
       
   182  	    <packing>
       
   183  	      <property name="padding">0</property>
       
   184 @@ -180,7 +203,8 @@
       
   185  	      <property name="visible">True</property>
       
   186  	      <property name="orientation">GTK_PROGRESS_LEFT_TO_RIGHT</property>
       
   187  	      <property name="fraction">0</property>
       
   188 -	      <property name="pulse_step">0.1</property>
       
   189 +	      <property name="pulse_step">0.10000000149</property>
       
   190 +	      <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
       
   191  	    </widget>
       
   192  	    <packing>
       
   193  	      <property name="padding">0</property>
       
   194 @@ -194,7 +218,8 @@
       
   195  	      <property name="visible">True</property>
       
   196  	      <property name="orientation">GTK_PROGRESS_LEFT_TO_RIGHT</property>
       
   197  	      <property name="fraction">0</property>
       
   198 -	      <property name="pulse_step">0.1</property>
       
   199 +	      <property name="pulse_step">0.10000000149</property>
       
   200 +	      <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
       
   201  	    </widget>
       
   202  	    <packing>
       
   203  	      <property name="padding">0</property>
       
   204 @@ -221,6 +246,8 @@
       
   205  		      <property name="visible">True</property>
       
   206  		      <property name="can_focus">True</property>
       
   207  		      <property name="editable">False</property>
       
   208 +		      <property name="overwrite">False</property>
       
   209 +		      <property name="accepts_tab">True</property>
       
   210  		      <property name="justification">GTK_JUSTIFY_LEFT</property>
       
   211  		      <property name="wrap_mode">GTK_WRAP_WORD</property>
       
   212  		      <property name="cursor_visible">True</property>
       
   213 @@ -261,6 +288,12 @@
       
   214    <property name="modal">False</property>
       
   215    <property name="resizable">True</property>
       
   216    <property name="destroy_with_parent">False</property>
       
   217 +  <property name="decorated">True</property>
       
   218 +  <property name="skip_taskbar_hint">False</property>
       
   219 +  <property name="skip_pager_hint">False</property>
       
   220 +  <property name="type_hint">GDK_WINDOW_TYPE_HINT_DIALOG</property>
       
   221 +  <property name="gravity">GDK_GRAVITY_NORTH_WEST</property>
       
   222 +  <property name="focus_on_map">True</property>
       
   223    <property name="has_separator">True</property>
       
   224  
       
   225    <child internal-child="vbox">
       
   226 @@ -282,6 +315,7 @@
       
   227  	      <property name="label">gtk-ok</property>
       
   228  	      <property name="use_stock">True</property>
       
   229  	      <property name="relief">GTK_RELIEF_NORMAL</property>
       
   230 +	      <property name="focus_on_click">True</property>
       
   231  	      <property name="response_id">-5</property>
       
   232  	    </widget>
       
   233  	  </child>
       
   234 @@ -294,6 +328,7 @@
       
   235  	      <property name="label">gtk-cancel</property>
       
   236  	      <property name="use_stock">True</property>
       
   237  	      <property name="relief">GTK_RELIEF_NORMAL</property>
       
   238 +	      <property name="focus_on_click">True</property>
       
   239  	      <property name="response_id">-6</property>
       
   240  	    </widget>
       
   241  	  </child>
       
   242 @@ -326,8 +361,8 @@
       
   243  	      <child>
       
   244  		<widget class="GtkLabel" id="label4">
       
   245  		  <property name="visible">True</property>
       
   246 -		  <property name="label" translatable="yes">Directory</property>
       
   247 -		  <property name="use_underline">False</property>
       
   248 +		  <property name="label" translatable="yes">_Directory</property>
       
   249 +		  <property name="use_underline">True</property>
       
   250  		  <property name="use_markup">False</property>
       
   251  		  <property name="justify">GTK_JUSTIFY_CENTER</property>
       
   252  		  <property name="wrap">False</property>
       
   253 @@ -336,6 +371,11 @@
       
   254  		  <property name="yalign">0.5</property>
       
   255  		  <property name="xpad">0</property>
       
   256  		  <property name="ypad">0</property>
       
   257 +		  <property name="mnemonic_widget">dir_entry</property>
       
   258 +		  <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
       
   259 +		  <property name="width_chars">-1</property>
       
   260 +		  <property name="single_line_mode">False</property>
       
   261 +		  <property name="angle">0</property>
       
   262  		</widget>
       
   263  		<packing>
       
   264  		  <property name="left_attach">0</property>
       
   265 @@ -351,8 +391,8 @@
       
   266  		<widget class="GtkLabel" id="label5">
       
   267  		  <property name="visible">True</property>
       
   268  		  <property name="sensitive">False</property>
       
   269 -		  <property name="label" translatable="yes">Pilot ID</property>
       
   270 -		  <property name="use_underline">False</property>
       
   271 +		  <property name="label" translatable="yes">_Pilot ID</property>
       
   272 +		  <property name="use_underline">True</property>
       
   273  		  <property name="use_markup">False</property>
       
   274  		  <property name="justify">GTK_JUSTIFY_CENTER</property>
       
   275  		  <property name="wrap">False</property>
       
   276 @@ -361,6 +401,11 @@
       
   277  		  <property name="yalign">0.5</property>
       
   278  		  <property name="xpad">0</property>
       
   279  		  <property name="ypad">0</property>
       
   280 +		  <property name="mnemonic_widget">pilotid_entry</property>
       
   281 +		  <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
       
   282 +		  <property name="width_chars">-1</property>
       
   283 +		  <property name="single_line_mode">False</property>
       
   284 +		  <property name="angle">0</property>
       
   285  		</widget>
       
   286  		<packing>
       
   287  		  <property name="left_attach">0</property>
       
   288 @@ -375,8 +420,8 @@
       
   289  	      <child>
       
   290  		<widget class="GtkLabel" id="sync_label">
       
   291  		  <property name="visible">True</property>
       
   292 -		  <property name="label" translatable="yes">Sync cradle</property>
       
   293 -		  <property name="use_underline">False</property>
       
   294 +		  <property name="label" translatable="yes">_Sync cradle</property>
       
   295 +		  <property name="use_underline">True</property>
       
   296  		  <property name="use_markup">False</property>
       
   297  		  <property name="justify">GTK_JUSTIFY_CENTER</property>
       
   298  		  <property name="wrap">False</property>
       
   299 @@ -385,6 +430,11 @@
       
   300  		  <property name="yalign">0.5</property>
       
   301  		  <property name="xpad">0</property>
       
   302  		  <property name="ypad">0</property>
       
   303 +		  <property name="mnemonic_widget">device_menu</property>
       
   304 +		  <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
       
   305 +		  <property name="width_chars">-1</property>
       
   306 +		  <property name="single_line_mode">False</property>
       
   307 +		  <property name="angle">0</property>
       
   308  		</widget>
       
   309  		<packing>
       
   310  		  <property name="left_attach">0</property>
       
   311 @@ -405,7 +455,7 @@
       
   312  		  <property name="max_length">0</property>
       
   313  		  <property name="text" translatable="yes"></property>
       
   314  		  <property name="has_frame">True</property>
       
   315 -		  <property name="invisible_char" translatable="yes">*</property>
       
   316 +		  <property name="invisible_char">*</property>
       
   317  		  <property name="activates_default">False</property>
       
   318  		</widget>
       
   319  		<packing>
       
   320 @@ -427,7 +477,7 @@
       
   321  		  <property name="max_length">0</property>
       
   322  		  <property name="text" translatable="yes"></property>
       
   323  		  <property name="has_frame">True</property>
       
   324 -		  <property name="invisible_char" translatable="yes">*</property>
       
   325 +		  <property name="invisible_char">*</property>
       
   326  		  <property name="activates_default">False</property>
       
   327  		</widget>
       
   328  		<packing>
       
   329 @@ -481,6 +531,12 @@
       
   330    <property name="modal">False</property>
       
   331    <property name="resizable">True</property>
       
   332    <property name="destroy_with_parent">False</property>
       
   333 +  <property name="decorated">True</property>
       
   334 +  <property name="skip_taskbar_hint">False</property>
       
   335 +  <property name="skip_pager_hint">False</property>
       
   336 +  <property name="type_hint">GDK_WINDOW_TYPE_HINT_DIALOG</property>
       
   337 +  <property name="gravity">GDK_GRAVITY_NORTH_WEST</property>
       
   338 +  <property name="focus_on_map">True</property>
       
   339    <property name="has_separator">True</property>
       
   340  
       
   341    <child internal-child="vbox">
       
   342 @@ -493,6 +549,7 @@
       
   343  	<widget class="GtkHButtonBox" id="dialog-action_area6">
       
   344  	  <property name="visible">True</property>
       
   345  	  <property name="layout_style">GTK_BUTTONBOX_END</property>
       
   346 +
       
   347  	  <child>
       
   348  	    <widget class="GtkButton" id="helpbutton">
       
   349  	      <property name="visible">True</property>
       
   350 @@ -501,11 +558,11 @@
       
   351  	      <property name="label">gtk-help</property>
       
   352  	      <property name="use_stock">True</property>
       
   353  	      <property name="relief">GTK_RELIEF_NORMAL</property>
       
   354 +	      <property name="focus_on_click">True</property>
       
   355  	      <property name="response_id">-11</property>
       
   356  	    </widget>
       
   357  	  </child>
       
   358  
       
   359 -
       
   360  	  <child>
       
   361  	    <widget class="GtkButton" id="closebutton1">
       
   362  	      <property name="visible">True</property>
       
   363 @@ -514,6 +571,7 @@
       
   364  	      <property name="label">gtk-close</property>
       
   365  	      <property name="use_stock">True</property>
       
   366  	      <property name="relief">GTK_RELIEF_NORMAL</property>
       
   367 +	      <property name="focus_on_click">True</property>
       
   368  	      <property name="response_id">-7</property>
       
   369  	    </widget>
       
   370  	  </child>
       
   371 @@ -539,8 +597,8 @@
       
   372  	  <child>
       
   373  	    <widget class="GtkLabel" id="label2">
       
   374  	      <property name="visible">True</property>
       
   375 -	      <property name="label" translatable="yes">Execute when clicked</property>
       
   376 -	      <property name="use_underline">False</property>
       
   377 +	      <property name="label" translatable="yes">_Execute when clicked</property>
       
   378 +	      <property name="use_underline">True</property>
       
   379  	      <property name="use_markup">False</property>
       
   380  	      <property name="justify">GTK_JUSTIFY_CENTER</property>
       
   381  	      <property name="wrap">False</property>
       
   382 @@ -549,6 +607,11 @@
       
   383  	      <property name="yalign">0.5</property>
       
   384  	      <property name="xpad">0</property>
       
   385  	      <property name="ypad">0</property>
       
   386 +	      <property name="mnemonic_widget">exec_entry</property>
       
   387 +	      <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
       
   388 +	      <property name="width_chars">-1</property>
       
   389 +	      <property name="single_line_mode">False</property>
       
   390 +	      <property name="angle">0</property>
       
   391  	    </widget>
       
   392  	    <packing>
       
   393  	      <property name="left_attach">0</property>
       
   394 @@ -563,8 +626,8 @@
       
   395  	  <child>
       
   396  	    <widget class="GtkLabel" id="label3">
       
   397  	      <property name="visible">True</property>
       
   398 -	      <property name="label" translatable="yes">Display notices</property>
       
   399 -	      <property name="use_underline">False</property>
       
   400 +	      <property name="label" translatable="yes">_Display notices</property>
       
   401 +	      <property name="use_underline">True</property>
       
   402  	      <property name="use_markup">False</property>
       
   403  	      <property name="justify">GTK_JUSTIFY_CENTER</property>
       
   404  	      <property name="wrap">False</property>
       
   405 @@ -573,6 +636,10 @@
       
   406  	      <property name="yalign">0.5</property>
       
   407  	      <property name="xpad">0</property>
       
   408  	      <property name="ypad">0</property>
       
   409 +	      <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
       
   410 +	      <property name="width_chars">-1</property>
       
   411 +	      <property name="single_line_mode">False</property>
       
   412 +	      <property name="angle">0</property>
       
   413  	    </widget>
       
   414  	    <packing>
       
   415  	      <property name="left_attach">0</property>
       
   416 @@ -593,7 +660,7 @@
       
   417  	      <property name="max_length">0</property>
       
   418  	      <property name="text" translatable="yes"></property>
       
   419  	      <property name="has_frame">True</property>
       
   420 -	      <property name="invisible_char" translatable="yes">*</property>
       
   421 +	      <property name="invisible_char">*</property>
       
   422  	      <property name="activates_default">False</property>
       
   423  	    </widget>
       
   424  	    <packing>
       
   425 @@ -609,6 +676,7 @@
       
   426  	    <widget class="GtkCheckButton" id="notices_button">
       
   427  	      <property name="visible">True</property>
       
   428  	      <property name="relief">GTK_RELIEF_NORMAL</property>
       
   429 +	      <property name="focus_on_click">True</property>
       
   430  	      <property name="active">False</property>
       
   431  	      <property name="inconsistent">False</property>
       
   432  	      <property name="draw_indicator">True</property>
       
   433 diff -u -r gnome-pilot-2.0.13/capplet/gnome-pilot-ddialog.c ../sun/gnome-pilot/capplet/gnome-pilot-ddialog.c
       
   434 --- gnome-pilot-2.0.13/capplet/gnome-pilot-ddialog.c	2004-07-08 21:20:15.000000000 +0800
       
   435 +++ ../sun/gnome-pilot/capplet/gnome-pilot-ddialog.c	2005-11-15 19:02:03.000000000 +0800
       
   436 @@ -126,7 +126,6 @@
       
   437  	;
       
   438  }
       
   439  
       
   440 -
       
   441  
       
   442  GtkObject *
       
   443  gnome_pilot_ddialog_new (GPilotDevice *device)
       
   444 @@ -230,6 +229,8 @@
       
   445  		gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (priv->device_network),
       
   446  					      priv->device->type == PILOT_DEVICE_NETWORK);
       
   447  	}
       
   448 +
       
   449 +	backup_old_device_config (priv->device);
       
   450  }
       
   451  
       
   452  gboolean
       
   453 @@ -242,15 +243,30 @@
       
   454  	
       
   455  	gnome_dialog_set_parent (GNOME_DIALOG (priv->dialog), parent);
       
   456  	btn = gnome_dialog_run (GNOME_DIALOG (priv->dialog));
       
   457 -	
       
   458 -	if (btn == 0)
       
   459 +
       
   460 +	if (btn == 0){ 
       
   461  		read_device_config (GTK_OBJECT (gpdd), priv->device);
       
   462 -	
       
   463 -	gnome_dialog_close (GNOME_DIALOG (priv->dialog));
       
   464 +		gnome_dialog_close (GNOME_DIALOG (priv->dialog));
       
   465  
       
   466 -	if (btn == 0)
       
   467 -		check_device_settings (priv->device);
       
   468 +		while(!check_device_settings (priv->device)){
       
   469 +			restore_old_device_config (priv->device);
       
   470 +			gtk_entry_set_text (GTK_ENTRY (priv->device_port), priv->device->port);
       
   471 +	                gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (priv->device_serial), priv->device->type == PILOT_DEVICE_SERIAL);
       
   472 +			gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (priv->device_usb), priv->device->type == PILOT_DEVICE_USB_VISOR);
       
   473 +			gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (priv->device_irda), priv->device->type == PILOT_DEVICE_IRDA);
       
   474 +			gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (priv->device_network), priv->device->type == PILOT_DEVICE_NETWORK);
       
   475 +
       
   476 +			btn = gnome_dialog_run (GNOME_DIALOG (priv->dialog));
       
   477 +			if(btn){
       
   478 +				break;
       
   479 +			} else {
       
   480 +				read_device_config (GTK_OBJECT (gpdd), priv->device);
       
   481 +				gnome_dialog_close (GNOME_DIALOG (priv->dialog));
       
   482 +			}
       
   483 +		}
       
   484 +	}
       
   485  
       
   486 +	gnome_dialog_close (GNOME_DIALOG (priv->dialog));
       
   487  	return btn == 0 ? TRUE : FALSE;
       
   488  }
       
   489  
       
   490 diff -u -r gnome-pilot-2.0.13/capplet/gnome-pilot-druid.c ../sun/gnome-pilot/capplet/gnome-pilot-druid.c
       
   491 --- gnome-pilot-2.0.13/capplet/gnome-pilot-druid.c	2005-03-29 01:33:04.000000000 +0800
       
   492 +++ ../sun/gnome-pilot/capplet/gnome-pilot-druid.c	2005-11-21 16:11:17.000000000 +0800
       
   493 @@ -224,18 +224,21 @@
       
   494  	priv->page_conduits = GW ("druidpage_conduits");
       
   495  	priv->page_finish = GW ("druidpage_finish");
       
   496  	
       
   497 -	priv->device_name = GW ("device_name_entry");
       
   498 -	priv->device_port = GW ("device_port_entry");
       
   499 -	priv->device_speed = GW ("device_speed_menu");
       
   500 +	priv->device_name = GW ("device_name_entry_druid");
       
   501 +	priv->device_port = GW ("device_port_entry_druid");
       
   502 +	priv->device_speed = GW ("device_speed_menu_druid");
       
   503  	priv->device_timeout = GW ("device_timeout_spinner");
       
   504  	priv->device_usb = GW ("usb_radio");
       
   505 +
       
   506 +	gtk_toggle_button_set_active ((GtkToggleButton *)priv->device_usb, TRUE);
       
   507 +
       
   508  	priv->device_irda = GW ("irda_radio");
       
   509  	priv->device_network = GW ("network_radio");
       
   510  
       
   511  	priv->pilot_info = GW ("pilot_user_frame");
       
   512  	priv->pilot_info_no = GW ("no_radio_button");
       
   513 -	priv->pilot_username = GW ("pilot_username_entry");
       
   514 -	priv->pilot_id = GW ("pilot_id_entry");
       
   515 +	priv->pilot_username = GW ("pilot_username_entry_druid");
       
   516 +	priv->pilot_id = GW ("pilot_id_entry_druid");
       
   517  	
       
   518  	/* FIXME: is this a libglade bug or what? if sync_label 
       
   519  	   is constructed in .glade it is not properly redrawn the first time. */
       
   520 diff -u -r gnome-pilot-2.0.13/capplet/gnome-pilot-pdialog.c ../sun/gnome-pilot/capplet/gnome-pilot-pdialog.c
       
   521 --- gnome-pilot-2.0.13/capplet/gnome-pilot-pdialog.c	2004-09-04 00:09:23.000000000 +0800
       
   522 +++ ../sun/gnome-pilot/capplet/gnome-pilot-pdialog.c	2005-11-10 16:16:02.000000000 +0800
       
   523 @@ -148,7 +148,6 @@
       
   524  	;
       
   525  }
       
   526  
       
   527 -
       
   528  
       
   529  GtkObject *
       
   530  gnome_pilot_pdialog_new (GnomePilotClient *gpc, PilotState *state, GPilotPilot *pilot)
       
   531 @@ -268,10 +267,19 @@
       
   532  	priv = gppd->priv;
       
   533  	
       
   534  	gnome_dialog_set_parent (GNOME_DIALOG (priv->dialog), parent);
       
   535 +	backup_old_basedir (priv->pilot);
       
   536  	btn = gnome_dialog_run (GNOME_DIALOG (priv->dialog));
       
   537  	
       
   538 -	if (btn == 0)
       
   539 -		read_pilot_config (GTK_OBJECT (gppd), priv->pilot);
       
   540 +	if (btn == 0){
       
   541 +		while(!read_pilot_config (GTK_OBJECT (gppd), priv->pilot)){
       
   542 +			btn =	gnome_dialog_run (GNOME_DIALOG (priv->dialog));
       
   543 +			if (btn){
       
   544 +				restore_old_basedir (priv->pilot);
       
   545 +				break;	
       
   546 +			}
       
   547 +		}
       
   548 +	}
       
   549 +
       
   550  	
       
   551  	gnome_dialog_close (GNOME_DIALOG (priv->dialog));
       
   552  
       
   553 diff -u -r gnome-pilot-2.0.13/capplet/gpilotd-capplet.glade ../sun/gnome-pilot/capplet/gpilotd-capplet.glade
       
   554 --- gnome-pilot-2.0.13/capplet/gpilotd-capplet.glade	2003-05-06 03:50:20.000000000 +0800
       
   555 +++ ../sun/gnome-pilot/capplet/gpilotd-capplet.glade	2005-12-15 20:37:55.145079000 +0800
       
   556 @@ -11,6 +11,12 @@
       
   557    <property name="modal">False</property>
       
   558    <property name="resizable">True</property>
       
   559    <property name="destroy_with_parent">False</property>
       
   560 +  <property name="decorated">True</property>
       
   561 +  <property name="skip_taskbar_hint">False</property>
       
   562 +  <property name="skip_pager_hint">False</property>
       
   563 +  <property name="type_hint">GDK_WINDOW_TYPE_HINT_NORMAL</property>
       
   564 +  <property name="gravity">GDK_GRAVITY_NORTH_WEST</property>
       
   565 +  <property name="focus_on_map">True</property>
       
   566  
       
   567    <child>
       
   568      <widget class="GtkNotebook" id="CappletMain">
       
   569 @@ -55,9 +61,10 @@
       
   570  		  <property name="visible">True</property>
       
   571  		  <property name="can_default">True</property>
       
   572  		  <property name="can_focus">True</property>
       
   573 -		  <property name="label" translatable="yes">Add...</property>
       
   574 +		  <property name="label" translatable="yes">_Add...</property>
       
   575  		  <property name="use_underline">True</property>
       
   576  		  <property name="relief">GTK_RELIEF_NORMAL</property>
       
   577 +		  <property name="focus_on_click">True</property>
       
   578  		</widget>
       
   579  	      </child>
       
   580  
       
   581 @@ -66,9 +73,10 @@
       
   582  		  <property name="visible">True</property>
       
   583  		  <property name="can_default">True</property>
       
   584  		  <property name="can_focus">True</property>
       
   585 -		  <property name="label" translatable="yes">Edit...</property>
       
   586 +		  <property name="label" translatable="yes">_Edit...</property>
       
   587  		  <property name="use_underline">True</property>
       
   588  		  <property name="relief">GTK_RELIEF_NORMAL</property>
       
   589 +		  <property name="focus_on_click">True</property>
       
   590  		</widget>
       
   591  	      </child>
       
   592  
       
   593 @@ -77,9 +85,10 @@
       
   594  		  <property name="visible">True</property>
       
   595  		  <property name="can_default">True</property>
       
   596  		  <property name="can_focus">True</property>
       
   597 -		  <property name="label" translatable="yes">Delete</property>
       
   598 +		  <property name="label" translatable="yes">De_lete</property>
       
   599  		  <property name="use_underline">True</property>
       
   600  		  <property name="relief">GTK_RELIEF_NORMAL</property>
       
   601 +		  <property name="focus_on_click">True</property>
       
   602  		</widget>
       
   603  	      </child>
       
   604  	    </widget>
       
   605 @@ -99,8 +108,8 @@
       
   606        <child>
       
   607  	<widget class="GtkLabel" id="label4">
       
   608  	  <property name="visible">True</property>
       
   609 -	  <property name="label" translatable="yes">Pilots</property>
       
   610 -	  <property name="use_underline">False</property>
       
   611 +	  <property name="label" translatable="yes">_Pilots</property>
       
   612 +	  <property name="use_underline">True</property>
       
   613  	  <property name="use_markup">False</property>
       
   614  	  <property name="justify">GTK_JUSTIFY_CENTER</property>
       
   615  	  <property name="wrap">False</property>
       
   616 @@ -109,6 +118,10 @@
       
   617  	  <property name="yalign">0.5</property>
       
   618  	  <property name="xpad">0</property>
       
   619  	  <property name="ypad">0</property>
       
   620 +	  <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
       
   621 +	  <property name="width_chars">-1</property>
       
   622 +	  <property name="single_line_mode">False</property>
       
   623 +	  <property name="angle">0</property>
       
   624  	</widget>
       
   625  	<packing>
       
   626  	  <property name="type">tab</property>
       
   627 @@ -148,9 +161,10 @@
       
   628  		  <property name="visible">True</property>
       
   629  		  <property name="can_default">True</property>
       
   630  		  <property name="can_focus">True</property>
       
   631 -		  <property name="label" translatable="yes">Add...</property>
       
   632 +		  <property name="label" translatable="yes">_Add...</property>
       
   633  		  <property name="use_underline">True</property>
       
   634  		  <property name="relief">GTK_RELIEF_NORMAL</property>
       
   635 +		  <property name="focus_on_click">True</property>
       
   636  		</widget>
       
   637  	      </child>
       
   638  
       
   639 @@ -159,9 +173,10 @@
       
   640  		  <property name="visible">True</property>
       
   641  		  <property name="can_default">True</property>
       
   642  		  <property name="can_focus">True</property>
       
   643 -		  <property name="label" translatable="yes">Edit...</property>
       
   644 +		  <property name="label" translatable="yes">_Edit...</property>
       
   645  		  <property name="use_underline">True</property>
       
   646  		  <property name="relief">GTK_RELIEF_NORMAL</property>
       
   647 +		  <property name="focus_on_click">True</property>
       
   648  		</widget>
       
   649  	      </child>
       
   650  
       
   651 @@ -170,9 +185,10 @@
       
   652  		  <property name="visible">True</property>
       
   653  		  <property name="can_default">True</property>
       
   654  		  <property name="can_focus">True</property>
       
   655 -		  <property name="label" translatable="yes">Delete</property>
       
   656 +		  <property name="label" translatable="yes">De_lete</property>
       
   657  		  <property name="use_underline">True</property>
       
   658  		  <property name="relief">GTK_RELIEF_NORMAL</property>
       
   659 +		  <property name="focus_on_click">True</property>
       
   660  		</widget>
       
   661  	      </child>
       
   662  	    </widget>
       
   663 @@ -192,8 +208,8 @@
       
   664        <child>
       
   665  	<widget class="GtkLabel" id="label3">
       
   666  	  <property name="visible">True</property>
       
   667 -	  <property name="label" translatable="yes">Devices</property>
       
   668 -	  <property name="use_underline">False</property>
       
   669 +	  <property name="label" translatable="yes">_Devices</property>
       
   670 +	  <property name="use_underline">True</property>
       
   671  	  <property name="use_markup">False</property>
       
   672  	  <property name="justify">GTK_JUSTIFY_CENTER</property>
       
   673  	  <property name="wrap">False</property>
       
   674 @@ -202,6 +218,10 @@
       
   675  	  <property name="yalign">0.5</property>
       
   676  	  <property name="xpad">0</property>
       
   677  	  <property name="ypad">0</property>
       
   678 +	  <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
       
   679 +	  <property name="width_chars">-1</property>
       
   680 +	  <property name="single_line_mode">False</property>
       
   681 +	  <property name="angle">0</property>
       
   682  	</widget>
       
   683  	<packing>
       
   684  	  <property name="type">tab</property>
       
   685 @@ -227,8 +247,8 @@
       
   686  	      <child>
       
   687  		<widget class="GtkLabel" id="label156">
       
   688  		  <property name="visible">True</property>
       
   689 -		  <property name="label" translatable="yes">Pilot Name:</property>
       
   690 -		  <property name="use_underline">False</property>
       
   691 +		  <property name="label" translatable="yes">Pilot _Name:</property>
       
   692 +		  <property name="use_underline">True</property>
       
   693  		  <property name="use_markup">False</property>
       
   694  		  <property name="justify">GTK_JUSTIFY_CENTER</property>
       
   695  		  <property name="wrap">False</property>
       
   696 @@ -237,6 +257,11 @@
       
   697  		  <property name="yalign">0.5</property>
       
   698  		  <property name="xpad">0</property>
       
   699  		  <property name="ypad">0</property>
       
   700 +		  <property name="mnemonic_widget">pilots_menu</property>
       
   701 +		  <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
       
   702 +		  <property name="width_chars">-1</property>
       
   703 +		  <property name="single_line_mode">False</property>
       
   704 +		  <property name="angle">0</property>
       
   705  		</widget>
       
   706  		<packing>
       
   707  		  <property name="left_attach">0</property>
       
   708 @@ -261,6 +286,10 @@
       
   709  		  <property name="yalign">0.5</property>
       
   710  		  <property name="xpad">0</property>
       
   711  		  <property name="ypad">0</property>
       
   712 +		  <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
       
   713 +		  <property name="width_chars">-1</property>
       
   714 +		  <property name="single_line_mode">False</property>
       
   715 +		  <property name="angle">0</property>
       
   716  		</widget>
       
   717  		<packing>
       
   718  		  <property name="left_attach">0</property>
       
   719 @@ -307,6 +336,10 @@
       
   720  		  <property name="yalign">0.5</property>
       
   721  		  <property name="xpad">0</property>
       
   722  		  <property name="ypad">0</property>
       
   723 +		  <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
       
   724 +		  <property name="width_chars">-1</property>
       
   725 +		  <property name="single_line_mode">False</property>
       
   726 +		  <property name="angle">0</property>
       
   727  		</widget>
       
   728  		<packing>
       
   729  		  <property name="left_attach">1</property>
       
   730 @@ -345,9 +378,10 @@
       
   731  		      <property name="visible">True</property>
       
   732  		      <property name="can_default">True</property>
       
   733  		      <property name="can_focus">True</property>
       
   734 -		      <property name="label" translatable="yes">Enable</property>
       
   735 +		      <property name="label" translatable="yes">_Enable</property>
       
   736  		      <property name="use_underline">True</property>
       
   737  		      <property name="relief">GTK_RELIEF_NORMAL</property>
       
   738 +		      <property name="focus_on_click">True</property>
       
   739  		    </widget>
       
   740  		  </child>
       
   741  
       
   742 @@ -356,9 +390,10 @@
       
   743  		      <property name="visible">True</property>
       
   744  		      <property name="can_default">True</property>
       
   745  		      <property name="can_focus">True</property>
       
   746 -		      <property name="label" translatable="yes">Disable</property>
       
   747 +		      <property name="label" translatable="yes">D_isable</property>
       
   748  		      <property name="use_underline">True</property>
       
   749  		      <property name="relief">GTK_RELIEF_NORMAL</property>
       
   750 +		      <property name="focus_on_click">True</property>
       
   751  		    </widget>
       
   752  		  </child>
       
   753  
       
   754 @@ -367,9 +402,10 @@
       
   755  		      <property name="visible">True</property>
       
   756  		      <property name="can_default">True</property>
       
   757  		      <property name="can_focus">True</property>
       
   758 -		      <property name="label" translatable="yes">Settings...</property>
       
   759 +		      <property name="label" translatable="yes">_Settings...</property>
       
   760  		      <property name="use_underline">True</property>
       
   761  		      <property name="relief">GTK_RELIEF_NORMAL</property>
       
   762 +		      <property name="focus_on_click">True</property>
       
   763  		    </widget>
       
   764  		  </child>
       
   765  		</widget>
       
   766 @@ -403,6 +439,10 @@
       
   767  		      <property name="yalign">0.5</property>
       
   768  		      <property name="xpad">0</property>
       
   769  		      <property name="ypad">0</property>
       
   770 +		      <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
       
   771 +		      <property name="width_chars">-1</property>
       
   772 +		      <property name="single_line_mode">False</property>
       
   773 +		      <property name="angle">0</property>
       
   774  		    </widget>
       
   775  		  </child>
       
   776  
       
   777 @@ -419,6 +459,10 @@
       
   778  		      <property name="yalign">0.5</property>
       
   779  		      <property name="xpad">0</property>
       
   780  		      <property name="ypad">0</property>
       
   781 +		      <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
       
   782 +		      <property name="width_chars">-1</property>
       
   783 +		      <property name="single_line_mode">False</property>
       
   784 +		      <property name="angle">0</property>
       
   785  		    </widget>
       
   786  		    <packing>
       
   787  		      <property name="type">label_item</property>
       
   788 @@ -466,8 +510,8 @@
       
   789        <child>
       
   790  	<widget class="GtkLabel" id="label152">
       
   791  	  <property name="visible">True</property>
       
   792 -	  <property name="label" translatable="yes">Conduits</property>
       
   793 -	  <property name="use_underline">False</property>
       
   794 +	  <property name="label" translatable="yes">C_onduits</property>
       
   795 +	  <property name="use_underline">True</property>
       
   796  	  <property name="use_markup">False</property>
       
   797  	  <property name="justify">GTK_JUSTIFY_CENTER</property>
       
   798  	  <property name="wrap">False</property>
       
   799 @@ -476,6 +520,10 @@
       
   800  	  <property name="yalign">0.5</property>
       
   801  	  <property name="xpad">0</property>
       
   802  	  <property name="ypad">0</property>
       
   803 +	  <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
       
   804 +	  <property name="width_chars">-1</property>
       
   805 +	  <property name="single_line_mode">False</property>
       
   806 +	  <property name="angle">0</property>
       
   807  	</widget>
       
   808  	<packing>
       
   809  	  <property name="type">tab</property>
       
   810 @@ -492,6 +540,12 @@
       
   811    <property name="modal">True</property>
       
   812    <property name="resizable">False</property>
       
   813    <property name="destroy_with_parent">False</property>
       
   814 +  <property name="decorated">True</property>
       
   815 +  <property name="skip_taskbar_hint">False</property>
       
   816 +  <property name="skip_pager_hint">False</property>
       
   817 +  <property name="type_hint">GDK_WINDOW_TYPE_HINT_DIALOG</property>
       
   818 +  <property name="gravity">GDK_GRAVITY_NORTH_WEST</property>
       
   819 +  <property name="focus_on_map">True</property>
       
   820    <property name="auto_close">False</property>
       
   821    <property name="hide_on_close">True</property>
       
   822  
       
   823 @@ -514,6 +568,7 @@
       
   824  	      <property name="label">gtk-ok</property>
       
   825  	      <property name="use_stock">True</property>
       
   826  	      <property name="relief">GTK_RELIEF_NORMAL</property>
       
   827 +	      <property name="focus_on_click">True</property>
       
   828  	    </widget>
       
   829  	  </child>
       
   830  
       
   831 @@ -525,6 +580,7 @@
       
   832  	      <property name="label">gtk-cancel</property>
       
   833  	      <property name="use_stock">True</property>
       
   834  	      <property name="relief">GTK_RELIEF_NORMAL</property>
       
   835 +	      <property name="focus_on_click">True</property>
       
   836  	    </widget>
       
   837  	  </child>
       
   838  	</widget>
       
   839 @@ -562,8 +618,8 @@
       
   840  		  <child>
       
   841  		    <widget class="GtkLabel" id="label102">
       
   842  		      <property name="visible">True</property>
       
   843 -		      <property name="label" translatable="yes">Name</property>
       
   844 -		      <property name="use_underline">False</property>
       
   845 +		      <property name="label" translatable="yes">_Name</property>
       
   846 +		      <property name="use_underline">True</property>
       
   847  		      <property name="use_markup">False</property>
       
   848  		      <property name="justify">GTK_JUSTIFY_CENTER</property>
       
   849  		      <property name="wrap">False</property>
       
   850 @@ -572,6 +628,11 @@
       
   851  		      <property name="yalign">0.5</property>
       
   852  		      <property name="xpad">0</property>
       
   853  		      <property name="ypad">0</property>
       
   854 +		      <property name="mnemonic_widget">device_name_entry</property>
       
   855 +		      <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
       
   856 +		      <property name="width_chars">-1</property>
       
   857 +		      <property name="single_line_mode">False</property>
       
   858 +		      <property name="angle">0</property>
       
   859  		    </widget>
       
   860  		    <packing>
       
   861  		      <property name="left_attach">0</property>
       
   862 @@ -586,8 +647,8 @@
       
   863  		  <child>
       
   864  		    <widget class="GtkLabel" id="label103">
       
   865  		      <property name="visible">True</property>
       
   866 -		      <property name="label" translatable="yes">Port</property>
       
   867 -		      <property name="use_underline">False</property>
       
   868 +		      <property name="label" translatable="yes">_Port</property>
       
   869 +		      <property name="use_underline">True</property>
       
   870  		      <property name="use_markup">False</property>
       
   871  		      <property name="justify">GTK_JUSTIFY_CENTER</property>
       
   872  		      <property name="wrap">False</property>
       
   873 @@ -596,6 +657,11 @@
       
   874  		      <property name="yalign">0.5</property>
       
   875  		      <property name="xpad">0</property>
       
   876  		      <property name="ypad">0</property>
       
   877 +		      <property name="mnemonic_widget">device_port_entry</property>
       
   878 +		      <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
       
   879 +		      <property name="width_chars">-1</property>
       
   880 +		      <property name="single_line_mode">False</property>
       
   881 +		      <property name="angle">0</property>
       
   882  		    </widget>
       
   883  		    <packing>
       
   884  		      <property name="left_attach">0</property>
       
   885 @@ -610,8 +676,8 @@
       
   886  		  <child>
       
   887  		    <widget class="GtkLabel" id="label104">
       
   888  		      <property name="visible">True</property>
       
   889 -		      <property name="label" translatable="yes">Speed</property>
       
   890 -		      <property name="use_underline">False</property>
       
   891 +		      <property name="label" translatable="yes">_Speed</property>
       
   892 +		      <property name="use_underline">True</property>
       
   893  		      <property name="use_markup">False</property>
       
   894  		      <property name="justify">GTK_JUSTIFY_CENTER</property>
       
   895  		      <property name="wrap">False</property>
       
   896 @@ -620,6 +686,11 @@
       
   897  		      <property name="yalign">0.5</property>
       
   898  		      <property name="xpad">0</property>
       
   899  		      <property name="ypad">0</property>
       
   900 +		      <property name="mnemonic_widget">device_speed_menu</property>
       
   901 +		      <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
       
   902 +		      <property name="width_chars">-1</property>
       
   903 +		      <property name="single_line_mode">False</property>
       
   904 +		      <property name="angle">0</property>
       
   905  		    </widget>
       
   906  		    <packing>
       
   907  		      <property name="left_attach">0</property>
       
   908 @@ -639,6 +710,9 @@
       
   909  		      <property name="case_sensitive">False</property>
       
   910  		      <property name="enable_arrow_keys">True</property>
       
   911  		      <property name="enable_arrows_always">False</property>
       
   912 +		      <accessibility>
       
   913 +			<atkproperty name="AtkObject::accessible_name" translatable="yes">Port</atkproperty>
       
   914 +		      </accessibility>
       
   915  
       
   916  		      <child internal-child="entry">
       
   917  			<widget class="GtkEntry" id="device_port_entry">
       
   918 @@ -649,7 +723,7 @@
       
   919  			  <property name="max_length">0</property>
       
   920  			  <property name="text" translatable="yes"></property>
       
   921  			  <property name="has_frame">True</property>
       
   922 -			  <property name="invisible_char" translatable="yes">*</property>
       
   923 +			  <property name="invisible_char">*</property>
       
   924  			  <property name="activates_default">False</property>
       
   925  			</widget>
       
   926  		      </child>
       
   927 @@ -660,6 +734,32 @@
       
   928  			  <property name="selection_mode">GTK_SELECTION_BROWSE</property>
       
   929  
       
   930  			  <child>
       
   931 +			    <widget class="GtkListItem" id="convertwidget109">
       
   932 +			      <property name="visible">True</property>
       
   933 +
       
   934 +			      <child>
       
   935 +				<widget class="GtkLabel" id="convertwidget110">
       
   936 +				  <property name="visible">True</property>
       
   937 +				  <property name="label" translatable="yes">usb:</property>
       
   938 +				  <property name="use_underline">False</property>
       
   939 +				  <property name="use_markup">False</property>
       
   940 +				  <property name="justify">GTK_JUSTIFY_LEFT</property>
       
   941 +				  <property name="wrap">False</property>
       
   942 +				  <property name="selectable">False</property>
       
   943 +				  <property name="xalign">0</property>
       
   944 +				  <property name="yalign">0.5</property>
       
   945 +				  <property name="xpad">0</property>
       
   946 +				  <property name="ypad">0</property>
       
   947 +				  <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
       
   948 +				  <property name="width_chars">-1</property>
       
   949 +				  <property name="single_line_mode">False</property>
       
   950 +				  <property name="angle">0</property>
       
   951 +				</widget>
       
   952 +			      </child>
       
   953 +			    </widget>
       
   954 +			  </child>
       
   955 +
       
   956 +			  <child>
       
   957  			    <widget class="GtkListItem" id="convertwidget9">
       
   958  			      <property name="visible">True</property>
       
   959  
       
   960 @@ -676,6 +776,10 @@
       
   961  				  <property name="yalign">0.5</property>
       
   962  				  <property name="xpad">0</property>
       
   963  				  <property name="ypad">0</property>
       
   964 +				  <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
       
   965 +				  <property name="width_chars">-1</property>
       
   966 +				  <property name="single_line_mode">False</property>
       
   967 +				  <property name="angle">0</property>
       
   968  				</widget>
       
   969  			      </child>
       
   970  			    </widget>
       
   971 @@ -698,6 +802,10 @@
       
   972  				  <property name="yalign">0.5</property>
       
   973  				  <property name="xpad">0</property>
       
   974  				  <property name="ypad">0</property>
       
   975 +				  <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
       
   976 +				  <property name="width_chars">-1</property>
       
   977 +				  <property name="single_line_mode">False</property>
       
   978 +				  <property name="angle">0</property>
       
   979  				</widget>
       
   980  			      </child>
       
   981  			    </widget>
       
   982 @@ -720,6 +828,10 @@
       
   983  				  <property name="yalign">0.5</property>
       
   984  				  <property name="xpad">0</property>
       
   985  				  <property name="ypad">0</property>
       
   986 +				  <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
       
   987 +				  <property name="width_chars">-1</property>
       
   988 +				  <property name="single_line_mode">False</property>
       
   989 +				  <property name="angle">0</property>
       
   990  				</widget>
       
   991  			      </child>
       
   992  			    </widget>
       
   993 @@ -742,6 +854,10 @@
       
   994  				  <property name="yalign">0.5</property>
       
   995  				  <property name="xpad">0</property>
       
   996  				  <property name="ypad">0</property>
       
   997 +				  <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
       
   998 +				  <property name="width_chars">-1</property>
       
   999 +				  <property name="single_line_mode">False</property>
       
  1000 +				  <property name="angle">0</property>
       
  1001  				</widget>
       
  1002  			      </child>
       
  1003  			    </widget>
       
  1004 @@ -764,6 +880,10 @@
       
  1005  				  <property name="yalign">0.5</property>
       
  1006  				  <property name="xpad">0</property>
       
  1007  				  <property name="ypad">0</property>
       
  1008 +				  <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
       
  1009 +				  <property name="width_chars">-1</property>
       
  1010 +				  <property name="single_line_mode">False</property>
       
  1011 +				  <property name="angle">0</property>
       
  1012  				</widget>
       
  1013  			      </child>
       
  1014  			    </widget>
       
  1015 @@ -786,6 +906,10 @@
       
  1016  				  <property name="yalign">0.5</property>
       
  1017  				  <property name="xpad">0</property>
       
  1018  				  <property name="ypad">0</property>
       
  1019 +				  <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
       
  1020 +				  <property name="width_chars">-1</property>
       
  1021 +				  <property name="single_line_mode">False</property>
       
  1022 +				  <property name="angle">0</property>
       
  1023  				</widget>
       
  1024  			      </child>
       
  1025  			    </widget>
       
  1026 @@ -808,6 +932,10 @@
       
  1027  				  <property name="yalign">0.5</property>
       
  1028  				  <property name="xpad">0</property>
       
  1029  				  <property name="ypad">0</property>
       
  1030 +				  <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
       
  1031 +				  <property name="width_chars">-1</property>
       
  1032 +				  <property name="single_line_mode">False</property>
       
  1033 +				  <property name="angle">0</property>
       
  1034  				</widget>
       
  1035  			      </child>
       
  1036  			    </widget>
       
  1037 @@ -855,7 +983,7 @@
       
  1038  		      <property name="max_length">0</property>
       
  1039  		      <property name="text" translatable="yes"></property>
       
  1040  		      <property name="has_frame">True</property>
       
  1041 -		      <property name="invisible_char" translatable="yes">*</property>
       
  1042 +		      <property name="invisible_char">*</property>
       
  1043  		      <property name="activates_default">False</property>
       
  1044  		    </widget>
       
  1045  		    <packing>
       
  1046 @@ -880,6 +1008,10 @@
       
  1047  		      <property name="yalign">0.5</property>
       
  1048  		      <property name="xpad">0</property>
       
  1049  		      <property name="ypad">0</property>
       
  1050 +		      <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
       
  1051 +		      <property name="width_chars">-1</property>
       
  1052 +		      <property name="single_line_mode">False</property>
       
  1053 +		      <property name="angle">0</property>
       
  1054  		    </widget>
       
  1055  		    <packing>
       
  1056  		      <property name="left_attach">0</property>
       
  1057 @@ -901,9 +1033,10 @@
       
  1058  			<widget class="GtkRadioButton" id="serial_radio">
       
  1059  			  <property name="visible">True</property>
       
  1060  			  <property name="can_focus">True</property>
       
  1061 -			  <property name="label" translatable="yes">Serial</property>
       
  1062 +			  <property name="label" translatable="yes">S_erial</property>
       
  1063  			  <property name="use_underline">True</property>
       
  1064  			  <property name="relief">GTK_RELIEF_NORMAL</property>
       
  1065 +			  <property name="focus_on_click">True</property>
       
  1066  			  <property name="active">True</property>
       
  1067  			  <property name="inconsistent">False</property>
       
  1068  			  <property name="draw_indicator">True</property>
       
  1069 @@ -919,9 +1052,10 @@
       
  1070  			<widget class="GtkRadioButton" id="usb_radio">
       
  1071  			  <property name="visible">True</property>
       
  1072  			  <property name="can_focus">True</property>
       
  1073 -			  <property name="label" translatable="yes">USB</property>
       
  1074 +			  <property name="label" translatable="yes">_USB</property>
       
  1075  			  <property name="use_underline">True</property>
       
  1076  			  <property name="relief">GTK_RELIEF_NORMAL</property>
       
  1077 +			  <property name="focus_on_click">True</property>
       
  1078  			  <property name="active">False</property>
       
  1079  			  <property name="inconsistent">False</property>
       
  1080  			  <property name="draw_indicator">True</property>
       
  1081 @@ -938,9 +1072,10 @@
       
  1082  			<widget class="GtkRadioButton" id="irda_radio">
       
  1083  			  <property name="visible">True</property>
       
  1084  			  <property name="can_focus">True</property>
       
  1085 -			  <property name="label" translatable="yes">IrDA</property>
       
  1086 +			  <property name="label" translatable="yes">_IrDA</property>
       
  1087  			  <property name="use_underline">True</property>
       
  1088  			  <property name="relief">GTK_RELIEF_NORMAL</property>
       
  1089 +			  <property name="focus_on_click">True</property>
       
  1090  			  <property name="active">False</property>
       
  1091  			  <property name="inconsistent">False</property>
       
  1092  			  <property name="draw_indicator">True</property>
       
  1093 @@ -957,9 +1092,10 @@
       
  1094  			<widget class="GtkRadioButton" id="network_radio">
       
  1095  			  <property name="visible">True</property>
       
  1096  			  <property name="can_focus">True</property>
       
  1097 -			  <property name="label" translatable="yes">Network</property>
       
  1098 +			  <property name="label" translatable="yes">Net_work</property>
       
  1099  			  <property name="use_underline">True</property>
       
  1100  			  <property name="relief">GTK_RELIEF_NORMAL</property>
       
  1101 +			  <property name="focus_on_click">True</property>
       
  1102  			  <property name="active">False</property>
       
  1103  			  <property name="inconsistent">False</property>
       
  1104  			  <property name="draw_indicator">True</property>
       
  1105 @@ -985,8 +1121,8 @@
       
  1106  		  <child>
       
  1107  		    <widget class="GtkLabel" id="label126">
       
  1108  		      <property name="visible">True</property>
       
  1109 -		      <property name="label" translatable="yes">Timeout</property>
       
  1110 -		      <property name="use_underline">False</property>
       
  1111 +		      <property name="label" translatable="yes">_Timeout</property>
       
  1112 +		      <property name="use_underline">True</property>
       
  1113  		      <property name="use_markup">False</property>
       
  1114  		      <property name="justify">GTK_JUSTIFY_CENTER</property>
       
  1115  		      <property name="wrap">False</property>
       
  1116 @@ -995,6 +1131,11 @@
       
  1117  		      <property name="yalign">0.5</property>
       
  1118  		      <property name="xpad">0</property>
       
  1119  		      <property name="ypad">0</property>
       
  1120 +		      <property name="mnemonic_widget">timeout_spinner</property>
       
  1121 +		      <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
       
  1122 +		      <property name="width_chars">-1</property>
       
  1123 +		      <property name="single_line_mode">False</property>
       
  1124 +		      <property name="angle">0</property>
       
  1125  		    </widget>
       
  1126  		    <packing>
       
  1127  		      <property name="left_attach">0</property>
       
  1128 @@ -1042,6 +1183,10 @@
       
  1129  		  <property name="yalign">0.5</property>
       
  1130  		  <property name="xpad">0</property>
       
  1131  		  <property name="ypad">0</property>
       
  1132 +		  <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
       
  1133 +		  <property name="width_chars">-1</property>
       
  1134 +		  <property name="single_line_mode">False</property>
       
  1135 +		  <property name="angle">0</property>
       
  1136  		</widget>
       
  1137  		<packing>
       
  1138  		  <property name="type">label_item</property>
       
  1139 @@ -1077,6 +1222,12 @@
       
  1140    <property name="modal">True</property>
       
  1141    <property name="resizable">False</property>
       
  1142    <property name="destroy_with_parent">False</property>
       
  1143 +  <property name="decorated">True</property>
       
  1144 +  <property name="skip_taskbar_hint">False</property>
       
  1145 +  <property name="skip_pager_hint">False</property>
       
  1146 +  <property name="type_hint">GDK_WINDOW_TYPE_HINT_DIALOG</property>
       
  1147 +  <property name="gravity">GDK_GRAVITY_NORTH_WEST</property>
       
  1148 +  <property name="focus_on_map">True</property>
       
  1149    <property name="auto_close">False</property>
       
  1150    <property name="hide_on_close">True</property>
       
  1151  
       
  1152 @@ -1099,6 +1250,7 @@
       
  1153  	      <property name="label">gtk-ok</property>
       
  1154  	      <property name="use_stock">True</property>
       
  1155  	      <property name="relief">GTK_RELIEF_NORMAL</property>
       
  1156 +	      <property name="focus_on_click">True</property>
       
  1157  	    </widget>
       
  1158  	  </child>
       
  1159  
       
  1160 @@ -1110,6 +1262,7 @@
       
  1161  	      <property name="label">gtk-cancel</property>
       
  1162  	      <property name="use_stock">True</property>
       
  1163  	      <property name="relief">GTK_RELIEF_NORMAL</property>
       
  1164 +	      <property name="focus_on_click">True</property>
       
  1165  	    </widget>
       
  1166  	  </child>
       
  1167  	</widget>
       
  1168 @@ -1153,8 +1306,8 @@
       
  1169  		      <child>
       
  1170  			<widget class="GtkLabel" id="label16">
       
  1171  			  <property name="visible">True</property>
       
  1172 -			  <property name="label" translatable="yes">User Name</property>
       
  1173 -			  <property name="use_underline">False</property>
       
  1174 +			  <property name="label" translatable="yes">User _Name</property>
       
  1175 +			  <property name="use_underline">True</property>
       
  1176  			  <property name="use_markup">False</property>
       
  1177  			  <property name="justify">GTK_JUSTIFY_CENTER</property>
       
  1178  			  <property name="wrap">False</property>
       
  1179 @@ -1163,6 +1316,11 @@
       
  1180  			  <property name="yalign">0.5</property>
       
  1181  			  <property name="xpad">0</property>
       
  1182  			  <property name="ypad">0</property>
       
  1183 +			  <property name="mnemonic_widget">pilot_username_entry</property>
       
  1184 +			  <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
       
  1185 +			  <property name="width_chars">-1</property>
       
  1186 +			  <property name="single_line_mode">False</property>
       
  1187 +			  <property name="angle">0</property>
       
  1188  			</widget>
       
  1189  			<packing>
       
  1190  			  <property name="left_attach">0</property>
       
  1191 @@ -1183,7 +1341,7 @@
       
  1192  			  <property name="max_length">0</property>
       
  1193  			  <property name="text" translatable="yes"></property>
       
  1194  			  <property name="has_frame">True</property>
       
  1195 -			  <property name="invisible_char" translatable="yes">*</property>
       
  1196 +			  <property name="invisible_char">*</property>
       
  1197  			  <property name="activates_default">False</property>
       
  1198  			</widget>
       
  1199  			<packing>
       
  1200 @@ -1198,8 +1356,8 @@
       
  1201  		      <child>
       
  1202  			<widget class="GtkLabel" id="label17">
       
  1203  			  <property name="visible">True</property>
       
  1204 -			  <property name="label" translatable="yes">ID</property>
       
  1205 -			  <property name="use_underline">False</property>
       
  1206 +			  <property name="label" translatable="yes">_ID</property>
       
  1207 +			  <property name="use_underline">True</property>
       
  1208  			  <property name="use_markup">False</property>
       
  1209  			  <property name="justify">GTK_JUSTIFY_CENTER</property>
       
  1210  			  <property name="wrap">False</property>
       
  1211 @@ -1208,6 +1366,11 @@
       
  1212  			  <property name="yalign">0.5</property>
       
  1213  			  <property name="xpad">0</property>
       
  1214  			  <property name="ypad">0</property>
       
  1215 +			  <property name="mnemonic_widget">pilot_id_entry</property>
       
  1216 +			  <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
       
  1217 +			  <property name="width_chars">-1</property>
       
  1218 +			  <property name="single_line_mode">False</property>
       
  1219 +			  <property name="angle">0</property>
       
  1220  			</widget>
       
  1221  			<packing>
       
  1222  			  <property name="left_attach">0</property>
       
  1223 @@ -1228,7 +1391,7 @@
       
  1224  			  <property name="max_length">0</property>
       
  1225  			  <property name="text" translatable="yes"></property>
       
  1226  			  <property name="has_frame">True</property>
       
  1227 -			  <property name="invisible_char" translatable="yes">*</property>
       
  1228 +			  <property name="invisible_char">*</property>
       
  1229  			  <property name="activates_default">False</property>
       
  1230  			</widget>
       
  1231  			<packing>
       
  1232 @@ -1259,9 +1422,10 @@
       
  1233  			  <property name="visible">True</property>
       
  1234  			  <property name="tooltip" translatable="yes">Get User Name and ID from existing pilot that was used before.</property>
       
  1235  			  <property name="can_focus">True</property>
       
  1236 -			  <property name="label" translatable="yes">Get from pilot</property>
       
  1237 +			  <property name="label" translatable="yes">_Get from pilot</property>
       
  1238  			  <property name="use_underline">True</property>
       
  1239  			  <property name="relief">GTK_RELIEF_NORMAL</property>
       
  1240 +			  <property name="focus_on_click">True</property>
       
  1241  			</widget>
       
  1242  			<packing>
       
  1243  			  <property name="padding">0</property>
       
  1244 @@ -1275,9 +1439,10 @@
       
  1245  			  <property name="visible">True</property>
       
  1246  			  <property name="tooltip" translatable="yes">Set User Name and ID to a new pilot.</property>
       
  1247  			  <property name="can_focus">True</property>
       
  1248 -			  <property name="label" translatable="yes">Send to pilot</property>
       
  1249 +			  <property name="label" translatable="yes">_Send to pilot</property>
       
  1250  			  <property name="use_underline">True</property>
       
  1251  			  <property name="relief">GTK_RELIEF_NORMAL</property>
       
  1252 +			  <property name="focus_on_click">True</property>
       
  1253  			</widget>
       
  1254  			<packing>
       
  1255  			  <property name="padding">0</property>
       
  1256 @@ -1308,6 +1473,10 @@
       
  1257  		  <property name="yalign">0.5</property>
       
  1258  		  <property name="xpad">0</property>
       
  1259  		  <property name="ypad">0</property>
       
  1260 +		  <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
       
  1261 +		  <property name="width_chars">-1</property>
       
  1262 +		  <property name="single_line_mode">False</property>
       
  1263 +		  <property name="angle">0</property>
       
  1264  		</widget>
       
  1265  		<packing>
       
  1266  		  <property name="type">label_item</property>
       
  1267 @@ -1341,8 +1510,8 @@
       
  1268  		  <child>
       
  1269  		    <widget class="GtkLabel" id="label15">
       
  1270  		      <property name="visible">True</property>
       
  1271 -		      <property name="label" translatable="yes">Pilot Name</property>
       
  1272 -		      <property name="use_underline">False</property>
       
  1273 +		      <property name="label" translatable="yes">_Pilot Name</property>
       
  1274 +		      <property name="use_underline">True</property>
       
  1275  		      <property name="use_markup">False</property>
       
  1276  		      <property name="justify">GTK_JUSTIFY_CENTER</property>
       
  1277  		      <property name="wrap">False</property>
       
  1278 @@ -1351,6 +1520,11 @@
       
  1279  		      <property name="yalign">0.5</property>
       
  1280  		      <property name="xpad">0</property>
       
  1281  		      <property name="ypad">0</property>
       
  1282 +		      <property name="mnemonic_widget">pilot_name_entry</property>
       
  1283 +		      <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
       
  1284 +		      <property name="width_chars">-1</property>
       
  1285 +		      <property name="single_line_mode">False</property>
       
  1286 +		      <property name="angle">0</property>
       
  1287  		    </widget>
       
  1288  		    <packing>
       
  1289  		      <property name="left_attach">0</property>
       
  1290 @@ -1371,7 +1545,7 @@
       
  1291  		      <property name="max_length">0</property>
       
  1292  		      <property name="text" translatable="yes"></property>
       
  1293  		      <property name="has_frame">True</property>
       
  1294 -		      <property name="invisible_char" translatable="yes">*</property>
       
  1295 +		      <property name="invisible_char">*</property>
       
  1296  		      <property name="activates_default">False</property>
       
  1297  		    </widget>
       
  1298  		    <packing>
       
  1299 @@ -1386,8 +1560,8 @@
       
  1300  		  <child>
       
  1301  		    <widget class="GtkLabel" id="label19">
       
  1302  		      <property name="visible">True</property>
       
  1303 -		      <property name="label" translatable="yes">Local basedir</property>
       
  1304 -		      <property name="use_underline">False</property>
       
  1305 +		      <property name="label" translatable="yes">_Local basedir</property>
       
  1306 +		      <property name="use_underline">True</property>
       
  1307  		      <property name="use_markup">False</property>
       
  1308  		      <property name="justify">GTK_JUSTIFY_CENTER</property>
       
  1309  		      <property name="wrap">False</property>
       
  1310 @@ -1396,6 +1570,11 @@
       
  1311  		      <property name="yalign">0.5</property>
       
  1312  		      <property name="xpad">0</property>
       
  1313  		      <property name="ypad">0</property>
       
  1314 +		      <property name="mnemonic_widget">pilot_basedir_entry</property>
       
  1315 +		      <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
       
  1316 +		      <property name="width_chars">-1</property>
       
  1317 +		      <property name="single_line_mode">False</property>
       
  1318 +		      <property name="angle">0</property>
       
  1319  		    </widget>
       
  1320  		    <packing>
       
  1321  		      <property name="left_attach">0</property>
       
  1322 @@ -1416,7 +1595,7 @@
       
  1323  		      <property name="max_length">0</property>
       
  1324  		      <property name="text" translatable="yes"></property>
       
  1325  		      <property name="has_frame">True</property>
       
  1326 -		      <property name="invisible_char" translatable="yes">*</property>
       
  1327 +		      <property name="invisible_char">*</property>
       
  1328  		      <property name="activates_default">False</property>
       
  1329  		    </widget>
       
  1330  		    <packing>
       
  1331 @@ -1443,6 +1622,10 @@
       
  1332  		  <property name="yalign">0.5</property>
       
  1333  		  <property name="xpad">0</property>
       
  1334  		  <property name="ypad">0</property>
       
  1335 +		  <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
       
  1336 +		  <property name="width_chars">-1</property>
       
  1337 +		  <property name="single_line_mode">False</property>
       
  1338 +		  <property name="angle">0</property>
       
  1339  		</widget>
       
  1340  		<packing>
       
  1341  		  <property name="type">label_item</property>
       
  1342 @@ -1478,6 +1661,12 @@
       
  1343    <property name="modal">False</property>
       
  1344    <property name="resizable">False</property>
       
  1345    <property name="destroy_with_parent">False</property>
       
  1346 +  <property name="decorated">True</property>
       
  1347 +  <property name="skip_taskbar_hint">False</property>
       
  1348 +  <property name="skip_pager_hint">False</property>
       
  1349 +  <property name="type_hint">GDK_WINDOW_TYPE_HINT_DIALOG</property>
       
  1350 +  <property name="gravity">GDK_GRAVITY_NORTH_WEST</property>
       
  1351 +  <property name="focus_on_map">True</property>
       
  1352    <property name="auto_close">False</property>
       
  1353    <property name="hide_on_close">True</property>
       
  1354  
       
  1355 @@ -1500,6 +1689,7 @@
       
  1356  	      <property name="label">gtk-ok</property>
       
  1357  	      <property name="use_stock">True</property>
       
  1358  	      <property name="relief">GTK_RELIEF_NORMAL</property>
       
  1359 +	      <property name="focus_on_click">True</property>
       
  1360  	    </widget>
       
  1361  	  </child>
       
  1362  
       
  1363 @@ -1511,6 +1701,7 @@
       
  1364  	      <property name="label">gtk-cancel</property>
       
  1365  	      <property name="use_stock">True</property>
       
  1366  	      <property name="relief">GTK_RELIEF_NORMAL</property>
       
  1367 +	      <property name="focus_on_click">True</property>
       
  1368  	    </widget>
       
  1369  	  </child>
       
  1370  	</widget>
       
  1371 @@ -1556,6 +1747,10 @@
       
  1372  	      <property name="yalign">0.5</property>
       
  1373  	      <property name="xpad">0</property>
       
  1374  	      <property name="ypad">0</property>
       
  1375 +	      <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
       
  1376 +	      <property name="width_chars">-1</property>
       
  1377 +	      <property name="single_line_mode">False</property>
       
  1378 +	      <property name="angle">0</property>
       
  1379  	    </widget>
       
  1380  	    <packing>
       
  1381  	      <property name="type">label_item</property>
       
  1382 @@ -1584,6 +1779,12 @@
       
  1383    <property name="modal">True</property>
       
  1384    <property name="resizable">True</property>
       
  1385    <property name="destroy_with_parent">False</property>
       
  1386 +  <property name="decorated">True</property>
       
  1387 +  <property name="skip_taskbar_hint">False</property>
       
  1388 +  <property name="skip_pager_hint">False</property>
       
  1389 +  <property name="type_hint">GDK_WINDOW_TYPE_HINT_NORMAL</property>
       
  1390 +  <property name="gravity">GDK_GRAVITY_NORTH_WEST</property>
       
  1391 +  <property name="focus_on_map">True</property>
       
  1392  
       
  1393    <child>
       
  1394      <widget class="GnomeDruid" id="druid">
       
  1395 @@ -1632,8 +1833,8 @@
       
  1396  		  <child>
       
  1397  		    <widget class="GtkLabel" id="label105">
       
  1398  		      <property name="visible">True</property>
       
  1399 -		      <property name="label" translatable="yes">Name</property>
       
  1400 -		      <property name="use_underline">False</property>
       
  1401 +		      <property name="label" translatable="yes">_Name</property>
       
  1402 +		      <property name="use_underline">True</property>
       
  1403  		      <property name="use_markup">False</property>
       
  1404  		      <property name="justify">GTK_JUSTIFY_CENTER</property>
       
  1405  		      <property name="wrap">False</property>
       
  1406 @@ -1642,6 +1843,11 @@
       
  1407  		      <property name="yalign">0.5</property>
       
  1408  		      <property name="xpad">0</property>
       
  1409  		      <property name="ypad">0</property>
       
  1410 +		      <property name="mnemonic_widget">device_name_entry_druid</property>
       
  1411 +		      <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
       
  1412 +		      <property name="width_chars">-1</property>
       
  1413 +		      <property name="single_line_mode">False</property>
       
  1414 +		      <property name="angle">0</property>
       
  1415  		    </widget>
       
  1416  		    <packing>
       
  1417  		      <property name="left_attach">0</property>
       
  1418 @@ -1656,8 +1862,8 @@
       
  1419  		  <child>
       
  1420  		    <widget class="GtkLabel" id="label106">
       
  1421  		      <property name="visible">True</property>
       
  1422 -		      <property name="label" translatable="yes">Port</property>
       
  1423 -		      <property name="use_underline">False</property>
       
  1424 +		      <property name="label" translatable="yes">_Port</property>
       
  1425 +		      <property name="use_underline">True</property>
       
  1426  		      <property name="use_markup">False</property>
       
  1427  		      <property name="justify">GTK_JUSTIFY_CENTER</property>
       
  1428  		      <property name="wrap">False</property>
       
  1429 @@ -1666,6 +1872,14 @@
       
  1430  		      <property name="yalign">0.5</property>
       
  1431  		      <property name="xpad">0</property>
       
  1432  		      <property name="ypad">0</property>
       
  1433 +		      <property name="mnemonic_widget">device_port_entry_druid</property>
       
  1434 +		      <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
       
  1435 +		      <property name="width_chars">-1</property>
       
  1436 +		      <property name="single_line_mode">False</property>
       
  1437 +		      <property name="angle">0</property>
       
  1438 +		      <accessibility>
       
  1439 +			<atkrelation target="combo1" type="label-for"/>
       
  1440 +		      </accessibility>
       
  1441  		    </widget>
       
  1442  		    <packing>
       
  1443  		      <property name="left_attach">0</property>
       
  1444 @@ -1680,8 +1894,8 @@
       
  1445  		  <child>
       
  1446  		    <widget class="GtkLabel" id="label107">
       
  1447  		      <property name="visible">True</property>
       
  1448 -		      <property name="label" translatable="yes">Speed</property>
       
  1449 -		      <property name="use_underline">False</property>
       
  1450 +		      <property name="label" translatable="yes">_Speed</property>
       
  1451 +		      <property name="use_underline">True</property>
       
  1452  		      <property name="use_markup">False</property>
       
  1453  		      <property name="justify">GTK_JUSTIFY_CENTER</property>
       
  1454  		      <property name="wrap">False</property>
       
  1455 @@ -1690,6 +1904,11 @@
       
  1456  		      <property name="yalign">0.5</property>
       
  1457  		      <property name="xpad">0</property>
       
  1458  		      <property name="ypad">0</property>
       
  1459 +		      <property name="mnemonic_widget">device_speed_menu_druid</property>
       
  1460 +		      <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
       
  1461 +		      <property name="width_chars">-1</property>
       
  1462 +		      <property name="single_line_mode">False</property>
       
  1463 +		      <property name="angle">0</property>
       
  1464  		    </widget>
       
  1465  		    <packing>
       
  1466  		      <property name="left_attach">0</property>
       
  1467 @@ -1709,9 +1928,12 @@
       
  1468  		      <property name="case_sensitive">False</property>
       
  1469  		      <property name="enable_arrow_keys">True</property>
       
  1470  		      <property name="enable_arrows_always">False</property>
       
  1471 +		      <accessibility>
       
  1472 +			<atkproperty name="AtkObject::accessible_name" translatable="yes">Port</atkproperty>
       
  1473 +		      </accessibility>
       
  1474  
       
  1475  		      <child internal-child="entry">
       
  1476 -			<widget class="GtkEntry" id="device_port_entry">
       
  1477 +			<widget class="GtkEntry" id="device_port_entry_druid">
       
  1478  			  <property name="visible">True</property>
       
  1479  			  <property name="can_focus">True</property>
       
  1480  			  <property name="editable">True</property>
       
  1481 @@ -1719,7 +1941,7 @@
       
  1482  			  <property name="max_length">0</property>
       
  1483  			  <property name="text" translatable="yes"></property>
       
  1484  			  <property name="has_frame">True</property>
       
  1485 -			  <property name="invisible_char" translatable="yes">*</property>
       
  1486 +			  <property name="invisible_char">*</property>
       
  1487  			  <property name="activates_default">False</property>
       
  1488  			</widget>
       
  1489  		      </child>
       
  1490 @@ -1730,6 +1952,32 @@
       
  1491  			  <property name="selection_mode">GTK_SELECTION_BROWSE</property>
       
  1492  
       
  1493  			  <child>
       
  1494 +			    <widget class="GtkListItem" id="convertwidget127">
       
  1495 +			      <property name="visible">True</property>
       
  1496 +
       
  1497 +			      <child>
       
  1498 +				<widget class="GtkLabel" id="convertwidget128">
       
  1499 +				  <property name="visible">True</property>
       
  1500 +				  <property name="label" translatable="yes">usb:</property>
       
  1501 +				  <property name="use_underline">False</property>
       
  1502 +				  <property name="use_markup">False</property>
       
  1503 +				  <property name="justify">GTK_JUSTIFY_LEFT</property>
       
  1504 +				  <property name="wrap">False</property>
       
  1505 +				  <property name="selectable">False</property>
       
  1506 +				  <property name="xalign">0</property>
       
  1507 +				  <property name="yalign">0.5</property>
       
  1508 +				  <property name="xpad">0</property>
       
  1509 +				  <property name="ypad">0</property>
       
  1510 +				  <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
       
  1511 +				  <property name="width_chars">-1</property>
       
  1512 +				  <property name="single_line_mode">False</property>
       
  1513 +				  <property name="angle">0</property>
       
  1514 +				</widget>
       
  1515 +			      </child>
       
  1516 +			    </widget>
       
  1517 +			  </child>
       
  1518 +
       
  1519 +			  <child>
       
  1520  			    <widget class="GtkListItem" id="convertwidget27">
       
  1521  			      <property name="visible">True</property>
       
  1522  
       
  1523 @@ -1746,6 +1994,10 @@
       
  1524  				  <property name="yalign">0.5</property>
       
  1525  				  <property name="xpad">0</property>
       
  1526  				  <property name="ypad">0</property>
       
  1527 +				  <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
       
  1528 +				  <property name="width_chars">-1</property>
       
  1529 +				  <property name="single_line_mode">False</property>
       
  1530 +				  <property name="angle">0</property>
       
  1531  				</widget>
       
  1532  			      </child>
       
  1533  			    </widget>
       
  1534 @@ -1768,6 +2020,10 @@
       
  1535  				  <property name="yalign">0.5</property>
       
  1536  				  <property name="xpad">0</property>
       
  1537  				  <property name="ypad">0</property>
       
  1538 +				  <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
       
  1539 +				  <property name="width_chars">-1</property>
       
  1540 +				  <property name="single_line_mode">False</property>
       
  1541 +				  <property name="angle">0</property>
       
  1542  				</widget>
       
  1543  			      </child>
       
  1544  			    </widget>
       
  1545 @@ -1790,6 +2046,10 @@
       
  1546  				  <property name="yalign">0.5</property>
       
  1547  				  <property name="xpad">0</property>
       
  1548  				  <property name="ypad">0</property>
       
  1549 +				  <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
       
  1550 +				  <property name="width_chars">-1</property>
       
  1551 +				  <property name="single_line_mode">False</property>
       
  1552 +				  <property name="angle">0</property>
       
  1553  				</widget>
       
  1554  			      </child>
       
  1555  			    </widget>
       
  1556 @@ -1812,6 +2072,10 @@
       
  1557  				  <property name="yalign">0.5</property>
       
  1558  				  <property name="xpad">0</property>
       
  1559  				  <property name="ypad">0</property>
       
  1560 +				  <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
       
  1561 +				  <property name="width_chars">-1</property>
       
  1562 +				  <property name="single_line_mode">False</property>
       
  1563 +				  <property name="angle">0</property>
       
  1564  				</widget>
       
  1565  			      </child>
       
  1566  			    </widget>
       
  1567 @@ -1834,6 +2098,10 @@
       
  1568  				  <property name="yalign">0.5</property>
       
  1569  				  <property name="xpad">0</property>
       
  1570  				  <property name="ypad">0</property>
       
  1571 +				  <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
       
  1572 +				  <property name="width_chars">-1</property>
       
  1573 +				  <property name="single_line_mode">False</property>
       
  1574 +				  <property name="angle">0</property>
       
  1575  				</widget>
       
  1576  			      </child>
       
  1577  			    </widget>
       
  1578 @@ -1856,6 +2124,10 @@
       
  1579  				  <property name="yalign">0.5</property>
       
  1580  				  <property name="xpad">0</property>
       
  1581  				  <property name="ypad">0</property>
       
  1582 +				  <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
       
  1583 +				  <property name="width_chars">-1</property>
       
  1584 +				  <property name="single_line_mode">False</property>
       
  1585 +				  <property name="angle">0</property>
       
  1586  				</widget>
       
  1587  			      </child>
       
  1588  			    </widget>
       
  1589 @@ -1873,7 +2145,7 @@
       
  1590  		  </child>
       
  1591  
       
  1592  		  <child>
       
  1593 -		    <widget class="GtkOptionMenu" id="device_speed_menu">
       
  1594 +		    <widget class="GtkOptionMenu" id="device_speed_menu_druid">
       
  1595  		      <property name="visible">True</property>
       
  1596  		      <property name="can_focus">True</property>
       
  1597  		      <property name="history">-1</property>
       
  1598 @@ -1895,7 +2167,7 @@
       
  1599  		  </child>
       
  1600  
       
  1601  		  <child>
       
  1602 -		    <widget class="GtkEntry" id="device_name_entry">
       
  1603 +		    <widget class="GtkEntry" id="device_name_entry_druid">
       
  1604  		      <property name="visible">True</property>
       
  1605  		      <property name="can_focus">True</property>
       
  1606  		      <property name="editable">True</property>
       
  1607 @@ -1903,7 +2175,7 @@
       
  1608  		      <property name="max_length">0</property>
       
  1609  		      <property name="text" translatable="yes"></property>
       
  1610  		      <property name="has_frame">True</property>
       
  1611 -		      <property name="invisible_char" translatable="yes">*</property>
       
  1612 +		      <property name="invisible_char">*</property>
       
  1613  		      <property name="activates_default">False</property>
       
  1614  		    </widget>
       
  1615  		    <packing>
       
  1616 @@ -1925,9 +2197,10 @@
       
  1617  			<widget class="GtkRadioButton" id="serial_radio">
       
  1618  			  <property name="visible">True</property>
       
  1619  			  <property name="can_focus">True</property>
       
  1620 -			  <property name="label" translatable="yes">Serial</property>
       
  1621 +			  <property name="label" translatable="yes">S_erial</property>
       
  1622  			  <property name="use_underline">True</property>
       
  1623  			  <property name="relief">GTK_RELIEF_NORMAL</property>
       
  1624 +			  <property name="focus_on_click">True</property>
       
  1625  			  <property name="active">True</property>
       
  1626  			  <property name="inconsistent">False</property>
       
  1627  			  <property name="draw_indicator">True</property>
       
  1628 @@ -1943,9 +2216,10 @@
       
  1629  			<widget class="GtkRadioButton" id="usb_radio">
       
  1630  			  <property name="visible">True</property>
       
  1631  			  <property name="can_focus">True</property>
       
  1632 -			  <property name="label" translatable="yes">USB</property>
       
  1633 +			  <property name="label" translatable="yes">_USB</property>
       
  1634  			  <property name="use_underline">True</property>
       
  1635  			  <property name="relief">GTK_RELIEF_NORMAL</property>
       
  1636 +			  <property name="focus_on_click">True</property>
       
  1637  			  <property name="active">False</property>
       
  1638  			  <property name="inconsistent">False</property>
       
  1639  			  <property name="draw_indicator">True</property>
       
  1640 @@ -1962,9 +2236,10 @@
       
  1641  			<widget class="GtkRadioButton" id="irda_radio">
       
  1642  			  <property name="visible">True</property>
       
  1643  			  <property name="can_focus">True</property>
       
  1644 -			  <property name="label" translatable="yes">IrDA</property>
       
  1645 +			  <property name="label" translatable="yes">_IrDA</property>
       
  1646  			  <property name="use_underline">True</property>
       
  1647  			  <property name="relief">GTK_RELIEF_NORMAL</property>
       
  1648 +			  <property name="focus_on_click">True</property>
       
  1649  			  <property name="active">False</property>
       
  1650  			  <property name="inconsistent">False</property>
       
  1651  			  <property name="draw_indicator">True</property>
       
  1652 @@ -1981,9 +2256,10 @@
       
  1653  			<widget class="GtkRadioButton" id="network_radio">
       
  1654  			  <property name="visible">True</property>
       
  1655  			  <property name="can_focus">True</property>
       
  1656 -			  <property name="label" translatable="yes">Network</property>
       
  1657 +			  <property name="label" translatable="yes">Net_work</property>
       
  1658  			  <property name="use_underline">True</property>
       
  1659  			  <property name="relief">GTK_RELIEF_NORMAL</property>
       
  1660 +			  <property name="focus_on_click">True</property>
       
  1661  			  <property name="active">False</property>
       
  1662  			  <property name="inconsistent">False</property>
       
  1663  			  <property name="draw_indicator">True</property>
       
  1664 @@ -2018,6 +2294,10 @@
       
  1665  		      <property name="yalign">0.5</property>
       
  1666  		      <property name="xpad">0</property>
       
  1667  		      <property name="ypad">0</property>
       
  1668 +		      <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
       
  1669 +		      <property name="width_chars">-1</property>
       
  1670 +		      <property name="single_line_mode">False</property>
       
  1671 +		      <property name="angle">0</property>
       
  1672  		    </widget>
       
  1673  		    <packing>
       
  1674  		      <property name="left_attach">0</property>
       
  1675 @@ -2032,8 +2312,8 @@
       
  1676  		  <child>
       
  1677  		    <widget class="GtkLabel" id="label149">
       
  1678  		      <property name="visible">True</property>
       
  1679 -		      <property name="label" translatable="yes">Timeout</property>
       
  1680 -		      <property name="use_underline">False</property>
       
  1681 +		      <property name="label" translatable="yes">_Timeout</property>
       
  1682 +		      <property name="use_underline">True</property>
       
  1683  		      <property name="use_markup">False</property>
       
  1684  		      <property name="justify">GTK_JUSTIFY_CENTER</property>
       
  1685  		      <property name="wrap">False</property>
       
  1686 @@ -2042,6 +2322,11 @@
       
  1687  		      <property name="yalign">0.5</property>
       
  1688  		      <property name="xpad">0</property>
       
  1689  		      <property name="ypad">0</property>
       
  1690 +		      <property name="mnemonic_widget">device_timeout_spinner</property>
       
  1691 +		      <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
       
  1692 +		      <property name="width_chars">-1</property>
       
  1693 +		      <property name="single_line_mode">False</property>
       
  1694 +		      <property name="angle">0</property>
       
  1695  		    </widget>
       
  1696  		    <packing>
       
  1697  		      <property name="left_attach">0</property>
       
  1698 @@ -2108,9 +2393,10 @@
       
  1699  		  <child>
       
  1700  		    <widget class="GtkRadioButton" id="yes_radio_button">
       
  1701  		      <property name="visible">True</property>
       
  1702 -		      <property name="label" translatable="yes">Yes, I've used sync software with this pilot before.</property>
       
  1703 +		      <property name="label" translatable="yes">_Yes, I've used sync software with this pilot before.</property>
       
  1704  		      <property name="use_underline">True</property>
       
  1705  		      <property name="relief">GTK_RELIEF_NORMAL</property>
       
  1706 +		      <property name="focus_on_click">True</property>
       
  1707  		      <property name="active">True</property>
       
  1708  		      <property name="inconsistent">False</property>
       
  1709  		      <property name="draw_indicator">True</property>
       
  1710 @@ -2125,9 +2411,10 @@
       
  1711  		  <child>
       
  1712  		    <widget class="GtkRadioButton" id="no_radio_button">
       
  1713  		      <property name="visible">True</property>
       
  1714 -		      <property name="label" translatable="yes">No, I've never used sync software with this pilot before.</property>
       
  1715 +		      <property name="label" translatable="yes">_No, I've never used sync software with this pilot before.</property>
       
  1716  		      <property name="use_underline">True</property>
       
  1717  		      <property name="relief">GTK_RELIEF_NORMAL</property>
       
  1718 +		      <property name="focus_on_click">True</property>
       
  1719  		      <property name="active">False</property>
       
  1720  		      <property name="inconsistent">False</property>
       
  1721  		      <property name="draw_indicator">True</property>
       
  1722 @@ -2161,8 +2448,8 @@
       
  1723  			  <child>
       
  1724  			    <widget class="GtkLabel" id="label108">
       
  1725  			      <property name="visible">True</property>
       
  1726 -			      <property name="label" translatable="yes">User Name</property>
       
  1727 -			      <property name="use_underline">False</property>
       
  1728 +			      <property name="label" translatable="yes">_User Name</property>
       
  1729 +			      <property name="use_underline">True</property>
       
  1730  			      <property name="use_markup">False</property>
       
  1731  			      <property name="justify">GTK_JUSTIFY_CENTER</property>
       
  1732  			      <property name="wrap">False</property>
       
  1733 @@ -2171,6 +2458,11 @@
       
  1734  			      <property name="yalign">0.5</property>
       
  1735  			      <property name="xpad">0</property>
       
  1736  			      <property name="ypad">0</property>
       
  1737 +			      <property name="mnemonic_widget">pilot_username_entry_druid</property>
       
  1738 +			      <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
       
  1739 +			      <property name="width_chars">-1</property>
       
  1740 +			      <property name="single_line_mode">False</property>
       
  1741 +			      <property name="angle">0</property>
       
  1742  			    </widget>
       
  1743  			    <packing>
       
  1744  			      <property name="left_attach">0</property>
       
  1745 @@ -2185,8 +2477,8 @@
       
  1746  			  <child>
       
  1747  			    <widget class="GtkLabel" id="label109">
       
  1748  			      <property name="visible">True</property>
       
  1749 -			      <property name="label" translatable="yes">ID</property>
       
  1750 -			      <property name="use_underline">False</property>
       
  1751 +			      <property name="label" translatable="yes">_ID</property>
       
  1752 +			      <property name="use_underline">True</property>
       
  1753  			      <property name="use_markup">False</property>
       
  1754  			      <property name="justify">GTK_JUSTIFY_CENTER</property>
       
  1755  			      <property name="wrap">False</property>
       
  1756 @@ -2195,6 +2487,11 @@
       
  1757  			      <property name="yalign">0.5</property>
       
  1758  			      <property name="xpad">0</property>
       
  1759  			      <property name="ypad">0</property>
       
  1760 +			      <property name="mnemonic_widget">pilot_id_entry_druid</property>
       
  1761 +			      <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
       
  1762 +			      <property name="width_chars">-1</property>
       
  1763 +			      <property name="single_line_mode">False</property>
       
  1764 +			      <property name="angle">0</property>
       
  1765  			    </widget>
       
  1766  			    <packing>
       
  1767  			      <property name="left_attach">0</property>
       
  1768 @@ -2207,7 +2504,7 @@
       
  1769  			  </child>
       
  1770  
       
  1771  			  <child>
       
  1772 -			    <widget class="GtkEntry" id="pilot_username_entry">
       
  1773 +			    <widget class="GtkEntry" id="pilot_username_entry_druid">
       
  1774  			      <property name="visible">True</property>
       
  1775  			      <property name="tooltip" translatable="yes">Enter user name you want stored on your pilot</property>
       
  1776  			      <property name="can_focus">True</property>
       
  1777 @@ -2216,7 +2513,7 @@
       
  1778  			      <property name="max_length">0</property>
       
  1779  			      <property name="text" translatable="yes"></property>
       
  1780  			      <property name="has_frame">True</property>
       
  1781 -			      <property name="invisible_char" translatable="yes">*</property>
       
  1782 +			      <property name="invisible_char">*</property>
       
  1783  			      <property name="activates_default">False</property>
       
  1784  			    </widget>
       
  1785  			    <packing>
       
  1786 @@ -2229,7 +2526,7 @@
       
  1787  			  </child>
       
  1788  
       
  1789  			  <child>
       
  1790 -			    <widget class="GtkEntry" id="pilot_id_entry">
       
  1791 +			    <widget class="GtkEntry" id="pilot_id_entry_druid">
       
  1792  			      <property name="visible">True</property>
       
  1793  			      <property name="tooltip" translatable="yes">This integer ID identifies your pilot and must be unique between different pilots that you use.</property>
       
  1794  			      <property name="can_focus">True</property>
       
  1795 @@ -2238,7 +2535,7 @@
       
  1796  			      <property name="max_length">0</property>
       
  1797  			      <property name="text" translatable="yes"></property>
       
  1798  			      <property name="has_frame">True</property>
       
  1799 -			      <property name="invisible_char" translatable="yes">*</property>
       
  1800 +			      <property name="invisible_char">*</property>
       
  1801  			      <property name="activates_default">False</property>
       
  1802  			    </widget>
       
  1803  			    <packing>
       
  1804 @@ -2265,6 +2562,10 @@
       
  1805  			  <property name="yalign">0.5</property>
       
  1806  			  <property name="xpad">0</property>
       
  1807  			  <property name="ypad">0</property>
       
  1808 +			  <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
       
  1809 +			  <property name="width_chars">-1</property>
       
  1810 +			  <property name="single_line_mode">False</property>
       
  1811 +			  <property name="angle">0</property>
       
  1812  			</widget>
       
  1813  			<packing>
       
  1814  			  <property name="type">label_item</property>
       
  1815 @@ -2336,8 +2637,8 @@
       
  1816  		  <child>
       
  1817  		    <widget class="GtkLabel" id="label114">
       
  1818  		      <property name="visible">True</property>
       
  1819 -		      <property name="label" translatable="yes">Pilot Name</property>
       
  1820 -		      <property name="use_underline">False</property>
       
  1821 +		      <property name="label" translatable="yes">_Pilot Name</property>
       
  1822 +		      <property name="use_underline">True</property>
       
  1823  		      <property name="use_markup">False</property>
       
  1824  		      <property name="justify">GTK_JUSTIFY_CENTER</property>
       
  1825  		      <property name="wrap">False</property>
       
  1826 @@ -2346,6 +2647,11 @@
       
  1827  		      <property name="yalign">0.5</property>
       
  1828  		      <property name="xpad">0</property>
       
  1829  		      <property name="ypad">0</property>
       
  1830 +		      <property name="mnemonic_widget">pilot_name_entry</property>
       
  1831 +		      <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
       
  1832 +		      <property name="width_chars">-1</property>
       
  1833 +		      <property name="single_line_mode">False</property>
       
  1834 +		      <property name="angle">0</property>
       
  1835  		    </widget>
       
  1836  		    <packing>
       
  1837  		      <property name="left_attach">0</property>
       
  1838 @@ -2367,7 +2673,7 @@
       
  1839  		      <property name="max_length">0</property>
       
  1840  		      <property name="text" translatable="yes"></property>
       
  1841  		      <property name="has_frame">True</property>
       
  1842 -		      <property name="invisible_char" translatable="yes">*</property>
       
  1843 +		      <property name="invisible_char">*</property>
       
  1844  		      <property name="activates_default">False</property>
       
  1845  		    </widget>
       
  1846  		    <packing>
       
  1847 @@ -2382,8 +2688,8 @@
       
  1848  		  <child>
       
  1849  		    <widget class="GtkLabel" id="label115">
       
  1850  		      <property name="visible">True</property>
       
  1851 -		      <property name="label" translatable="yes">Local basedir</property>
       
  1852 -		      <property name="use_underline">False</property>
       
  1853 +		      <property name="label" translatable="yes">_Local basedir</property>
       
  1854 +		      <property name="use_underline">True</property>
       
  1855  		      <property name="use_markup">False</property>
       
  1856  		      <property name="justify">GTK_JUSTIFY_CENTER</property>
       
  1857  		      <property name="wrap">False</property>
       
  1858 @@ -2392,6 +2698,11 @@
       
  1859  		      <property name="yalign">0.5</property>
       
  1860  		      <property name="xpad">0</property>
       
  1861  		      <property name="ypad">0</property>
       
  1862 +		      <property name="mnemonic_widget">pilot_basedir_entry</property>
       
  1863 +		      <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
       
  1864 +		      <property name="width_chars">-1</property>
       
  1865 +		      <property name="single_line_mode">False</property>
       
  1866 +		      <property name="angle">0</property>
       
  1867  		    </widget>
       
  1868  		    <packing>
       
  1869  		      <property name="left_attach">0</property>
       
  1870 @@ -2413,7 +2724,7 @@
       
  1871  		      <property name="max_length">0</property>
       
  1872  		      <property name="text" translatable="yes"></property>
       
  1873  		      <property name="has_frame">True</property>
       
  1874 -		      <property name="invisible_char" translatable="yes">*</property>
       
  1875 +		      <property name="invisible_char">*</property>
       
  1876  		      <property name="activates_default">False</property>
       
  1877  		    </widget>
       
  1878  		    <packing>
       
  1879 @@ -2461,6 +2772,12 @@
       
  1880    <property name="modal">False</property>
       
  1881    <property name="resizable">False</property>
       
  1882    <property name="destroy_with_parent">False</property>
       
  1883 +  <property name="decorated">True</property>
       
  1884 +  <property name="skip_taskbar_hint">False</property>
       
  1885 +  <property name="skip_pager_hint">False</property>
       
  1886 +  <property name="type_hint">GDK_WINDOW_TYPE_HINT_DIALOG</property>
       
  1887 +  <property name="gravity">GDK_GRAVITY_NORTH_WEST</property>
       
  1888 +  <property name="focus_on_map">True</property>
       
  1889    <property name="auto_close">False</property>
       
  1890    <property name="hide_on_close">True</property>
       
  1891  
       
  1892 @@ -2483,6 +2800,7 @@
       
  1893  	      <property name="label">gtk-ok</property>
       
  1894  	      <property name="use_stock">True</property>
       
  1895  	      <property name="relief">GTK_RELIEF_NORMAL</property>
       
  1896 +	      <property name="focus_on_click">True</property>
       
  1897  	    </widget>
       
  1898  	  </child>
       
  1899  
       
  1900 @@ -2494,6 +2812,7 @@
       
  1901  	      <property name="label">gtk-cancel</property>
       
  1902  	      <property name="use_stock">True</property>
       
  1903  	      <property name="relief">GTK_RELIEF_NORMAL</property>
       
  1904 +	      <property name="focus_on_click">True</property>
       
  1905  	    </widget>
       
  1906  	  </child>
       
  1907  	</widget>
       
  1908 @@ -2556,8 +2875,8 @@
       
  1909  	      <child>
       
  1910  		<widget class="GtkLabel" id="label150">
       
  1911  		  <property name="visible">True</property>
       
  1912 -		  <property name="label" translatable="yes">Action:</property>
       
  1913 -		  <property name="use_underline">False</property>
       
  1914 +		  <property name="label" translatable="yes">_Action:</property>
       
  1915 +		  <property name="use_underline">True</property>
       
  1916  		  <property name="use_markup">False</property>
       
  1917  		  <property name="justify">GTK_JUSTIFY_CENTER</property>
       
  1918  		  <property name="wrap">False</property>
       
  1919 @@ -2566,6 +2885,11 @@
       
  1920  		  <property name="yalign">0.5</property>
       
  1921  		  <property name="xpad">0</property>
       
  1922  		  <property name="ypad">0</property>
       
  1923 +		  <property name="mnemonic_widget">sync_actions_menu</property>
       
  1924 +		  <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
       
  1925 +		  <property name="width_chars">-1</property>
       
  1926 +		  <property name="single_line_mode">False</property>
       
  1927 +		  <property name="angle">0</property>
       
  1928  		</widget>
       
  1929  		<packing>
       
  1930  		  <property name="left_attach">0</property>
       
  1931 @@ -2580,8 +2904,8 @@
       
  1932  	      <child>
       
  1933  		<widget class="GtkLabel" id="label151">
       
  1934  		  <property name="visible">True</property>
       
  1935 -		  <property name="label" translatable="yes">One Time Action:</property>
       
  1936 -		  <property name="use_underline">False</property>
       
  1937 +		  <property name="label" translatable="yes">_One Time Action:</property>
       
  1938 +		  <property name="use_underline">True</property>
       
  1939  		  <property name="use_markup">False</property>
       
  1940  		  <property name="justify">GTK_JUSTIFY_CENTER</property>
       
  1941  		  <property name="wrap">False</property>
       
  1942 @@ -2590,6 +2914,11 @@
       
  1943  		  <property name="yalign">0.5</property>
       
  1944  		  <property name="xpad">0</property>
       
  1945  		  <property name="ypad">0</property>
       
  1946 +		  <property name="mnemonic_widget">sync_one_actions_menu</property>
       
  1947 +		  <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
       
  1948 +		  <property name="width_chars">-1</property>
       
  1949 +		  <property name="single_line_mode">False</property>
       
  1950 +		  <property name="angle">0</property>
       
  1951  		</widget>
       
  1952  		<packing>
       
  1953  		  <property name="left_attach">0</property>
       
  1954 @@ -2646,6 +2975,10 @@
       
  1955  	      <property name="yalign">0.5</property>
       
  1956  	      <property name="xpad">0</property>
       
  1957  	      <property name="ypad">0</property>
       
  1958 +	      <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
       
  1959 +	      <property name="width_chars">-1</property>
       
  1960 +	      <property name="single_line_mode">False</property>
       
  1961 +	      <property name="angle">0</property>
       
  1962  	    </widget>
       
  1963  	    <packing>
       
  1964  	      <property name="type">label_item</property>
       
  1965 @@ -2684,6 +3017,10 @@
       
  1966  	      <property name="yalign">0.5</property>
       
  1967  	      <property name="xpad">0</property>
       
  1968  	      <property name="ypad">0</property>
       
  1969 +	      <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
       
  1970 +	      <property name="width_chars">-1</property>
       
  1971 +	      <property name="single_line_mode">False</property>
       
  1972 +	      <property name="angle">0</property>
       
  1973  	    </widget>
       
  1974  	    <packing>
       
  1975  	      <property name="type">label_item</property>
       
  1976 diff -u -r gnome-pilot-2.0.13/capplet/util.c ../sun/gnome-pilot/capplet/util.c
       
  1977 --- gnome-pilot-2.0.13/capplet/util.c	2004-09-04 00:09:23.000000000 +0800
       
  1978 +++ ../sun/gnome-pilot/capplet/util.c	2005-11-15 22:25:39.000000000 +0800
       
  1979 @@ -259,9 +259,9 @@
       
  1980  	GPilotDevice *device = g_new0 (GPilotDevice, 1);
       
  1981  	
       
  1982  	device->name = next_cradle_name (state);
       
  1983 -	device->port = g_strdup ("/dev/pilot");
       
  1984 +	device->port = g_strdup ("usb:");
       
  1985  	device->speed = speedList[DEFAULT_SPEED_INDEX];
       
  1986 -	device->type = PILOT_DEVICE_SERIAL;
       
  1987 +	device->type = PILOT_DEVICE_USB_VISOR;
       
  1988  	device->timeout = 2;
       
  1989  	
       
  1990  	return device;
       
  1991 @@ -316,14 +316,21 @@
       
  1992  	const gchar *curname;
       
  1993  
       
  1994  	curname = gtk_entry_get_text (GTK_ENTRY (editable));
       
  1995 +
       
  1996 +	/* pilot-link with libusb support need to use "usb:" as the port "name",
       
  1997 +	   so no need to check if the initial character is "/"
       
  1998 +	*/
       
  1999 +
       
  2000  	if (*curname == '\0' && len > 0) {
       
  2001 +		/*
       
  2002  		if (text[0]!='/') {
       
  2003  			gtk_signal_emit_stop_by_name (GTK_OBJECT (editable), "insert_text");
       
  2004  			return;
       
  2005  		} 
       
  2006 +		*/
       
  2007  	} else {
       
  2008  		for (i =0;i<len;i++)
       
  2009 -			if (!(isalnum (text[i]) || text[i]=='/')) {
       
  2010 +			if (!(isalnum (text[i]) || text[i]=='/' || text[i] == ':') /* allow usb: */) {
       
  2011  				gtk_signal_emit_stop_by_name (GTK_OBJECT (editable), "insert_text");
       
  2012  				return;
       
  2013  			}
       
  2014 @@ -492,6 +499,23 @@
       
  2015  }
       
  2016  
       
  2017  void
       
  2018 +backup_old_device_config (GPilotDevice* device)
       
  2019 +{
       
  2020 +	device->old_port = g_strdup (device->port);
       
  2021 +	device->old_type = device->type;
       
  2022 +}
       
  2023 +
       
  2024 +void
       
  2025 +restore_old_device_config (GPilotDevice* device)
       
  2026 +{
       
  2027 +	if (device->port)
       
  2028 +		g_free (device->port);
       
  2029 +	device->port = g_strdup (device->old_port);
       
  2030 +
       
  2031 +	device->type = device->old_type;
       
  2032 +}
       
  2033 +
       
  2034 +void
       
  2035  read_device_config (GtkObject *object, GPilotDevice* device)
       
  2036  {
       
  2037  	GtkWidget *port_entry, *speed_menu, *item, *name_entry;
       
  2038 @@ -532,7 +556,18 @@
       
  2039  	device->timeout = gtk_spin_button_get_value_as_int (GTK_SPIN_BUTTON (timeout_spinner));
       
  2040  }
       
  2041  
       
  2042 -void
       
  2043 +void backup_old_basedir (GPilotPilot *pilot)
       
  2044 +{
       
  2045 +	pilot->sync_options.old_basedir = g_strdup (pilot->sync_options.basedir);
       
  2046 +}
       
  2047 +
       
  2048 +void restore_old_basedir (GPilotPilot *pilot)
       
  2049 +{
       
  2050 +	g_free (pilot->sync_options.basedir);
       
  2051 +	pilot->sync_options.basedir = g_strdup (pilot->sync_options.old_basedir);
       
  2052 +}
       
  2053 +
       
  2054 +gboolean
       
  2055  read_pilot_config (GtkObject *object, GPilotPilot *pilot)
       
  2056  {
       
  2057  	GtkWidget *id, *name, *pname, *basedir, *menu;
       
  2058 @@ -561,6 +596,8 @@
       
  2059  	if (pilot->sync_options.basedir) 
       
  2060  		g_free (pilot->sync_options.basedir);
       
  2061  	pilot->sync_options.basedir = g_strdup (gtk_entry_get_text (GTK_ENTRY (basedir)));
       
  2062 +
       
  2063 +	return	check_base_directory(gtk_entry_get_text(GTK_ENTRY(basedir)));
       
  2064  }
       
  2065  
       
  2066  void 
       
  2067 @@ -589,5 +626,15 @@
       
  2068  		}
       
  2069  	}
       
  2070  
       
  2071 +	if (device->type == PILOT_DEVICE_USB_VISOR) {
       
  2072 +		g_message ("checking port on %s", device->port);
       
  2073 +		if (strcmp(device->port, "usb:")) {
       
  2074 +			str = g_strdup_printf ("%s\n", _("USB connection MUST use port \"usb:\""));
       
  2075 +			error_dialog (NULL, str);
       
  2076 +			g_free (str);
       
  2077 +			return FALSE;
       
  2078 +		}
       
  2079 +	}
       
  2080 +
       
  2081  	return TRUE;
       
  2082  }
       
  2083 diff -u -r gnome-pilot-2.0.13/capplet/util.h ../sun/gnome-pilot/capplet/util.h
       
  2084 --- gnome-pilot-2.0.13/capplet/util.h	2003-04-23 05:14:10.000000000 +0800
       
  2085 +++ ../sun/gnome-pilot/capplet/util.h	2005-11-10 16:16:02.000000000 +0800
       
  2086 @@ -64,7 +64,7 @@
       
  2087  
       
  2088  /* Configuration routines */
       
  2089  void read_device_config (GtkObject *object, GPilotDevice* device);
       
  2090 -void read_pilot_config (GtkObject *object, GPilotPilot *pilot);
       
  2091 +gboolean read_pilot_config (GtkObject *object, GPilotPilot *pilot);
       
  2092  
       
  2093  void save_config_and_restart (GnomePilotClient *gpc, PilotState *state);
       
  2094  
       
  2095 diff -u -r gnome-pilot-2.0.13/conduits/backup/backup.conduit.in ../sun/gnome-pilot/conduits/backup/backup.conduit.in
       
  2096 --- gnome-pilot-2.0.13/conduits/backup/backup.conduit.in	2001-03-01 06:43:02.000000000 +0800
       
  2097 +++ ../sun/gnome-pilot/conduits/backup/backup.conduit.in	2005-10-28 11:23:11.000000000 +0800
       
  2098 @@ -1,7 +1,7 @@
       
  2099  <gnome-pilot-conduit version="1.0">
       
  2100  	<conduit id="gpbackup1" type="shlib" location="@prefix@/lib/gnome-pilot/conduits/libbackup_conduit.so"/>
       
  2101  	<name value="Backup"/>
       
  2102 -	<conduit-attribute name="description" value="Backs up changed databases"/>
       
  2103 +	<conduit-attribute name="description" _value="Backs up changed databases"/>
       
  2104  	<conduit-attribute name="default-synctype" value="custom"/>
       
  2105  	<conduit-attribute name="settings" value="TRUE"/>
       
  2106  </gnome-pilot-conduit>
       
  2107 diff -u -r gnome-pilot-2.0.13/conduits/backup/backup_conduit.c ../sun/gnome-pilot/conduits/backup/backup_conduit.c
       
  2108 --- gnome-pilot-2.0.13/conduits/backup/backup_conduit.c	2003-03-18 23:12:25.000000000 +0800
       
  2109 +++ ../sun/gnome-pilot/conduits/backup/backup_conduit.c	2005-12-16 10:13:12.000000000 +0800
       
  2110 @@ -263,6 +265,7 @@
       
  2111  	g_list_foreach ((*c)->exclude_files,(GFunc)g_free,NULL);
       
  2112  	g_list_free ((*c)->exclude_files);
       
  2113  	g_free ((*c)->backup_dir);
       
  2114 +	g_free ((*c)->old_backup_dir);
       
  2115  	g_free (*c);
       
  2116  	*c = NULL;
       
  2117  }
       
  2118 @@ -387,7 +390,7 @@
       
  2119  	int keep_reading;
       
  2120  	int entries;
       
  2121  	int err;
       
  2122 -	unsigned char *buffer;
       
  2123 +	pi_buffer_t *buffer = NULL;
       
  2124  	PilotRecord remote;
       
  2125  	int wrote;
       
  2126  
       
  2127 @@ -473,21 +476,24 @@
       
  2128  		goto db_close;
       
  2129  	}		
       
  2130  
       
  2131 -	buffer = g_new0 (unsigned char, 0xffff);
       
  2132 -	remote.buffer = buffer;
       
  2133 +	buffer = pi_buffer_new(DLP_BUF_SIZE);
       
  2134 +	if(buffer == NULL){
       
  2135 +		result = pi_set_error(dbinfo->pilot_socket, PI_ERR_GENERIC_MEMORY);
       
  2136 +	}
       
  2137  
       
  2138  	{
       
  2139  		int l;
       
  2140  		l = dlp_ReadAppBlock (dbinfo->pilot_socket,
       
  2141  				      dbinfo->db_handle,
       
  2142  				      0,
       
  2143 -				      buffer,
       
  2144 -				      0xffff);
       
  2145 +				      DLP_BUF_SIZE,
       
  2146 +				      buffer);
       
  2147  		if (l>0) {
       
  2148 -			pi_file_set_app_info (f, buffer, l);
       
  2149 +			pi_file_set_app_info (f, buffer->data, l);
       
  2150  		}
       
  2151  	}
       
  2152  	
       
  2153 +	remote.buffer = buffer;
       
  2154  
       
  2155  	index = 0;
       
  2156  	keep_reading = 1;
       
  2157 @@ -500,19 +506,18 @@
       
  2158  			keep_reading = (dlp_ReadResourceByIndex (dbinfo->pilot_socket, 
       
  2159  								 dbinfo->db_handle,
       
  2160  								 index, 
       
  2161 -								 remote.buffer,
       
  2162 +								 buffer,
       
  2163  								 &type,
       
  2164 -								 &id,
       
  2165 -								 &remote.len) >= 0);
       
  2166 +								 &id) >= 0);
       
  2167  #ifdef DEBUG_REC_IO
       
  2168  			g_message ("read resource %d, type = %s, size %d, , index %d/%d",
       
  2169 -				   id, pi_unmktag (type), remote.len,
       
  2170 -				   index, entries);
       
  2171 +				id, pi_unmktag (type), buffer->used,   
       
  2172 +				index, entries);
       
  2173  #endif
       
  2174  			if (keep_reading) {				
       
  2175  				err = pi_file_append_resource (f, 
       
  2176 -							       remote.buffer, 
       
  2177 -							       remote.len, 
       
  2178 +							       buffer->data, 
       
  2179 +							       buffer->used, 
       
  2180  							       type,
       
  2181  							       id);
       
  2182  				if (err < 0) {
       
  2183 @@ -521,7 +526,7 @@
       
  2184  					wrote++;
       
  2185  #ifdef DEBUG_REC_IO
       
  2186  					g_message ("write resource %d, type = %s, size %d, index %d/%d",
       
  2187 -						   id, pi_unmktag (type), remote.len,
       
  2188 +						   id, pi_unmktag (type), buffer->used,
       
  2189  						   index, entries);
       
  2190  #endif
       
  2191  				}
       
  2192 @@ -530,22 +535,21 @@
       
  2193  			keep_reading = (dlp_ReadRecordByIndex (dbinfo->pilot_socket, 
       
  2194  							       dbinfo->db_handle,
       
  2195  							       index, 
       
  2196 -							       remote.buffer,
       
  2197 +							       buffer,
       
  2198  							       &remote.recID,
       
  2199 -							       &remote.len,
       
  2200  							       &remote.flags,
       
  2201  							       &remote.catID) >= 0);
       
  2202  
       
  2203  #ifdef DEBUG_REC_IO
       
  2204  			g_message ("read record %d, size %d, index %d/%d",
       
  2205 -				   remote.recID, remote.len,
       
  2206 +				   remote.recID, buffer->used,
       
  2207  				   index, entries);
       
  2208  #endif
       
  2209  
       
  2210  			if (keep_reading) {
       
  2211  				err = pi_file_append_record (f, 
       
  2212 -							     remote.buffer, 
       
  2213 -							     remote.len, 
       
  2214 +							     buffer->data, 
       
  2215 +							     buffer->used, 
       
  2216  							     remote.flags,
       
  2217  							     remote.catID,
       
  2218  							     remote.recID);
       
  2219 @@ -555,7 +559,7 @@
       
  2220  					wrote++;
       
  2221  #ifdef DEBUG_REC_IO
       
  2222  					g_message ("write record %d, size %d, index %d/%d",
       
  2223 -						   id, remote.len,
       
  2224 +						   id, buffer->used,
       
  2225  						   index, entries);
       
  2226  #endif
       
  2227  				}
       
  2228 @@ -569,8 +573,8 @@
       
  2229  						   index);
       
  2230  	} while (keep_reading && index < entries);
       
  2231  
       
  2232 -	g_free (buffer);
       
  2233 -		
       
  2234 +	pi_buffer_free (buffer);	
       
  2235 +	
       
  2236  	if (pi_file_close (f) < 0) {
       
  2237  		g_warning("backup conduit can't write file");
       
  2238  		gnome_pilot_conduit_send_error(GNOME_PILOT_CONDUIT(conduit),
       
  2239 @@ -760,6 +764,8 @@
       
  2240  	GtkWidget *button, *spin;
       
  2241  	GtkObject *adjustment;
       
  2242  
       
  2243 +	AtkObject *atk_widget;
       
  2244 +
       
  2245  	vbox = gtk_vbox_new(FALSE, GNOME_PAD);
       
  2246  
       
  2247  	table = gtk_table_new(2, 4, FALSE);
       
  2248 @@ -767,7 +773,7 @@
       
  2249  	gtk_table_set_col_spacings(GTK_TABLE(table), 10);
       
  2250  	gtk_box_pack_start(GTK_BOX(vbox), table, FALSE, FALSE, GNOME_PAD);
       
  2251  
       
  2252 -	label = gtk_label_new(_("Backup directory"));
       
  2253 +	label = gtk_label_new_with_mnemonic (_("_Backup directory"));
       
  2254  	gtk_table_attach_defaults(GTK_TABLE(table), label, 0, 1, 0, 1);
       
  2255      
       
  2256  	entry = gtk_entry_new_with_max_length(128);
       
  2257 @@ -777,21 +783,33 @@
       
  2258  			   GTK_SIGNAL_FUNC(insert_dir_callback),
       
  2259  			   NULL);
       
  2260  
       
  2261 -	label = gtk_label_new(_("Only backup changed bases"));
       
  2262 +	gtk_label_set_mnemonic_widget (GTK_LABEL(label), entry);
       
  2263 +	atk_widget = gtk_widget_get_accessible (entry);
       
  2264 +	atk_object_set_name (atk_widget, _("Backup directory"));
       
  2265 +
       
  2266 +	label = gtk_label_new_with_mnemonic (_("O_nly backup changed bases"));
       
  2267  	gtk_table_attach_defaults(GTK_TABLE(table), label, 0, 1, 1,2);
       
  2268  
       
  2269  	button = gtk_check_button_new();
       
  2270  	gtk_object_set_data(GTK_OBJECT(vbox), "only_changed", button);
       
  2271  	gtk_table_attach_defaults(GTK_TABLE(table), button, 1, 2, 1,2);
       
  2272  
       
  2273 -	label = gtk_label_new(_("Remove local base if deleted on pilot"));
       
  2274 +	gtk_label_set_mnemonic_widget (GTK_LABEL(label), button);
       
  2275 +	atk_widget = gtk_widget_get_accessible (button);
       
  2276 +	atk_object_set_name (atk_widget, _("Only backup changed bases"));
       
  2277 +
       
  2278 +	label = gtk_label_new_with_mnemonic(_("_Remove local base if deleted on pilot"));
       
  2279  	gtk_table_attach_defaults(GTK_TABLE(table), label, 0, 1, 2,3);
       
  2280  
       
  2281  	button = gtk_check_button_new();
       
  2282  	gtk_object_set_data(GTK_OBJECT(vbox), "remove_local", button);
       
  2283  	gtk_table_attach_defaults(GTK_TABLE(table), button, 1, 2, 2,3);
       
  2284  
       
  2285 -	label = gtk_label_new(_("# of old backups to keep"));
       
  2286 +	gtk_label_set_mnemonic_widget (GTK_LABEL(label), button);
       
  2287 +	atk_widget = gtk_widget_get_accessible (button);
       
  2288 +	atk_object_set_name (atk_widget, _("Remove local base if deleted on pilot"));
       
  2289 +
       
  2290 +	label = gtk_label_new_with_mnemonic (_("# of old backups to _keep"));
       
  2291  	gtk_table_attach_defaults(GTK_TABLE(table), label, 0, 1, 3,4);
       
  2292  
       
  2293  	adjustment = gtk_adjustment_new (0, 0, 100, 1, 1, 1);
       
  2294 @@ -799,9 +817,76 @@
       
  2295  	gtk_object_set_data(GTK_OBJECT(vbox), "no_of_backups", adjustment);
       
  2296  	gtk_table_attach_defaults(GTK_TABLE(table), spin, 1, 2, 3, 4);
       
  2297  
       
  2298 +	gtk_label_set_mnemonic_widget (GTK_LABEL(label), spin);
       
  2299 +	atk_widget = gtk_widget_get_accessible (spin);
       
  2300 +	atk_object_set_name (atk_widget, _("# of old backups to keep"));
       
  2301 +
       
  2302  	return vbox;
       
  2303  }
       
  2304  
       
  2305 +void
       
  2306 +error_dialog (GtkWindow *parent, gchar *mesg, ...)
       
  2307 +{
       
  2308 +        GtkWidget *dlg;
       
  2309 +        char *tmp;
       
  2310 +        va_list ap;
       
  2311 +
       
  2312 +        va_start (ap,mesg);
       
  2313 +        tmp = g_strdup_vprintf (mesg,ap);
       
  2314 +
       
  2315 +        dlg = gtk_message_dialog_new (parent, GTK_DIALOG_DESTROY_WITH_PARENT,
       
  2316 +                                      GTK_MESSAGE_ERROR, GTK_BUTTONS_OK, tmp);
       
  2317 +        gtk_dialog_run (GTK_DIALOG (dlg));
       
  2318 +        gtk_widget_destroy (dlg);
       
  2319 +
       
  2320 +        va_end (ap);
       
  2321 +        g_free (tmp);
       
  2322 +}
       
  2323 +
       
  2324 +gboolean
       
  2325 +check_base_directory (const gchar *dir_name)
       
  2326 +{
       
  2327 +        gboolean ret = TRUE;
       
  2328 +        /* check basedir validity */
       
  2329 +
       
  2330 +        if (mkdir (dir_name, 0700) < 0 ) {
       
  2331 +                struct stat buf;
       
  2332 +                gchar *errstr;
       
  2333 +                switch (errno) {
       
  2334 +                case EEXIST:
       
  2335 +                        stat (dir_name, &buf);
       
  2336 +                        if (S_ISDIR (buf.st_mode)) {
       
  2337 +                                if (!(buf.st_mode & (S_IRUSR | S_IWUSR |S_IXUSR))) {
       
  2338 +                                        error_dialog (NULL, _("The specified backup directory exists but has the wrong permissions.\n"
       
  2339 +                                                        "Please fix or choose another directory"));
       
  2340 +                                        ret = FALSE;
       
  2341 +                                }
       
  2342 +                        } else {
       
  2343 +                                error_dialog (NULL, _("The specified backup directory exists but is not a directory.\n"
       
  2344 +                                                "Please make it a directory or choose another directory"));
       
  2345 +                                ret = FALSE;
       
  2346 +                        }
       
  2347 +                        break;
       
  2348 +
       
  2349 +                case EACCES:
       
  2350 +                        error_dialog (NULL, _("It wasn't possible to create the specified backup directory.\n"
       
  2351 +                                        "Please verify the permissions on the specified path or choose another directory"));
       
  2352 +                        ret = FALSE;
       
  2353 +			break;
       
  2354 +                case ENOENT:
       
  2355 +                        error_dialog (NULL, _("The path specified for the backup directory is invalid.\n"
       
  2356 +                                        "Please choose another directory"));
       
  2357 +                        ret = FALSE;
       
  2358 +                        break;
       
  2359 +                default:
       
  2360 +                        errstr = strerror (errno);
       
  2361 +                        error_dialog (NULL, errstr);
       
  2362 +                        ret = FALSE;
       
  2363 +                }
       
  2364 +        }
       
  2365 +        return ret;
       
  2366 +}
       
  2367 +
       
  2368  static void
       
  2369  setOptionsCfg(GtkWidget *pilotcfg, ConduitCfg *state)
       
  2370  {
       
  2371 @@ -817,8 +902,10 @@
       
  2372  	g_assert(updated_only!=NULL);
       
  2373  	g_assert(remove_deleted!=NULL);
       
  2374  	g_assert(adj!=NULL);
       
  2375 +	
       
  2376 +	state->old_backup_dir = g_strdup(state->backup_dir);
       
  2377  
       
  2378 -	gtk_entry_set_text(GTK_ENTRY(dir), state->backup_dir);
       
  2379 +	gtk_entry_set_text(GTK_ENTRY(dir), state->old_backup_dir);
       
  2380  	gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(updated_only), state->updated_only);
       
  2381  	gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(remove_deleted), state->remove_deleted);
       
  2382  	gtk_adjustment_set_value (GTK_ADJUSTMENT(adj), state->no_of_backups);
       
  2383 @@ -836,7 +923,14 @@
       
  2384  	remove_deleted = gtk_object_get_data(GTK_OBJECT(pilotcfg), "remove_local");
       
  2385  	adj = gtk_object_get_data(GTK_OBJECT(pilotcfg), "no_of_backups");
       
  2386  
       
  2387 -	state->backup_dir = g_strdup(gtk_entry_get_text(GTK_ENTRY(dir)));
       
  2388 +	if(state->backup_dir)
       
  2389 +		g_free(state->backup_dir);	
       
  2390 +	if(check_base_directory ( gtk_entry_get_text (GTK_ENTRY (dir)))){
       
  2391 +		state->backup_dir = g_strdup(gtk_entry_get_text(GTK_ENTRY(dir)));
       
  2392 +	} else {
       
  2393 +		state->backup_dir = g_strdup(state->old_backup_dir);
       
  2394 +		gtk_entry_set_text(GTK_ENTRY(dir), state->old_backup_dir);
       
  2395 +	}
       
  2396  	state->updated_only = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(updated_only));
       
  2397  	state->remove_deleted = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(remove_deleted));
       
  2398  	state->no_of_backups = GTK_ADJUSTMENT(adj)->value;
       
  2399 diff -u -r gnome-pilot-2.0.13/conduits/backup/backup_conduit.h ../sun/gnome-pilot/conduits/backup/backup_conduit.h
       
  2400 --- gnome-pilot-2.0.13/conduits/backup/backup_conduit.h	2001-03-02 04:20:49.000000000 +0800
       
  2401 +++ ../sun/gnome-pilot/conduits/backup/backup_conduit.h	2005-11-10 18:50:22.000000000 +0800
       
  2402 @@ -38,6 +38,7 @@
       
  2403  
       
  2404  typedef struct ConduitCfg {
       
  2405    gchar *backup_dir;
       
  2406 +  gchar *old_backup_dir; /* restore the original value if users set an invalid backup directory */
       
  2407    GList *exclude_files;
       
  2408    GList *files_in_backup;   /* contains the file in backup, any entries when
       
  2409                                 destroy is called are considered deleted on PDA */
       
  2410 diff -u -r gnome-pilot-2.0.13/conduits/file/file.conduit.in ../sun/gnome-pilot/conduits/file/file.conduit.in
       
  2411 --- gnome-pilot-2.0.13/conduits/file/file.conduit.in	2001-03-01 06:43:04.000000000 +0800
       
  2412 +++ ../sun/gnome-pilot/conduits/file/file.conduit.in	2005-10-28 11:23:12.000000000 +0800
       
  2413 @@ -1,7 +1,7 @@
       
  2414  <gnome-pilot-conduit version="1.0">
       
  2415  	<conduit id="gpfile1" type="shlib" location="@prefix@/lib/gnome-pilot/conduits/libfile_conduit.so"/>
       
  2416  	<name value="File"/>
       
  2417 -	<conduit-attribute name="description" value="Installs files on the pilot"/>
       
  2418 +	<conduit-attribute name="description" _value="Installs files on the pilot"/>
       
  2419  	<conduit-attribute name="default-synctype" value="custom"/>
       
  2420       	<conduit-attribute name="settings" value="FALSE"/>
       
  2421  </gnome-pilot-conduit>
       
  2422 diff -u -r gnome-pilot-2.0.13/conduits/test/test.conduit ../sun/gnome-pilot/conduits/test/test.conduit
       
  2423 --- gnome-pilot-2.0.13/conduits/test/test.conduit	2005-04-09 12:15:49.000000000 +0800
       
  2424 +++ ../sun/gnome-pilot/conduits/test/test.conduit	2005-12-15 18:25:05.977894000 +0800
       
  2425 @@ -1,9 +1,9 @@
       
  2426  <gnome-pilot-conduit version="1.0">
       
  2427 -	<conduit id="test_conduit" type="shlib" location="/usr/local/lib/gnome-pilot/conduits/libtest_conduit.so"/>
       
  2428 +	<conduit id="test_conduit" type="shlib" location="/usr/lib/gnome-pilot/conduits/libtest_conduit.so"/>
       
  2429  	<name value="Test"/>
       
  2430 -	<conduit-attribute name="description" value="Test conduit"/>
       
  2431 +	<conduit-attribute name="description" _value="Test conduit"/>
       
  2432       	<conduit-attribute name="default-synctype" value="synchronize"/>
       
  2433       	<conduit-attribute name="valid-synctypes" value="synchronize copy_from_pilot copy_to_pilot merge_from_pilot merge_to_pilot"/>
       
  2434       	<conduit-attribute name="settings" value="FALSE"/>
       
  2435 -     	<conduit-attribute name="icon" value="/usr/local/share/pixmaps/gnome-unknown.png"/>
       
  2436 +     	<conduit-attribute name="icon" value="/usr/share/pixmaps/gnome-unknown.png"/>
       
  2437  </gnome-pilot-conduit>
       
  2438 diff -u -r gnome-pilot-2.0.13/conduits/test/test.conduit.in ../sun/gnome-pilot/conduits/test/test.conduit.in
       
  2439 --- gnome-pilot-2.0.13/conduits/test/test.conduit.in	2001-03-01 06:43:08.000000000 +0800
       
  2440 +++ ../sun/gnome-pilot/conduits/test/test.conduit.in	2005-10-28 11:23:12.000000000 +0800
       
  2441 @@ -1,7 +1,7 @@
       
  2442  <gnome-pilot-conduit version="1.0">
       
  2443  	<conduit id="test_conduit" type="shlib" location="@prefix@/lib/gnome-pilot/conduits/libtest_conduit.so"/>
       
  2444  	<name value="Test"/>
       
  2445 -	<conduit-attribute name="description" value="Test conduit"/>
       
  2446 +	<conduit-attribute name="description" _value="Test conduit"/>
       
  2447       	<conduit-attribute name="default-synctype" value="synchronize"/>
       
  2448       	<conduit-attribute name="valid-synctypes" value="synchronize copy_from_pilot copy_to_pilot merge_from_pilot merge_to_pilot"/>
       
  2449       	<conduit-attribute name="settings" value="FALSE"/>
       
  2450 diff -u -r gnome-pilot-2.0.13/gpilotd/Makefile.am ../sun/gnome-pilot/gpilotd/Makefile.am
       
  2451 --- gnome-pilot-2.0.13/gpilotd/Makefile.am	2005-04-09 12:14:27.000000000 +0800
       
  2452 +++ ../sun/gnome-pilot/gpilotd/Makefile.am	2005-08-12 18:10:15.000000000 +0800
       
  2453 @@ -68,7 +68,9 @@
       
  2454  	$(NULL)
       
  2455  
       
  2456  %.c %.h: %.gob
       
  2457 -	$(GOB) --always-private-header -w $<
       
  2458 +	if test $(GOB) != "no" ; then \
       
  2459 +	$(GOB) --always-private-header -w $< ;fi
       
  2460 +
       
  2461  
       
  2462  #$(GOB_BUILT_SRCS): $(gobfiles)
       
  2463  #	@for GF in $(gobfiles); do (echo -n "$(GOB) -w $$GF..." && $(GOB) -w $$GF && echo " ok"); done;
       
  2464 diff -u -r gnome-pilot-2.0.13/gpilotd/Makefile.in ../sun/gnome-pilot/gpilotd/Makefile.in
       
  2465 --- gnome-pilot-2.0.13/gpilotd/Makefile.in	2005-04-09 12:15:03.000000000 +0800
       
  2466 +++ ../sun/gnome-pilot/gpilotd/Makefile.in	2005-08-12 18:10:15.000000000 +0800
       
  2467 @@ -963,8 +963,8 @@
       
  2468  	&& rm -f xgen-gmc
       
  2469  
       
  2470  %.c %.h: %.gob
       
  2471 -	$(GOB) --always-private-header -w $<
       
  2472 -
       
  2473 +	if test $(GOB) != "no" ; then \
       
  2474 +	$(GOB) --always-private-header -w $< ;fi
       
  2475  $(CORBA_SRCLIST): $(idl_files)
       
  2476  	$(ORBIT_IDL) $(idl_files)
       
  2477  $(server_in_files:.server.in.in=.server.in): $(server_in_files)
       
  2478 diff -u -r gnome-pilot-2.0.13/gpilotd/gnome-pilot-conduit-backup.c ../sun/gnome-pilot/gpilotd/gnome-pilot-conduit-backup.c
       
  2479 --- gnome-pilot-2.0.13/gpilotd/gnome-pilot-conduit-backup.c	2005-04-05 05:26:20.000000000 +0800
       
  2480 +++ ../sun/gnome-pilot/gpilotd/gnome-pilot-conduit-backup.c	2005-08-12 17:56:07.000000000 +0800
       
  2481 @@ -1,4 +1,4 @@
       
  2482 -/* Generated by GOB (v2.0.11) on Mon Apr  4 17:26:20 2005
       
  2483 +/* Generated by GOB (v2.0.11) on Mon Aug  1 14:55:46 2005
       
  2484     (do not edit directly) */
       
  2485  
       
  2486  /* End world hunger, donate to the World Food Programme, http://www.wfp.org */
       
  2487 diff -u -r gnome-pilot-2.0.13/gpilotd/gnome-pilot-conduit-file.c ../sun/gnome-pilot/gpilotd/gnome-pilot-conduit-file.c
       
  2488 --- gnome-pilot-2.0.13/gpilotd/gnome-pilot-conduit-file.c	2005-04-05 05:26:20.000000000 +0800
       
  2489 +++ ../sun/gnome-pilot/gpilotd/gnome-pilot-conduit-file.c	2005-08-12 17:56:08.000000000 +0800
       
  2490 @@ -1,4 +1,4 @@
       
  2491 -/* Generated by GOB (v2.0.11) on Mon Apr  4 17:26:20 2005
       
  2492 +/* Generated by GOB (v2.0.11) on Mon Aug  1 14:55:46 2005
       
  2493     (do not edit directly) */
       
  2494  
       
  2495  /* End world hunger, donate to the World Food Programme, http://www.wfp.org */
       
  2496 diff -u -r gnome-pilot-2.0.13/gpilotd/gnome-pilot-conduit-standard-abs.c ../sun/gnome-pilot/gpilotd/gnome-pilot-conduit-standard-abs.c
       
  2497 --- gnome-pilot-2.0.13/gpilotd/gnome-pilot-conduit-standard-abs.c	2004-08-27 04:21:13.000000000 +0800
       
  2498 +++ ../sun/gnome-pilot/gpilotd/gnome-pilot-conduit-standard-abs.c	2005-08-12 17:56:07.000000000 +0800
       
  2499 @@ -438,7 +438,6 @@
       
  2500  					      index,
       
  2501  					      remote.record,
       
  2502  					      &remote.ID,
       
  2503 -					      &remote.length,
       
  2504  					      &remote.attr,
       
  2505  					      &remote.category) >= 0) {
       
  2506  			standard_abs_compute_attr_field(&remote);
       
  2507 @@ -1085,7 +1084,6 @@
       
  2508  				   local->ID,
       
  2509  				   remote->record,
       
  2510  				   &index,
       
  2511 -				   &remote->length,
       
  2512  				   &remote->attr,
       
  2513  				   &remote->category);
       
  2514  		remote->ID = local->ID;
       
  2515 @@ -1442,7 +1440,6 @@
       
  2516  				     index,
       
  2517  				     remote.record,
       
  2518  				     &remote.ID,
       
  2519 -				     &remote.length,
       
  2520  				     &remote.attr,
       
  2521  				     &remote.category) >= 0) {
       
  2522  		standard_abs_compute_attr_field(&remote);
       
  2523 @@ -1481,7 +1478,6 @@
       
  2524  				     index,
       
  2525  				     remote.record,
       
  2526  				     &remote.ID,
       
  2527 -				     &remote.length,
       
  2528  				     &remote.attr,
       
  2529  				     &remote.category) >= 0) {
       
  2530  		standard_abs_compute_attr_field(&remote);
       
  2531 @@ -1521,7 +1517,6 @@
       
  2532  					remote.record,
       
  2533  					&remote.ID,
       
  2534  					&index,
       
  2535 -					&remote.length,
       
  2536  					&remote.attr,
       
  2537  					&remote.category) >= 0) {
       
  2538  		standard_abs_compute_attr_field(&remote);
       
  2539 diff -u -r gnome-pilot-2.0.13/gpilotd/gnome-pilot-conduit-standard.c ../sun/gnome-pilot/gpilotd/gnome-pilot-conduit-standard.c
       
  2540 --- gnome-pilot-2.0.13/gpilotd/gnome-pilot-conduit-standard.c	2005-04-05 05:26:20.000000000 +0800
       
  2541 +++ ../sun/gnome-pilot/gpilotd/gnome-pilot-conduit-standard.c	2005-08-12 17:56:08.000000000 +0800
       
  2542 @@ -1,4 +1,4 @@
       
  2543 -/* Generated by GOB (v2.0.11) on Mon Apr  4 17:26:20 2005
       
  2544 +/* Generated by GOB (v2.0.11) on Mon Aug  1 14:55:46 2005
       
  2545     (do not edit directly) */
       
  2546  
       
  2547  /* End world hunger, donate to the World Food Programme, http://www.wfp.org */
       
  2548 diff -u -r gnome-pilot-2.0.13/gpilotd/gnome-pilot-structures.c ../sun/gnome-pilot/gpilotd/gnome-pilot-structures.c
       
  2549 --- gnome-pilot-2.0.13/gpilotd/gnome-pilot-structures.c	2003-04-24 00:55:16.000000000 +0800
       
  2550 +++ ../sun/gnome-pilot/gpilotd/gnome-pilot-structures.c	2005-11-15 19:02:02.000000000 +0800
       
  2551 @@ -322,6 +322,7 @@
       
  2552  	}
       
  2553  	g_free (device->name);
       
  2554  	g_free (device->port);
       
  2555 +	g_free (device->old_port);
       
  2556  	gpilot_hdb_uucp_unlock (device);
       
  2557  }
       
  2558  
       
  2559 @@ -885,6 +886,7 @@
       
  2560  	g_free (pilot->passwd);
       
  2561  	g_free (pilot->pilot_username);
       
  2562  	g_free (pilot->sync_options.basedir);
       
  2563 +	g_free (pilot->sync_options.old_basedir);
       
  2564  	g_list_foreach (pilot->trusted_users, (GFunc) g_free, NULL);
       
  2565  	g_list_free (pilot->trusted_users);
       
  2566  	g_free (pilot);
       
  2567 diff -u -r gnome-pilot-2.0.13/gpilotd/gnome-pilot-structures.h ../sun/gnome-pilot/gpilotd/gnome-pilot-structures.h
       
  2568 --- gnome-pilot-2.0.13/gpilotd/gnome-pilot-structures.h	2003-04-28 22:23:58.000000000 +0800
       
  2569 +++ ../sun/gnome-pilot/gpilotd/gnome-pilot-structures.h	2005-11-15 19:02:02.000000000 +0800
       
  2570 @@ -43,6 +43,7 @@
       
  2571  struct _GPilotSyncOpt {
       
  2572  	GnomePilotConduitSyncType default_sync_action; /* Unused, but exists for bin compat */
       
  2573  	gchar *basedir;
       
  2574 +	gchar *old_basedir;  /* Restore the original value if users set an invalid base directory */
       
  2575  };
       
  2576  typedef struct _GPilotSyncOpt GPilotSyncOpt;
       
  2577  
       
  2578 @@ -86,6 +87,7 @@
       
  2579  struct _GPilotDevice {
       
  2580  	gchar *name; /* symbolic name */
       
  2581  	gchar *port; /* device */
       
  2582 +	gchar *old_port; /* restore old value when an invalid port is set */
       
  2583  	guint speed; /* speed (for serial) */
       
  2584  
       
  2585  	/* These are used for network (man c++ is soo much cooler) */
       
  2586 @@ -104,6 +106,7 @@
       
  2587  
       
  2588  	gint timeout;
       
  2589  	GPilotDeviceType type;
       
  2590 +	GPilotDeviceType old_type; /* restore old value when an invalid type is set */
       
  2591  	gboolean device_exists : 1;  /* whether the usb cradle is active */
       
  2592  };
       
  2593  typedef struct _GPilotDevice GPilotDevice;
       
  2594 diff -u -r gnome-pilot-2.0.13/gpilotd/gpilotd.c ../sun/gnome-pilot/gpilotd/gpilotd.c
       
  2595 --- gnome-pilot-2.0.13/gpilotd/gpilotd.c	2004-09-02 23:43:47.000000000 +0800
       
  2596 +++ ../sun/gnome-pilot/gpilotd/gpilotd.c	2005-08-12 17:56:07.000000000 +0800
       
  2597 @@ -168,7 +168,8 @@
       
  2598  
       
  2599  	strcpy (addr.pi_device,device->port);
       
  2600  
       
  2601 -	ret = pi_bind (listen_sd, (struct sockaddr*)&addr, sizeof (addr));
       
  2602 +	ret = pi_bind (listen_sd, addr.pi_device);
       
  2603 +
       
  2604  	if (ret == -1) {
       
  2605  		g_warning (_("Unable to bind to pilot"));
       
  2606  		if (error)
       
  2607 @@ -198,7 +199,11 @@
       
  2608  
       
  2609  	if (error)
       
  2610  		*error = 0;
       
  2611 -	pi_close(listen_sd);
       
  2612 +
       
  2613 +	if(listen_sd == sd)
       
  2614 +		g_message("gpilotd_connect listen_socket_id equals accept_socket_id");
       
  2615 +	else
       
  2616 +		pi_close(listen_sd);
       
  2617  	
       
  2618  	return sd;
       
  2619  }
       
  2620 @@ -789,7 +794,7 @@
       
  2621  #endif /* WITH_NETWORK */
       
  2622  
       
  2623  #ifdef WITH_USB_VISOR
       
  2624 -#ifdef linux
       
  2625 +//#ifdef linux
       
  2626  static GPtrArray *vendor_product_ids = NULL;
       
  2627  static GArray *product_net = NULL;
       
  2628  
       
  2629 @@ -880,7 +885,8 @@
       
  2630  		return FALSE;
       
  2631  
       
  2632  	load_devices_xml ();
       
  2633 -	
       
  2634 +
       
  2635 +#ifdef linux	
       
  2636  	/* Check /proc/bus/usb/devices for a usb device */
       
  2637  	f = fopen ("/proc/bus/usb/devices", "r");
       
  2638  	if (!f)
       
  2639 @@ -903,11 +909,19 @@
       
  2640  	}
       
  2641  	
       
  2642  	fclose (f);
       
  2643 -	
       
  2644 +
       
  2645 +#else /* could be Solaris */
       
  2646 +	visor_exists = TRUE;
       
  2647 +#endif /* linux */	
       
  2648 +
       
  2649  	if (visor_exists) {
       
  2650  		l = context->devices;
       
  2651  		while (l) {
       
  2652 +			struct stat dummy;
       
  2653  			device = l->data;
       
  2654 +
       
  2655 +			/*todo: make sure usb device exist*/
       
  2656 +
       
  2657  			if (device->type == PILOT_DEVICE_USB_VISOR) {
       
  2658  				if (!visor_net)
       
  2659  					device->type = PILOT_DEVICE_SERIAL;
       
  2660 @@ -928,7 +942,6 @@
       
  2661  }
       
  2662  
       
  2663  #endif
       
  2664 -#endif
       
  2665  
       
  2666  void monitor_channel (GPilotDevice *dev,GPilotContext *context) 
       
  2667  {
       
  2668 @@ -959,16 +972,16 @@
       
  2669  #endif /* WITH_NETWORK */
       
  2670  	} if (dev->type == PILOT_DEVICE_USB_VISOR) {
       
  2671  #ifdef WITH_USB_VISOR
       
  2672 -#ifdef linux
       
  2673 +//#ifdef linux
       
  2674  		/* We want to watch the /proc/bus/usb/devices file once 
       
  2675  		 * per context, and then check all devices each time it is
       
  2676  		 * woken up. */
       
  2677  		if (visor_timeout_id == -1) {
       
  2678  			visor_timeout_id = g_timeout_add (2000, visor_devices_timeout, context);
       
  2679  		}
       
  2680 -#else /* linux*/
       
  2681 -		g_assert_not_reached ();
       
  2682 -#endif /* linux */
       
  2683 +//#else /* linux*/
       
  2684 +//		g_assert_not_reached ();
       
  2685 +//#endif /* linux */
       
  2686  #endif /* WITH_USB_VISOR */
       
  2687  		dev->device_exists = FALSE;
       
  2688  	}
       
  2689 diff -u -r gnome-pilot-2.0.13/gpilotd/manager.c ../sun/gnome-pilot/gpilotd/manager.c
       
  2690 --- gnome-pilot-2.0.13/gpilotd/manager.c	2004-09-03 02:42:29.000000000 +0800
       
  2691 +++ ../sun/gnome-pilot/gpilotd/manager.c	2005-08-12 17:56:07.000000000 +0800
       
  2692 @@ -292,6 +292,7 @@
       
  2693  	GnomePilotConduit *conduit = NULL;
       
  2694  	GSList *db_list = NULL;
       
  2695  	GPilotPilot *pilot_info;
       
  2696 +	pi_buffer_t * buffer;
       
  2697  	int error = 0;
       
  2698  	int index = 0;
       
  2699         
       
  2700 @@ -299,22 +300,27 @@
       
  2701  
       
  2702  	orbed_notify_daemon_message (pilot_info->name, NULL, _("Collecting synchronization info..."));
       
  2703  
       
  2704 +	buffer = pi_buffer_new(sizeof(struct DBInfo));
       
  2705 +
       
  2706  	while (1) {
       
  2707  		GnomePilotDBInfo *dbinfo;
       
  2708  		
       
  2709  		dbinfo = g_new0 (GnomePilotDBInfo, 1);
       
  2710  		/* load next dbinfo block */
       
  2711 -		if (dlp_ReadDBList (pfd, 0, dlpDBListRAM, index, PI_DBINFO (dbinfo)) < 0) {
       
  2712 -			/* is <0, there are no more databases, break
       
  2713 +		if (dlp_ReadDBList (pfd, 0, dlpDBListRAM, index, buffer) < 0) {
       
  2714 +			   /* is <0, there are no more databases, break
       
  2715                             out so we can save the list */
       
  2716  			break;
       
  2717  		}
       
  2718 +		memcpy(& (dbinfo->pisock_dbinfo), buffer->data, sizeof(struct DBInfo));
       
  2719  
       
  2720  		index = PI_DBINFO (dbinfo)->index + 1;
       
  2721  
       
  2722  		dbs = g_list_append (dbs, dbinfo);
       
  2723  	}
       
  2724  
       
  2725 +	pi_buffer_free(buffer);
       
  2726 +
       
  2727  	index = 1;
       
  2728  	for (iterator = dbs; iterator; iterator = g_list_next (iterator)) {
       
  2729  		GnomePilotDBInfo *dbinfo = GNOME_PILOT_DBINFO (iterator->data);
       
  2730 diff -u -r gnome-pilot-2.0.13/intltool-update.in ../sun/gnome-pilot/intltool-update.in
       
  2731 --- gnome-pilot-2.0.13/intltool-update.in	2005-03-04 23:10:21.000000000 +0800
       
  2732 +++ ../sun/gnome-pilot/intltool-update.in	2005-10-28 11:23:09.000000000 +0800
       
  2733 @@ -71,6 +71,7 @@
       
  2734  "sheet(?:\\.in)+|".	# ?
       
  2735  "schemas(?:\\.in)+|".	# GConf specific
       
  2736  "pong(?:\\.in)+|".	# DEPRECATED: PONG is not used [by GNOME] any longer.
       
  2737 +"conduit(?:\\.in)+|".	# conduits specific
       
  2738  "kbd(?:\\.in)+";	# GOK specific. 
       
  2739  
       
  2740  my $ini_support =
       
  2741 diff -u -r gnome-pilot-2.0.13/libgpilotdCM/Makefile.am ../sun/gnome-pilot/libgpilotdCM/Makefile.am
       
  2742 --- gnome-pilot-2.0.13/libgpilotdCM/Makefile.am	2002-11-23 00:04:01.000000000 +0800
       
  2743 +++ ../sun/gnome-pilot/libgpilotdCM/Makefile.am	2005-08-12 18:10:16.000000000 +0800
       
  2744 @@ -26,7 +26,8 @@
       
  2745  	$(srcdir)/gnome-pilot-conduit-config.gob 
       
  2746  
       
  2747  %.c %.h: %.gob
       
  2748 -	$(GOB) --always-private-header -w $<
       
  2749 +	if test $(GOB) != "no" ; then \
       
  2750 +	$(GOB) --always-private-header -w $< ;fi
       
  2751  
       
  2752  gpilotdcmlibsdir=$(libdir)/
       
  2753  
       
  2754 diff -u -r gnome-pilot-2.0.13/libgpilotdCM/Makefile.in ../sun/gnome-pilot/libgpilotdCM/Makefile.in
       
  2755 --- gnome-pilot-2.0.13/libgpilotdCM/Makefile.in	2005-04-09 12:15:05.000000000 +0800
       
  2756 +++ ../sun/gnome-pilot/libgpilotdCM/Makefile.in	2005-08-12 18:10:16.000000000 +0800
       
  2757 @@ -589,7 +589,9 @@
       
  2758  
       
  2759  
       
  2760  %.c %.h: %.gob
       
  2761 -	$(GOB) --always-private-header -w $<
       
  2762 +	if test $(GOB) != "no" ; then \
       
  2763 +	$(GOB) --always-private-header -w $< ;fi
       
  2764 +
       
  2765  # Tell versions [3.59,3.63) of GNU make to not export all variables.
       
  2766  # Otherwise a system limit (for SysV at least) may be exceeded.
       
  2767  .NOEXPORT:
       
  2768 diff -u -r gnome-pilot-2.0.13/po/POTFILES.in ../sun/gnome-pilot/po/POTFILES.in
       
  2769 --- gnome-pilot-2.0.13/po/POTFILES.in	2005-04-09 12:13:12.000000000 +0800
       
  2770 +++ ../sun/gnome-pilot/po/POTFILES.in	2005-10-28 11:23:10.000000000 +0800
       
  2771 @@ -43,3 +43,7 @@
       
  2772  libgpilotdCM/gnome-pilot-conduit-management.gob
       
  2773  utils/gpilotd-client.c
       
  2774  utils/gpilotdcm-client.c
       
  2775 +libgpilotdCM/gnome-pilot-conduit-management.c
       
  2776 +conduits/backup/backup.conduit.in
       
  2777 +conduits/file/file.conduit.in
       
  2778 +conduits/test/test.conduit.in
       
  2779 diff -u -r gnome-pilot-2.0.13/utils/make-password.c ../sun/gnome-pilot/utils/make-password.c
       
  2780 --- gnome-pilot-2.0.13/utils/make-password.c	2002-09-17 01:08:11.000000000 +0800
       
  2781 +++ ../sun/gnome-pilot/utils/make-password.c	2005-08-12 17:56:06.000000000 +0800
       
  2782 @@ -45,7 +45,8 @@
       
  2783    addr.pi_family = PI_AF_PILOT;
       
  2784    strcpy(addr.pi_device,argv[1]);
       
  2785    
       
  2786 -  ret = pi_bind(sd, (struct sockaddr*)&addr, sizeof(addr));
       
  2787 +  ret = pi_bind(sd, addr.pi_device);
       
  2788 +
       
  2789    if(ret == -1) {
       
  2790      perror("pi_bind");
       
  2791      exit(1);