You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Our FormAction classes (feedlist, itemview etc.) should react to terminal resizes by redrawing their contents. Feedlist and itemlist already do this, and can be used as examples.
This is a tracking issue for the whole effort.
I think the best way to implement this is:
introduce redraw() method for FormAction, provide empty implementations for all classes that inherit it;
add case OP_INT_RESIZE to FormAction::process_op. It should call this->redraw();
implement redraw() for all classes that inherit from FormAction:
ListFormAction is absent from this list because from the code in feedlistformaction.cpp and itemlistformaction.cpp it doesn't appear like resizing can be handled in generic way for all lists. Whoever works on this can re-evaluate, though.
The text was updated successfully, but these errors were encountered:
Minoru
added
the
refactoring
This issue describes a way in which some particular part of the code could be improved
label
Dec 13, 2018
The width was retrieved from stfl with variable name "items:w".
There is no element named "items" in the `feedlist.stfl` file so `width`
would always be equal to 0, resulting in no action on an actual resize.
It is probably best to fix this in a generic way when implementing [0].
[0] newsboat#390
"RESIZE" is the so-called event as returned from stfl (in the same way
as regular key-presses are registered).
So, "RESIZE" should be put in the `default_key` field.
The code which handled OP_INT_RESIZE was never called (before this fix).
Removing it in favor of a more generic approach when implementing the
idea from newsboat#390.
"RESIZE" is the so-called event as returned from stfl (in the same way
as regular key-presses are registered).
So, "RESIZE" should be put in the `default_key` field.
The code which handled OP_INT_RESIZE was never called (before this fix).
Removing it in favor of a more generic approach when implementing the
idea from newsboat#390.
Our FormAction classes (feedlist, itemview etc.) should react to terminal resizes by redrawing their contents. Feedlist and itemlist already do this, and can be used as examples.
This is a tracking issue for the whole effort.
I think the best way to implement this is:
introduce
redraw()
method forFormAction
, provide empty implementations for all classes that inherit it;add
case OP_INT_RESIZE
toFormAction::process_op
. It should callthis->redraw()
;implement
redraw()
for all classes that inherit fromFormAction
:DialogsFormAction
FeedListFormAction
(just move these lines)FileBrowserFormAction
HelpFormAction
ItemListFormAction
(just move these lines)ItemViewFormAction
(fixes Feeds are not correctly rendered when terminal window is resized #389)SelectFormAction
UrlViewFormAction
ListFormAction
is absent from this list because from the code in feedlistformaction.cpp and itemlistformaction.cpp it doesn't appear like resizing can be handled in generic way for all lists. Whoever works on this can re-evaluate, though.The text was updated successfully, but these errors were encountered: