Bug 169417

Summary: plot is not redrawn to erase menu
Product: [Applications] kst Reporter: Andrew Walker <arwalker>
Component: generalAssignee: kst
Status: RESOLVED FIXED    
Severity: normal    
Priority: NOR    
Version: 1.4.0   
Target Milestone: ---   
Platform: Compiled Sources   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:

Description Andrew Walker 2008-08-19 01:59:40 UTC
Version:           1.4.0 (using KDE 3.5.9)
OS:                Linux
Installed from:    Compiled From Sources

PROBLEM:
When the user selects a top level menu and then clicks on a plot to dismiss the menu the menu is not redrawn where it overlaid the plot

STEPS TO REPRODUCE:
Start Kst
Create a plot that fills the default window
Select a menu item from the top level menu bar, by clicking on a menu item and then immediately releasing
The drop down menu must cover at least some of the plot for reproducibility
Move the cursor to inside of the plot (and outside of the menu) and left click and release

RESULTS:
Where the drop down menu intersects the plot, the plot is not redrawn

EXPECTED RESULTS:
The plot should be redrawn to cover the drop down menu
Comment 1 Andrew Walker 2008-08-19 02:03:24 UTC
This is a problem because under these circumstances _zoomPaused is et to true in Kst2DPlot::mousePressEvent(...). This is a problem as when the plot is asked to redraw (which it is as a result of the menu closing up) the request is ignored when _zoomPaused is true.

Note: _zoomPaused is reset to false, Kst2DPlot::mouseReleaseEvent(...), when the mouse button is subsequently released, but at that point the paint request has already been ignored.
Comment 2 Andrew Walker 2008-08-19 18:43:31 UTC
Have to punt the setting of _zoomPaused so we do not deliberately ignore a paint request coming from the closing up of a menu.
Modified kst2dplot.cpp, kst2dplot.h