Correct issue with sheets/panels appearing beneath other modal panels.

git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@28224 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
Gregory John Casamento 2009-04-16 19:02:30 +00:00
parent e1afb724d2
commit 28b6cc14d0
2 changed files with 18 additions and 1 deletions

View file

@ -1,3 +1,9 @@
2009-04-16 15:02-EDT Gregory John Casamento <greg.casamento@gmail.com>
* Source/NSAlert.m: Order front regardless to prevent reported
cases of problems when sheets/panels bring up additional
sheets/panels.
2009-04-14 21:24-EDT Gregory John Casamento <greg.casamento@gmail.com>
* Source/GSHorizontalTypesetter.m: Use thread dictionary to hold

View file

@ -1108,6 +1108,8 @@ NSRunAlertPanel(
panel = getSomePanel(&standardAlertPanel, defaultTitle, title, message,
defaultButton, alternateButton, otherButton);
[panel orderFrontRegardless];
result = [panel runModal];
NSReleaseAlertPanel(panel);
return result;
@ -1155,6 +1157,8 @@ NSRunLocalizedAlertPanel(
panel = getSomePanel(&standardAlertPanel, @"Alert", title, message,
defaultButton, alternateButton, otherButton);
[panel orderFrontRegardless];
result = [panel runModal];
NSReleaseAlertPanel(panel);
return result;
@ -1201,6 +1205,8 @@ NSRunCriticalAlertPanel(
panel = getSomePanel(&criticalAlertPanel, @"Critical", title, message,
defaultButton, alternateButton, otherButton);
[panel orderFrontRegardless];
result = [panel runModal];
NSReleaseAlertPanel(panel);
return result;
@ -1248,6 +1254,8 @@ NSRunInformationalAlertPanel(
@"Information",
title, message,
defaultButton, alternateButton, otherButton);
[panel orderFrontRegardless];
result = [panel runModal];
NSReleaseAlertPanel(panel);
return result;
@ -1294,7 +1302,8 @@ void NSBeginAlertSheet(NSString *title,
panel = getSomePanel(&standardAlertPanel, defaultTitle, title, message,
defaultButton, alternateButton, otherButton);
[panel orderFrontRegardless];
// FIXME: We should also change the button action to call endSheet:
[NSApp beginSheet: panel
modalForWindow: docWindow
@ -1334,6 +1343,7 @@ void NSBeginCriticalAlertSheet(NSString *title,
panel = getSomePanel(&criticalAlertPanel, @"Critical", title, message,
defaultButton, alternateButton, otherButton);
[panel orderFrontRegardless];
// FIXME: We should also change the button action to call endSheet:
[NSApp beginSheet: panel
@ -1376,6 +1386,7 @@ void NSBeginInformationalAlertSheet(NSString *title,
@"Information",
title, message,
defaultButton, alternateButton, otherButton);
[panel orderFrontRegardless];
// FIXME: We should also change the button action to call endSheet:
[NSApp beginSheet: panel