Syntax Coloring preference page will throw IllegalArugmentException while pressing OK if color preference was update outside
When I set the syntax color from outside the preference page (specifically, from the eclipse-color-theme plugin), and navigate to the Syntax Coloring page, and press OK, following exception will be thrown:
java.lang.IllegalArgumentException: Argument not valid
at org.eclipse.swt.SWT.error(SWT.java:4378)
at org.eclipse.swt.SWT.error(SWT.java:4312)
at org.eclipse.swt.SWT.error(SWT.java:4283)
at org.eclipse.swt.graphics.GC.setBackground(GC.java:4190)
at org.eclipse.swt.custom.StyledTextRenderer.drawLine(StyledTextRenderer.java:383)
at org.eclipse.swt.custom.StyledText.handlePaint(StyledText.java:6106)
at org.eclipse.swt.custom.StyledText$7.handleEvent(StyledText.java:5642)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1057)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1081)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1066)
at org.eclipse.swt.widgets.Composite.WM_PAINT(Composite.java:1491)
at org.eclipse.swt.widgets.Control.windowProc(Control.java:4668)
at org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:340)
at org.eclipse.swt.widgets.Display.windowProc(Display.java:4990)
at org.eclipse.swt.internal.win32.OS.VtblCall(Native Method)
at org.eclipse.swt.internal.ole.win32.IOleInPlaceObject.InPlaceDeactivate(IOleInPlaceObject.java:21)
at org.eclipse.swt.ole.win32.OleClientSite.deactivateInPlaceClient(OleClientSite.java:559)
at org.eclipse.swt.ole.win32.OleClientSite.onDispose(OleClientSite.java:908)
at org.eclipse.swt.ole.win32.OleClientSite.access$1(OleClientSite.java:895)
at org.eclipse.swt.ole.win32.OleClientSite$1.handleEvent(OleClientSite.java:129)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1057)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1081)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1062)
at org.eclipse.swt.widgets.Widget.release(Widget.java:812)
at org.eclipse.swt.widgets.Composite.releaseChildren(Composite.java:875)
at org.eclipse.swt.widgets.Widget.release(Widget.java:815)
at org.eclipse.swt.widgets.Composite.releaseChildren(Composite.java:875)
at org.eclipse.swt.widgets.Widget.release(Widget.java:815)
at org.eclipse.swt.widgets.Composite.releaseChildren(Composite.java:875)
at org.eclipse.swt.widgets.Widget.release(Widget.java:815)
at org.eclipse.swt.widgets.Composite.releaseChildren(Composite.java:875)
at org.eclipse.swt.widgets.Widget.release(Widget.java:815)
at org.eclipse.swt.widgets.Composite.releaseChildren(Composite.java:875)
at org.eclipse.swt.widgets.Widget.release(Widget.java:815)
at org.eclipse.swt.widgets.Composite.releaseChildren(Composite.java:875)
at org.eclipse.swt.widgets.Widget.release(Widget.java:815)
at org.eclipse.swt.widgets.Composite.releaseChildren(Composite.java:875)
at org.eclipse.swt.widgets.Widget.release(Widget.java:815)
at org.eclipse.swt.widgets.Composite.releaseChildren(Composite.java:875)
at org.eclipse.swt.widgets.Widget.release(Widget.java:815)
at org.eclipse.swt.widgets.Composite.releaseChildren(Composite.java:875)
at org.eclipse.swt.widgets.Widget.release(Widget.java:815)
at org.eclipse.swt.widgets.Composite.releaseChildren(Composite.java:875)
at org.eclipse.swt.widgets.Widget.release(Widget.java:815)
at org.eclipse.swt.widgets.Composite.releaseChildren(Composite.java:875)
at org.eclipse.swt.widgets.Widget.release(Widget.java:815)
at org.eclipse.swt.widgets.Composite.releaseChildren(Composite.java:875)
at org.eclipse.swt.widgets.Widget.release(Widget.java:815)
at org.eclipse.swt.widgets.Composite.releaseChildren(Composite.java:875)
at org.eclipse.swt.widgets.Canvas.releaseChildren(Canvas.java:166)
at org.eclipse.swt.widgets.Decorations.releaseChildren(Decorations.java:790)
at org.eclipse.swt.widgets.Shell.releaseChildren(Shell.java:1290)
at org.eclipse.swt.widgets.Widget.release(Widget.java:815)
at org.eclipse.swt.widgets.Widget.dispose(Widget.java:450)
at org.eclipse.swt.widgets.Decorations.dispose(Decorations.java:448)
at org.eclipse.swt.widgets.Shell.dispose(Shell.java:715)
at org.eclipse.jface.window.Window.close(Window.java:336)
at org.eclipse.jface.dialogs.Dialog.close(Dialog.java:994)
at org.eclipse.jface.preference.PreferenceDialog.close(PreferenceDialog.java:318)
at org.eclipse.ui.internal.dialogs.FilteredPreferenceDialog.close(FilteredPreferenceDialog.java:698)
at org.eclipse.ui.internal.dialogs.WorkbenchPreferenceDialog.close(WorkbenchPreferenceDialog.java:147)
at org.eclipse.jface.preference.PreferenceDialog$13.run(PreferenceDialog.java:987)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:49)
at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:175)
at org.eclipse.jface.preference.PreferenceDialog.okPressed(PreferenceDialog.java:945)
at org.eclipse.ui.internal.dialogs.FilteredPreferenceDialog.okPressed(FilteredPreferenceDialog.java:448)
at org.eclipse.ui.internal.dialogs.WorkbenchPreferenceDialog.okPressed(WorkbenchPreferenceDialog.java:171)
at org.eclipse.jface.preference.PreferenceDialog.buttonPressed(PreferenceDialog.java:233)
at org.eclipse.jface.dialogs.Dialog$2.widgetSelected(Dialog.java:628)
at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:248)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1057)
at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4170)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3759)
at org.eclipse.jface.window.Window.runEventLoop(Window.java:826)
at org.eclipse.jface.window.Window.open(Window.java:802)
at org.eclipse.ui.internal.dialogs.WorkbenchPreferenceDialog.open(WorkbenchPreferenceDialog.java:215)
at org.eclipse.ui.internal.OpenPreferencesAction.run(OpenPreferencesAction.java:65)
at org.eclipse.jface.action.Action.runWithEvent(Action.java:499)
at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:584)
at org.eclipse.jface.action.ActionContributionItem.access$2(ActionContributionItem.java:501)
at org.eclipse.jface.action.ActionContributionItem$5.handleEvent(ActionContributionItem.java:411)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1057)
at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4170)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3759)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$9.run(PartRenderingEngine.java:1113)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:997)
at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:140)
at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:611)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:567)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:150)
at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:124)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:354)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:181)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:636)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:591)
at org.eclipse.equinox.launcher.Main.run(Main.java:1450)
The eclipse-color-theme AngularJS Eclipse Plugin integration is here: https://github.com/eclipse-color-theme/eclipse-color-theme/pull/192
I tried to assign value other than null in the
foregound_color | background_color | bold | italic | strikethrough | underline
scheme, with no luck.
@tan9 do you think it's possible for you to find out the problem (create a patch would be fantastic).
I'm very busy with tern.java and I would like to use my spare time to improve it.
Tell me if it's possible for you and don't hesitate to post your question about angularjs in order to I help you.
Thank's!
You are right there is a problem with AngularJS, but there is the same problem with the XML editor of WTP.
@angelozerr do you have any clue on this issue?
I can try to figuring out the problem while I have spare time. However, I am not familiar with PDE, so may take more time on it. Fortunately, this issue exists in WTP XML editor too, and seems nobody found it annoying, we can try our best to resolve it.
@angelozerr do you have any clue on this issue?
no-(
this issue exists in WTP XML editor
Exactly, and AngularJS Eclipse Syntax coloration is a copy/paste of the WTP code.
As I said you, I'm very busy with tern.java and I would like to continue to improve it. Sorry-(