MWClient: remember client window state on restart

Hi guys,

I’d like to make this suggestion: no rush, but it would be nice to get this in the queue of things to look at.

I have several MWorks machines that I restart daily. It would be more convenient if we could reduce what had to be done manually on restart.
Right now we:

  • Launch the client
  • Launch the server
  • Two clicks to connect to server
  • Two clicks to load experiment (if not changing expts)
  • Several clicks to load variable set
  • Two clicks to load python bridge and script
  • Three clicks to open variable window, expand tree, drag to position window
  • Two clicks to open matlab window, drag to position
  • start expt

So it doesn’t look too onerous, but doing it on several machines several times a day is a pain and we feel it’s worth asking for some streamlining.

Suggestions:

  1. Auto-launch and auto-connect to last server on client start (can use unload to change servers, this is done almost never by me)
  2. Remember last plugin window positions and states and restore on experiment load (including Variable window tree expansion)
  3. Make keyboard accessible so that tab, Enter, and hot-keys work in e.g. experiment dropdown, gear icon for loading variables, add key to save current variable state, etc. (perhaps a hotkey or ‘recent variables’ menu to select some of the last few used variable sets?)

Happy to discuss, and thanks for the consideration
M

One quick note:

  • Launch the client
  • Launch the server
  • Two clicks to connect to server
  1. Auto-launch and auto-connect to last server on client start (can use unload to change servers, this is done almost never by me)

The client is already able to auto-launch the server, so we should look into why this is not happening already for you. We run server and client on different machines, and the only requirement for autolaunching is that client machine have ssh-key access to the server machine. The default server-to-launch should also be the default option. That should at least take these four clicks down to two.

  • Dave

Sorry, I forgot about this.

Yes, the client can auto-launch the server, and that works for me. But it takes a few seconds for each to start so I launch both from the dock then connect; launching in parallel saves the user a few seconds.
Ideal situation for me is still that the client remembers last server state and starts it automatically with no UI intervention. Thanks!

M

Hi Mark,

(I’m trying to clean up/close out some old discussions. You’ll probably see a few more updates like this today.)

Auto-launch and auto-connect to last server on client start

I implemented an improved version of this over the summer (and forget to mention it to you – sorry!) MWServer and MWClient have each gained a new preference setting: “Open client at startup” (MWServer) and “Connect to last server at startup” (MWClient). When both settings are enabled (and you’re running client and server on the same machine), launching MWServer will also launch MWClient, and MWClient will immediately connect to the server. Since the server is already is running when the client tries to connect, it succeeds immediately, and you don’t have to sit through the four-second delay that you get when launching the server via the client.

Remember last plugin window positions and states and restore on experiment load (including Variable window tree expansion)

This has been addressed via previous changes and the recent task definition file work.

Make keyboard accessible so that tab, Enter, and hot-keys work in e.g. experiment dropdown, gear icon for loading variables, add key to save current variable state, etc. (perhaps a hotkey or ‘recent variables’ menu to select some of the last few used variable sets?)

I’ve opened a ticket for this, though it may warrant some reconsideration in light of the TDF stuff.

Chris

Great - agreed here. Mark