X-Git-Url: http://git.nikiroo.be/?a=blobdiff_plain;f=src%2Fjexer%2FTApplication.java;h=ab9c1962f6334094a03c6342eaad21eee6a03e8e;hb=3e0743556d1f31723a11a6019b5c2b018b4b2104;hp=c783d8d087237f129e2171ad967be60619ed550d;hpb=d79f1f31b1c036712b4e7f0bbfde980f212c3a3a;p=fanfix.git diff --git a/src/jexer/TApplication.java b/src/jexer/TApplication.java index c783d8d..ab9c196 100644 --- a/src/jexer/TApplication.java +++ b/src/jexer/TApplication.java @@ -54,6 +54,7 @@ import jexer.backend.Backend; import jexer.backend.Screen; import jexer.backend.SwingBackend; import jexer.backend.ECMA48Backend; +import jexer.backend.TWindowBackend; import jexer.menu.TMenu; import jexer.menu.TMenuItem; import static jexer.TCommand.*; @@ -405,7 +406,15 @@ public class TApplication implements Runnable { * @return the Screen */ public final Screen getScreen() { - return backend.getScreen(); + if (backend instanceof TWindowBackend) { + // We are being rendered to a TWindow. We can't use its + // getScreen() method because that is how it is rendering to a + // hardware backend somewhere. Instead use its getOtherScreen() + // method. + return ((TWindowBackend) backend).getOtherScreen(); + } else { + return backend.getScreen(); + } } /** @@ -719,6 +728,7 @@ public class TApplication implements Runnable { */ public TApplication(final Backend backend) { this.backend = backend; + backend.setListener(this); TApplicationImpl(); }