mirror of
https://github.com/gnustep/libs-gui.git
synced 2025-06-02 04:31:00 +00:00
fix problem with actions being called twice on Windows with the WinUXTheme
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@31572 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
parent
1c5e9e4dd9
commit
fea19d5fbf
3 changed files with 17 additions and 0 deletions
|
@ -1,3 +1,12 @@
|
||||||
|
2010-10-29 Doug Simons <doug.simons@testplant.com>
|
||||||
|
|
||||||
|
* Source/GSThemeMenu.m
|
||||||
|
* Source/NSPopUpButtonCell.m
|
||||||
|
Added theme method to identify themes that handle event processing
|
||||||
|
for PopUp (and PullDown) menus. Use that to prevent duplicate event
|
||||||
|
handling in NSPopUpButtonCell. This fixes a problem with actions
|
||||||
|
getting sent twice on Windows with the WinUXTheme.
|
||||||
|
|
||||||
2010-10-25 Doug Simons <doug.simons@testplant.com>
|
2010-10-25 Doug Simons <doug.simons@testplant.com>
|
||||||
|
|
||||||
* Source/GSToolbarCustomizationPalette.m:
|
* Source/GSToolbarCustomizationPalette.m:
|
||||||
|
|
|
@ -130,5 +130,11 @@
|
||||||
{
|
{
|
||||||
// default implementation of this method does nothing.
|
// default implementation of this method does nothing.
|
||||||
}
|
}
|
||||||
|
|
||||||
|
- (BOOL) doesProcessEventsForPopUpMenu
|
||||||
|
{
|
||||||
|
return NO; // themes that handle events in a popUpMenu should return YES
|
||||||
|
}
|
||||||
|
|
||||||
@end
|
@end
|
||||||
|
|
||||||
|
|
|
@ -993,6 +993,8 @@ static NSImage *_pbc_image[5];
|
||||||
// Attach the popUp
|
// Attach the popUp
|
||||||
[self attachPopUpWithFrame: cellFrame
|
[self attachPopUpWithFrame: cellFrame
|
||||||
inView: controlView];
|
inView: controlView];
|
||||||
|
if ([[GSTheme theme] doesProcessEventsForPopUpMenu])
|
||||||
|
return YES; // the theme handles the events, so we're done
|
||||||
|
|
||||||
p = [[controlView window] convertBaseToScreen: [theEvent locationInWindow]];
|
p = [[controlView window] convertBaseToScreen: [theEvent locationInWindow]];
|
||||||
p = [menuWindow convertScreenToBase: p];
|
p = [menuWindow convertScreenToBase: p];
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue