devjas1 commited on
Commit
4dd9134
·
1 Parent(s): c896333

(FIX STATE)[State Management for Modality Selection in Comparison Tab]: Refactor comparison tab to robustly manage session state and prevent accidental overrides

Browse files

- Introduced a conditional check before setting st.session_state["modality_select"] to ensure user's selection persists across navigation.
- Enhanced UI stability in the comparison tab by preventing inadvertent session state overwrites, especially when switching between spectroscopy modalities.
- Added inline documentation to clarify state management logic for future maintainers.
- Add 'utils.calculate_softmax_confidence' import

Files changed (1) hide show
  1. modules/ui_components.py +4 -1
modules/ui_components.py CHANGED
@@ -27,6 +27,7 @@ from core_logic import (
27
  from utils.results_manager import ResultsManager
28
  from utils.multifile import process_multiple_files, display_batch_results
29
  from utils.preprocessing import resample_spectrum
 
30
 
31
 
32
  def load_css(file_path):
@@ -998,7 +999,9 @@ def render_comparison_tab():
998
  help="Choose the spectroscopy modality for analysis",
999
  key="comparison_modality",
1000
  )
1001
- st.session_state["modality_select"] = modality
 
 
1002
 
1003
  with col_mod2:
1004
  # Filter models by modality
 
27
  from utils.results_manager import ResultsManager
28
  from utils.multifile import process_multiple_files, display_batch_results
29
  from utils.preprocessing import resample_spectrum
30
+ from utils.confidence import calculate_softmax_confidence
31
 
32
 
33
  def load_css(file_path):
 
999
  help="Choose the spectroscopy modality for analysis",
1000
  key="comparison_modality",
1001
  )
1002
+ # Don't override existing session state
1003
+ if "modality_select" not in st.session_state:
1004
+ st.session_state["modality_select"] = modality
1005
 
1006
  with col_mod2:
1007
  # Filter models by modality