bitfocus / companion

Bitfocus Companion enables the reasonably priced Elgato Streamdeck and other controllers to be a professional shotbox surface for an increasing amount of different presentation switchers, video playback software and broadcast equipment.
http://bitfocus.io/companion
Other
1.47k stars 490 forks source link

[BUG] Web buttons 'Cycle' layout not working in v3 #2509

Open JonathanPowe opened 1 year ago

JonathanPowe commented 1 year ago

Is this a bug in companion itself or a module?

Is there an existing issue for this?

Describe the bug

Web buttons Cycle layout appears to not work in Companion version 3

Steps To Reproduce

  1. Open Web Buttons
  2. Tap settings cog
  3. Layout dropdown box is missing

Or

  1. Add to URL parameters layout=cycle
  2. Reload web page
  3. Layout remains in Infinite mode

Or

  1. Open bookmarked link from Companion v2 that uses Cycle layout
  2. Layout has changed to Infinite mode

Expected Behavior

Page-change buttons to appear above main buttons grid when opening existing bookmarked links using the layout=cycle URL parameter

Cycle option to be available in the Web Buttons settings page

Environment (please complete the following information)

- OS: Windows 10 and Windows Server 2016 (for host and control), various version of Android and iOS (for touchscreen control devices)
- Browser: Google chrome, Microsoft Edge, Android Browser, Android Google Chrome, iOS Safari
- Companion Version: 3.0.0-rc2 (3.0.0-rc2+5989-stable-4d17e724)

Additional context

Using the Cycle layout keeps the Web Buttons view to always snap to the neatly organised pages on the tablets.

On our various tablets and phones we make extensive use of the small page-change buttons above the main button grid section to move between pages designed for different functions, or pages for the same functions for different pieces of equipment,

Scrolling on some tablets is very difficult as it often triggers the buttons when scrolling unless the user is very careful to only swipe along the thin edges to scroll

The Cycle layout always keeps the buttons grid in the same position on the tablet's screen, increasing user accuracy and efficiency due to 'muscle memory' for where the buttons are, and saving time to quickly change pages with one click/tap.

All 32 buttons per page are available for use with actions instead of losing 3 buttons for page navigation and page title/number

The 'Emulator' web view doesn't appear to support custom page ordering nor having different page-change buttons for different users of the same page (e.g. one user's tablet having access to pages 1,2,5,10-15 and another user's tablet having access to pages 1,3,4,22-25,7,6 )

Julusian commented 1 year ago

The cycle mode was removed as it was originally written as a substitute for not being able to have multiiple independent emulators. The support that the tablet page had for following the page change buttons was a hack that had to be removed too.

I guess it could be brought back, but this is unlikely to be done before the release of 3.0.0.

JonathanPowe commented 11 months ago

Thanks for the reply and explanation. That would be great if something like Cycle pages could be brought back for the Tablet webpage.

As a workaround for now, is there any way to use the Satellite protocol (or any of the other remote protocols) to connect two copies of Companion (running on different computers in needed), keeping all of the button parameters synchronised? - i.e. Companion v3 would be communicating with the equipment, and Companion v2 would be used for the touchscreen tablets and phones to operate the system.

There are some really good improvements in Companion v3 that I'd love to make use of if I can figure out a way to make a workable multi-page user interface on the tablets.

Hennyr commented 11 months ago

As addition to what Jonathan wrote; the new emulator and webpage does not work on a ipad in Safari anymore. I had to return to version 2.4.2. although the new version had interesting developments.

Julusian commented 11 months ago

@Hennyr can you provide some more details about how/what isnt working? what version of ios is your ipad? You are the first person to say anything about it not working, and I don't have an ipad to test with myself

Hennyr commented 11 months ago

Dear Julian,

I am working for years with a Ipad Pro 12.9 inch, current IOS version 16.6. I use the webadres :8888/tablet.html

But i also tried the Emulator-adress and also not working. Have restored version 2.4.2 and it is working fine. I thought it is a simple webinterface.

I expected the web-version of 3.0.0, as display on my computerbrowser. On this the companion is running. I have checked the adres of the GUI, etc.

I don't know what technickly is changed in the interface, so i cannot help you in any direction.

As additional equipment/software i use ATEM TVS HD, H2R-Grafics and PTZOptics camera control.


Met vriendelijke groet,

Henny Ribbink

-------- Oorspronkelijke bericht --------

    ONDERWERP:
    Re: [bitfocus/companion] [BUG] Web buttons 'Cycle' layout not working 

in v3 (Issue #2509)

    DATUM:
    12-08-2023 14:22

    AFZENDER:
    Julian Waller ***@***.***>

    ONTVANGER:
    bitfocus/companion ***@***.***>

@Hennyr [1] can you provide some more details about how/what isnt working? what version of ios is your ipad? You are the first person to say anything about it not working, and I don't have an ipad to test with myself

-- Reply to this email directly, view it on GitHub [2], or unsubscribe [3]. You are receiving this because you were mentioned.Message ID: @.***>

Links:

[1] https://github.com/Hennyr [2] https://github.com/bitfocus/companion/issues/2509#issuecomment-1675886591 [3] https://github.com/notifications/unsubscribe-auth/AGBSYRIAJURGQ7IXZOP6Q4TXU5YRNANCNFSM6AAAAAAZZWGSUE

Julusian commented 11 months ago

I've remembered that I have access to real ipads on BrowserStack, trying it on there I can see that the buttons aren't drawing properly seems fine. The drawing issue I was seeing was a problem with my testing build

What in particular is not working for you? Is it showing some error, or is something specific not working?

JonathanPowe commented 11 months ago

In reply to Hennyr's iOS issue, I've installed Companion v3 on a test system here and tested it on an old iPad: all seems to load ok and buttons work as far as I can see. Also Companion v3 works a lot better than Companion v2 does on this old iPad :)

iOS 12.2
iPad Air MD785B/A
Companion version: 3.1.0 (3.1.0+6091-beta-f65b4c5d) 
Companion version: 2.3.0 (2.3.0+4517-beta-9537fad1) 

