Target Self Attribute for OSC Messages/Navigation Element/Dropdown Menus

Hey Leo & Agustin,

In my canvas I have buttons to navigate between multiple different pages that I have formatted like this:

/devices/showPage Control,A-Comp canvas/page-1

Where Control is the name of my primary control iPad and A-Comp is my main computer. I used to also have my B-Comp listed but when I would navigate somewhere on the control iPad it would force over ever other instance listed which of course it would, that’s how it’s supposed to work right?? I only have multiple devices listed for when I am opening this canvas on different devices which I do end up using frequently.

What would be great is if instead of explicitly targeting which device can use the button in the [devices] argument if I could just use something like ‘Self’ to indicate that the local device using this OSC command would be the only one pulled over to a different page.

In a perfect world, I’d love to see a default element or preset included in the editor for page navigation, my canvas has 6 pages currently and programming each button for page navigation is getting time consuming :sweat_smile:

Along the same lines: have y’all considered implementing dropdown menus? Since I have so many pages, I’m using a lot of precious screen real estate for navigation buttons…

Hey @JasonBentch,

Yes, that’s the intended behavior of /devices/showPage — when you list multiple devices, they all get pulled over. There isn’t a “Self” argument currently, but there are a couple of angles worth considering:

For nav-only buttons, Link buttons already do what you’re asking for.
If the button’s only job is to navigate the local device to another canvas, set the Button Type to Link instead of OSC, and use a path like /canvas/page-1 (just match what’s in the browser’s URL when you’re on that canvas). Link buttons only navigate the device that presses them — no [devices] argument needed, no risk of forcing other instances.

If you need the OSC approach (e.g. a Script button doing multiple things at once), you could experiment with device aliases. Each device can have multiple comma-separated names, so you could alias your Control iPad as Control, nav-primary and your A-Comp as A-Comp, nav-primary, then just target nav-primary. That could make managing your setup cleaner depending on how you organize things. You can see this in action in the official tutorial: Device naming

On a default page-navigation preset: that’s a good suggestion, I’ll note it down. For now, converting those 6 pages to Link buttons should cut down the manual setup significantly compared to writing OSC commands for each.

Dropdown menus are not on the roadmap at the moment, but I hear you on the screen real estate side. The current design intent is for Link buttons to handle canvas-to-canvas navigation, so that’s the path for now. I’ll pass the suggestion along for future consideration.

In the meantime, would that work for your use case?

Hi Agustin,

Thank you, Link did help a lot! I had overlooked it before because I thought it was meant for hyperlinks as opposed to linking to another page.

Thanks so much!

1 Like

No worries, glad the link buttons worked for you!

Let me know if you need anything else :slightly_smiling_face: