Kiln » TortoiseHg » TortoiseHg
Clone URL:  
Pushed to one repository · View In Graph Contained in 0.9, 0.9.1, and 0.9.1.1

history, synch: fix focus issues

The workaround by 'set_transient_for(None)' was introduced for
old PyGTK (< 2.12.0). Now we are shipping the installer with
PyGTK 2.12.1, so it should be applied for only old PyGTK.

Changeset ac6e061672e8

Parent 1ba65d039ac7

by Yuki KODAMA

Changes to 2 files · Browse files at ac6e061672e8 Showing diff from parent 1ba65d039ac7 Diff from another changeset...

 
1098
1099
1100
 
 
 
 
 
 
 
 
 
1101
1102
1103
 
1123
1124
1125
1126
1127
1128
1129
1130
 
1131
1132
1133
 
1170
1171
1172
1173
1174
1175
1176
 
1177
1178
1179
 
1280
1281
1282
1283
1284
1285
1286
1287
 
1288
1289
1290
 
1361
1362
1363
1364
1365
1366
1367
 
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
 
1378
1379
1380
 
1389
1390
1391
1392
1393
1394
1395
1396
 
1397
1398
1399
 
1409
1410
1411
1412
1413
1414
1415
 
1416
1417
1418
 
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
 
1132
1133
1134
 
1135
 
 
 
1136
1137
1138
1139
 
1176
1177
1178
 
 
 
 
1179
1180
1181
1182
 
1283
1284
1285
 
1286
 
 
 
1287
1288
1289
1290
 
1361
1362
1363
 
 
 
 
1364
1365
1366
1367
1368
1369
 
 
1370
 
 
1371
1372
1373
1374
 
1383
1384
1385
 
 
1386
 
 
1387
1388
1389
1390
 
1400
1401
1402
 
 
 
 
1403
1404
1405
1406
@@ -1098,6 +1098,15 @@
  self.changeview._buffer.set_text('')   self.changeview._filelist.clear()   + def show_dialog(self, dlg): + dlg.set_transient_for(self) + dlg.show_all() + dlg.present() + if gtk.pygtk_version < (2, 12, 0): + # Workaround for old PyGTK (< 2.12.0) issue. + # See background of this: f668034aeda3 + dlg.set_transient_for(None) +   def backout_rev(self, menuitem):   oldlen = len(self.repo)   hash = str(self.repo[self.currevid]) @@ -1123,11 +1132,8 @@
  dlg.display()     dlg = backout.BackoutDialog(hash) - dlg.set_transient_for(self)   dlg.connect('destroy', refresh) - dlg.show_all() - dlg.present() - dlg.set_transient_for(None) + self.show_dialog(dlg)     def revert(self, menuitem):   rev = self.currevid @@ -1170,10 +1176,7 @@
  revrange.sort()   opts = ['--rev', str(revrange[0]) + ':' + str(revrange[1])]   dlg = hgemail.EmailDialog(self.repo.root, opts) - dlg.set_transient_for(self) - dlg.show_all() - dlg.present() - dlg.set_transient_for(None) + self.show_dialog(dlg)     def export_revs(self, menuitem):   result = gtklib.NativeFolderSelectDialog(title=_('Save patches to'), @@ -1280,11 +1283,8 @@
  self.refresh_model()     dialog = tagadd.TagAddDialog(self.repo, rev=str(rev)) - dialog.set_transient_for(self)   dialog.connect('destroy', refresh) - dialog.show_all() - dialog.present() - dialog.set_transient_for(None) + self.show_dialog(dialog)     def show_status(self, menuitem):   rev = self.currevid @@ -1361,20 +1361,14 @@
  def email_patch(self, menuitem):   rev = self.currevid   dlg = hgemail.EmailDialog(self.repo.root, ['--rev', str(rev)]) - dlg.set_transient_for(self) - dlg.show_all() - dlg.present() - dlg.set_transient_for(None) + self.show_dialog(dlg)     def checkout(self, menuitem):   rev = self.currevid   parents = [x.node() for x in self.repo.parents()]   dialog = update.UpdateDialog(rev) - dialog.set_transient_for(self) - dialog.show_all()   dialog.set_notify_func(self.checkout_completed, parents) - dialog.present() - dialog.set_transient_for(None) + self.show_dialog(dialog)     def checkout_completed(self, oldparents):   self.repo.invalidate() @@ -1389,11 +1383,8 @@
  if rev == self.repo.parents()[0].rev():   rev = self.revrange[1]   dialog = merge.MergeDialog(rev) - dialog.set_transient_for(self) - dialog.show_all()   dialog.set_notify_func(self.merge_completed, parents, len(self.repo)) - dialog.present() - dialog.set_transient_for(None) + self.show_dialog(dlg)     def merge_completed(self, args):   self.repo.invalidate() @@ -1409,10 +1400,7 @@
  rev = self.currevid   parents = [x.node() for x in self.repo.parents()]   dialog = archive.ArchiveDialog(rev) - dialog.set_transient_for(self) - dialog.show_all() - dialog.present() - dialog.set_transient_for(None) + self.show_dialog(dlg)     def transplant_rev(self, menuitem):   """Transplant selection on top of current revision."""
 
301
302
303
 
 
 
 
 
 
 
 
 
 
304
305
306
 
365
366
367
368
369
370
371
 
372
373
374
 
517
518
519
520
521
522
523
 
524
525
526
 
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
 
375
376
377
 
 
 
 
378
379
380
381
 
524
525
526
 
 
 
 
527
528
529
530
@@ -301,6 +301,16 @@
  in enumerate(self.ppulldata) if name == 'none'][0]   self.ppullcombo.set_active(pos)   + def show_dialog(self, dlg): + # copy from history.py + dlg.set_transient_for(self) + dlg.show_all() + dlg.present() + if gtk.pygtk_version < (2, 12, 0): + # Workaround for old PyGTK (< 2.12.0) issue. + # See background of this: f668034aeda3 + dlg.set_transient_for(None) +   def fill_path_combo(self):   self.pathlist.clear()   for alias, path in self.paths: @@ -365,10 +375,7 @@
  wc = self.repo[None]   dialog = update.UpdateDialog(wc.branch())   dialog.set_notify_func(update_notify, None) - dialog.set_transient_for(self) - dialog.show_all() - dialog.present() - dialog.set_transient_for(None) + self.show_dialog(dialog)     def get_paths(self, sort="value"):   """ retrieve symbolic paths """ @@ -517,10 +524,7 @@
  if rev:   opts.extend(rev)   dlg = hgemail.EmailDialog(self.root, opts) - dlg.set_transient_for(self) - dlg.show_all() - dlg.present() - dlg.set_transient_for(None) + self.show_dialog(dlg)     def shelve_clicked(self, toolbutton, data=None):   dlg = thgshelve.run(self.ui)