Double clicking on component slot causes wrong interaction sequence

Mr. Fusion 3 years ago updated by Tyler Owen (Lead Developer) 3 years ago 3

When you double click on a component slot not at 99%, the following sequence will occur:

  1. Screen darkens and repair timer starts.
  2. Datapad comes up with the Replace/Repair/Cancel screen without selection shortly after the repair timer started.
  3. When the repair timer is up, timer and screen darkening goes away and Datapad switches to home screen.
  4. At this time, the Datapad can only be dismissed with the E key, it will not react to Esc, but will switch to other screens with their hotkeys. If LMB is clicked without leaving the home screen, the selection highlight will be lost until switching to another screen.
  5. The next time you interact with something, the Datapad will open with the home screen instead of the expected interaction screen of the given object.

If the component slot was at maximum condition, then on duble clicking it the Replace/Repair/Cancel screen may sometimes come up without selection highlight and stay until dismissed with Esc, but this does not happen all the time.

Actually, it appears simply as if click events would be queued, and the second one is passed to whatever the first one activated (maybe even subsequent ones would if multiple-clicked fast enough).

Eg. double clicking the crafting station will auto-select the first plan in the list, double clicking the exit airlock initiates the exit sequence and the Datapad will be open once the transition is completed etc.


It's not so much queuing the inputs as it is just screwing with the order of operations by clicking quickly like that. Something I don't experience much because I don't often use the LMB as a submit input. I can put in accommodations to prevent this. I'll try to get in a fix before I leave to visit family for Thanksgiving.


Okay, so I've implemented a half second delay before datapad navigation/submit inputs are allowed after any input that would trigger the datapad to come up. So this prevents UI elements from getting pressed before you can see them on screen (that's basically what was happening). The half second is effectively the same amount of time it takes the datapad to be visible, so it shouldn't feel like a delay at all. Will be in a patch soon.