disconnect on back button, formatting

This commit is contained in:
2023-11-26 10:02:02 -06:00
parent 1956e550cc
commit 895b0d91a7
+26 -37
View File
@@ -40,25 +40,19 @@ namespace qController
InitGUI(); InitGUI();
if (!qController.qClient.connected) if (!qController.qClient.connected) {
{
App.showToast("Error connecting...make sure QLab is running"); App.showToast("Error connecting...make sure QLab is running");
Back(); Back();
} } else {
else
{
qController.KickOff(); qController.KickOff();
} }
} }
private void OnWorkspaceSelected(object source, WorkspacePromptArgs args) private void OnWorkspaceSelected(object source, WorkspacePromptArgs args)
{ {
if (args.SelectedWorkspace != null) if (args.SelectedWorkspace != null) {
{
qController.Connect(args.SelectedWorkspace); qController.Connect(args.SelectedWorkspace);
} } else {
else
{
Log.Debug("CONTROLPAGE - No Workspace selected backing out"); Log.Debug("CONTROLPAGE - No Workspace selected backing out");
Back(); Back();
} }
@@ -67,46 +61,34 @@ namespace qController
private void OnConnectionStatusChanged(object source, ConnectEventArgs args) private void OnConnectionStatusChanged(object source, ConnectEventArgs args)
{ {
Log.Debug($"CONTROLPAGE - Connection Status Changed: {args.WorkspaceId} : {args.Status}"); Log.Debug($"CONTROLPAGE - Connection Status Changed: {args.WorkspaceId} : {args.Status}");
if (args.Status.Contains("ok")) if (args.Status.Contains("ok")) {
{ if(args.Status.Contains(":") && !args.Status.Contains("view")) {
if(args.Status.Contains(":") && !args.Status.Contains("view"))
{
workspacePrompt.promptWorkspacePasscode(args.WorkspaceId); workspacePrompt.promptWorkspacePasscode(args.WorkspaceId);
return; return;
} }
Device.BeginInvokeOnMainThread(() => { Device.BeginInvokeOnMainThread(() => {
FinishUI(); FinishUI();
}); });
} } else if (args.Status.Contains("badpass")) {
else if (args.Status.Contains("badpass"))
{
workspacePrompt.promptWorkspacePasscode(args.WorkspaceId); workspacePrompt.promptWorkspacePasscode(args.WorkspaceId);
} }
} }
private void WorkspaceInfoReceived(object source, WorkspaceInfoArgs args) private void WorkspaceInfoReceived(object source, WorkspaceInfoArgs args)
{ {
if (args.WorkspaceInfo.Count > 1) if (args.WorkspaceInfo.Count > 1) {
{
Log.Debug("CONTROLPAGE - MULTIPLE WORKSPACES ON SELECTED COMPUTER"); Log.Debug("CONTROLPAGE - MULTIPLE WORKSPACES ON SELECTED COMPUTER");
PromptForWorkspace(args.WorkspaceInfo); PromptForWorkspace(args.WorkspaceInfo);
} } else if (args.WorkspaceInfo.Count == 1) {
else if (args.WorkspaceInfo.Count == 1)
{
Log.Debug("CONTROLPAGE - ONLY ONE WORKSPACE ON SELECTED COMPUTER"); Log.Debug("CONTROLPAGE - ONLY ONE WORKSPACE ON SELECTED COMPUTER");
if (!args.WorkspaceInfo[0].hasPasscode) if (!args.WorkspaceInfo[0].hasPasscode) {
{
qController.Connect(args.WorkspaceInfo[0].uniqueID); qController.Connect(args.WorkspaceInfo[0].uniqueID);
} } else {
else
{
workspacePrompt.promptWorkspacePasscode(args.WorkspaceInfo[0].uniqueID); workspacePrompt.promptWorkspacePasscode(args.WorkspaceInfo[0].uniqueID);
} }
} } else {
else
{
NoWorkspacesConfig noWorkspacesConfig = new NoWorkspacesConfig(NoWorkspaceDetected); NoWorkspacesConfig noWorkspacesConfig = new NoWorkspacesConfig(NoWorkspaceDetected);
UserDialogs.Instance.Confirm(noWorkspacesConfig); UserDialogs.Instance.Confirm(noWorkspacesConfig);
} }
@@ -235,8 +217,10 @@ namespace qController
void Back() void Back()
{ {
if(qController.qClient.connected) if (qController.qClient.connected)
{
qController.Kill(); qController.Kill();
}
App.rootPage.MenuItemSelected -= OnMenuItemSelected; App.rootPage.MenuItemSelected -= OnMenuItemSelected;
Device.BeginInvokeOnMainThread(() => Device.BeginInvokeOnMainThread(() =>
{ {
@@ -247,8 +231,10 @@ namespace qController
public void NoWorkspaceDetected(bool resp) public void NoWorkspaceDetected(bool resp)
{ {
if (resp) if (resp)
{
Back(); Back();
}
} }
public void WorkspaceDisconnected(object sender, EventArgs e) public void WorkspaceDisconnected(object sender, EventArgs e)
{ {
@@ -363,12 +349,9 @@ namespace qController
if (args.Command.Contains("/")) if (args.Command.Contains("/"))
{ {
qController.qClient.sendTCP(args.Command); qController.qClient.sendTCP(args.Command);
} } else if (args.Command == "disconnect") {
else if (args.Command == "disconnect")
{
Back(); Back();
}else if (args.Command.Contains("cueList")) } else if (args.Command.Contains("cueList")) {
{
var parts = args.Command.Split(' '); var parts = args.Command.Split(' ');
if(parts.Length > 1) if(parts.Length > 1)
{ {
@@ -401,5 +384,11 @@ namespace qController
CloseCueList(sender,e); CloseCueList(sender,e);
} }
protected override bool OnBackButtonPressed()
{
Back();
return true;
}
} }
} }