Giter Club home page Giter Club logo

xiliary's Introduction

Xiliary Build Status

with-Eclipse logo

Introduction

Auxiliary libraries for Eclipse, JUnit and Java development in general. It includes the FlatScrollBar and more...

Development

The folder https://github.com/fappel/xiliary/tree/master/com.codeaffine.xiliary.releng contains the Xiliary.setup and XiliaryIDE.setup files. The latter is an Oomph (https://projects.eclipse.org/projects/tools.oomph) product setup model and the first a project setup model. Use the Oomph installer in advanced mode (http://eclipsesource.com/blogs/tutorials/oomph-basic-tutorial/) and refer to the files on GitHub in raw mode. This should help to setup a basic development environment and workspace in no time. However, as this is the first try on Oomph there might be some unknown depths... please report any issues you're running into to help to improve this mechanism. See also https://github.com/fappel/xiliary/blob/master/CONTRIBUTING.md for more information on how to contribute.

FlatScrollBar


Drop in replacement for all your Eclipse 4.4+ based RCP apps table, tree, and styled text scrollbars as easy as this in two tiny steps:
  • add bundles com.codeaffine.eclipse.swt.jar and com.codeaffine.eclipse.ui.swt.theme.jar to your target platform and to your products feature.xml
  • merge this snippet with your RCP apps CSS:
Tree {
  flat-scroll-bar: true;
  flat-scroll-bar-background : #ababab;
  flat-scroll-bar-thumb: #cdcdcd;
  flat-scroll-bar-page-increment: #f8f8f8;
  flat-scroll-bar-thumb-top-level: #454545;
  flat-scroll-bar-page-increment-top-level: #f8f8f8;
  flat-scroll-bar-increment-length: 7;
  adapter-demeanor: expand-on-mouse-over; /* fixed-width */
}

Table {
  flat-scroll-bar: true;
  flat-scroll-bar-background : #ababab;
  flat-scroll-bar-thumb: #cdcdcd;
  flat-scroll-bar-page-increment: #f8f8f8;
  flat-scroll-bar-thumb-top-level: #454545;
  flat-scroll-bar-page-increment-top-level: #f8f8f8;
  flat-scroll-bar-increment-length: 7;
  adapter-demeanor: expand-on-mouse-over; /* fixed-width */
}

StyledText {
  flat-scroll-bar: true;
  flat-scroll-bar-thumb: #ababab;
  flat-scroll-bar-page-increment: #cdcdcd;
  adapter-background-top-level: #f8f8f8;
  flat-scroll-bar-thumb-top-level: #454545;
  flat-scroll-bar-page-increment-top-level: #f8f8f8;
  flat-scroll-bar-increment-length: 7;
  adapter-demeanor: expand-on-mouse-over; /* fixed-width */
}

Note: In case you want to configure background-color style for your trees, tables, or styled texts that differs to the one that is defined for the composite components when using FlatScrollBar, you'll have to do this with an appropriate TreeAdapter, TreeTable, or StyledTextAdapter configuration entry in your css as shown below (see also #94):

Composite * {
  background-color: red;
}

Tree {
  flat-scroll-bar: true;
}

TreeAdapter {
  background-color: blue;
}

xiliary's People

Contributors

dependabot[bot] avatar fappel avatar guw avatar jbuchberger avatar pyvesb avatar rherrmann avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

xiliary's Issues

Make FlatScrollBar stylable

Currently it is not possible to style the FlatScrollBar. It would be at least nice to set the background color (increment region) and the color of the thumb.

[Workflow-Test-Util] Provide FlowTestNodeLoader to ease workflow definition flow tests

The class below loads only the real decision elements and mocks activities and tasks to avoid coupling to system components

public class FlowTestNodeLoader implements NodeLoader {

  @Override
  public <T> T load( Class<T> toLoad, WorkflowContext context ) {
    if( Decision.class.isAssignableFrom( toLoad ) ) {
      return NodeLoaderHelper.load( context, toLoad );
    }
    return mock( toLoad );
  }
}

NPE at Eclipse Startup

