Skip to content

Filter or trigger parameter is immediately overwritten when reloaded from scope, if the filter properties dialog is open #1024

Description

@timp3289

Steps to cause:

  1. Configure Dropout trigger
  2. While the trigger properties are still open, change the dropout time on the scope and click the "Reload from instrument" button
  3. The dropout time on the scope gets set back to what it was before

I believe the reason for this is that Dialog::UnitInputWithImplicitApply returns true when focus is lost by clicking the reload button.
(Line 322,FilterPropertiesDialog.cpp)
It seems to be a race condition/timing issue where the filter property (in this case the dropout time) is overwritten by the value in the dialog after the real value is retrieved from the scope.

A solution in this case would be to somehow cancel the update of the property if the reason the focus is lost is due to the click on the reload button, but the problem is most likely broader than this case

(Possibly anything where a UnitInputWithImplicitApply is used, and a GUI action causes both the dialog to lose focus and the filter parameter to be changed from somewhere else.)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions