ui: the readouts show in a strip under the plot when the dock is hidden
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
1 parent
54f2722fea
commit
c8d9d04f59
7 files changed
+282
-22
No files matched your search
+9
-2
@@ -4013,6 +4013,11 @@ gboolean tick(gpointer user) {
|
||||
app->sidebar_syncing = false;
|
||||
}
|
||||
}
|
||||
// The readouts strip is on screen exactly when the dock is not. Decided here, right after the wish was
|
||||
// re-asserted and *before* the collapsing below (which makes the split view write `show-sidebar`
|
||||
// false itself until the next frame re-asserts it): read after it, the strip would show for one frame
|
||||
// each time the window narrowed.
|
||||
sync_readouts_strip(*app);
|
||||
const int window_w = gtk_widget_get_width(app->window);
|
||||
if (window_w > 0) {
|
||||
adw_overlay_split_view_set_collapsed(ADW_OVERLAY_SPLIT_VIEW(app->side_view),
|
||||
@@ -4976,6 +4981,8 @@ void on_activate(GtkApplication* application, gpointer user) {
|
||||
app->badge_bar = GTK_WIDGET(gtk_builder_get_object(app->window_ui, "badge_bar"));
|
||||
app->badge_signals = GTK_WIDGET(gtk_builder_get_object(app->window_ui, "badge_signals"));
|
||||
app->badge_system = GTK_WIDGET(gtk_builder_get_object(app->window_ui, "badge_system"));
|
||||
app->readouts_strip = GTK_WIDGET(gtk_builder_get_object(app->window_ui, "readouts_strip"));
|
||||
app->strip_box = GTK_WIDGET(gtk_builder_get_object(app->window_ui, "readouts_strip_box"));
|
||||
// A missing id is the one mistake neither the build nor `GtkBuilder` sees, and every use below would
|
||||
// be a null pointer.
|
||||
if (app->window == nullptr || side_view == nullptr ||
|
||||
@@ -4983,7 +4990,7 @@ void on_activate(GtkApplication* application, gpointer user) {
|
||||
app->status_badge == nullptr ||
|
||||
app->status_label == nullptr || app->status_info_button == nullptr ||
|
||||
app->status_row == nullptr || app->badge_bar == nullptr || app->badge_signals == nullptr ||
|
||||
app->badge_system == nullptr ||
|
||||
app->badge_system == nullptr || app->readouts_strip == nullptr || app->strip_box == nullptr ||
|
||||
side == nullptr || app->dock_scroller == nullptr || app->dock_page == nullptr) {
|
||||
return;
|
||||
}
|
||||
@@ -5165,7 +5172,7 @@ void on_activate(GtkApplication* application, gpointer user) {
|
||||
// switch that turns it back on. The trigger's body is deliberately *not* disabled: a trigger is
|
||||
// configured before it is switched on, so its settings have to stay editable while it is off.
|
||||
gtk_widget_set_sensitive(app->cursors_body, FALSE);
|
||||
gtk_widget_set_sensitive(app->dock_cursor_grid, FALSE);
|
||||
dock_set_cursors_sensitive(*app, false); // the dock's grid and the strip's chips, together
|
||||
// The arm controls are the one part of the trigger pane that needs trigger mode running: both of them,
|
||||
// and the compact line's visibility, are stated from the toggle by `sync_arm_buttons()`.
|
||||
sync_arm_buttons(*app);
|
||||
|
||||
Reference in new issue
Block a user