Skip to content

Commit c856f06

Browse files
committed
put widget control back in input_window + fix bugs in websocket stack
1 parent 5a61b40 commit c856f06

3 files changed

Lines changed: 47 additions & 46 deletions

File tree

rentnerend/lib/input_window.dart

Lines changed: 40 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -471,39 +471,39 @@ class _InputWindowState extends State<InputWindow> {
471471
);
472472
}
473473

474-
// Widget blockWidgets(Matchday md, RecommendedAction recAct) {
475-
// return Row(mainAxisAlignment: MainAxisAlignment.spaceEvenly, children: [
476-
// Expanded(child: buttonWithIcon(context, () {
477-
// mdl.value = md.copyWith(meta: md.meta.copyWith(widgetScoreboard: !md.meta.widgetScoreboard));
478-
// ws.sendSignal(MessageType.DATA_WIDGET_SCOREBOARD_ON);
479-
// }, Icons.arrow_downward_rounded, inverted: md.meta.widgetScoreboard)),
480-
// Expanded(child: buttonWithIcon(context, () {
481-
// mdl.value = md.copyWith(meta: md.meta.copyWith(widgetGameplan: !md.meta.widgetGameplan));
482-
// ws.sendSignal(MessageType.DATA_WIDGET_GAMEPLAN_ON);
483-
// }, Icons.arrow_downward_rounded, inverted: md.meta.widgetGameplan)),
484-
// Expanded(child: buttonWithIcon(context, () {
485-
// mdl.value = md.copyWith(meta: md.meta.copyWith(widgetLiveplan: !md.meta.widgetLiveplan));
486-
// ws.sendSignal(MessageType.DATA_WIDGET_LIVETABLE_ON);
487-
// }, Icons.arrow_upward_rounded, inverted: md.meta.widgetLiveplan)),
488-
// Expanded(child: buttonWithIcon(context, () {
489-
// mdl.value = md.copyWith(meta: md.meta.copyWith(widgetGamestart: !md.meta.widgetGamestart));
490-
// ws.sendSignal(MessageType.DATA_WIDGET_GAMESTART_ON);
491-
// }, Icons.arrow_upward_rounded, inverted: md.meta.widgetGamestart)),
492-
// Expanded(child: buttonWithIcon(context, () {
493-
// mdl.value = md.copyWith(meta: md.meta.copyWith(widgetAd: !md.meta.widgetAd));
494-
// ws.sendSignal(MessageType.DATA_WIDGET_AD_ON);
495-
// }, Icons.arrow_upward_rounded, inverted: md.meta.widgetAd)),
496-
// Expanded(child: buttonWithIcon(context, () {
497-
// mdl.value = md.copyWith(meta: md.meta.copyWith(streamStarted: !md.meta.streamStarted));
498-
// ws.sendSignal(MessageType.DATA_OBS_STREAM_ON);
499-
// }, Icons.arrow_upward_rounded, inverted: md.meta.streamStarted)),
500-
// Expanded(child: buttonWithIcon(context, () {
501-
// mdl.value = md.copyWith(meta: md.meta.copyWith(replayStarted: !md.meta.replayStarted));
502-
// ws.sendSignal(MessageType.DATA_OBS_REPLAY_ON);
503-
// }, Icons.arrow_upward_rounded, inverted: md.meta.replayStarted))
504-
// ])
505-
// ;
506-
// }
474+
Widget blockWidgets(Matchday md, RecommendedAction recAct) {
475+
return Row(mainAxisAlignment: MainAxisAlignment.spaceEvenly, children: [
476+
Expanded(child: buttonWithIcon(context, () {
477+
mdl.value = md.copyWith(meta: md.meta.copyWith(widgets: md.meta.widgets.copyWith(scoreboard: !md.meta.widgets.scoreboard)));
478+
ws.sendSignal(MessageType.DATA_META_WIDGETS);
479+
}, Icons.arrow_downward_rounded, inverted: md.meta.widgets.scoreboard)),
480+
Expanded(child: buttonWithIcon(context, () {
481+
mdl.value = md.copyWith(meta: md.meta.copyWith(widgets: md.meta.widgets.copyWith(gameplan: !md.meta.widgets.gameplan)));
482+
ws.sendSignal(MessageType.DATA_META_WIDGETS);
483+
}, Icons.arrow_downward_rounded, inverted: md.meta.widgets.gameplan)),
484+
Expanded(child: buttonWithIcon(context, () {
485+
mdl.value = md.copyWith(meta: md.meta.copyWith(widgets: md.meta.widgets.copyWith(liveplan: !md.meta.widgets.liveplan)));
486+
ws.sendSignal(MessageType.DATA_META_WIDGETS);
487+
}, Icons.arrow_upward_rounded, inverted: md.meta.widgets.liveplan)),
488+
Expanded(child: buttonWithIcon(context, () {
489+
mdl.value = md.copyWith(meta: md.meta.copyWith(widgets: md.meta.widgets.copyWith(gamestart: !md.meta.widgets.gamestart)));
490+
ws.sendSignal(MessageType.DATA_META_WIDGETS);
491+
}, Icons.arrow_upward_rounded, inverted: md.meta.widgets.gamestart)),
492+
Expanded(child: buttonWithIcon(context, () {
493+
mdl.value = md.copyWith(meta: md.meta.copyWith(widgets: md.meta.widgets.copyWith(ad: !md.meta.widgets.ad)));
494+
ws.sendSignal(MessageType.DATA_META_WIDGETS);
495+
}, Icons.arrow_upward_rounded, inverted: md.meta.widgets.ad)),
496+
Expanded(child: buttonWithIcon(context, () {
497+
mdl.value = md.copyWith(meta: md.meta.copyWith(obs: md.meta.obs.copyWith(streamStarted: !(md.meta.obs.streamStarted ?? false))));
498+
ws.sendSignal(MessageType.DATA_META_OBS);
499+
}, Icons.arrow_upward_rounded, inverted: md.meta.obs.streamStarted ?? false)),
500+
Expanded(child: buttonWithIcon(context, () {
501+
mdl.value = md.copyWith(meta: md.meta.copyWith(obs: md.meta.obs.copyWith(replayStarted: !(md.meta.obs.replayStarted ?? false))));
502+
ws.sendSignal(MessageType.DATA_META_OBS);
503+
}, Icons.arrow_upward_rounded, inverted: md.meta.obs.replayStarted ?? false))
504+
])
505+
;
506+
}
507507

508508
@override
509509
Widget build(BuildContext context) {
@@ -584,13 +584,13 @@ class _InputWindowState extends State<InputWindow> {
584584
builder: (context, md, _) {
585585
return Column(
586586
children: [
587-
// Expanded(flex: 18, child: blockTeams(md, recAct)),
588-
// Expanded(flex: 25, child: blockGoals(md, recAct)),
589-
// Expanded(flex: 35, child: blockTime(md, recAct)),
590-
// Expanded(flex: 22, child: blockWidgets(md, recAct))
591-
Expanded(flex: 25, child: blockTeams(md, recAct)),
592-
Expanded(flex: 33, child: blockGoals(md, recAct)),
593-
Expanded(flex: 42, child: blockTime(md, recAct)),
587+
Expanded(flex: 18, child: blockTeams(md, recAct)),
588+
Expanded(flex: 25, child: blockGoals(md, recAct)),
589+
Expanded(flex: 35, child: blockTime(md, recAct)),
590+
Expanded(flex: 10, child: blockWidgets(md, recAct))
591+
// Expanded(flex: 25, child: blockTeams(md, recAct)),
592+
// Expanded(flex: 33, child: blockGoals(md, recAct)),
593+
// Expanded(flex: 42, child: blockTime(md, recAct)),
594594
]
595595
);
596596
}

rentnerend/lib/websocket.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ class InterscoreWS {
2020

2121
// We have to use a "factory" so the constructor can be async
2222
InterscoreWS(String server_url, String client_url, this._mdl) {
23-
this.client = createWSClient(client_url, _mdl, false, true);
23+
this.client = createWSClient(client_url, _mdl, true, false);
2424
this.server = WSServer(server_url, _mdl);
2525
init();
2626
}

rentnerend/lib/ws_client.dart

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,12 @@ abstract class WSClient {
2525
return;
2626
}
2727

28+
// This is a "write operation, but shouldnt be forbidden by allowWriteTo
29+
if(msg[0] == MessageType.DATA_IM_BOSS.value) {
30+
if(msg.length < 2) return;
31+
debugPrint("Received DATA_IM_BOSS: ${msg[1] == 1}");
32+
this.boss = msg[1] == 1 ? true : false;
33+
}
2834
// Parse the message
2935
if(allowReadFrom) _listenRead(msg);
3036
if(allowWriteTo) _listenWrite(msg);
@@ -194,11 +200,6 @@ abstract class WSClient {
194200
} else
195201
mdl.value = md.copyWith(groups: [newGroup, ... md.groups]);
196202
}
197-
else if(msg[0] == MessageType.DATA_IM_BOSS.value) {
198-
if(msg.length < 2) return;
199-
debugPrint("Received DATA_IM_BOSS: ${msg[1] == 1}");
200-
this.boss = msg[1] == 1 ? true : false;
201-
}
202203
else if(msg[0] == MessageType.DATA_TIMESTAMP.value) {
203204
mdl.value = md.copyWith(meta: md.meta.copyWith(time: md.meta.time.copyWith(delay: lib.i64FromBytes(msg, 1))));
204205
}

0 commit comments

Comments
 (0)