(P.S. Julusian is it worth moving Hennyr's iOS issue to a separate GitHub Issue? Or are the two issues related enough to remain together?)

Julusian commented 11 months ago

Yeah it should be a separate issue

Hennyr commented 10 months ago

Walter i will check it also again on a new install on the computer and will report back


Met vriendelijke groet,

Henny Ribbink

-------- Oorspronkelijke bericht --------

    ONDERWERP:
    Re: [bitfocus/companion] [BUG] Web buttons 'Cycle' layout not working 

in v3 (Issue #2509)

    DATUM:
    13-08-2023 14:12

    AFZENDER:
    Julian Waller ***@***.***>

    ONTVANGER:
    bitfocus/companion ***@***.***>

Yeah it should be a separate issue

-- Reply to this email directly, view it on GitHub [1], or unsubscribe [2]. You are receiving this because you were mentioned.Message ID: @.***>

Links:

[1] https://github.com/bitfocus/companion/issues/2509#issuecomment-1676341378 [2] https://github.com/notifications/unsubscribe-auth/AGBSYRIQHLZJCB5GXGLRLTDXVDADDANCNFSM6AAAAAAZZWGSUE

JonathanPowe commented 10 months ago

I have managed to create a workaround for the Cycle page-change buttons that I will share here in case anyone else finds it useful.

With the help of ChatGPT I have written the attached web page. The first version it gave me was surprisingly functional, but ugly; after lots of revisions and refinement we now have a nice solution. Companion_Pages-24-v3

It reads the required page numbers from the URL parameters supplied by the user, then loads a single page of the Companion tablet view as an iFrame using the current page number. The page-change buttons reload the embedded page using the next or previous page number in the supplied sequence from the URL.

There is a fullscreen button, and if added to the tablet’s home screen it functions as a Web App on devices that support those features.

Usage Preparation

Production:

@Julusian do you know if there is any easy way for me to host these files within the Companion webui itself? I tried adding them to the webui.zip file, but that seemed to stop the entire Companion web interface from working

Hennyr commented 10 months ago

Jonathan,

Great; a good job. I will test it asap and inform you.


Met vriendelijke groet,

Henny Ribbink

-------- Oorspronkelijke bericht --------

    ONDERWERP:
    Re: [bitfocus/companion] [BUG] Web buttons 'Cycle' layout not working 

in v3 (Issue #2509)

    DATUM:
    23-08-2023 17:27

    AFZENDER:
    JonathanPowe ***@***.***>

    ONTVANGER:
    bitfocus/companion ***@***.***>

I have managed to create a workaround for the Cycle page-change buttons that I will share here in case anyone else finds it useful.

With the help of ChatGPT I have written the attached web page. The first version it gave me was surprisingly functional, but ugly; after lots of revisions and refinement we now have a nice solution. [1]

It reads the required page numbers from the URL parameters supplied by the user, then loads a single page of the Companion tablet view as an iFrame using the current page number. The page-change buttons reload the embedded page using the next or previous page number in the supplied sequence from the URL.

There is a fullscreen button, and if added to the tablet's home screen it functions as a Web App on devices that support those features.

Usage Preparation

* Download and extract the files: Companion_Pages.zip [2]
* Edit the files: modify the links for the address and port number to 

match your Companion location (e.g. use find-and-replace for http://192.168.1.55:8888/ and replace it with your Companion computer's address and port number)

Production:

* Navigate in a modern browser to the address you have hosted it at

* Change the numbers specified after /?pages= at the end of the URL to 

be the pages desired (e.g. http://192.168.1.55:8880/?pages=1-5,30,7,40-35 for pages 1 to 5, 30, 7, and 40 to 35) * if no pages are specified in the URL it will use pages 1-99 by default

@Julusian [3] do you know if there is any easy way for me to host these files within the Companion webui itself? I tried adding them to the webui.zip file, but that seemed to stop the entire Companion web interface from working

-- Reply to this email directly, view it on GitHub [4], or unsubscribe [5]. You are receiving this because you were mentioned.Message ID: @.***>

Links:

[1] https://user-images.githubusercontent.com/101350871/262691459-32352a16-459e-4a45-9750-947589a84d35.png [2] https://github.com/bitfocus/companion/files/12419805/Companion_Pages.zip [3] https://github.com/Julusian [4] https://github.com/bitfocus/companion/issues/2509#issuecomment-1690169940 [5] https://github.com/notifications/unsubscribe-auth/AGBSYRIAZI3E2GKCGIQ776DXWYOMRANCNFSM6AAAAAAZZWGSUE

Hennyr commented 10 months ago

Jonathan,

The Ipad connection is working again; due to a windows update there was a problem. Reinstall companion it solved.

I have tested you send today, but or i do something wrong or something else. Please reply what i did wrong

See atached files


Met vriendelijke groet,

Henny Ribbink

-------- Oorspronkelijke bericht --------

    ONDERWERP:
    Re: [bitfocus/companion] [BUG] Web buttons 'Cycle' layout not working 

in v3 (Issue #2509)

    DATUM:
    23-08-2023 17:27

    AFZENDER:
    JonathanPowe ***@***.***>

    ONTVANGER:
    bitfocus/companion ***@***.***>

I have managed to create a workaround for the Cycle page-change buttons that I will share here in case anyone else finds it useful.

With the help of ChatGPT I have written the attached web page. The first version it gave me was surprisingly functional, but ugly; after lots of revisions and refinement we now have a nice solution. [1]

It reads the required page numbers from the URL parameters supplied by the user, then loads a single page of the Companion tablet view as an iFrame using the current page number. The page-change buttons reload the embedded page using the next or previous page number in the supplied sequence from the URL.

There is a fullscreen button, and if added to the tablet's home screen it functions as a Web App on devices that support those features.

Usage Preparation

* Download and extract the files: Companion_Pages.zip [2]
* Edit the files: modify the links for the address and port number to 

match your Companion location (e.g. use find-and-replace for http://192.168.1.55:8888/ and replace it with your Companion computer's address and port number)

Production:

* Navigate in a modern browser to the address you have hosted it at

* Change the numbers specified after /?pages= at the end of the URL to 

be the pages desired (e.g. http://192.168.1.55:8880/?pages=1-5,30,7,40-35 for pages 1 to 5, 30, 7, and 40 to 35) * if no pages are specified in the URL it will use pages 1-99 by default

@Julusian [3] do you know if there is any easy way for me to host these files within the Companion webui itself? I tried adding them to the webui.zip file, but that seemed to stop the entire Companion web interface from working

-- Reply to this email directly, view it on GitHub [4], or unsubscribe [5]. You are receiving this because you were mentioned.Message ID: @.***>

Links:

[1] https://user-images.githubusercontent.com/101350871/262691459-32352a16-459e-4a45-9750-947589a84d35.png [2] https://github.com/bitfocus/companion/files/12419805/Companion_Pages.zip [3] https://github.com/Julusian [4] https://github.com/bitfocus/companion/issues/2509#issuecomment-1690169940 [5] https://github.com/notifications/unsubscribe-auth/AGBSYRIAZI3E2GKCGIQ776DXWYOMRANCNFSM6AAAAAAZZWGSUE