Ignore:
Timestamp:
01/08/13 10:56:47 (16 months ago)
Author:
Ales Erjavec <ales.erjavec@…>
Branch:
default
Message:

Fixed a segfault errors with the quick help view updates.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • Orange/OrangeCanvas/application/canvasmain.py

    r11250 r11251  
    77import logging 
    88import operator 
     9from functools import partial 
    910 
    1011import pkg_resources 
     
    14001401        if event.type() == QEvent.StatusTip and \ 
    14011402                isinstance(event, QuickHelpTipEvent): 
     1403            # Using singleShot to update the text browser. 
     1404            # If updating directly the application experiences strange random 
     1405            # segfaults (in ~StatusTipEvent in QTextLayout or event just normal 
     1406            # event loop), but only when the contents are larger then the 
     1407            # QTextBrowser's viewport. 
    14021408            if event.priority() == QuickHelpTipEvent.Normal: 
    1403                 self.dock_help.showHelp(event.html()) 
     1409                QTimer.singleShot(0, partial(self.dock_help.showHelp, 
     1410                                             event.html())) 
    14041411            elif event.priority() == QuickHelpTipEvent.Temporary: 
    1405                 self.dock_help.showHelp(event.html(), event.timeout()) 
     1412                QTimer.singleShot(0, partial(self.dock_help.showHelp, 
     1413                                             event.html(), event.timout())) 
    14061414            elif event.priority() == QuickHelpTipEvent.Permanent: 
    1407                 self.dock_help.showPermanentHelp(event.html()) 
     1415                QTimer.singleShot(0, partial(self.dock_help.showPermanentHelp, 
     1416                                             event.html())) 
     1417 
    14081418            return True 
    14091419 
Note: See TracChangeset for help on using the changeset viewer.