<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array"/>
  <modified type="array">
    <modified>
      <diff>@@ -1,3 +1,4 @@
+import gutil
 import misc
 import util
 
@@ -17,6 +18,7 @@ class CharMapDlg(wxDialog):
         self.insertButton = wxButton(self, -1, &quot; Insert character &quot;)
         hsizer.Add(self.insertButton, 0, wxALL, 10)
         EVT_BUTTON(self, self.insertButton.GetId(), self.OnInsert)
+        gutil.btnDblClick(self.insertButton, self.OnInsert)
 
         util.finishWindow(self, hsizer, 0)
 </diff>
      <filename>charmapdlg.py</filename>
    </modified>
    <modified>
      <diff>@@ -1,4 +1,5 @@
 import config
+import gutil
 import misc
 import util
 
@@ -95,6 +96,9 @@ class FindDlg(wxDialog):
         EVT_BUTTON(self, replaceAll.GetId(), self.OnReplaceAll)
         EVT_BUTTON(self, self.moreButton.GetId(), self.OnMore)
 
+        gutil.btnDblClick(find, self.OnFind)
+        gutil.btnDblClick(replace, self.OnReplace)
+
         EVT_TEXT(self, self.findEntry.GetId(), self.OnText)
 
         EVT_TEXT_ENTER(self, self.findEntry.GetId(), self.OnFind)</diff>
      <filename>finddlg.py</filename>
    </modified>
    <modified>
      <diff>@@ -54,6 +54,16 @@ def createStockButton(parent, label):
         return wxButton(parent, ids[label])
     else:
         return wxButton(parent, -1, label)
+
+# wxWidgets has a bug in 2.6 on wxGTK2 where double clicking on a button
+# does not send two EVT_BUTTON events, only one. since the wxWidgets
+# maintainers do not seem interested in fixing this
+# (http://sourceforge.net/tracker/index.php?func=detail&amp;aid=1449838&amp;group_id=9863&amp;atid=109863),
+# we work around it ourselves by binding the left mouse button double
+# click event to the same callback function on the buggy platforms.
+def btnDblClick(btn, func):
+    if misc.wx26 and misc.isUnix:
+        EVT_LEFT_DCLICK(btn, func)
     
 # show PDF document 'pdfData' in an external viewer program. writes out a
 # temporary file, first deleting all old temporary files, then opens PDF</diff>
      <filename>gutil.py</filename>
    </modified>
    <modified>
      <diff>@@ -53,10 +53,12 @@ class HeadersDlg(wxDialog):
         self.addBtn = gutil.createStockButton(self, &quot;Add&quot;)
         hsizer.Add(self.addBtn)
         EVT_BUTTON(self, self.addBtn.GetId(), self.OnAddString)
+        gutil.btnDblClick(self.addBtn, self.OnAddString)
 
         self.delBtn = gutil.createStockButton(self, &quot;Delete&quot;)
         hsizer.Add(self.delBtn, 0, wxLEFT, 10)
         EVT_BUTTON(self, self.delBtn.GetId(), self.OnDeleteString)
+        gutil.btnDblClick(self.delBtn, self.OnDeleteString)
 
         vsizer.Add(hsizer, 0, wxTOP, 5)
 </diff>
      <filename>headersdlg.py</filename>
    </modified>
    <modified>
      <diff>@@ -33,18 +33,22 @@ class TitlesDlg(wxDialog):
         tmp = wxButton(self, -1, &quot;Add&quot;)
         hsizer.Add(tmp)
         EVT_BUTTON(self, tmp.GetId(), self.OnAddPage)
+        gutil.btnDblClick(tmp, self.OnAddPage)
 
         self.delPageBtn = wxButton(self, -1, &quot;Delete&quot;)
         hsizer.Add(self.delPageBtn, 0, wxLEFT, 10)
         EVT_BUTTON(self, self.delPageBtn.GetId(), self.OnDeletePage)
+        gutil.btnDblClick(self.delPageBtn, self.OnDeletePage)
 
         self.moveBtn = wxButton(self, -1, &quot;Move&quot;)
         hsizer.Add(self.moveBtn, 0, wxLEFT, 10)
         EVT_BUTTON(self, self.moveBtn.GetId(), self.OnMovePage)
+        gutil.btnDblClick(self.moveBtn, self.OnMovePage)
 
         self.nextBtn = wxButton(self, -1, &quot;Next&quot;)
         hsizer.Add(self.nextBtn, 0, wxLEFT, 10)
         EVT_BUTTON(self, self.nextBtn.GetId(), self.OnNextPage)
+        gutil.btnDblClick(self.nextBtn, self.OnNextPage)
 
         vsizer.Add(hsizer, 0, wxTOP, 5)
         
@@ -66,10 +70,12 @@ class TitlesDlg(wxDialog):
         self.addBtn = gutil.createStockButton(self, &quot;Add&quot;)
         hsizer2.Add(self.addBtn)
         EVT_BUTTON(self, self.addBtn.GetId(), self.OnAddString)
+        gutil.btnDblClick(self.addBtn, self.OnAddString)
 
         self.delBtn = gutil.createStockButton(self, &quot;Delete&quot;)
         hsizer2.Add(self.delBtn, 0, wxLEFT, 10)
         EVT_BUTTON(self, self.delBtn.GetId(), self.OnDeleteString)
+        gutil.btnDblClick(self.delBtn, self.OnDeleteString)
 
         vsizer2.Add(hsizer2, 0, wxTOP, 5)
 </diff>
      <filename>titlesdlg.py</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>3ce096ad47608828b273d2fcc41bcbcd334fafcb</id>
    </parent>
  </parents>
  <author>
    <name>Osku Salerma</name>
    <email>osku@iki.fi</email>
  </author>
  <url>http://github.com/oskusalerma/blyte/commit/c7ad032afe6d06904d8c49dea9ca940f4678737a</url>
  <id>c7ad032afe6d06904d8c49dea9ca940f4678737a</id>
  <committed-date>2006-04-09T01:27:34-07:00</committed-date>
  <authored-date>2006-04-09T01:27:34-07:00</authored-date>
  <message>Work around a wxWidgets bug on wxGTK2 where double clicks on buttons are
lost.</message>
  <tree>2f2a66ad9addcf37144322a9ce475eb5bbc1875d</tree>
  <committer>
    <name>Osku Salerma</name>
    <email>osku@iki.fi</email>
  </committer>
</commit>
