I am now on v8.1.43 having recently upgraded from v8.1.24. This was one of the issues I had hoped the upgrade would fix, but it didn't.
My tab strip is set up in the traditional "Navigation North" way. It's on a docked window and swaps between other main windows. It works as intended except that it can never navigate to the window that was opened last, thus, to get to the previously opened window I have to navigate to another window and then the one I want. This is very irritating when I need to pop back and forth between two windows to compare information. There is no scripting involved (that I can find) and the SelectedTab is bound unidirectionally to the [System]Client/User/CurrentWindow tag (and I have tried removing that binding). Navigation mode is set to "Swap Windows".
I observe this behavior in more than one of my projects which makes me suspect I am missing something obvious. Any ideas?
I believe you need to bidirectionally bind your SelectedTab property to the [System]Client/User/CurrentWindow tag
Edit: I swear I've had to do this in the past to get it working, but I believe @cbanzet is correct in that it shouldn't make a difference since system tags are read-only.
In your client menubar, click on the "Windows" menu. The names there should be your docks and one main window. If there's more than one main window, one of them was opened without swap, and the CurrentWindow tag will be broken.
Thanks for the help,but you can't write to system tags and it would have surprised me if it had worked. I only recently started the practice of putting that binding in place...I was relying on the fact that it the tab selected tab should always be the one that just did the navigation. However, that "broke" when I started logging off users for inactivity and Ignition swapped the windows for the user. I have had this problem way before I implemented that binding.
I think you have it Phil. There is an extra window open. I'll have to figure out how that got there. But why would it only apply to the previously opened window?
Check your startup windows. If an extra one gets opened at startup it will cause the issue, or if you have any navigation anywhere that calls it to open a main window rather than swap to, it will cause the issue also.
That appears to have been the issue, an extra open window.
And Phil nailed it exactly.
In this case the extra opened window was coming from an inheritable project where it was not set to open on startup. For some bizarre reason I was opening it in the client startup script (probably left over from testing) with system.nav.openWindow.