(&mut self)
| 1630 | } |
| 1631 | |
| 1632 | fn show_theme_selector(&mut self) { |
| 1633 | let themes = self.list_available_themes(); |
| 1634 | if themes.is_empty() { |
| 1635 | self.status = Some("No themes available.".to_string()); |
| 1636 | return; |
| 1637 | } |
| 1638 | |
| 1639 | self.push_current_popup_to_stack(); |
| 1640 | self.begin_theme_preview(); |
| 1641 | self.theme_selector |
| 1642 | .show(themes, Some(self.config.ui.theme_id.clone())); |
| 1643 | if let Some(selected) = self.theme_selector.selected_item().cloned() { |
| 1644 | self.preview_theme_selection(&selected); |
| 1645 | } |
| 1646 | } |
| 1647 | |
| 1648 | fn list_available_themes(&self) -> Vec<ThemeItem> { |
| 1649 | let mut themes: Vec<ThemeItem> = builtin_theme_ids() |
no test coverage detected