diff --git a/jdaviz/configs/specviz/plugins/unit_conversion/unit_conversion.py b/jdaviz/configs/specviz/plugins/unit_conversion/unit_conversion.py index c614485328..bb7a34ed6b 100644 --- a/jdaviz/configs/specviz/plugins/unit_conversion/unit_conversion.py +++ b/jdaviz/configs/specviz/plugins/unit_conversion/unit_conversion.py @@ -175,7 +175,7 @@ def _on_glue_y_display_unit_changed(self, y_unit_str): if self.app.data_collection[0]: dc_unit = self.app.data_collection[0].get_component("flux").units self.angle_unit.choices = create_angle_equivalencies_list(dc_unit) - self.angle_unit.selected = self.angle_unit.choices[0] + self.angle_unit.select_default() self.sb_unit_selected = self._append_angle_correctly( self.flux_unit.selected, self.angle_unit.selected @@ -235,6 +235,9 @@ def _on_flux_or_angle_unit_changed(self, msg): return if not self.flux_unit.choices: return + if self.flux_unit.selected == '' or self.angle_unit.selected == '': + # wait until flux AND angle unit are both populated during init + return # various plugins are listening for changes in either flux or sb and # need to be able to filter messages accordingly, so broadcast both when