I have installed and activated the theme but when I try to start Eclipse I get a NPE and Eclipse fails to start:

!ENTRY org.eclipse.oomph.ui 2 0 2015-11-04 10:58:11.976
!MESSAGE java.lang.NullPointerException
!STACK 0
java.lang.NullPointerException
at com.codeaffine.eclipse.swt.widget.scrollable.TreeAdapter.setSize(TreeAdapter.java:78)
at org.eclipse.jface.layout.AbstractColumnLayout.layoutTableTree(AbstractColumnLayout.java:208)
at org.eclipse.jface.layout.AbstractColumnLayout.layout(AbstractColumnLayout.java:236)
at org.eclipse.jface.layout.TreeColumnLayout.layout(TreeColumnLayout.java:76)
at org.eclipse.swt.widgets.Composite.updateLayout(Composite.java:1311)
at org.eclipse.swt.widgets.Composite.updateLayout(Composite.java:1318)
at org.eclipse.swt.widgets.Composite.updateLayout(Composite.java:1318)
at org.eclipse.swt.widgets.Composite.updateLayout(Composite.java:1318)
at org.eclipse.swt.widgets.Composite.updateLayout(Composite.java:1318)
at org.eclipse.swt.widgets.Composite.updateLayout(Composite.java:1318)
at org.eclipse.swt.widgets.Composite.updateLayout(Composite.java:1318)
at org.eclipse.swt.widgets.Composite.updateLayout(Composite.java:1318)
at org.eclipse.swt.widgets.Composite.updateLayout(Composite.java:1318)
at org.eclipse.swt.widgets.Composite.updateLayout(Composite.java:1318)
at org.eclipse.swt.widgets.Composite.updateLayout(Composite.java:1318)
at org.eclipse.swt.widgets.Composite.updateLayout(Composite.java:1318)
at org.eclipse.swt.widgets.Composite.updateLayout(Composite.java:1318)
at org.eclipse.swt.widgets.Composite.updateLayout(Composite.java:1318)
at org.eclipse.swt.widgets.Composite.updateLayout(Composite.java:1297)
at org.eclipse.swt.widgets.Composite.layout(Composite.java:682)
at org.eclipse.oomph.internal.ui.UIPropertyTester$3$1.run(UIPropertyTester.java:124)
at org.eclipse.oomph.ui.UIUtil$5.run(UIUtil.java:539)
at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35)
at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:135)
at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:4155)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3772)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$4.run(PartRenderingEngine.java:1127)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:337)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1018)
at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:156)
at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:654)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:337)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:598)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:150)
at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:139)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:134)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:380)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:235)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:497)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:669)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:608)
at org.eclipse.equinox.launcher.Main.run(Main.java:1515)

My environment:

  • Mars.1 64 Bit
  • Windows 10
  • JDK 8u65

[ScrollableAdapter] Target Platform content editor not editable

I've run into the content editor wizard for the Target Platform configuration having a checkbox tree that is not editable, even after resizing the wizard.

tp

I have been able to use the editor part to make these changes as a workaround instead of the transactional wizard, so it is not severe to me.

Adding a selection listener to FlatScrollBar via addListener() doesn't work

I tried to use the FlatScrollBar with a NatTable. Since NatTable internally keeps track of the scrollbars itself and provides API to exchange the scrollbar via IScroller interface, I created a NatTable wrapper for the FlatScrollBar.

It renders correctly, but scrolling doesn't work. As far as I can see, the issue is that in NatTable the listeners for selection are added via addListener(SWT.Selection, Listener) were FlatScrollBar only supports SelectionListener.

It would be great if FlatScrollBar would also support Listeners for the SWT.Selection event, since I think also some SWT widgets work that way.

Understanding Adapters.java

 private static <T> T doGetAdapter( Object adaptable, Class<T> adapterType ) {
T result;
if( adapterType.isInstance( adaptable ) ) {
result = adapterType.cast( adaptable );
} else if( adaptable instanceof IAdaptable ) {
result = getAdapterFromAdaptable( adaptable, adapterType );
} else {
result = getAdapterFromRegistry( adaptable, adapterType );
}
return result;
}

