13
0
Commit Graph

68 Commits

Author SHA1 Message Date
Luciano Iam
842b989e19
WS: improve ES6 import/export syntax 2020-06-23 22:00:58 +02:00
Luciano Iam
5929551b3b
WS: improve Component class hierarchy 2020-06-23 22:00:58 +02:00
Luciano Iam
cc8ed1580c
WS: use dot notation for JS properties 2020-06-23 22:00:58 +02:00
Luciano Iam
8ff4bcfd68
WebSockets: improve JS client message handling code 2020-06-10 19:47:37 +02:00
Luciano Iam
176d803a55
WebSockets: move autoReconnect option in JS client to client ctor 2020-06-10 19:47:37 +02:00
Luciano Iam
a26a9018fd
WebSockets: code refactor
Terminology used by server and client was starting to diverge.

C++ classes ArdourStrips and ArdourGlobals classes have been
renamed to ArdourMixer and ArdourTransport respectively.

State node values for transport functionality have been simplified
and prefixed with 'transport_' to match what was done for strips.
2020-06-10 19:47:37 +02:00
Luciano Iam
ae4df127ad
WebSockets: implement a JavaScript object-oriented client API
Replace previous callback based basic client with an easier
to use object-oriented API that further abstracts the low level
details of the WebSockets Server surface messaging protocol.

All built-in web surface demos were updated to use the new API.
2020-06-10 19:47:37 +02:00
Luciano Iam
0a19e87646
WebSockets: match message.js constants to C++ code 2020-05-28 18:56:21 +02:00
Luciano Iam
847eb93784 WebSockets: correct comment in mixer-demo/main.js 2020-04-24 13:23:32 +02:00
Luciano Iam
f983dfe6a7 WebSockets: workaround for index page on Windows
Avoid 404s when following surface links while the issue in https://github.com/Ardour/ardour/pull/491 is better investigated
2020-04-24 12:39:06 +02:00
Luciano Iam
742adad310
WebSockets: extend 57fdce8 2020-04-22 21:59:35 +02:00
Luciano Iam
b0733a0d20
WebSockets: fix JS client get* methods 2020-04-22 21:59:35 +02:00
Luciano Iam
32f0e4e8be
WebSockets: remove unnecessary import from mixer-demo/widget.js 2020-04-22 21:59:34 +02:00
Luciano Iam
80dc3a38e0 WebSockets: let clients know if a strip is a VCA
This allows to hide the panner for example
2020-04-21 16:20:24 +02:00
Luciano Iam
744762f343
WebSockets: reduce transport surface buttons size 2020-04-20 22:59:17 +02:00
Luciano Iam
4579f5b4cd
WebSockets: transport surface minor optimizations
Layout tweaks on small screens (ie, phones)
Custom font for transport time
Fix ArdourClient constructor parameters
2020-04-20 22:59:17 +02:00
Luciano Iam
b7cdb63a95
WebSockets: optimize transport surf. layout 2020-04-20 22:59:16 +02:00
Luciano Iam
66b8a741ae
WebSockets: remove Firefox button focus border in transport surface 2020-04-20 22:59:16 +02:00
Luciano Iam
7118eff7eb
WebSockets: transport surface implementation 2020-04-20 22:59:16 +02:00
Luciano Iam
33fdd023ab
WebSockets: improve plugin params layout in mixer-demo 2020-04-20 22:59:16 +02:00
Luciano Iam
1d84cc0046
WebSockets: add transport methods to client JS 2020-04-20 22:59:16 +02:00
Luciano Iam
5105219076
WebSockets: rename *_desc nodes to *_description 2020-04-20 22:59:15 +02:00
Luciano Iam
28dd253231
WebSockets: make the mixer-demo look good on small screens 2020-04-17 20:15:11 +02:00
Luciano Iam
1a6997e0c8
WebSockets: change mixer-demo color palette to look closer to Ardour's default skin 2020-04-17 20:15:10 +02:00
Luciano Iam
50ba8dea96
WebSockets: improve JS client and demo
add methods to callback.js
automatically reconnect js client on disconnection
mixer-demo do not recreate UI on reconnection
NO-OP: indentation in message.js
make client JS reconnection optional
fix mixer-demo scrolling
minor JS client refactor
improve mixer-demo readability
2020-04-17 20:15:10 +02:00
Luciano Iam
2ba8dab95e
WebSockets: update JS client and demo
avoid hardcoded node name strings in mixer-demo
improve mixer-demo design
split ardour.js client into control and metadata mixins
rename JS client class Ardour to ArdourClient
JS client improve mixin implementation
JS client improve manifest parser
NO-OP whitespace and comments
NO-OP update websurface manifest versions
add Ardour icon in mixer-demo
improve mixer-demo scrolling on touch screens
2020-04-17 20:15:10 +02:00
Luciano Iam
83353b3125
WebSockets: add client getSurfaceManifest() example in mixer-demo 2020-04-13 16:29:42 +02:00
Luciano Iam
9fa7eb15ac
WebSockets: avoid hardcoding node names in mixer-demo, fix typo in message.js 2020-04-13 16:29:41 +02:00
Luciano Iam
da670aa186
WebSockets: improve support for callbacks in JS client lib 2020-04-13 16:29:41 +02:00
Luciano Iam
1f3b40f4bd
WebSockets: improve wording in latest commit instructions 2020-04-13 16:29:41 +02:00
Luciano Iam
e700e640c0
WebSockets: display usage instructions when loading index.html from a local file 2020-04-13 16:29:41 +02:00
Luciano Iam
eead6f9cac
WebSockets: make mixer-demo import ardour.js instead of lower level channel.js 2020-04-13 16:29:41 +02:00
Luciano Iam
1f0dfddde1
WebSockets: split channel.js into channel.js and message.js 2020-04-13 16:29:41 +02:00
Luciano Iam
1e3084d760
WebSockets: detect channel drop in ardour.js 2020-04-13 16:29:41 +02:00
Luciano Iam
236ba5c1c4
WebSockets: NO-OP update some code comments 2020-04-13 16:29:41 +02:00
Luciano Iam
8c2f7d42b8
WebSockets: improve mixer-demo look 2020-04-13 16:29:40 +02:00
Luciano Iam
a8dce60eb5
WebSockets: rename Node to ANode to avoid shadowing DOM Node class 2020-04-13 16:29:40 +02:00
Luciano Iam
b8f52a519a
WebSockets: add support for a message callback in ardour.js 2020-04-13 16:29:40 +02:00
Luciano Iam
c5366427d0
WebSockets: NO-OP update comments in mixer-demo code 2020-04-13 16:29:40 +02:00
Luciano Iam
bfcba85336
WebSockets: throw error if trying to send() before open() in MessageChannel 2020-04-13 16:29:40 +02:00
Luciano Iam
7aca159017
WebSockets: remove test code from ardour.js 2020-04-13 16:29:40 +02:00
Luciano Iam
089a4958ca
WebSockets: complete ardour.js client APIs 2020-04-13 16:29:40 +02:00
Luciano Iam
de7b76e77d
WebSockets: fix node+addr hash when addr is undefined 2020-04-13 16:29:39 +02:00
Luciano Iam
3fd7be9aba
WebSockets: NO-OP add a comment in mixer-demo code that explains approach 2020-04-13 16:29:39 +02:00
Luciano Iam
50fc366eeb
WebSockets: add mixer APIs in ardour.js 2020-04-13 16:29:39 +02:00
Luciano Iam
dbbd3b0eaf
WebSockets: export Node constants in channel.js 2020-04-13 16:29:39 +02:00
Luciano Iam
2b8e9ceb89
WebSockets: make Message.fromJsonText() a ES6 static method 2020-04-13 16:29:39 +02:00
Luciano Iam
feeda2c19d
WebSockets: avoid duplicated node+addr hash function in JS code 2020-04-13 16:29:39 +02:00
Luciano Iam
22199e8845
WebSockets: decouple Message from MessageChannel 2020-04-13 16:29:39 +02:00
Luciano Iam
a51ce18334
WebSockets: rename ArdourMessageChannel to MessageChannel 2020-04-13 16:29:39 +02:00