Probably unrelated with StyleInjector but with Scheduler.scheduleFinally, but I'll try to explain:

Imagine class that defines ClientBundle as follows:

public class Foo {

        public static interface Resources extends ClientBundle {
                static final Resources $ = GWT.create(Resources.class);
                @Source("Foo.gss")
                Foo.Style style();
        }
        static {
                Resources.$.style().ensureInjected();
        }

        @CssResource.ImportedWithPrefix("Foo")
        public static interface Style extends CssResource {
                String foo();
        }
        
        // ...
        
}

This class is GUI element that gets initialized through Activities/Places framework, if that makes any difference.

Problem is, given style is NOT injected on app startup, but IT GETS INJECTED if a do something as simple as:

Scheduler.get().scheduleFixedDelay(() -> {
        return false;
}, 0);

in Foo's contructor.

Since StyleInjector injects styles using:

        Scheduler.get().scheduleFinally

it looks like Scheduler doesn't recognize switch from GWT to browser event loop if scheduleFinally is called sufficiently early during app startup (like in static initializer of a class).

GWT 2.9.

Like I said, I've found a workaround (albeit a *very* dirty one), but shouldn't this be treated as a bug in GWT?

        -gkresic.

--
You received this message because you are subscribed to the Google Groups "GWT 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to google-web-toolkit+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/4d8f9539-f07d-9f7f-117e-39ab1cd0316e%40steatoda.com.

Reply via email to