os-autoinst / openqa-mon

Collection of terminal monitoring utilities for openQA
12 stars 13 forks source link

Pagination logic does not update on terminal resize #158

Open ilmanzo opened 3 months ago

ilmanzo commented 3 months ago

After https://github.com/os-autoinst/openqa-mon/pull/157 is merged, there is still a leftover glitch; when you have a small terminal (let's say 10 lines) and you enlarge it, the page recalc logic doesn't trigger immediately.

To have a full responsive application we'd need to intercept the terminal resize event and act accordingly, but it would be easier to just use a proper terminal library, like https://github.com/charmbracelet/bubbletea .

The introduction of a terminal lib requires a pretty large re-design of the program but would also enable scrolling and more interactivity, like the feature to select and cancel a job and so on. Also it would promote a clean separation between data and presentation.

For reference, I wrote a small blog post on a very simple example.

grisu48 commented 3 months ago

https://github.com/charmbracelet/bubbletea is amazing, however I'm a bit hesitant to change the overall TUI structure of this project at this point in time. Several people are using it now on a daily basis and I would feel that this is a rather big change in a tool that they expect to work.

I'm not opposing the idea in general, in fact I played with the idea myself a couple of times already. I'm just saying, we need to be very careful what we're doing here.

ilmanzo commented 3 months ago

I agree such change would need some experiments; BTW another cool candidate could be

or

maybe we can prepare a 2.0 branch / POC or leave the tool as-is and tryout new ideas on a separate openqa-mon-ng :)

grisu48 commented 3 months ago

We can talk about that, yes :slightly_smiling_face: