Closed GoogleCodeExporter closed 9 years ago
Sendorian, thanks for looking in to this. I noticed something similar on OSX
but I haven't taken too much
time to review it yet. Tell me, is this reliably reproducible? Do you think
it's possible two copies of the dialog
are appearing?
Original comment by konigsb...@gmail.com
on 16 May 2010 at 12:25
Yes, I believe this is a near duplicate of issue 3:
http://code.google.com/a/eclipselabs.org/p/workspacemechanic/issues/detail?id=3
Original comment by konigsb...@gmail.com
on 17 May 2010 at 3:17
OK more research. This is interesting. It looks like on OSX, clicking inside
the dialog that displays failed
tasks, actually gets propagated to the trim widget, resulting in *gasp* another
dialog box! What a strange
stack trace:
Daemon Thread [Thread-0] (Suspended (breakpoint at line 210 in
MechanicService))
MechanicService.runRepairManager(RepairDecisionProvider) line: 210
MechanicStatusTrimWidget$InvokeRepairManagerAction.invokeRepairManager() line: 363
MechanicStatusTrimWidget$InvokeRepairManagerAction.run() line: 353
MechanicStatusTrimWidget$2.mouseUp(MouseEvent) line: 193
TypedListener.handleEvent(Event) line: 207
EventTable.sendEvent(Event) line: 84
Display.sendEvent(EventTable, Event) line: 3543
Label(Widget).sendEvent(Event) line: 1250
Label(Widget).sendEvent(int, Event, boolean) line: 1273
Label(Widget).sendEvent(int, Event) line: 1258
Label(Control).sendMouseEvent(NSEvent, int, boolean) line: 2918
Display.applicationSendTrackingEvent(NSEvent, Control) line: 4210
Display.applicationNextEventMatchingMask(int, int, int, int, int, int) line: 4191
Display.applicationProc(int, int, int, int, int, int) line: 4386
OS.objc_msgSend(int, int, int, int, int, boolean) line: not available [native method]
NSApplication.nextEventMatchingMask(int, NSDate, NSString, boolean) line: 75
Display.readAndDispatch() line: 3094
MechanicDialog(Window).runEventLoop(Shell) line: 825
MechanicDialog(Window).open() line: 801
UserChoiceDecisionProvider.initialize(List<Task>) line: 44
RepairManager.run() line: 60
MechanicService.runRepairManager(RepairDecisionProvider) line: 213
MechanicStatusTrimWidget$InvokeRepairManagerAction.invokeRepairManager() line: 363
MechanicStatusTrimWidget$InvokeRepairManagerAction.run() line: 353
MechanicStatusTrimWidget$2.mouseUp(MouseEvent) line: 193
TypedListener.handleEvent(Event) line: 207
EventTable.sendEvent(Event) line: 84
Display.sendEvent(EventTable, Event) line: 3543
Label(Widget).sendEvent(Event) line: 1250
Label(Widget).sendEvent(int, Event, boolean) line: 1273
Label(Widget).sendEvent(int, Event) line: 1258
Label(Control).sendMouseEvent(NSEvent, int, boolean) line: 2918
Display.applicationSendTrackingEvent(NSEvent, Control) line: 4210
Display.applicationNextEventMatchingMask(int, int, int, int, int, int) line: 4191
Display.applicationProc(int, int, int, int, int, int) line: 4386
OS.objc_msgSendSuper(objc_super, int, int) line: not available [native method]
Label(Widget).callSuper(int, int, int) line: 202
Label(Widget).mouseDown(int, int, int) line: 920
Label(Control).mouseDown(int, int, int) line: 2151
Display.windowProc(int, int, int) line: 4653
OS.objc_msgSendSuper(objc_super, int, int) line: not available [native method]
Shell(Widget).callSuper(int, int, int) line: 202
Shell(Widget).windowSendEvent(int, int, int) line: 1753
Shell.windowSendEvent(int, int, int) line: 1825
Display.windowProc(int, int, int) line: 4713
OS.objc_msgSendSuper(objc_super, int, int) line: not available [native method]
Display.applicationSendEvent(int, int, int) line: 4285
Display.applicationProc(int, int, int) line: 4352
OS.objc_msgSend(int, int, int) line: not available [native method]
NSApplication.sendEvent(NSEvent) line: 101
Display.readAndDispatch() line: 3097
Workbench.runEventLoop(Window$IExceptionHandler, Display) line: 2405
Workbench.runUI() line: 2369
Workbench.access$4(Workbench) line: 2221
Workbench$5.run() line: 500
Realm.runWithDefault(Realm, Runnable) line: 332
Workbench.createAndRunWorkbench(Display, WorkbenchAdvisor) line: 493
PlatformUI.createAndRunWorkbench(Display, WorkbenchAdvisor) line: 149
IDEApplication.start(IApplicationContext) line: 113
EclipseAppHandle.run(Object) line: 194
EclipseAppLauncher.runApplication(Object) line: 110
EclipseAppLauncher.start(Object) line: 79
EclipseStarter.run(Object) line: 368
EclipseStarter.run(String[], Runnable) line: 179
NativeMethodAccessorImpl.invoke0(Method, Object, Object[]) line: not available [native method]
NativeMethodAccessorImpl.invoke(Object, Object[]) line: 39
DelegatingMethodAccessorImpl.invoke(Object, Object[]) line: 25
Method.invoke(Object, Object...) line: 592
Main.invokeFramework(String[], URL[]) line: 559
Main.basicRun(String[]) line: 514
Main.run(String[]) line: 1311
Main.main(String[]) line: 1287
runRepairManager at the bottom is slightly different from the code in the
repository, disregard that; it's
my attempt at a fix.
This is very different from issue 3 in that you are talking about what seems to
be an OSX bug.
Nonetheless I think the fix I have in place will address both this issue and #3.
Original comment by konigsb...@gmail.com
on 17 May 2010 at 3:42
Thanks for working on this. Yes, it's reliably reproducible and you can click
as many
times on OK as you want... But I think you already know that now. ;)
Original comment by sendorian
on 17 May 2010 at 6:07
Original comment by konigsb...@gmail.com
on 19 May 2010 at 3:21
Original comment by konigsb...@gmail.com
on 11 Mar 2011 at 7:32
Original issue reported on code.google.com by
sendorian
on 14 May 2010 at 8:56