The second "else if": You assume that when the "if" succeeds then "result" is valid. This might not be the case. "result" might be null because the object could not adapt itself (which is common). In this case you still have to go to the registry.

There is also an outside case that you might want to examine when there is an unloaded adapter. Please see my code which I believe to be correct.

    /**
     * Replaces the adapter boiler plate code and wraps it in a generic method.
     * Note that this method activates plug-ins if they have the required
     * adapter but are not loaded.
     * 
     * @param object
     * @param clazz
     * @return the adapted object or null if it could not be adapted.
     */
    public static <T> T getAdapter(Object object, Class<T> clazz) {

        if (object == null || clazz == null) {
            return null;
        }

        if (clazz.isAssignableFrom(object.getClass())) {
            return (T) object;
        }

        if (object instanceof IAdaptable) {
            T adapter = (T) ((IAdaptable) object).getAdapter(clazz);
            if (adapter != null) {
                return adapter;
            }
        }

        T adapter = (T) Platform.getAdapterManager().getAdapter(object, clazz);
        if (adapter != null) {
            return adapter;
        }

        if (Platform.getAdapterManager().hasAdapter(object, clazz.getName())) {
            return (T) Platform.getAdapterManager().loadAdapter(object, clazz.getName());
        }

        return null;
    } 

[ScrollableAdapter] SWTException upon closing dialog in RCP

!ENTRY org.eclipse.ui 4 0 2015-12-07 14:08:26.496
!MESSAGE Unhandled event loop exception
!STACK 0

org.eclipse.swt.SWTException: Widget is disposed
at org.eclipse.swt.SWT.error(SWT.java:4491)
at org.eclipse.swt.SWT.error(SWT.java:4406)
at org.eclipse.swt.SWT.error(SWT.java:4377)
at org.eclipse.swt.widgets.Widget.error(Widget.java:482)
at org.eclipse.swt.widgets.Widget.checkWidget(Widget.java:354)
at org.eclipse.swt.widgets.Widget.removeListener(Widget.java:935)
at org.eclipse.jface.window.ToolTip.deactivate(ToolTip.java:192)
at org.eclipse.jface.window.ToolTip.toolTipHide(ToolTip.java:448)
at org.eclipse.jface.window.ToolTip.access$1(ToolTip.java:438)
at org.eclipse.jface.window.ToolTip$ToolTipOwnerControlListener.handleEvent(ToolTip.java:627)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4362)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1113)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1137)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1118)
at org.eclipse.swt.widgets.Widget.release(Widget.java:822)
at org.eclipse.swt.widgets.Composite.releaseChildren(Composite.java:891)
at org.eclipse.swt.widgets.Table.releaseChildren(Table.java:3132)
at org.eclipse.swt.widgets.Widget.release(Widget.java:825)
at org.eclipse.swt.widgets.Composite.releaseChildren(Composite.java:891)
at org.eclipse.swt.widgets.Widget.release(Widget.java:825)
at org.eclipse.swt.widgets.Composite.releaseChildren(Composite.java:891)
at org.eclipse.swt.widgets.Canvas.releaseChildren(Canvas.java:165)
at org.eclipse.swt.widgets.Widget.release(Widget.java:825)
at org.eclipse.swt.widgets.Composite.releaseChildren(Composite.java:891)
at org.eclipse.swt.widgets.Widget.release(Widget.java:825)
at org.eclipse.swt.widgets.Composite.releaseChildren(Composite.java:891)
at org.eclipse.swt.widgets.Widget.release(Widget.java:825)
at org.eclipse.swt.widgets.Composite.releaseChildren(Composite.java:891)
at org.eclipse.swt.widgets.Widget.release(Widget.java:825)
at org.eclipse.swt.widgets.Composite.releaseChildren(Composite.java:891)
at org.eclipse.swt.widgets.Widget.release(Widget.java:825)
at org.eclipse.swt.widgets.Composite.releaseChildren(Composite.java:891)
at org.eclipse.swt.widgets.Widget.release(Widget.java:825)
at org.eclipse.swt.widgets.Composite.releaseChildren(Composite.java:891)
at org.eclipse.swt.widgets.Widget.release(Widget.java:825)
at org.eclipse.swt.widgets.Composite.releaseChildren(Composite.java:891)
at org.eclipse.swt.widgets.Widget.release(Widget.java:825)
at org.eclipse.swt.widgets.Composite.releaseChildren(Composite.java:891)
at org.eclipse.swt.widgets.Canvas.releaseChildren(Canvas.java:165)
at org.eclipse.swt.widgets.Decorations.releaseChildren(Decorations.java:789)
at org.eclipse.swt.widgets.Shell.releaseChildren(Shell.java:1318)
at org.eclipse.swt.widgets.Widget.release(Widget.java:825)
at org.eclipse.swt.widgets.Widget.dispose(Widget.java:460)
at org.eclipse.swt.widgets.Decorations.dispose(Decorations.java:447)
at org.eclipse.swt.widgets.Shell.dispose(Shell.java:725)
at org.eclipse.jface.window.Window.close(Window.java:334)
at org.eclipse.jface.dialogs.Dialog.close(Dialog.java:990)
at org.eclipse.jface.wizard.WizardDialog.hardClose(WizardDialog.java:862)
at org.eclipse.jface.wizard.WizardDialog.finishPressed(WizardDialog.java:807)

