I have an issue with input bindings where a floating window won't trigger an input binding on the main window.
Main window has an input binding (CTRL+S) to save the changes made in the primary active document. Now let’s say there is a floating tool window with a property grid in it. That property grid represents some object in the primary active document. You make a change to a property and then hit (CTRL+S) to save. Nothing happens. I understand the issue because there are two windows so the message doesn't get back to the main window.
There are three options I can see:
1) Add all the input bindings to every tool panel. While this works, we are duplicating the code many times.
2) In code get the main window and copy the input commands over to the child window. This is what we have done but is a total hack. Not only that but it pukes out binding warnings before they get resolved correctly.
3) Find a way to transfer input back to the main window so it can process it. Maybe adding an owner to the tool would do the trick?
I feel like number three is the best choice. Our last docking system must have done this for us because we didn’t do anything to make this work.
I am open to other options.