Drop the modules/threads tabs; show both as collapsible sidebar groups mirroring the hooks UX: a handful of top picks plus a browse popover for the rest. Default threads to collapsed. Revert the eager re-analysis of persisted modules on attach; keep disassembly analysis lazy and add a per-module Analyze action and status indicator instead. Share one sidebar-row and one browser-popover component across hooks, modules, and threads in both the SwiftUI and GTK frontends.
23 lines
560 B
Swift
23 lines
560 B
Swift
import LumaCore
|
|
import SwiftUI
|
|
|
|
struct ModuleAnalysisStatusIndicator: View {
|
|
let status: ModuleAnalysisStatus
|
|
|
|
var body: some View {
|
|
switch status {
|
|
case .analyzed:
|
|
Image(systemName: "checkmark.circle.fill")
|
|
.font(.system(size: 10))
|
|
.foregroundStyle(.green)
|
|
.help("Analyzed")
|
|
case .analyzing:
|
|
ProgressView()
|
|
.controlSize(.mini)
|
|
.help("Analyzing\u{2026}")
|
|
case .notAnalyzed:
|
|
EmptyView()
|
|
}
|
|
}
|
|
}
|