Thread [main] (Suspended (breakpoint at line 4491 in SWT))

SWT.error(int, Throwable, String) line: 4491>
SWT.error(int, Throwable) line: 4406>
SWT.error(int) line: 4377>
Table(Widget).error(int) line: 482>
Table(Widget).checkWidget() line: 354>
Table(Widget).removeListener(int, Listener) line: 935>
ColumnViewerToolTipSupport(ToolTip).deactivate() line: 192>
ColumnViewerToolTipSupport(ToolTip).toolTipHide(Shell, Event) line: 448>
ToolTip.access$1(ToolTip, Shell, Event) line: 438>
ToolTip$ToolTipOwnerControlListener.handleEvent(Event) line: 627>
EventTable.sendEvent(Event) line: 84>
Display.sendEvent(EventTable, Event) line: 4362>
Table(Widget).sendEvent(Event) line: 1113>
Table(Widget).sendEvent(int, Event, boolean) line: 1137>
Table(Widget).sendEvent(int) line: 1118>
Table(Widget).release(boolean) line: 822>
TableAdapter(Composite).releaseChildren(boolean) line: 891>
TableAdapter(Table).releaseChildren(boolean) line: 3132>
TableAdapter(Widget).release(boolean) line: 825>
Composite.releaseChildren(boolean) line: 891>
Composite(Widget).release(boolean) line: 825>
Composite.releaseChildren(boolean) line: 891>
Composite(Widget).release(boolean) line: 825>

[ScrollableAdapter] SWTException upon RCP exit

When I enable flat-scroll-bar on Table and Tree via CSS
I frequently get SWT exceptions upon exit of RCP client.

Table:

org.eclipse.swt.SWTException: Widget is disposed
at org.eclipse.swt.SWT.error(SWT.java:4491)
at org.eclipse.swt.SWT.error(SWT.java:4406)
at org.eclipse.swt.SWT.error(SWT.java:4377)
at org.eclipse.swt.widgets.Widget.error(Widget.java:482)
at org.eclipse.swt.widgets.Widget.checkWidget(Widget.java:354)
at org.eclipse.swt.widgets.Widget.removeListener(Widget.java:935)
at org.eclipse.swt.dnd.DragSource.onDispose(DragSource.java:574)...

Tree:

org.eclipse.swt.SWTException: Widget is disposed
at org.eclipse.swt.SWT.error(SWT.java:4491)
at org.eclipse.swt.SWT.error(SWT.java:4406)
at org.eclipse.swt.SWT.error(SWT.java:4377)
at org.eclipse.swt.widgets.Widget.error(Widget.java:482)
at org.eclipse.swt.widgets.Widget.checkWidget(Widget.java:354)
at org.eclipse.swt.widgets.Widget.removeListener(Widget.java:935)
at org.eclipse.swt.dnd.DropTarget.onDispose(DropTarget.java:560)...

Debug Table:

Table(Widget).error(int) line: 482
Table(Widget).checkWidget() line: 354>
Table(Widget).removeListener(int, Listener) line: 935>
DragSource.onDispose() line: 574>
DragSource.access$1(DragSource) line: 570>
DragSource$2.handleEvent(Event) line: 182>
EventTable.sendEvent(Event) line: 84>
Display.sendEvent(EventTable, Event) line: 4362>
DragSource(Widget).sendEvent(Event) line: 1113>
DragSource(Widget).sendEvent(int, Event, boolean) line: 1137>
DragSource(Widget).sendEvent(int) line: 1118>
DragSource(Widget).release(boolean) line: 822>
DragSource(Widget).dispose() line: 460>
DragSource$1.handleEvent(Event) line: 167>
EventTable.sendEvent(Event) line: 84>
Display.sendEvent(EventTable, Event) line: 4362>
Table(Widget).sendEvent(Event) line: 1113>
Table(Widget).sendEvent(int, Event, boolean) line: 1137>
Table(Widget).sendEvent(int) line: 1118>
Table(Widget).release(boolean) line: 822>
TableAdapter(Composite).releaseChildren(boolean) line: 891>
TableAdapter(Table).releaseChildren(boolean) line: 3132>
TableAdapter(Widget).release(boolean) line: 825>
Composite.releaseChildren(boolean) line: 891>
Composite(Widget).release(boolean) line: 825>
ContributedPartRenderer$2(Composite).releaseChildren(boolean) line: 891>
ContributedPartRenderer$2(Widget).release(boolean) line: 825>
ContributedPartRenderer$2(Widget).dispose() line: 460>
ContributedPartRenderer(SWTPartRenderer).disposeWidget(MUIElement) line: 177>
ContributedPartRenderer.disposeWidget(MUIElement) line: 272>
PartRenderingEngine.safeRemoveGui(MUIElement) line: 914>
PartRenderingEngine.access$1(PartRenderingEngine, MUIElement) line: 842>
PartRenderingEngine$3.run() line: 837>
SafeRunner.run(ISafeRunnable) line: 42>
PartRenderingEngine.removeGui(MUIElement) line: 821>

Debug Tree:

Tree(Widget).error(int) line: 482>
Tree(Widget).checkWidget() line: 354>
Tree(Widget).removeListener(int, Listener) line: 935>
DropTarget.onDispose() line: 560>
DropTarget$2.handleEvent(Event) line: 157>
EventTable.sendEvent(Event) line: 84>
Display.sendEvent(EventTable, Event) line: 4362>
DropTarget(Widget).sendEvent(Event) line: 1113>
DropTarget(Widget).sendEvent(int, Event, boolean) line: 1137>
DropTarget(Widget).sendEvent(int) line: 1118>
DropTarget(Widget).release(boolean) line: 822>
DropTarget(Widget).dispose() line: 460>
DropTarget$1.handleEvent(Event) line: 149>
EventTable.sendEvent(Event) line: 84>
Display.sendEvent(EventTable, Event) line: 4362>
Tree(Widget).sendEvent(Event) line: 1113>
Tree(Widget).sendEvent(int, Event, boolean) line: 1137>
Tree(Widget).sendEvent(int) line: 1118>
Tree(Widget).release(boolean) line: 822>
TreeAdapter(Composite).releaseChildren(boolean) line: 891>
TreeAdapter(Tree).releaseChildren(boolean) line: 3946>
TreeAdapter(Widget).release(boolean) line: 825>
Composite.releaseChildren(boolean) line: 891>
Composite(Widget).release(boolean) line: 825>
ContributedPartRenderer$2(Composite).releaseChildren(boolean) line: 891>
ContributedPartRenderer$2(Widget).release(boolean) line: 825>
ContributedPartRenderer$2(Widget).dispose() line: 460>
ContributedPartRenderer(SWTPartRenderer).disposeWidget(MUIElement) line: 177>
ContributedPartRenderer.disposeWidget(MUIElement) line: 272>
PartRenderingEngine.safeRemoveGui(MUIElement) line: 914>
PartRenderingEngine.access$1(PartRenderingEngine, MUIElement) line: 842>
PartRenderingEngine$3.run() line: 837>
SafeRunner.run(ISafeRunnable) line: 42>
PartRenderingEngine.removeGui(MUIElement) line: 821>

