=== modified file 'src/com/goldencode/p2j/ui/client/gui/WindowTitleBar.java' --- src/com/goldencode/p2j/ui/client/gui/WindowTitleBar.java 2015-09-01 20:57:22 +0000 +++ src/com/goldencode/p2j/ui/client/gui/WindowTitleBar.java 2015-09-08 21:21:09 +0000 @@ -603,7 +603,7 @@ String windowTitle = window.title(); final String title = (windowTitle == null ? WindowGuiImpl.DEFAULT_TITLE : windowTitle); - + gd.setTitle(title); NativePoint origin = physicalLocation(); final NativeDimension d = physicalDimension(); final NativeRectangle clip = clipRectangle(origin, d); === modified file 'src/com/goldencode/p2j/ui/client/gui/driver/web/GuiWebSocket.java' --- src/com/goldencode/p2j/ui/client/gui/driver/web/GuiWebSocket.java 2015-09-05 15:03:24 +0000 +++ src/com/goldencode/p2j/ui/client/gui/driver/web/GuiWebSocket.java 2015-09-08 21:39:54 +0000 @@ -674,9 +674,9 @@ */ public void setWindowTitle(String title) { - byte[] message = allocateDrawingOp(PaintPrimitives.SET_TITLE, title.length() * 2 + 1); - - writeMessageText(message, 1, title); + byte[] message = allocateDrawingOp(PaintPrimitives.SET_TITLE, title.length() * 2 + 5); + writeMessageInt32(message, 1, title.length()); + writeMessageText(message, 5, title); } /** === modified file 'src/com/goldencode/p2j/ui/client/gui/driver/web/res/p2j.screen.js' --- src/com/goldencode/p2j/ui/client/gui/driver/web/res/p2j.screen.js 2015-09-08 16:51:50 +0000 +++ src/com/goldencode/p2j/ui/client/gui/driver/web/res/p2j.screen.js 2015-09-08 21:56:18 +0000 @@ -794,11 +794,11 @@ case ops.CLEAR_HIGHLIGHT: break; case ops.SET_TITLE: - var title = p2j.socket.readStringBinaryMessage(message, idx + 1); - extra = " title = " + title; - this.title = title; + textLength = p2j.socket.readInt32BinaryMessage(message, idx + 1); + text = p2j.socket.readStringBinaryMessageByLength(message, idx + 5, textLength); + extra = " title = " + text; + this.title = text; taskBar.draw(); - // TODO: force taskbar to repaint break; case ops.SET_ICON: var iconWidth = p2j.socket.readInt32BinaryMessage(message, idx + 1);