Feature/source plugins #1

Merged
martino merged 130 commits from feature/source-plugins into main 2026-11-04 07:35:21 +01:00
4 changed files with 5 additions and 4 deletions
Showing only changes of commit 053edd521a - Show all commits

No files matched your search

+1 -1
+1 -1
View File
@@ -424,7 +424,7 @@ Two lines of the self-check output are assertions in disguise:
the group, because `hold_pinned_window()` prefers a member that has moved since `pinned_stated_` the group, because `hold_pinned_window()` prefers a member that has moved since `pinned_stated_`
— that is how it tells a gesture from its own echo — so a fit that wrote the group alone reads — that is how it tells a gesture from its own echo — so a fit that wrote the group alone reads
back as the zoomed range one frame later. back as the zoomed range one frame later.
- `[layout-probe] <action> rows=N buttons=B done=D done_box=[x,y,WxH] rows_y=[..] close=[..] add=[..] traces=[..] cells=[..] colweights=[..]` - `[layout-probe] <action> rows=N buttons=B done=D done_box=[x,y,WxH] rows_y=[..] close=[..] add=[..] resize=[..] traces=[..] side_w=S cells=[..] colweights=[..]`
`side_w` is the sidebar column's width and **must be its own request (280), never 0**: it read 0 while `side_w` is the sidebar column's width and **must be its own request (280), never 0**: it read 0 while
the divider sat at the window's right edge, which is a panel that is not there. It was 280 during the the divider sat at the window's right edge, which is a panel that is not there. It was 280 during the
first frames and 0 once the window had settled, so read it from a `placed` line rather than the first. first frames and 0 once the window had settled, so read it from a `placed` line rather than the first.
+2 -1
View File
@@ -4,6 +4,7 @@
#include "layout_store.hpp" #include "layout_store.hpp"
#include <algorithm> #include <algorithm>
#include <cmath>
#include <cstdint> #include <cstdint>
#include <cstdio> #include <cstdio>
#include <cstdlib> #include <cstdlib>
@@ -619,7 +620,7 @@ bool load_layout(const std::string& path, LayoutState& out) {
} }
} else if (key == "width") { } else if (key == "width") {
const double w = std::strtod(value.c_str(), nullptr); const double w = std::strtod(value.c_str(), nullptr);
if (w > 0.0) st.rows.back().width = w; if (std::isfinite(w) && w > 0.0) st.rows.back().width = w;
} }
} else if (section == Section::Math && !st.math.empty()) { } else if (section == Section::Math && !st.math.empty()) {
MathChannel& m = st.math.back(); MathChannel& m = st.math.back();
+1 -1
View File
@@ -442,7 +442,7 @@ struct TourStep {
constexpr TourStep kTourSteps[] = { constexpr TourStep kTourSteps[] = {
{"plot", nullptr, "The plot", {"plot", nullptr, "The plot",
"Every signal you have switched on is drawn here, all plots sharing one time axis. The wheel " "Every signal you have switched on is drawn here, all plots sharing one time axis. The wheel "
"zooms, a drag pans, and a right-click on a row opens that plot's own menu.", "zooms, a drag pans, and a right-click on a plot opens that plot's own menu.",
&App::area_overlay}, &App::area_overlay},
{"badges", nullptr, "The badges", {"badges", nullptr, "The badges",
"Setup is reached by the thing it configures. A badge per signal opens that signal's colour, " "Setup is reached by the thing it configures. A badge per signal opens that signal's colour, "