[PATCH] [Kimchi 0/3] Integrating with spice-web-client

From: Pavel Gurenko <pgurenko@gmail.com> Hi, this is the integration of the spice-web-client (https://github.com/eyeos/spice-web-client) instead of spice-html5. It has almost all the features that spice supports, performant and, most important supports qxl. Patch tested only against 2.5 and qxl and resizing are just great. Please take a look and say what you think of the general idea/what to improve. Thanks! Pavel Gurenko (3): removes spice-html5; adds spice-web-client adds automakes for spice-web-client changes api calls for spice-web-client config.py.in | 15 +- configure.ac | 16 +- contrib/DEBIAN/control.in | 1 - ui/Makefile.am | 2 +- ui/js/src/kimchi.api.js | 8 +- ui/spice-html5/Makefile.am | 25 - ui/spice-html5/atKeynames.js | 183 - ui/spice-html5/bitmap.js | 51 - ui/spice-html5/css/Makefile.am | 20 - ui/spice-html5/css/spice.css | 118 - ui/spice-html5/cursor.js | 110 - ui/spice-html5/display.js | 823 -- ui/spice-html5/enums.js | 324 - ui/spice-html5/inputs.js | 280 - ui/spice-html5/lz.js | 166 - ui/spice-html5/main.js | 231 - ui/spice-html5/pages/Makefile.am | 20 - ui/spice-html5/pages/spice_auto.html | 200 - ui/spice-html5/playback.js | 278 - ui/spice-html5/png.js | 256 - ui/spice-html5/quic.js | 1335 --- ui/spice-html5/resize.js | 70 - ui/spice-html5/simulatecursor.js | 202 - ui/spice-html5/spicearraybuffer.js | 58 - ui/spice-html5/spiceconn.js | 460 - ui/spice-html5/spicedataview.js | 120 - ui/spice-html5/spicemsg.js | 1047 --- ui/spice-html5/spicetype.js | 473 -- ui/spice-html5/thirdparty/Makefile.am | 20 - ui/spice-html5/thirdparty/jsbn.js | 589 -- ui/spice-html5/thirdparty/prng4.js | 79 - ui/spice-html5/thirdparty/rng.js | 102 - ui/spice-html5/thirdparty/rsa.js | 146 - ui/spice-html5/thirdparty/sha1.js | 346 - ui/spice-html5/ticket.js | 250 - ui/spice-html5/utils.js | 265 - ui/spice-html5/webm.js | 553 -- ui/spice-html5/wire.js | 123 - ui/spice-web-client/LICENSE | 8 + ui/spice-web-client/Makefile.am | 23 + ui/spice-web-client/README.md | 99 + ui/spice-web-client/application/Makefile.am | 20 + ui/spice-web-client/application/WorkerProcess.js | 3363 ++++++++ ui/spice-web-client/application/agent.js | 242 + ui/spice-web-client/application/application.js | 483 ++ ui/spice-web-client/application/clientgui.js | 639 ++ ui/spice-web-client/application/imagecache.js | 87 + ui/spice-web-client/application/inputmanager.js | 121 + ui/spice-web-client/application/packetfactory.js | 190 + ui/spice-web-client/application/packetfilter.js | 110 + ui/spice-web-client/application/packetprocess.js | 80 + ui/spice-web-client/application/rasteroperation.js | 129 + ui/spice-web-client/application/spiceconnection.js | 200 + ui/spice-web-client/application/stream.js | 51 + ui/spice-web-client/application/virtualmouse.js | 95 + ui/spice-web-client/benchmark.html | 117 + ui/spice-web-client/commit-stage.sh | 19 + ui/spice-web-client/eyeos128.png | Bin 0 -> 1645 bytes ui/spice-web-client/index.html | 187 + ui/spice-web-client/keymaps/Makefile.am | 20 + ui/spice-web-client/keymaps/keymap.js | 129 + ui/spice-web-client/keymaps/keymapes.js | 251 + ui/spice-web-client/keymaps/keymapit.js | 215 + ui/spice-web-client/keymaps/keymapus.js | 193 + ui/spice-web-client/lib/AsyncConsumer.js | 206 + ui/spice-web-client/lib/AsyncWorker.js | 63 + ui/spice-web-client/lib/CollisionDetector.js | 40 + ui/spice-web-client/lib/DataLogger.js | 208 + ui/spice-web-client/lib/GenericObjectPool.js | 126 + ui/spice-web-client/lib/GlobalPool.js | 114 + ui/spice-web-client/lib/ImageUncompressor.js | 141 + ui/spice-web-client/lib/IntegrationBenchmark.js | 77 + ui/spice-web-client/lib/Makefile.am | 23 + ui/spice-web-client/lib/PacketWorkerIdentifier.js | 116 + ui/spice-web-client/lib/SyncAsyncHandler.js | 57 + ui/spice-web-client/lib/base64.js | 279 + ui/spice-web-client/lib/biginteger.js | 1621 ++++ ui/spice-web-client/lib/bowser.js | 257 + ui/spice-web-client/lib/displayRouter.js | 84 + ui/spice-web-client/lib/encrypt.js | 172 + ui/spice-web-client/lib/flipper.js | 52 + ui/spice-web-client/lib/graphic.js | 1232 +++ ui/spice-web-client/lib/graphicdebug.js | 224 + ui/spice-web-client/lib/images/Makefile.am | 20 + ui/spice-web-client/lib/images/bitmap.js | 173 + ui/spice-web-client/lib/images/jsquic_family.js | 65 + ui/spice-web-client/lib/images/jsquic_rgba.js | 324 + .../lib/images/jsquic_uncompress.js | 511 ++ ui/spice-web-client/lib/images/lz.js | 698 ++ ui/spice-web-client/lib/images/png.js | 256 + ui/spice-web-client/lib/jquery-2.0.3.js | 8829 ++++++++++++++++++++ ui/spice-web-client/lib/jquery-mousewheel.js | 84 + ui/spice-web-client/lib/jsbn.js | 559 ++ ui/spice-web-client/lib/jsbn2.js | 656 ++ ui/spice-web-client/lib/modernizr.js | 20 + ui/spice-web-client/lib/pixastic.js | 3225 +++++++ ui/spice-web-client/lib/prettyprint.js | 775 ++ ui/spice-web-client/lib/prng4.js | 45 + ui/spice-web-client/lib/queue.js | 272 + ui/spice-web-client/lib/rasterEngine.js | 542 ++ ui/spice-web-client/lib/rng.js | 68 + ui/spice-web-client/lib/runqueue.js | 115 + ui/spice-web-client/lib/sha1.js | 105 + ui/spice-web-client/lib/stuckkeyshandler.js | 122 + ui/spice-web-client/lib/timelapsedetector.js | 72 + ui/spice-web-client/lib/utils.js | 337 + ui/spice-web-client/lib/virtualjoystick.js | 351 + ui/spice-web-client/network/Makefile.am | 20 + ui/spice-web-client/network/busconnection.js | 208 + ui/spice-web-client/network/clusternodechooser.js | 62 + ui/spice-web-client/network/connectioncontrol.js | 69 + ui/spice-web-client/network/packetcontroller.js | 67 + ui/spice-web-client/network/packetextractor.js | 77 + ui/spice-web-client/network/packetlinkfactory.js | 77 + ui/spice-web-client/network/packetreassembler.js | 80 + ui/spice-web-client/network/reassemblerfactory.js | 52 + ui/spice-web-client/network/sizedefiner.js | 99 + ui/spice-web-client/network/socket.js | 131 + ui/spice-web-client/network/socketqueue.js | 98 + ui/spice-web-client/network/spicechannel.js | 226 + ui/spice-web-client/network/websocketwrapper.js | 88 + ui/spice-web-client/package.json | 16 + ui/spice-web-client/process/Makefile.am | 20 + ui/spice-web-client/process/busprocess.js | 247 + ui/spice-web-client/process/cursorprocess.js | 83 + ui/spice-web-client/process/displaypreprocess.js | 119 + ui/spice-web-client/process/displayprocess.js | 174 + ui/spice-web-client/process/inputprocess.js | 86 + ui/spice-web-client/process/mainprocess.js | 52 + ui/spice-web-client/process/playbackprocess.js | 201 + ui/spice-web-client/resources/Makefile.am | 20 + ui/spice-web-client/resources/magnifier.png | Bin 0 -> 11181 bytes ui/spice-web-client/resources/mouse.png | Bin 0 -> 381 bytes ui/spice-web-client/resources/mouse_cursor.gif | Bin 0 -> 959 bytes ui/spice-web-client/resources/mouse_cursor.png | Bin 0 -> 2258 bytes ui/spice-web-client/run.js | 255 + ui/spice-web-client/sonar.properties | 13 + ui/spice-web-client/spiceobjects/Makefile.am | 22 + .../spiceobjects/generated/Makefile.am | 20 + .../spiceobjects/generated/protocol.js | 517 ++ ui/spice-web-client/spiceobjects/spiceobjects.js | 3312 ++++++++ ui/spice-web-client/spiceproxy/.gitignore | 2 + ui/spice-web-client/spiceproxy/.npmignore | 0 ui/spice-web-client/spiceproxy/Makefile.am | 20 + ui/spice-web-client/spiceproxy/concatenator.js | 46 + ui/spice-web-client/spiceproxy/filelist.js | 6 + ui/spice-web-client/spiceproxy/globalpool.js | 51 + ui/spice-web-client/spiceproxy/package.json | 8 + ui/spice-web-client/spiceproxy/socket.js | 55 + ui/spice-web-client/spiceproxy/spicechannel.js | 27 + ui/spice-web-client/swcanvas/Makefile.am | 20 + ui/spice-web-client/swcanvas/benchmark.html | 31 + ui/spice-web-client/swcanvas/cat.jpg | Bin 0 -> 21251 bytes ui/spice-web-client/swcanvas/swcanvas.js | 63 + ui/spice-web-client/swcanvas/test.html | 72 + ui/spice-web-client/unittest/application.test.js | 121 + ui/spice-web-client/unittest/busconnection.test.js | 127 + ui/spice-web-client/unittest/busprocess.test.js | 46 + ui/spice-web-client/unittest/clientgui.test.js | 166 + .../unittest/clusternodechooser.test.js | 66 + .../unittest/collisiondetector.test.js | 63 + .../unittest/connectioncontrol.test.js | 43 + .../unittest/displayprocess.test.js | 99 + ui/spice-web-client/unittest/displayrouter.test.js | 31 + ui/spice-web-client/unittest/eventobject.test.js | 69 + ui/spice-web-client/unittest/graphic.test.js | 128 + ui/spice-web-client/unittest/graphictest.test.js | 64 + .../SPICE_MSG_DISPLAY_DRAW_ALPHA_BLEND_login_page | 1 + .../SPICE_MSG_DISPLAY_DRAW_BLACKNESS_login_page | 1 + .../SPICE_MSG_DISPLAY_DRAW_COPY_-_JPEG_ALPHA | 1 + .../SPICE_MSG_DISPLAY_DRAW_COPY_explorer_icon | 1 + .../SPICE_MSG_DISPLAY_DRAW_COPY_start_button | 1 + ...CE_MSG_DISPLAY_DRAW_COPY_user_icon_windows_menu | 1 + .../SPICE_MSG_DISPLAY_DRAW_COPY_windows_menu | 1 + .../graphictestfiles/SPICE_MSG_DISPLAY_DRAW_FILL | 1 + ...ICE_MSG_DISPLAY_DRAW_STROKE_libreoffice_tooltip | 1 + .../SPICE_MSG_DISPLAY_DRAW_TEXT_login_page | 1 + .../unittest/graphictestfiles/uris.js | 11 + .../unittest/imageuncompressor.test.js | 194 + ui/spice-web-client/unittest/inputmanager.test.js | 262 + ui/spice-web-client/unittest/keymap.test.js | 17 + .../unittest/packetcontroller.test.js | 92 + .../unittest/packetextractor.test.js | 92 + ui/spice-web-client/unittest/packetfactory.test.js | 6 + .../unittest/packetlinkfactory.test.js | 64 + ui/spice-web-client/unittest/packetprocess.test.js | 44 + .../unittest/packetreassembler.test.js | 59 + ui/spice-web-client/unittest/queue.test.js | 94 + .../unittest/reassemblerfactory.test.js | 0 ui/spice-web-client/unittest/runqueue.test.js | 104 + ui/spice-web-client/unittest/sizedefiner.test.js | 89 + ui/spice-web-client/unittest/socket.test.js | 80 + ui/spice-web-client/unittest/socketqueue.test.js | 97 + ui/spice-web-client/unittest/some.html | 9 + ui/spice-web-client/unittest/spicechannel.test.js | 179 + .../unittest/spiceconnection.test.js | 83 + .../unittest/stuckkeyshandler.test.js | 192 + .../unittest/syncasynchandler.test.js | 62 + ui/spice-web-client/unittest/tests.js | 117 + .../unittest/timelapsedetector.test.js | 54 + ui/spice-web-client/unittest/viewqueue.test.js | 94 + 201 files changed, 40448 insertions(+), 9344 deletions(-) delete mode 100644 ui/spice-html5/Makefile.am delete mode 100644 ui/spice-html5/atKeynames.js delete mode 100644 ui/spice-html5/bitmap.js delete mode 100644 ui/spice-html5/css/Makefile.am delete mode 100644 ui/spice-html5/css/spice.css delete mode 100644 ui/spice-html5/cursor.js delete mode 100644 ui/spice-html5/display.js delete mode 100644 ui/spice-html5/enums.js delete mode 100644 ui/spice-html5/inputs.js delete mode 100644 ui/spice-html5/lz.js delete mode 100644 ui/spice-html5/main.js delete mode 100644 ui/spice-html5/pages/Makefile.am delete mode 100644 ui/spice-html5/pages/spice_auto.html delete mode 100644 ui/spice-html5/playback.js delete mode 100644 ui/spice-html5/png.js delete mode 100644 ui/spice-html5/quic.js delete mode 100644 ui/spice-html5/resize.js delete mode 100644 ui/spice-html5/simulatecursor.js delete mode 100644 ui/spice-html5/spicearraybuffer.js delete mode 100644 ui/spice-html5/spiceconn.js delete mode 100644 ui/spice-html5/spicedataview.js delete mode 100644 ui/spice-html5/spicemsg.js delete mode 100644 ui/spice-html5/spicetype.js delete mode 100644 ui/spice-html5/thirdparty/Makefile.am delete mode 100644 ui/spice-html5/thirdparty/jsbn.js delete mode 100644 ui/spice-html5/thirdparty/prng4.js delete mode 100644 ui/spice-html5/thirdparty/rng.js delete mode 100644 ui/spice-html5/thirdparty/rsa.js delete mode 100644 ui/spice-html5/thirdparty/sha1.js delete mode 100644 ui/spice-html5/ticket.js delete mode 100644 ui/spice-html5/utils.js delete mode 100644 ui/spice-html5/webm.js delete mode 100644 ui/spice-html5/wire.js create mode 100644 ui/spice-web-client/LICENSE create mode 100644 ui/spice-web-client/Makefile.am create mode 100644 ui/spice-web-client/README.md create mode 100644 ui/spice-web-client/application/Makefile.am create mode 100644 ui/spice-web-client/application/WorkerProcess.js create mode 100644 ui/spice-web-client/application/agent.js create mode 100644 ui/spice-web-client/application/application.js create mode 100644 ui/spice-web-client/application/clientgui.js create mode 100644 ui/spice-web-client/application/imagecache.js create mode 100644 ui/spice-web-client/application/inputmanager.js create mode 100644 ui/spice-web-client/application/packetfactory.js create mode 100644 ui/spice-web-client/application/packetfilter.js create mode 100644 ui/spice-web-client/application/packetprocess.js create mode 100644 ui/spice-web-client/application/rasteroperation.js create mode 100644 ui/spice-web-client/application/spiceconnection.js create mode 100644 ui/spice-web-client/application/stream.js create mode 100644 ui/spice-web-client/application/virtualmouse.js create mode 100644 ui/spice-web-client/benchmark.html create mode 100755 ui/spice-web-client/commit-stage.sh create mode 100644 ui/spice-web-client/eyeos128.png create mode 100644 ui/spice-web-client/index.html create mode 100644 ui/spice-web-client/keymaps/Makefile.am create mode 100644 ui/spice-web-client/keymaps/keymap.js create mode 100644 ui/spice-web-client/keymaps/keymapes.js create mode 100644 ui/spice-web-client/keymaps/keymapit.js create mode 100644 ui/spice-web-client/keymaps/keymapus.js create mode 100644 ui/spice-web-client/lib/AsyncConsumer.js create mode 100644 ui/spice-web-client/lib/AsyncWorker.js create mode 100644 ui/spice-web-client/lib/CollisionDetector.js create mode 100644 ui/spice-web-client/lib/DataLogger.js create mode 100644 ui/spice-web-client/lib/GenericObjectPool.js create mode 100644 ui/spice-web-client/lib/GlobalPool.js create mode 100644 ui/spice-web-client/lib/ImageUncompressor.js create mode 100644 ui/spice-web-client/lib/IntegrationBenchmark.js create mode 100644 ui/spice-web-client/lib/Makefile.am create mode 100644 ui/spice-web-client/lib/PacketWorkerIdentifier.js create mode 100644 ui/spice-web-client/lib/SyncAsyncHandler.js create mode 100644 ui/spice-web-client/lib/base64.js create mode 100644 ui/spice-web-client/lib/biginteger.js create mode 100644 ui/spice-web-client/lib/bowser.js create mode 100644 ui/spice-web-client/lib/displayRouter.js create mode 100644 ui/spice-web-client/lib/encrypt.js create mode 100644 ui/spice-web-client/lib/flipper.js create mode 100644 ui/spice-web-client/lib/graphic.js create mode 100644 ui/spice-web-client/lib/graphicdebug.js create mode 100644 ui/spice-web-client/lib/images/Makefile.am create mode 100644 ui/spice-web-client/lib/images/bitmap.js create mode 100644 ui/spice-web-client/lib/images/jsquic_family.js create mode 100644 ui/spice-web-client/lib/images/jsquic_rgba.js create mode 100644 ui/spice-web-client/lib/images/jsquic_uncompress.js create mode 100644 ui/spice-web-client/lib/images/lz.js create mode 100644 ui/spice-web-client/lib/images/png.js create mode 100644 ui/spice-web-client/lib/jquery-2.0.3.js create mode 100644 ui/spice-web-client/lib/jquery-mousewheel.js create mode 100644 ui/spice-web-client/lib/jsbn.js create mode 100644 ui/spice-web-client/lib/jsbn2.js create mode 100644 ui/spice-web-client/lib/modernizr.js create mode 100644 ui/spice-web-client/lib/pixastic.js create mode 100644 ui/spice-web-client/lib/prettyprint.js create mode 100644 ui/spice-web-client/lib/prng4.js create mode 100644 ui/spice-web-client/lib/queue.js create mode 100644 ui/spice-web-client/lib/rasterEngine.js create mode 100644 ui/spice-web-client/lib/rng.js create mode 100644 ui/spice-web-client/lib/runqueue.js create mode 100644 ui/spice-web-client/lib/sha1.js create mode 100644 ui/spice-web-client/lib/stuckkeyshandler.js create mode 100644 ui/spice-web-client/lib/timelapsedetector.js create mode 100644 ui/spice-web-client/lib/utils.js create mode 100644 ui/spice-web-client/lib/virtualjoystick.js create mode 100644 ui/spice-web-client/network/Makefile.am create mode 100644 ui/spice-web-client/network/busconnection.js create mode 100644 ui/spice-web-client/network/clusternodechooser.js create mode 100644 ui/spice-web-client/network/connectioncontrol.js create mode 100644 ui/spice-web-client/network/packetcontroller.js create mode 100644 ui/spice-web-client/network/packetextractor.js create mode 100644 ui/spice-web-client/network/packetlinkfactory.js create mode 100644 ui/spice-web-client/network/packetreassembler.js create mode 100644 ui/spice-web-client/network/reassemblerfactory.js create mode 100644 ui/spice-web-client/network/sizedefiner.js create mode 100644 ui/spice-web-client/network/socket.js create mode 100644 ui/spice-web-client/network/socketqueue.js create mode 100644 ui/spice-web-client/network/spicechannel.js create mode 100644 ui/spice-web-client/network/websocketwrapper.js create mode 100644 ui/spice-web-client/package.json create mode 100644 ui/spice-web-client/process/Makefile.am create mode 100644 ui/spice-web-client/process/busprocess.js create mode 100644 ui/spice-web-client/process/cursorprocess.js create mode 100644 ui/spice-web-client/process/displaypreprocess.js create mode 100644 ui/spice-web-client/process/displayprocess.js create mode 100644 ui/spice-web-client/process/inputprocess.js create mode 100644 ui/spice-web-client/process/mainprocess.js create mode 100644 ui/spice-web-client/process/playbackprocess.js create mode 100644 ui/spice-web-client/resources/Makefile.am create mode 100644 ui/spice-web-client/resources/magnifier.png create mode 100644 ui/spice-web-client/resources/mouse.png create mode 100644 ui/spice-web-client/resources/mouse_cursor.gif create mode 100644 ui/spice-web-client/resources/mouse_cursor.png create mode 100644 ui/spice-web-client/run.js create mode 100644 ui/spice-web-client/sonar.properties create mode 100644 ui/spice-web-client/spiceobjects/Makefile.am create mode 100644 ui/spice-web-client/spiceobjects/generated/Makefile.am create mode 100644 ui/spice-web-client/spiceobjects/generated/protocol.js create mode 100644 ui/spice-web-client/spiceobjects/spiceobjects.js create mode 100644 ui/spice-web-client/spiceproxy/.gitignore create mode 100644 ui/spice-web-client/spiceproxy/.npmignore create mode 100644 ui/spice-web-client/spiceproxy/Makefile.am create mode 100755 ui/spice-web-client/spiceproxy/concatenator.js create mode 100644 ui/spice-web-client/spiceproxy/filelist.js create mode 100644 ui/spice-web-client/spiceproxy/globalpool.js create mode 100644 ui/spice-web-client/spiceproxy/package.json create mode 100644 ui/spice-web-client/spiceproxy/socket.js create mode 100644 ui/spice-web-client/spiceproxy/spicechannel.js create mode 100644 ui/spice-web-client/swcanvas/Makefile.am create mode 100644 ui/spice-web-client/swcanvas/benchmark.html create mode 100644 ui/spice-web-client/swcanvas/cat.jpg create mode 100644 ui/spice-web-client/swcanvas/swcanvas.js create mode 100644 ui/spice-web-client/swcanvas/test.html create mode 100644 ui/spice-web-client/unittest/application.test.js create mode 100644 ui/spice-web-client/unittest/busconnection.test.js create mode 100644 ui/spice-web-client/unittest/busprocess.test.js create mode 100644 ui/spice-web-client/unittest/clientgui.test.js create mode 100644 ui/spice-web-client/unittest/clusternodechooser.test.js create mode 100644 ui/spice-web-client/unittest/collisiondetector.test.js create mode 100644 ui/spice-web-client/unittest/connectioncontrol.test.js create mode 100644 ui/spice-web-client/unittest/displayprocess.test.js create mode 100644 ui/spice-web-client/unittest/displayrouter.test.js create mode 100644 ui/spice-web-client/unittest/eventobject.test.js create mode 100644 ui/spice-web-client/unittest/graphic.test.js create mode 100644 ui/spice-web-client/unittest/graphictest.test.js create mode 100644 ui/spice-web-client/unittest/graphictestfiles/SPICE_MSG_DISPLAY_DRAW_ALPHA_BLEND_login_page create mode 100644 ui/spice-web-client/unittest/graphictestfiles/SPICE_MSG_DISPLAY_DRAW_BLACKNESS_login_page create mode 100644 ui/spice-web-client/unittest/graphictestfiles/SPICE_MSG_DISPLAY_DRAW_COPY_-_JPEG_ALPHA create mode 100644 ui/spice-web-client/unittest/graphictestfiles/SPICE_MSG_DISPLAY_DRAW_COPY_explorer_icon create mode 100644 ui/spice-web-client/unittest/graphictestfiles/SPICE_MSG_DISPLAY_DRAW_COPY_start_button create mode 100644 ui/spice-web-client/unittest/graphictestfiles/SPICE_MSG_DISPLAY_DRAW_COPY_user_icon_windows_menu create mode 100644 ui/spice-web-client/unittest/graphictestfiles/SPICE_MSG_DISPLAY_DRAW_COPY_windows_menu create mode 100644 ui/spice-web-client/unittest/graphictestfiles/SPICE_MSG_DISPLAY_DRAW_FILL create mode 100644 ui/spice-web-client/unittest/graphictestfiles/SPICE_MSG_DISPLAY_DRAW_STROKE_libreoffice_tooltip create mode 100644 ui/spice-web-client/unittest/graphictestfiles/SPICE_MSG_DISPLAY_DRAW_TEXT_login_page create mode 100644 ui/spice-web-client/unittest/graphictestfiles/uris.js create mode 100644 ui/spice-web-client/unittest/imageuncompressor.test.js create mode 100644 ui/spice-web-client/unittest/inputmanager.test.js create mode 100644 ui/spice-web-client/unittest/keymap.test.js create mode 100644 ui/spice-web-client/unittest/packetcontroller.test.js create mode 100644 ui/spice-web-client/unittest/packetextractor.test.js create mode 100644 ui/spice-web-client/unittest/packetfactory.test.js create mode 100644 ui/spice-web-client/unittest/packetlinkfactory.test.js create mode 100644 ui/spice-web-client/unittest/packetprocess.test.js create mode 100644 ui/spice-web-client/unittest/packetreassembler.test.js create mode 100644 ui/spice-web-client/unittest/queue.test.js create mode 100644 ui/spice-web-client/unittest/reassemblerfactory.test.js create mode 100644 ui/spice-web-client/unittest/runqueue.test.js create mode 100644 ui/spice-web-client/unittest/sizedefiner.test.js create mode 100644 ui/spice-web-client/unittest/socket.test.js create mode 100644 ui/spice-web-client/unittest/socketqueue.test.js create mode 100644 ui/spice-web-client/unittest/some.html create mode 100644 ui/spice-web-client/unittest/spicechannel.test.js create mode 100644 ui/spice-web-client/unittest/spiceconnection.test.js create mode 100644 ui/spice-web-client/unittest/stuckkeyshandler.test.js create mode 100644 ui/spice-web-client/unittest/syncasynchandler.test.js create mode 100644 ui/spice-web-client/unittest/tests.js create mode 100644 ui/spice-web-client/unittest/timelapsedetector.test.js create mode 100644 ui/spice-web-client/unittest/viewqueue.test.js -- 2.7.4

Hi Pavel! Thanks for your patch. It is the first time I heard about spice-web-client (maybe I need to read more news =]). Could you tell me the benefits over spice-html5? My only concern is that adding external JS files into Wok project will make more difficult to have Wok into official Linux distributions (which was an issue in past). Is there any CDN available for spice-web-client? Any way, I will give it a try and share my thoughts later. Thanks again. Regards, On Fri, Jan 12, 2018 at 10:57 PM, <pgurenko@gmail.com> wrote:
From: Pavel Gurenko <pgurenko@gmail.com>
Hi, this is the integration of the spice-web-client ( https://github.com/eyeos/spice-web-client) instead of spice-html5. It has almost all the features that spice supports, performant and, most important supports qxl. Patch tested only against 2.5 and qxl and resizing are just great. Please take a look and say what you think of the general idea/what to improve. Thanks!
Pavel Gurenko (3): removes spice-html5; adds spice-web-client adds automakes for spice-web-client changes api calls for spice-web-client
config.py.in | 15 +- configure.ac | 16 +- contrib/DEBIAN/control.in | 1 - ui/Makefile.am | 2 +- ui/js/src/kimchi.api.js | 8 +- ui/spice-html5/Makefile.am | 25 - ui/spice-html5/atKeynames.js | 183 - ui/spice-html5/bitmap.js | 51 - ui/spice-html5/css/Makefile.am | 20 - ui/spice-html5/css/spice.css | 118 - ui/spice-html5/cursor.js | 110 - ui/spice-html5/display.js | 823 -- ui/spice-html5/enums.js | 324 - ui/spice-html5/inputs.js | 280 - ui/spice-html5/lz.js | 166 - ui/spice-html5/main.js | 231 - ui/spice-html5/pages/Makefile.am | 20 - ui/spice-html5/pages/spice_auto.html | 200 - ui/spice-html5/playback.js | 278 - ui/spice-html5/png.js | 256 - ui/spice-html5/quic.js | 1335 --- ui/spice-html5/resize.js | 70 - ui/spice-html5/simulatecursor.js | 202 - ui/spice-html5/spicearraybuffer.js | 58 - ui/spice-html5/spiceconn.js | 460 - ui/spice-html5/spicedataview.js | 120 - ui/spice-html5/spicemsg.js | 1047 --- ui/spice-html5/spicetype.js | 473 -- ui/spice-html5/thirdparty/Makefile.am | 20 - ui/spice-html5/thirdparty/jsbn.js | 589 -- ui/spice-html5/thirdparty/prng4.js | 79 - ui/spice-html5/thirdparty/rng.js | 102 - ui/spice-html5/thirdparty/rsa.js | 146 - ui/spice-html5/thirdparty/sha1.js | 346 - ui/spice-html5/ticket.js | 250 - ui/spice-html5/utils.js | 265 - ui/spice-html5/webm.js | 553 -- ui/spice-html5/wire.js | 123 - ui/spice-web-client/LICENSE | 8 + ui/spice-web-client/Makefile.am | 23 + ui/spice-web-client/README.md | 99 + ui/spice-web-client/application/Makefile.am | 20 + ui/spice-web-client/application/WorkerProcess.js | 3363 ++++++++ ui/spice-web-client/application/agent.js | 242 + ui/spice-web-client/application/application.js | 483 ++ ui/spice-web-client/application/clientgui.js | 639 ++ ui/spice-web-client/application/imagecache.js | 87 + ui/spice-web-client/application/inputmanager.js | 121 + ui/spice-web-client/application/packetfactory.js | 190 + ui/spice-web-client/application/packetfilter.js | 110 + ui/spice-web-client/application/packetprocess.js | 80 + ui/spice-web-client/application/rasteroperation.js | 129 + ui/spice-web-client/application/spiceconnection.js | 200 + ui/spice-web-client/application/stream.js | 51 + ui/spice-web-client/application/virtualmouse.js | 95 + ui/spice-web-client/benchmark.html | 117 + ui/spice-web-client/commit-stage.sh | 19 + ui/spice-web-client/eyeos128.png | Bin 0 -> 1645 bytes ui/spice-web-client/index.html | 187 + ui/spice-web-client/keymaps/Makefile.am | 20 + ui/spice-web-client/keymaps/keymap.js | 129 + ui/spice-web-client/keymaps/keymapes.js | 251 + ui/spice-web-client/keymaps/keymapit.js | 215 + ui/spice-web-client/keymaps/keymapus.js | 193 + ui/spice-web-client/lib/AsyncConsumer.js | 206 + ui/spice-web-client/lib/AsyncWorker.js | 63 + ui/spice-web-client/lib/CollisionDetector.js | 40 + ui/spice-web-client/lib/DataLogger.js | 208 + ui/spice-web-client/lib/GenericObjectPool.js | 126 + ui/spice-web-client/lib/GlobalPool.js | 114 + ui/spice-web-client/lib/ImageUncompressor.js | 141 + ui/spice-web-client/lib/IntegrationBenchmark.js | 77 + ui/spice-web-client/lib/Makefile.am | 23 + ui/spice-web-client/lib/PacketWorkerIdentifier.js | 116 + ui/spice-web-client/lib/SyncAsyncHandler.js | 57 + ui/spice-web-client/lib/base64.js | 279 + ui/spice-web-client/lib/biginteger.js | 1621 ++++ ui/spice-web-client/lib/bowser.js | 257 + ui/spice-web-client/lib/displayRouter.js | 84 + ui/spice-web-client/lib/encrypt.js | 172 + ui/spice-web-client/lib/flipper.js | 52 + ui/spice-web-client/lib/graphic.js | 1232 +++ ui/spice-web-client/lib/graphicdebug.js | 224 + ui/spice-web-client/lib/images/Makefile.am | 20 + ui/spice-web-client/lib/images/bitmap.js | 173 + ui/spice-web-client/lib/images/jsquic_family.js | 65 + ui/spice-web-client/lib/images/jsquic_rgba.js | 324 + .../lib/images/jsquic_uncompress.js | 511 ++ ui/spice-web-client/lib/images/lz.js | 698 ++ ui/spice-web-client/lib/images/png.js | 256 + ui/spice-web-client/lib/jquery-2.0.3.js | 8829 ++++++++++++++++++++ ui/spice-web-client/lib/jquery-mousewheel.js | 84 + ui/spice-web-client/lib/jsbn.js | 559 ++ ui/spice-web-client/lib/jsbn2.js | 656 ++ ui/spice-web-client/lib/modernizr.js | 20 + ui/spice-web-client/lib/pixastic.js | 3225 +++++++ ui/spice-web-client/lib/prettyprint.js | 775 ++ ui/spice-web-client/lib/prng4.js | 45 + ui/spice-web-client/lib/queue.js | 272 + ui/spice-web-client/lib/rasterEngine.js | 542 ++ ui/spice-web-client/lib/rng.js | 68 + ui/spice-web-client/lib/runqueue.js | 115 + ui/spice-web-client/lib/sha1.js | 105 + ui/spice-web-client/lib/stuckkeyshandler.js | 122 + ui/spice-web-client/lib/timelapsedetector.js | 72 + ui/spice-web-client/lib/utils.js | 337 + ui/spice-web-client/lib/virtualjoystick.js | 351 + ui/spice-web-client/network/Makefile.am | 20 + ui/spice-web-client/network/busconnection.js | 208 + ui/spice-web-client/network/clusternodechooser.js | 62 + ui/spice-web-client/network/connectioncontrol.js | 69 + ui/spice-web-client/network/packetcontroller.js | 67 + ui/spice-web-client/network/packetextractor.js | 77 + ui/spice-web-client/network/packetlinkfactory.js | 77 + ui/spice-web-client/network/packetreassembler.js | 80 + ui/spice-web-client/network/reassemblerfactory.js | 52 + ui/spice-web-client/network/sizedefiner.js | 99 + ui/spice-web-client/network/socket.js | 131 + ui/spice-web-client/network/socketqueue.js | 98 + ui/spice-web-client/network/spicechannel.js | 226 + ui/spice-web-client/network/websocketwrapper.js | 88 + ui/spice-web-client/package.json | 16 + ui/spice-web-client/process/Makefile.am | 20 + ui/spice-web-client/process/busprocess.js | 247 + ui/spice-web-client/process/cursorprocess.js | 83 + ui/spice-web-client/process/displaypreprocess.js | 119 + ui/spice-web-client/process/displayprocess.js | 174 + ui/spice-web-client/process/inputprocess.js | 86 + ui/spice-web-client/process/mainprocess.js | 52 + ui/spice-web-client/process/playbackprocess.js | 201 + ui/spice-web-client/resources/Makefile.am | 20 + ui/spice-web-client/resources/magnifier.png | Bin 0 -> 11181 bytes ui/spice-web-client/resources/mouse.png | Bin 0 -> 381 bytes ui/spice-web-client/resources/mouse_cursor.gif | Bin 0 -> 959 bytes ui/spice-web-client/resources/mouse_cursor.png | Bin 0 -> 2258 bytes ui/spice-web-client/run.js | 255 + ui/spice-web-client/sonar.properties | 13 + ui/spice-web-client/spiceobjects/Makefile.am | 22 + .../spiceobjects/generated/Makefile.am | 20 + .../spiceobjects/generated/protocol.js | 517 ++ ui/spice-web-client/spiceobjects/spiceobjects.js | 3312 ++++++++ ui/spice-web-client/spiceproxy/.gitignore | 2 + ui/spice-web-client/spiceproxy/.npmignore | 0 ui/spice-web-client/spiceproxy/Makefile.am | 20 + ui/spice-web-client/spiceproxy/concatenator.js | 46 + ui/spice-web-client/spiceproxy/filelist.js | 6 + ui/spice-web-client/spiceproxy/globalpool.js | 51 + ui/spice-web-client/spiceproxy/package.json | 8 + ui/spice-web-client/spiceproxy/socket.js | 55 + ui/spice-web-client/spiceproxy/spicechannel.js | 27 + ui/spice-web-client/swcanvas/Makefile.am | 20 + ui/spice-web-client/swcanvas/benchmark.html | 31 + ui/spice-web-client/swcanvas/cat.jpg | Bin 0 -> 21251 bytes ui/spice-web-client/swcanvas/swcanvas.js | 63 + ui/spice-web-client/swcanvas/test.html | 72 + ui/spice-web-client/unittest/application.test.js | 121 + ui/spice-web-client/unittest/busconnection.test.js | 127 + ui/spice-web-client/unittest/busprocess.test.js | 46 + ui/spice-web-client/unittest/clientgui.test.js | 166 + .../unittest/clusternodechooser.test.js | 66 + .../unittest/collisiondetector.test.js | 63 + .../unittest/connectioncontrol.test.js | 43 + .../unittest/displayprocess.test.js | 99 + ui/spice-web-client/unittest/displayrouter.test.js | 31 + ui/spice-web-client/unittest/eventobject.test.js | 69 + ui/spice-web-client/unittest/graphic.test.js | 128 + ui/spice-web-client/unittest/graphictest.test.js | 64 + .../SPICE_MSG_DISPLAY_DRAW_ALPHA_BLEND_login_page | 1 + .../SPICE_MSG_DISPLAY_DRAW_BLACKNESS_login_page | 1 + .../SPICE_MSG_DISPLAY_DRAW_COPY_-_JPEG_ALPHA | 1 + .../SPICE_MSG_DISPLAY_DRAW_COPY_explorer_icon | 1 + .../SPICE_MSG_DISPLAY_DRAW_COPY_start_button | 1 + ...CE_MSG_DISPLAY_DRAW_COPY_user_icon_windows_menu | 1 + .../SPICE_MSG_DISPLAY_DRAW_COPY_windows_menu | 1 + .../graphictestfiles/SPICE_MSG_DISPLAY_DRAW_FILL | 1 + ...ICE_MSG_DISPLAY_DRAW_STROKE_libreoffice_tooltip | 1 + .../SPICE_MSG_DISPLAY_DRAW_TEXT_login_page | 1 + .../unittest/graphictestfiles/uris.js | 11 + .../unittest/imageuncompressor.test.js | 194 + ui/spice-web-client/unittest/inputmanager.test.js | 262 + ui/spice-web-client/unittest/keymap.test.js | 17 + .../unittest/packetcontroller.test.js | 92 + .../unittest/packetextractor.test.js | 92 + ui/spice-web-client/unittest/packetfactory.test.js | 6 + .../unittest/packetlinkfactory.test.js | 64 + ui/spice-web-client/unittest/packetprocess.test.js | 44 + .../unittest/packetreassembler.test.js | 59 + ui/spice-web-client/unittest/queue.test.js | 94 + .../unittest/reassemblerfactory.test.js | 0 ui/spice-web-client/unittest/runqueue.test.js | 104 + ui/spice-web-client/unittest/sizedefiner.test.js | 89 + ui/spice-web-client/unittest/socket.test.js | 80 + ui/spice-web-client/unittest/socketqueue.test.js | 97 + ui/spice-web-client/unittest/some.html | 9 + ui/spice-web-client/unittest/spicechannel.test.js | 179 + .../unittest/spiceconnection.test.js | 83 + .../unittest/stuckkeyshandler.test.js | 192 + .../unittest/syncasynchandler.test.js | 62 + ui/spice-web-client/unittest/tests.js | 117 + .../unittest/timelapsedetector.test.js | 54 + ui/spice-web-client/unittest/viewqueue.test.js | 94 + 201 files changed, 40448 insertions(+), 9344 deletions(-) delete mode 100644 ui/spice-html5/Makefile.am delete mode 100644 ui/spice-html5/atKeynames.js delete mode 100644 ui/spice-html5/bitmap.js delete mode 100644 ui/spice-html5/css/Makefile.am delete mode 100644 ui/spice-html5/css/spice.css delete mode 100644 ui/spice-html5/cursor.js delete mode 100644 ui/spice-html5/display.js delete mode 100644 ui/spice-html5/enums.js delete mode 100644 ui/spice-html5/inputs.js delete mode 100644 ui/spice-html5/lz.js delete mode 100644 ui/spice-html5/main.js delete mode 100644 ui/spice-html5/pages/Makefile.am delete mode 100644 ui/spice-html5/pages/spice_auto.html delete mode 100644 ui/spice-html5/playback.js delete mode 100644 ui/spice-html5/png.js delete mode 100644 ui/spice-html5/quic.js delete mode 100644 ui/spice-html5/resize.js delete mode 100644 ui/spice-html5/simulatecursor.js delete mode 100644 ui/spice-html5/spicearraybuffer.js delete mode 100644 ui/spice-html5/spiceconn.js delete mode 100644 ui/spice-html5/spicedataview.js delete mode 100644 ui/spice-html5/spicemsg.js delete mode 100644 ui/spice-html5/spicetype.js delete mode 100644 ui/spice-html5/thirdparty/Makefile.am delete mode 100644 ui/spice-html5/thirdparty/jsbn.js delete mode 100644 ui/spice-html5/thirdparty/prng4.js delete mode 100644 ui/spice-html5/thirdparty/rng.js delete mode 100644 ui/spice-html5/thirdparty/rsa.js delete mode 100644 ui/spice-html5/thirdparty/sha1.js delete mode 100644 ui/spice-html5/ticket.js delete mode 100644 ui/spice-html5/utils.js delete mode 100644 ui/spice-html5/webm.js delete mode 100644 ui/spice-html5/wire.js create mode 100644 ui/spice-web-client/LICENSE create mode 100644 ui/spice-web-client/Makefile.am create mode 100644 ui/spice-web-client/README.md create mode 100644 ui/spice-web-client/application/Makefile.am create mode 100644 ui/spice-web-client/application/WorkerProcess.js create mode 100644 ui/spice-web-client/application/agent.js create mode 100644 ui/spice-web-client/application/application.js create mode 100644 ui/spice-web-client/application/clientgui.js create mode 100644 ui/spice-web-client/application/imagecache.js create mode 100644 ui/spice-web-client/application/inputmanager.js create mode 100644 ui/spice-web-client/application/packetfactory.js create mode 100644 ui/spice-web-client/application/packetfilter.js create mode 100644 ui/spice-web-client/application/packetprocess.js create mode 100644 ui/spice-web-client/application/rasteroperation.js create mode 100644 ui/spice-web-client/application/spiceconnection.js create mode 100644 ui/spice-web-client/application/stream.js create mode 100644 ui/spice-web-client/application/virtualmouse.js create mode 100644 ui/spice-web-client/benchmark.html create mode 100755 ui/spice-web-client/commit-stage.sh create mode 100644 ui/spice-web-client/eyeos128.png create mode 100644 ui/spice-web-client/index.html create mode 100644 ui/spice-web-client/keymaps/Makefile.am create mode 100644 ui/spice-web-client/keymaps/keymap.js create mode 100644 ui/spice-web-client/keymaps/keymapes.js create mode 100644 ui/spice-web-client/keymaps/keymapit.js create mode 100644 ui/spice-web-client/keymaps/keymapus.js create mode 100644 ui/spice-web-client/lib/AsyncConsumer.js create mode 100644 ui/spice-web-client/lib/AsyncWorker.js create mode 100644 ui/spice-web-client/lib/CollisionDetector.js create mode 100644 ui/spice-web-client/lib/DataLogger.js create mode 100644 ui/spice-web-client/lib/GenericObjectPool.js create mode 100644 ui/spice-web-client/lib/GlobalPool.js create mode 100644 ui/spice-web-client/lib/ImageUncompressor.js create mode 100644 ui/spice-web-client/lib/IntegrationBenchmark.js create mode 100644 ui/spice-web-client/lib/Makefile.am create mode 100644 ui/spice-web-client/lib/PacketWorkerIdentifier.js create mode 100644 ui/spice-web-client/lib/SyncAsyncHandler.js create mode 100644 ui/spice-web-client/lib/base64.js create mode 100644 ui/spice-web-client/lib/biginteger.js create mode 100644 ui/spice-web-client/lib/bowser.js create mode 100644 ui/spice-web-client/lib/displayRouter.js create mode 100644 ui/spice-web-client/lib/encrypt.js create mode 100644 ui/spice-web-client/lib/flipper.js create mode 100644 ui/spice-web-client/lib/graphic.js create mode 100644 ui/spice-web-client/lib/graphicdebug.js create mode 100644 ui/spice-web-client/lib/images/Makefile.am create mode 100644 ui/spice-web-client/lib/images/bitmap.js create mode 100644 ui/spice-web-client/lib/images/jsquic_family.js create mode 100644 ui/spice-web-client/lib/images/jsquic_rgba.js create mode 100644 ui/spice-web-client/lib/images/jsquic_uncompress.js create mode 100644 ui/spice-web-client/lib/images/lz.js create mode 100644 ui/spice-web-client/lib/images/png.js create mode 100644 ui/spice-web-client/lib/jquery-2.0.3.js create mode 100644 ui/spice-web-client/lib/jquery-mousewheel.js create mode 100644 ui/spice-web-client/lib/jsbn.js create mode 100644 ui/spice-web-client/lib/jsbn2.js create mode 100644 ui/spice-web-client/lib/modernizr.js create mode 100644 ui/spice-web-client/lib/pixastic.js create mode 100644 ui/spice-web-client/lib/prettyprint.js create mode 100644 ui/spice-web-client/lib/prng4.js create mode 100644 ui/spice-web-client/lib/queue.js create mode 100644 ui/spice-web-client/lib/rasterEngine.js create mode 100644 ui/spice-web-client/lib/rng.js create mode 100644 ui/spice-web-client/lib/runqueue.js create mode 100644 ui/spice-web-client/lib/sha1.js create mode 100644 ui/spice-web-client/lib/stuckkeyshandler.js create mode 100644 ui/spice-web-client/lib/timelapsedetector.js create mode 100644 ui/spice-web-client/lib/utils.js create mode 100644 ui/spice-web-client/lib/virtualjoystick.js create mode 100644 ui/spice-web-client/network/Makefile.am create mode 100644 ui/spice-web-client/network/busconnection.js create mode 100644 ui/spice-web-client/network/clusternodechooser.js create mode 100644 ui/spice-web-client/network/connectioncontrol.js create mode 100644 ui/spice-web-client/network/packetcontroller.js create mode 100644 ui/spice-web-client/network/packetextractor.js create mode 100644 ui/spice-web-client/network/packetlinkfactory.js create mode 100644 ui/spice-web-client/network/packetreassembler.js create mode 100644 ui/spice-web-client/network/reassemblerfactory.js create mode 100644 ui/spice-web-client/network/sizedefiner.js create mode 100644 ui/spice-web-client/network/socket.js create mode 100644 ui/spice-web-client/network/socketqueue.js create mode 100644 ui/spice-web-client/network/spicechannel.js create mode 100644 ui/spice-web-client/network/websocketwrapper.js create mode 100644 ui/spice-web-client/package.json create mode 100644 ui/spice-web-client/process/Makefile.am create mode 100644 ui/spice-web-client/process/busprocess.js create mode 100644 ui/spice-web-client/process/cursorprocess.js create mode 100644 ui/spice-web-client/process/displaypreprocess.js create mode 100644 ui/spice-web-client/process/displayprocess.js create mode 100644 ui/spice-web-client/process/inputprocess.js create mode 100644 ui/spice-web-client/process/mainprocess.js create mode 100644 ui/spice-web-client/process/playbackprocess.js create mode 100644 ui/spice-web-client/resources/Makefile.am create mode 100644 ui/spice-web-client/resources/magnifier.png create mode 100644 ui/spice-web-client/resources/mouse.png create mode 100644 ui/spice-web-client/resources/mouse_cursor.gif create mode 100644 ui/spice-web-client/resources/mouse_cursor.png create mode 100644 ui/spice-web-client/run.js create mode 100644 ui/spice-web-client/sonar.properties create mode 100644 ui/spice-web-client/spiceobjects/Makefile.am create mode 100644 ui/spice-web-client/spiceobjects/generated/Makefile.am create mode 100644 ui/spice-web-client/spiceobjects/generated/protocol.js create mode 100644 ui/spice-web-client/spiceobjects/spiceobjects.js create mode 100644 ui/spice-web-client/spiceproxy/.gitignore create mode 100644 ui/spice-web-client/spiceproxy/.npmignore create mode 100644 ui/spice-web-client/spiceproxy/Makefile.am create mode 100755 ui/spice-web-client/spiceproxy/concatenator.js create mode 100644 ui/spice-web-client/spiceproxy/filelist.js create mode 100644 ui/spice-web-client/spiceproxy/globalpool.js create mode 100644 ui/spice-web-client/spiceproxy/package.json create mode 100644 ui/spice-web-client/spiceproxy/socket.js create mode 100644 ui/spice-web-client/spiceproxy/spicechannel.js create mode 100644 ui/spice-web-client/swcanvas/Makefile.am create mode 100644 ui/spice-web-client/swcanvas/benchmark.html create mode 100644 ui/spice-web-client/swcanvas/cat.jpg create mode 100644 ui/spice-web-client/swcanvas/swcanvas.js create mode 100644 ui/spice-web-client/swcanvas/test.html create mode 100644 ui/spice-web-client/unittest/application.test.js create mode 100644 ui/spice-web-client/unittest/busconnection.test.js create mode 100644 ui/spice-web-client/unittest/busprocess.test.js create mode 100644 ui/spice-web-client/unittest/clientgui.test.js create mode 100644 ui/spice-web-client/unittest/ clusternodechooser.test.js create mode 100644 ui/spice-web-client/unittest/collisiondetector.test.js create mode 100644 ui/spice-web-client/unittest/connectioncontrol.test.js create mode 100644 ui/spice-web-client/unittest/displayprocess.test.js create mode 100644 ui/spice-web-client/unittest/displayrouter.test.js create mode 100644 ui/spice-web-client/unittest/eventobject.test.js create mode 100644 ui/spice-web-client/unittest/graphic.test.js create mode 100644 ui/spice-web-client/unittest/graphictest.test.js create mode 100644 ui/spice-web-client/unittest/ graphictestfiles/SPICE_MSG_DISPLAY_DRAW_ALPHA_BLEND_login_page create mode 100644 ui/spice-web-client/unittest/ graphictestfiles/SPICE_MSG_DISPLAY_DRAW_BLACKNESS_login_page create mode 100644 ui/spice-web-client/unittest/ graphictestfiles/SPICE_MSG_DISPLAY_DRAW_COPY_-_JPEG_ALPHA create mode 100644 ui/spice-web-client/unittest/ graphictestfiles/SPICE_MSG_DISPLAY_DRAW_COPY_explorer_icon create mode 100644 ui/spice-web-client/unittest/ graphictestfiles/SPICE_MSG_DISPLAY_DRAW_COPY_start_button create mode 100644 ui/spice-web-client/unittest/ graphictestfiles/SPICE_MSG_DISPLAY_DRAW_COPY_user_icon_windows_menu create mode 100644 ui/spice-web-client/unittest/ graphictestfiles/SPICE_MSG_DISPLAY_DRAW_COPY_windows_menu create mode 100644 ui/spice-web-client/unittest/ graphictestfiles/SPICE_MSG_DISPLAY_DRAW_FILL create mode 100644 ui/spice-web-client/unittest/ graphictestfiles/SPICE_MSG_DISPLAY_DRAW_STROKE_libreoffice_tooltip create mode 100644 ui/spice-web-client/unittest/ graphictestfiles/SPICE_MSG_DISPLAY_DRAW_TEXT_login_page create mode 100644 ui/spice-web-client/unittest/graphictestfiles/uris.js create mode 100644 ui/spice-web-client/unittest/imageuncompressor.test.js create mode 100644 ui/spice-web-client/unittest/inputmanager.test.js create mode 100644 ui/spice-web-client/unittest/keymap.test.js create mode 100644 ui/spice-web-client/unittest/packetcontroller.test.js create mode 100644 ui/spice-web-client/unittest/packetextractor.test.js create mode 100644 ui/spice-web-client/unittest/packetfactory.test.js create mode 100644 ui/spice-web-client/unittest/packetlinkfactory.test.js create mode 100644 ui/spice-web-client/unittest/packetprocess.test.js create mode 100644 ui/spice-web-client/unittest/packetreassembler.test.js create mode 100644 ui/spice-web-client/unittest/queue.test.js create mode 100644 ui/spice-web-client/unittest/ reassemblerfactory.test.js create mode 100644 ui/spice-web-client/unittest/runqueue.test.js create mode 100644 ui/spice-web-client/unittest/sizedefiner.test.js create mode 100644 ui/spice-web-client/unittest/socket.test.js create mode 100644 ui/spice-web-client/unittest/socketqueue.test.js create mode 100644 ui/spice-web-client/unittest/some.html create mode 100644 ui/spice-web-client/unittest/spicechannel.test.js create mode 100644 ui/spice-web-client/unittest/spiceconnection.test.js create mode 100644 ui/spice-web-client/unittest/stuckkeyshandler.test.js create mode 100644 ui/spice-web-client/unittest/syncasynchandler.test.js create mode 100644 ui/spice-web-client/unittest/tests.js create mode 100644 ui/spice-web-client/unittest/timelapsedetector.test.js create mode 100644 ui/spice-web-client/unittest/viewqueue.test.js
-- 2.7.4
_______________________________________________ Kimchi-devel mailing list Kimchi-devel@ovirt.org http://lists.ovirt.org/mailman/listinfo/kimchi-devel
-- Aline Manera

Hi Aline, The spice-html5 does not support the qxl drivers for Windows VMs and it looks like qxl has the best performance for now. While spice-html5 is more like proof-of-concept, a bit slow and in general not really supported right now. On the other hand, spice-web-client is performant, production solution and supports almost everything the spice can support. The pull request is mostly the drop-in replacement, spice-html5 web client JavaScript gets replaced with spice-web-client JavaScript. I used the latest version of spice-web-client from github: https://github.com/eyeos/spice-web-client - unfortunately guys don't have releases in CDN. Sorry for the patch did not fit into the email, - you can use my pull request in github. Pavel On Tue, Mar 27, 2018 at 4:29 PM aline.manera@gmail.com < aline.manera@gmail.com> wrote:
Hi Pavel!
Thanks for your patch.
It is the first time I heard about spice-web-client (maybe I need to read more news =]). Could you tell me the benefits over spice-html5?
My only concern is that adding external JS files into Wok project will make more difficult to have Wok into official Linux distributions (which was an issue in past). Is there any CDN available for spice-web-client?
Any way, I will give it a try and share my thoughts later.
Thanks again.
Regards,
On Fri, Jan 12, 2018 at 10:57 PM, <pgurenko@gmail.com> wrote:
From: Pavel Gurenko <pgurenko@gmail.com>
Hi, this is the integration of the spice-web-client ( https://github.com/eyeos/spice-web-client) instead of spice-html5. It has almost all the features that spice supports, performant and, most important supports qxl. Patch tested only against 2.5 and qxl and resizing are just great. Please take a look and say what you think of the general idea/what to improve. Thanks!
Pavel Gurenko (3): removes spice-html5; adds spice-web-client adds automakes for spice-web-client changes api calls for spice-web-client
config.py.in | 15 +- configure.ac | 16 +- contrib/DEBIAN/control.in | 1 - ui/Makefile.am | 2 +- ui/js/src/kimchi.api.js | 8 +- ui/spice-html5/Makefile.am | 25 - ui/spice-html5/atKeynames.js | 183 - ui/spice-html5/bitmap.js | 51 - ui/spice-html5/css/Makefile.am | 20 - ui/spice-html5/css/spice.css | 118 - ui/spice-html5/cursor.js | 110 - ui/spice-html5/display.js | 823 -- ui/spice-html5/enums.js | 324 - ui/spice-html5/inputs.js | 280 - ui/spice-html5/lz.js | 166 - ui/spice-html5/main.js | 231 - ui/spice-html5/pages/Makefile.am | 20 - ui/spice-html5/pages/spice_auto.html | 200 - ui/spice-html5/playback.js | 278 - ui/spice-html5/png.js | 256 - ui/spice-html5/quic.js | 1335 --- ui/spice-html5/resize.js | 70 - ui/spice-html5/simulatecursor.js | 202 - ui/spice-html5/spicearraybuffer.js | 58 - ui/spice-html5/spiceconn.js | 460 - ui/spice-html5/spicedataview.js | 120 - ui/spice-html5/spicemsg.js | 1047 --- ui/spice-html5/spicetype.js | 473 -- ui/spice-html5/thirdparty/Makefile.am | 20 - ui/spice-html5/thirdparty/jsbn.js | 589 -- ui/spice-html5/thirdparty/prng4.js | 79 - ui/spice-html5/thirdparty/rng.js | 102 - ui/spice-html5/thirdparty/rsa.js | 146 - ui/spice-html5/thirdparty/sha1.js | 346 - ui/spice-html5/ticket.js | 250 - ui/spice-html5/utils.js | 265 - ui/spice-html5/webm.js | 553 -- ui/spice-html5/wire.js | 123 - ui/spice-web-client/LICENSE | 8 + ui/spice-web-client/Makefile.am | 23 + ui/spice-web-client/README.md | 99 + ui/spice-web-client/application/Makefile.am | 20 + ui/spice-web-client/application/WorkerProcess.js | 3363 ++++++++ ui/spice-web-client/application/agent.js | 242 + ui/spice-web-client/application/application.js | 483 ++ ui/spice-web-client/application/clientgui.js | 639 ++ ui/spice-web-client/application/imagecache.js | 87 + ui/spice-web-client/application/inputmanager.js | 121 + ui/spice-web-client/application/packetfactory.js | 190 + ui/spice-web-client/application/packetfilter.js | 110 + ui/spice-web-client/application/packetprocess.js | 80 + ui/spice-web-client/application/rasteroperation.js | 129 + ui/spice-web-client/application/spiceconnection.js | 200 + ui/spice-web-client/application/stream.js | 51 + ui/spice-web-client/application/virtualmouse.js | 95 + ui/spice-web-client/benchmark.html | 117 + ui/spice-web-client/commit-stage.sh | 19 + ui/spice-web-client/eyeos128.png | Bin 0 -> 1645 bytes ui/spice-web-client/index.html | 187 + ui/spice-web-client/keymaps/Makefile.am | 20 + ui/spice-web-client/keymaps/keymap.js | 129 + ui/spice-web-client/keymaps/keymapes.js | 251 + ui/spice-web-client/keymaps/keymapit.js | 215 + ui/spice-web-client/keymaps/keymapus.js | 193 + ui/spice-web-client/lib/AsyncConsumer.js | 206 + ui/spice-web-client/lib/AsyncWorker.js | 63 + ui/spice-web-client/lib/CollisionDetector.js | 40 + ui/spice-web-client/lib/DataLogger.js | 208 + ui/spice-web-client/lib/GenericObjectPool.js | 126 + ui/spice-web-client/lib/GlobalPool.js | 114 + ui/spice-web-client/lib/ImageUncompressor.js | 141 + ui/spice-web-client/lib/IntegrationBenchmark.js | 77 + ui/spice-web-client/lib/Makefile.am | 23 + ui/spice-web-client/lib/PacketWorkerIdentifier.js | 116 + ui/spice-web-client/lib/SyncAsyncHandler.js | 57 + ui/spice-web-client/lib/base64.js | 279 + ui/spice-web-client/lib/biginteger.js | 1621 ++++ ui/spice-web-client/lib/bowser.js | 257 + ui/spice-web-client/lib/displayRouter.js | 84 + ui/spice-web-client/lib/encrypt.js | 172 + ui/spice-web-client/lib/flipper.js | 52 + ui/spice-web-client/lib/graphic.js | 1232 +++ ui/spice-web-client/lib/graphicdebug.js | 224 + ui/spice-web-client/lib/images/Makefile.am | 20 + ui/spice-web-client/lib/images/bitmap.js | 173 + ui/spice-web-client/lib/images/jsquic_family.js | 65 + ui/spice-web-client/lib/images/jsquic_rgba.js | 324 + .../lib/images/jsquic_uncompress.js | 511 ++ ui/spice-web-client/lib/images/lz.js | 698 ++ ui/spice-web-client/lib/images/png.js | 256 + ui/spice-web-client/lib/jquery-2.0.3.js | 8829 ++++++++++++++++++++ ui/spice-web-client/lib/jquery-mousewheel.js | 84 + ui/spice-web-client/lib/jsbn.js | 559 ++ ui/spice-web-client/lib/jsbn2.js | 656 ++ ui/spice-web-client/lib/modernizr.js | 20 + ui/spice-web-client/lib/pixastic.js | 3225 +++++++ ui/spice-web-client/lib/prettyprint.js | 775 ++ ui/spice-web-client/lib/prng4.js | 45 + ui/spice-web-client/lib/queue.js | 272 + ui/spice-web-client/lib/rasterEngine.js | 542 ++ ui/spice-web-client/lib/rng.js | 68 + ui/spice-web-client/lib/runqueue.js | 115 + ui/spice-web-client/lib/sha1.js | 105 + ui/spice-web-client/lib/stuckkeyshandler.js | 122 + ui/spice-web-client/lib/timelapsedetector.js | 72 + ui/spice-web-client/lib/utils.js | 337 + ui/spice-web-client/lib/virtualjoystick.js | 351 + ui/spice-web-client/network/Makefile.am | 20 + ui/spice-web-client/network/busconnection.js | 208 + ui/spice-web-client/network/clusternodechooser.js | 62 + ui/spice-web-client/network/connectioncontrol.js | 69 + ui/spice-web-client/network/packetcontroller.js | 67 + ui/spice-web-client/network/packetextractor.js | 77 + ui/spice-web-client/network/packetlinkfactory.js | 77 + ui/spice-web-client/network/packetreassembler.js | 80 + ui/spice-web-client/network/reassemblerfactory.js | 52 + ui/spice-web-client/network/sizedefiner.js | 99 + ui/spice-web-client/network/socket.js | 131 + ui/spice-web-client/network/socketqueue.js | 98 + ui/spice-web-client/network/spicechannel.js | 226 + ui/spice-web-client/network/websocketwrapper.js | 88 + ui/spice-web-client/package.json | 16 + ui/spice-web-client/process/Makefile.am | 20 + ui/spice-web-client/process/busprocess.js | 247 + ui/spice-web-client/process/cursorprocess.js | 83 + ui/spice-web-client/process/displaypreprocess.js | 119 + ui/spice-web-client/process/displayprocess.js | 174 + ui/spice-web-client/process/inputprocess.js | 86 + ui/spice-web-client/process/mainprocess.js | 52 + ui/spice-web-client/process/playbackprocess.js | 201 + ui/spice-web-client/resources/Makefile.am | 20 + ui/spice-web-client/resources/magnifier.png | Bin 0 -> 11181 bytes ui/spice-web-client/resources/mouse.png | Bin 0 -> 381 bytes ui/spice-web-client/resources/mouse_cursor.gif | Bin 0 -> 959 bytes ui/spice-web-client/resources/mouse_cursor.png | Bin 0 -> 2258 bytes ui/spice-web-client/run.js | 255 + ui/spice-web-client/sonar.properties | 13 + ui/spice-web-client/spiceobjects/Makefile.am | 22 + .../spiceobjects/generated/Makefile.am | 20 + .../spiceobjects/generated/protocol.js | 517 ++ ui/spice-web-client/spiceobjects/spiceobjects.js | 3312 ++++++++ ui/spice-web-client/spiceproxy/.gitignore | 2 + ui/spice-web-client/spiceproxy/.npmignore | 0 ui/spice-web-client/spiceproxy/Makefile.am | 20 + ui/spice-web-client/spiceproxy/concatenator.js | 46 + ui/spice-web-client/spiceproxy/filelist.js | 6 + ui/spice-web-client/spiceproxy/globalpool.js | 51 + ui/spice-web-client/spiceproxy/package.json | 8 + ui/spice-web-client/spiceproxy/socket.js | 55 + ui/spice-web-client/spiceproxy/spicechannel.js | 27 + ui/spice-web-client/swcanvas/Makefile.am | 20 + ui/spice-web-client/swcanvas/benchmark.html | 31 + ui/spice-web-client/swcanvas/cat.jpg | Bin 0 -> 21251 bytes ui/spice-web-client/swcanvas/swcanvas.js | 63 + ui/spice-web-client/swcanvas/test.html | 72 + ui/spice-web-client/unittest/application.test.js | 121 + ui/spice-web-client/unittest/busconnection.test.js | 127 + ui/spice-web-client/unittest/busprocess.test.js | 46 + ui/spice-web-client/unittest/clientgui.test.js | 166 + .../unittest/clusternodechooser.test.js | 66 + .../unittest/collisiondetector.test.js | 63 + .../unittest/connectioncontrol.test.js | 43 + .../unittest/displayprocess.test.js | 99 + ui/spice-web-client/unittest/displayrouter.test.js | 31 + ui/spice-web-client/unittest/eventobject.test.js | 69 + ui/spice-web-client/unittest/graphic.test.js | 128 + ui/spice-web-client/unittest/graphictest.test.js | 64 + .../SPICE_MSG_DISPLAY_DRAW_ALPHA_BLEND_login_page | 1 + .../SPICE_MSG_DISPLAY_DRAW_BLACKNESS_login_page | 1 + .../SPICE_MSG_DISPLAY_DRAW_COPY_-_JPEG_ALPHA | 1 + .../SPICE_MSG_DISPLAY_DRAW_COPY_explorer_icon | 1 + .../SPICE_MSG_DISPLAY_DRAW_COPY_start_button | 1 + ...CE_MSG_DISPLAY_DRAW_COPY_user_icon_windows_menu | 1 + .../SPICE_MSG_DISPLAY_DRAW_COPY_windows_menu | 1 + .../graphictestfiles/SPICE_MSG_DISPLAY_DRAW_FILL | 1 + ...ICE_MSG_DISPLAY_DRAW_STROKE_libreoffice_tooltip | 1 + .../SPICE_MSG_DISPLAY_DRAW_TEXT_login_page | 1 + .../unittest/graphictestfiles/uris.js | 11 + .../unittest/imageuncompressor.test.js | 194 + ui/spice-web-client/unittest/inputmanager.test.js | 262 + ui/spice-web-client/unittest/keymap.test.js | 17 + .../unittest/packetcontroller.test.js | 92 + .../unittest/packetextractor.test.js | 92 + ui/spice-web-client/unittest/packetfactory.test.js | 6 + .../unittest/packetlinkfactory.test.js | 64 + ui/spice-web-client/unittest/packetprocess.test.js | 44 + .../unittest/packetreassembler.test.js | 59 + ui/spice-web-client/unittest/queue.test.js | 94 + .../unittest/reassemblerfactory.test.js | 0 ui/spice-web-client/unittest/runqueue.test.js | 104 + ui/spice-web-client/unittest/sizedefiner.test.js | 89 + ui/spice-web-client/unittest/socket.test.js | 80 + ui/spice-web-client/unittest/socketqueue.test.js | 97 + ui/spice-web-client/unittest/some.html | 9 + ui/spice-web-client/unittest/spicechannel.test.js | 179 + .../unittest/spiceconnection.test.js | 83 + .../unittest/stuckkeyshandler.test.js | 192 + .../unittest/syncasynchandler.test.js | 62 + ui/spice-web-client/unittest/tests.js | 117 + .../unittest/timelapsedetector.test.js | 54 + ui/spice-web-client/unittest/viewqueue.test.js | 94 + 201 files changed, 40448 insertions(+), 9344 deletions(-) delete mode 100644 ui/spice-html5/Makefile.am delete mode 100644 ui/spice-html5/atKeynames.js delete mode 100644 ui/spice-html5/bitmap.js delete mode 100644 ui/spice-html5/css/Makefile.am delete mode 100644 ui/spice-html5/css/spice.css delete mode 100644 ui/spice-html5/cursor.js delete mode 100644 ui/spice-html5/display.js delete mode 100644 ui/spice-html5/enums.js delete mode 100644 ui/spice-html5/inputs.js delete mode 100644 ui/spice-html5/lz.js delete mode 100644 ui/spice-html5/main.js delete mode 100644 ui/spice-html5/pages/Makefile.am delete mode 100644 ui/spice-html5/pages/spice_auto.html delete mode 100644 ui/spice-html5/playback.js delete mode 100644 ui/spice-html5/png.js delete mode 100644 ui/spice-html5/quic.js delete mode 100644 ui/spice-html5/resize.js delete mode 100644 ui/spice-html5/simulatecursor.js delete mode 100644 ui/spice-html5/spicearraybuffer.js delete mode 100644 ui/spice-html5/spiceconn.js delete mode 100644 ui/spice-html5/spicedataview.js delete mode 100644 ui/spice-html5/spicemsg.js delete mode 100644 ui/spice-html5/spicetype.js delete mode 100644 ui/spice-html5/thirdparty/Makefile.am delete mode 100644 ui/spice-html5/thirdparty/jsbn.js delete mode 100644 ui/spice-html5/thirdparty/prng4.js delete mode 100644 ui/spice-html5/thirdparty/rng.js delete mode 100644 ui/spice-html5/thirdparty/rsa.js delete mode 100644 ui/spice-html5/thirdparty/sha1.js delete mode 100644 ui/spice-html5/ticket.js delete mode 100644 ui/spice-html5/utils.js delete mode 100644 ui/spice-html5/webm.js delete mode 100644 ui/spice-html5/wire.js create mode 100644 ui/spice-web-client/LICENSE create mode 100644 ui/spice-web-client/Makefile.am create mode 100644 ui/spice-web-client/README.md create mode 100644 ui/spice-web-client/application/Makefile.am create mode 100644 ui/spice-web-client/application/WorkerProcess.js create mode 100644 ui/spice-web-client/application/agent.js create mode 100644 ui/spice-web-client/application/application.js create mode 100644 ui/spice-web-client/application/clientgui.js create mode 100644 ui/spice-web-client/application/imagecache.js create mode 100644 ui/spice-web-client/application/inputmanager.js create mode 100644 ui/spice-web-client/application/packetfactory.js create mode 100644 ui/spice-web-client/application/packetfilter.js create mode 100644 ui/spice-web-client/application/packetprocess.js create mode 100644 ui/spice-web-client/application/rasteroperation.js create mode 100644 ui/spice-web-client/application/spiceconnection.js create mode 100644 ui/spice-web-client/application/stream.js create mode 100644 ui/spice-web-client/application/virtualmouse.js create mode 100644 ui/spice-web-client/benchmark.html create mode 100755 ui/spice-web-client/commit-stage.sh create mode 100644 ui/spice-web-client/eyeos128.png create mode 100644 ui/spice-web-client/index.html create mode 100644 ui/spice-web-client/keymaps/Makefile.am create mode 100644 ui/spice-web-client/keymaps/keymap.js create mode 100644 ui/spice-web-client/keymaps/keymapes.js create mode 100644 ui/spice-web-client/keymaps/keymapit.js create mode 100644 ui/spice-web-client/keymaps/keymapus.js create mode 100644 ui/spice-web-client/lib/AsyncConsumer.js create mode 100644 ui/spice-web-client/lib/AsyncWorker.js create mode 100644 ui/spice-web-client/lib/CollisionDetector.js create mode 100644 ui/spice-web-client/lib/DataLogger.js create mode 100644 ui/spice-web-client/lib/GenericObjectPool.js create mode 100644 ui/spice-web-client/lib/GlobalPool.js create mode 100644 ui/spice-web-client/lib/ImageUncompressor.js create mode 100644 ui/spice-web-client/lib/IntegrationBenchmark.js create mode 100644 ui/spice-web-client/lib/Makefile.am create mode 100644 ui/spice-web-client/lib/PacketWorkerIdentifier.js create mode 100644 ui/spice-web-client/lib/SyncAsyncHandler.js create mode 100644 ui/spice-web-client/lib/base64.js create mode 100644 ui/spice-web-client/lib/biginteger.js create mode 100644 ui/spice-web-client/lib/bowser.js create mode 100644 ui/spice-web-client/lib/displayRouter.js create mode 100644 ui/spice-web-client/lib/encrypt.js create mode 100644 ui/spice-web-client/lib/flipper.js create mode 100644 ui/spice-web-client/lib/graphic.js create mode 100644 ui/spice-web-client/lib/graphicdebug.js create mode 100644 ui/spice-web-client/lib/images/Makefile.am create mode 100644 ui/spice-web-client/lib/images/bitmap.js create mode 100644 ui/spice-web-client/lib/images/jsquic_family.js create mode 100644 ui/spice-web-client/lib/images/jsquic_rgba.js create mode 100644 ui/spice-web-client/lib/images/jsquic_uncompress.js create mode 100644 ui/spice-web-client/lib/images/lz.js create mode 100644 ui/spice-web-client/lib/images/png.js create mode 100644 ui/spice-web-client/lib/jquery-2.0.3.js create mode 100644 ui/spice-web-client/lib/jquery-mousewheel.js create mode 100644 ui/spice-web-client/lib/jsbn.js create mode 100644 ui/spice-web-client/lib/jsbn2.js create mode 100644 ui/spice-web-client/lib/modernizr.js create mode 100644 ui/spice-web-client/lib/pixastic.js create mode 100644 ui/spice-web-client/lib/prettyprint.js create mode 100644 ui/spice-web-client/lib/prng4.js create mode 100644 ui/spice-web-client/lib/queue.js create mode 100644 ui/spice-web-client/lib/rasterEngine.js create mode 100644 ui/spice-web-client/lib/rng.js create mode 100644 ui/spice-web-client/lib/runqueue.js create mode 100644 ui/spice-web-client/lib/sha1.js create mode 100644 ui/spice-web-client/lib/stuckkeyshandler.js create mode 100644 ui/spice-web-client/lib/timelapsedetector.js create mode 100644 ui/spice-web-client/lib/utils.js create mode 100644 ui/spice-web-client/lib/virtualjoystick.js create mode 100644 ui/spice-web-client/network/Makefile.am create mode 100644 ui/spice-web-client/network/busconnection.js create mode 100644 ui/spice-web-client/network/clusternodechooser.js create mode 100644 ui/spice-web-client/network/connectioncontrol.js create mode 100644 ui/spice-web-client/network/packetcontroller.js create mode 100644 ui/spice-web-client/network/packetextractor.js create mode 100644 ui/spice-web-client/network/packetlinkfactory.js create mode 100644 ui/spice-web-client/network/packetreassembler.js create mode 100644 ui/spice-web-client/network/reassemblerfactory.js create mode 100644 ui/spice-web-client/network/sizedefiner.js create mode 100644 ui/spice-web-client/network/socket.js create mode 100644 ui/spice-web-client/network/socketqueue.js create mode 100644 ui/spice-web-client/network/spicechannel.js create mode 100644 ui/spice-web-client/network/websocketwrapper.js create mode 100644 ui/spice-web-client/package.json create mode 100644 ui/spice-web-client/process/Makefile.am create mode 100644 ui/spice-web-client/process/busprocess.js create mode 100644 ui/spice-web-client/process/cursorprocess.js create mode 100644 ui/spice-web-client/process/displaypreprocess.js create mode 100644 ui/spice-web-client/process/displayprocess.js create mode 100644 ui/spice-web-client/process/inputprocess.js create mode 100644 ui/spice-web-client/process/mainprocess.js create mode 100644 ui/spice-web-client/process/playbackprocess.js create mode 100644 ui/spice-web-client/resources/Makefile.am create mode 100644 ui/spice-web-client/resources/magnifier.png create mode 100644 ui/spice-web-client/resources/mouse.png create mode 100644 ui/spice-web-client/resources/mouse_cursor.gif create mode 100644 ui/spice-web-client/resources/mouse_cursor.png create mode 100644 ui/spice-web-client/run.js create mode 100644 ui/spice-web-client/sonar.properties create mode 100644 ui/spice-web-client/spiceobjects/Makefile.am create mode 100644 ui/spice-web-client/spiceobjects/generated/Makefile.am create mode 100644 ui/spice-web-client/spiceobjects/generated/protocol.js create mode 100644 ui/spice-web-client/spiceobjects/spiceobjects.js create mode 100644 ui/spice-web-client/spiceproxy/.gitignore create mode 100644 ui/spice-web-client/spiceproxy/.npmignore create mode 100644 ui/spice-web-client/spiceproxy/Makefile.am create mode 100755 ui/spice-web-client/spiceproxy/concatenator.js create mode 100644 ui/spice-web-client/spiceproxy/filelist.js create mode 100644 ui/spice-web-client/spiceproxy/globalpool.js create mode 100644 ui/spice-web-client/spiceproxy/package.json create mode 100644 ui/spice-web-client/spiceproxy/socket.js create mode 100644 ui/spice-web-client/spiceproxy/spicechannel.js create mode 100644 ui/spice-web-client/swcanvas/Makefile.am create mode 100644 ui/spice-web-client/swcanvas/benchmark.html create mode 100644 ui/spice-web-client/swcanvas/cat.jpg create mode 100644 ui/spice-web-client/swcanvas/swcanvas.js create mode 100644 ui/spice-web-client/swcanvas/test.html create mode 100644 ui/spice-web-client/unittest/application.test.js create mode 100644 ui/spice-web-client/unittest/busconnection.test.js create mode 100644 ui/spice-web-client/unittest/busprocess.test.js create mode 100644 ui/spice-web-client/unittest/clientgui.test.js create mode 100644 ui/spice-web-client/unittest/clusternodechooser.test.js create mode 100644 ui/spice-web-client/unittest/collisiondetector.test.js create mode 100644 ui/spice-web-client/unittest/connectioncontrol.test.js create mode 100644 ui/spice-web-client/unittest/displayprocess.test.js create mode 100644 ui/spice-web-client/unittest/displayrouter.test.js create mode 100644 ui/spice-web-client/unittest/eventobject.test.js create mode 100644 ui/spice-web-client/unittest/graphic.test.js create mode 100644 ui/spice-web-client/unittest/graphictest.test.js create mode 100644 ui/spice-web-client/unittest/graphictestfiles/SPICE_MSG_DISPLAY_DRAW_ALPHA_BLEND_login_page create mode 100644 ui/spice-web-client/unittest/graphictestfiles/SPICE_MSG_DISPLAY_DRAW_BLACKNESS_login_page create mode 100644 ui/spice-web-client/unittest/graphictestfiles/SPICE_MSG_DISPLAY_DRAW_COPY_-_JPEG_ALPHA create mode 100644 ui/spice-web-client/unittest/graphictestfiles/SPICE_MSG_DISPLAY_DRAW_COPY_explorer_icon create mode 100644 ui/spice-web-client/unittest/graphictestfiles/SPICE_MSG_DISPLAY_DRAW_COPY_start_button create mode 100644 ui/spice-web-client/unittest/graphictestfiles/SPICE_MSG_DISPLAY_DRAW_COPY_user_icon_windows_menu create mode 100644 ui/spice-web-client/unittest/graphictestfiles/SPICE_MSG_DISPLAY_DRAW_COPY_windows_menu create mode 100644 ui/spice-web-client/unittest/graphictestfiles/SPICE_MSG_DISPLAY_DRAW_FILL create mode 100644 ui/spice-web-client/unittest/graphictestfiles/SPICE_MSG_DISPLAY_DRAW_STROKE_libreoffice_tooltip create mode 100644 ui/spice-web-client/unittest/graphictestfiles/SPICE_MSG_DISPLAY_DRAW_TEXT_login_page create mode 100644 ui/spice-web-client/unittest/graphictestfiles/uris.js create mode 100644 ui/spice-web-client/unittest/imageuncompressor.test.js create mode 100644 ui/spice-web-client/unittest/inputmanager.test.js create mode 100644 ui/spice-web-client/unittest/keymap.test.js create mode 100644 ui/spice-web-client/unittest/packetcontroller.test.js create mode 100644 ui/spice-web-client/unittest/packetextractor.test.js create mode 100644 ui/spice-web-client/unittest/packetfactory.test.js create mode 100644 ui/spice-web-client/unittest/packetlinkfactory.test.js create mode 100644 ui/spice-web-client/unittest/packetprocess.test.js create mode 100644 ui/spice-web-client/unittest/packetreassembler.test.js create mode 100644 ui/spice-web-client/unittest/queue.test.js create mode 100644 ui/spice-web-client/unittest/reassemblerfactory.test.js create mode 100644 ui/spice-web-client/unittest/runqueue.test.js create mode 100644 ui/spice-web-client/unittest/sizedefiner.test.js create mode 100644 ui/spice-web-client/unittest/socket.test.js create mode 100644 ui/spice-web-client/unittest/socketqueue.test.js create mode 100644 ui/spice-web-client/unittest/some.html create mode 100644 ui/spice-web-client/unittest/spicechannel.test.js create mode 100644 ui/spice-web-client/unittest/spiceconnection.test.js create mode 100644 ui/spice-web-client/unittest/stuckkeyshandler.test.js create mode 100644 ui/spice-web-client/unittest/syncasynchandler.test.js create mode 100644 ui/spice-web-client/unittest/tests.js create mode 100644 ui/spice-web-client/unittest/timelapsedetector.test.js create mode 100644 ui/spice-web-client/unittest/viewqueue.test.js
-- 2.7.4
_______________________________________________ Kimchi-devel mailing list Kimchi-devel@ovirt.org http://lists.ovirt.org/mailman/listinfo/kimchi-devel
-- Aline Manera

On Wed, Mar 28, 2018 at 8:57 PM, Pavel Gurenko <pgurenko@gmail.com> wrote:
The spice-html5 does not support the qxl drivers for Windows VMs and it looks like qxl has the best performance for now. While spice-html5 is more like proof-of-concept, a bit slow and in general not really supported right now.
On the other hand, spice-web-client is performant, production solution and supports almost everything the spice can support.
The pull request is mostly the drop-in replacement, spice-html5 web client JavaScript gets replaced with spice-web-client JavaScript. I used the latest version of spice-web-client from github: https://github.com/eyeos/spice-web-client - unfortunately guys don't have releases in CDN.
Would this also get rid of mouse acceleration mismatch issues with Windows clients? -- Joni Orponen

If you mean the ones before installing spice guest tools (two cursors), then no, I guess it's not. I had no issues with spice guest tools installed. On Tue, Apr 3, 2018, 2:13 AM Joni Orponen <j.orponen@4teamwork.ch> wrote:
On Wed, Mar 28, 2018 at 8:57 PM, Pavel Gurenko <pgurenko@gmail.com> wrote:
The spice-html5 does not support the qxl drivers for Windows VMs and it looks like qxl has the best performance for now. While spice-html5 is more like proof-of-concept, a bit slow and in general not really supported right now.
On the other hand, spice-web-client is performant, production solution and supports almost everything the spice can support.
The pull request is mostly the drop-in replacement, spice-html5 web client JavaScript gets replaced with spice-web-client JavaScript. I used the latest version of spice-web-client from github: https://github.com/eyeos/spice-web-client - unfortunately guys don't have releases in CDN.
Would this also get rid of mouse acceleration mismatch issues with Windows clients?
-- Joni Orponen _______________________________________________ Kimchi-devel mailing list Kimchi-devel@ovirt.org http://lists.ovirt.org/mailman/listinfo/kimchi-devel

Hi Pavel! I checked the code and I have some suggestions: 1. The new files added for build do not need to contain the IBM copyright as you did not that for IBM (or did you do?) 2. For the new functionality itself, I'd propose to add a build parameter, something like --with-spice-web-client to build the app with spice-web-client, otherwise, use spice-html5. That way, we can have a easier way to move forward with Linux distribution repositories which does not allow third-part JS files into the package. What do you think about that? Regards, On Tue, Apr 3, 2018 at 11:46 AM, Pavel Gurenko <pgurenko@gmail.com> wrote:
If you mean the ones before installing spice guest tools (two cursors), then no, I guess it's not. I had no issues with spice guest tools installed.
On Tue, Apr 3, 2018, 2:13 AM Joni Orponen <j.orponen@4teamwork.ch> wrote:
On Wed, Mar 28, 2018 at 8:57 PM, Pavel Gurenko <pgurenko@gmail.com> wrote:
The spice-html5 does not support the qxl drivers for Windows VMs and it looks like qxl has the best performance for now. While spice-html5 is more like proof-of-concept, a bit slow and in general not really supported right now.
On the other hand, spice-web-client is performant, production solution and supports almost everything the spice can support.
The pull request is mostly the drop-in replacement, spice-html5 web client JavaScript gets replaced with spice-web-client JavaScript. I used the latest version of spice-web-client from github: https://github.com/eyeos/spice-web-client - unfortunately guys don't have releases in CDN.
Would this also get rid of mouse acceleration mismatch issues with Windows clients?
-- Joni Orponen _______________________________________________ Kimchi-devel mailing list Kimchi-devel@ovirt.org http://lists.ovirt.org/mailman/listinfo/kimchi-devel
_______________________________________________ Kimchi-devel mailing list Kimchi-devel@ovirt.org http://lists.ovirt.org/mailman/listinfo/kimchi-devel
-- Aline Manera

Hi Aline, 1. No, just copy-paste:) 2. That is a bit tricky, how to let client know which spice to use? Added comment in PR. Created new pull without removing spice-html5 and without copyrights: https://github.com/kimchi-project/kimchi/pull/1225 Pavel
On Apr 22, 2018, at 8:31 PM, aline.manera@gmail.com wrote:
Hi Pavel!
I checked the code and I have some suggestions:
1. The new files added for build do not need to contain the IBM copyright as you did not that for IBM (or did you do?)
2. For the new functionality itself, I'd propose to add a build parameter, something like --with-spice-web-client to build the app with spice-web-client, otherwise, use spice-html5. That way, we can have a easier way to move forward with Linux distribution repositories which does not allow third-part JS files into the package. What do you think about that?
Regards,
On Tue, Apr 3, 2018 at 11:46 AM, Pavel Gurenko <pgurenko@gmail.com <mailto:pgurenko@gmail.com>> wrote: If you mean the ones before installing spice guest tools (two cursors), then no, I guess it's not. I had no issues with spice guest tools installed.
On Tue, Apr 3, 2018, 2:13 AM Joni Orponen <j.orponen@4teamwork.ch <mailto:j.orponen@4teamwork.ch>> wrote: On Wed, Mar 28, 2018 at 8:57 PM, Pavel Gurenko <pgurenko@gmail.com <mailto:pgurenko@gmail.com>> wrote: The spice-html5 does not support the qxl drivers for Windows VMs and it looks like qxl has the best performance for now. While spice-html5 is more like proof-of-concept, a bit slow and in general not really supported right now.
On the other hand, spice-web-client is performant, production solution and supports almost everything the spice can support.
The pull request is mostly the drop-in replacement, spice-html5 web client JavaScript gets replaced with spice-web-client JavaScript. I used the latest version of spice-web-client from github: https://github.com/eyeos/spice-web-clien <https://github.com/eyeos/spice-web-clien>t - unfortunately guys don't have releases in CDN.
Would this also get rid of mouse acceleration mismatch issues with Windows clients?
-- Joni Orponen _______________________________________________ Kimchi-devel mailing list Kimchi-devel@ovirt.org <mailto:Kimchi-devel@ovirt.org> http://lists.ovirt.org/mailman/listinfo/kimchi-devel <http://lists.ovirt.org/mailman/listinfo/kimchi-devel>
_______________________________________________ Kimchi-devel mailing list Kimchi-devel@ovirt.org <mailto:Kimchi-devel@ovirt.org> http://lists.ovirt.org/mailman/listinfo/kimchi-devel <http://lists.ovirt.org/mailman/listinfo/kimchi-devel>
-- Aline Manera