[ExtensionPDETest] Fix problem with multi language support

ExtensionPDETest#getValue and ExtensionPDETest#getValueWithLocale are currently disabled as the underlying implementation of IConfigurationElement seems to work a bit inconsistently or buggy. Investigate behavior and provide a proper multi language support for Extension.

Where is the documentation? :-)

Hi Frank, this looks really interesting. At least a feature list would be nice.

We are using DS extensively, with FileInstall, and the initialization order is a mess. The JUnit runner instantiates the TestCases before the services are ready. Wouldn't it be nice, if each TestCase would be a @component? Then DS could do all the dependency management. Have you ever thought about a JUnit runner, that would use test cases implemented as services, following the whiteboard pattern?

[ScrollableAdapter] blank content on Git Synchronize Wizard

Some further information on the Git Synchronize window: It shows blank content for me when I simply click "next" on the first page ("select from available synchronization types") when "Git" is already selected. If I double-click the "Git" entry in the list to advance the page, the content shows properly. This does not occur when using the "SVN" synchronization type.

This issue has been swapped from issue #38 (comment), reported by paulbilnoski.

The sonar project association dialog is unresponsive with this theme

The sonar project association dialog is unresponsive with this theme. The project association table is not editable and the scrollbar doesn't move either. But nothing can be found on the eclipse error log about this. Probably the UI initialization is failing which cause the whole table to be unresponsive for input events.

[ScrollableAdapter] "New Driver Definition" window shows nothing in "Available driver templates"

Hi, I really like the Clean Sheet theme and I hope you can resolve the following issue:

When I go to Preferences -> Data Management -> Connectivity -> Driver Definitions and click in the "Add" button at the right side, Eclipse opens the "New Driver Definition" window. But for some reason instead of show a list in "Available driver templates", this window shows an empty list and it becomes impossible to go further in configuration. When I switch to "Classic" theme, everything works fine again.

I'm testing in Eclipse Mars.1 .

BTW, Congratulations and thanks for this great theme!

[ScrollableAdapter] NPE doing Ant build

Installed CleanSheet today and enabled the Dark [Flat-Scrollbar] theme. Ran an Ant build and got a bunch of errors. The console view came up with a white background, also. This is installed on Windows 10. I went back to the default (non-CleanSheet) theme and restarted, but the errors still happen. I'm reverting the install. Looks promising, but maybe after it's been baked a little longer...

[Update] Unfortunately reverting the install did not take care of the error. Any guidance of how to fix this would be appreciated.

!ENTRY org.eclipse.ui 4 4 2015-11-19 13:28:41.382
!MESSAGE An internal error has occurred.
!STACK 0
java.lang.NullPointerException
at org.eclipse.ui.internal.WorkbenchPage.busyShowView(WorkbenchPage.java:1270)
at org.eclipse.ui.internal.WorkbenchPage$12.run(WorkbenchPage.java:4211)
at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
at org.eclipse.ui.internal.WorkbenchPage.showView(WorkbenchPage.java:4207)
at org.eclipse.ui.internal.console.ConsoleManager$ShowConsoleViewJob.runInUIThread(ConsoleManager.java:321)
at org.eclipse.ui.progress.UIJob$1.run(UIJob.java:97)
at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35)
at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:135)
at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:4155)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3772)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$4.run(PartRenderingEngine.java:1127)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:337)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1018)
at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:156)
at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:654)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:337)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:598)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:150)
at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:139)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:134)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:380)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:235)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:669)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:608)
at org.eclipse.equinox.launcher.Main.run(Main.java:1515)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.