Hey Pavel! About 2: I will add a config parameter to let user change which spice tool to use. Regards, On Wed, Apr 25, 2018 at 11:48 PM Pavel Gurenko <pgurenko@gmail.com> wrote:
Hi Aline,
1. No, just copy-paste:) 2. That is a bit tricky, how to let client know which spice to use? Added comment in PR.
Created new pull without removing spice-html5 and without copyrights: https://github.com/kimchi-project/kimchi/pull/1225
Pavel
On Apr 22, 2018, at 8:31 PM, aline.manera@gmail.com wrote:
Hi Pavel!
I checked the code and I have some suggestions:
1. The new files added for build do not need to contain the IBM copyright as you did not that for IBM (or did you do?)
2. For the new functionality itself, I'd propose to add a build parameter, something like --with-spice-web-client to build the app with spice-web-client, otherwise, use spice-html5. That way, we can have a easier way to move forward with Linux distribution repositories which does not allow third-part JS files into the package. What do you think about that?
Regards,
On Tue, Apr 3, 2018 at 11:46 AM, Pavel Gurenko <pgurenko@gmail.com> wrote:
If you mean the ones before installing spice guest tools (two cursors), then no, I guess it's not. I had no issues with spice guest tools installed.
On Tue, Apr 3, 2018, 2:13 AM Joni Orponen <j.orponen@4teamwork.ch> wrote:
On Wed, Mar 28, 2018 at 8:57 PM, Pavel Gurenko <pgurenko@gmail.com> wrote:
The spice-html5 does not support the qxl drivers for Windows VMs and it looks like qxl has the best performance for now. While spice-html5 is more like proof-of-concept, a bit slow and in general not really supported right now.
On the other hand, spice-web-client is performant, production solution and supports almost everything the spice can support.
The pull request is mostly the drop-in replacement, spice-html5 web client JavaScript gets replaced with spice-web-client JavaScript. I used the latest version of spice-web-client from github: https://github.com/eyeos/spice-web-client - unfortunately guys don't have releases in CDN.
Would this also get rid of mouse acceleration mismatch issues with Windows clients?
-- Joni Orponen _______________________________________________ Kimchi-devel mailing list Kimchi-devel@ovirt.org http://lists.ovirt.org/mailman/listinfo/kimchi-devel
_______________________________________________ Kimchi-devel mailing list Kimchi-devel@ovirt.org http://lists.ovirt.org/mailman/listinfo/kimchi-devel
-- Aline Manera
-- Aline Manera
participants (4)
-
aline.manera@gmail.com
-
Joni Orponen
-
Pavel Gurenko
-
pgurenko@gmail.com