Ticket #3775 (closed defect: fixed)
Pressing <right> and <left> in the hotlist dialog doesn't refresh it
Reported by: | mooffie | Owned by: | mooffie |
---|---|---|---|
Priority: | major | Milestone: | 4.8.19 |
Component: | mc-core | Version: | master |
Keywords: | Cc: | ||
Blocked By: | Blocking: | ||
Branch state: | merged | Votes for changeset: | committed-master |
Description
The problem
In the hotlist dialog: pressing <right> to enter a group, or <left> on a ".." to exit a group, doesn't redraw the listbox to show its new contents. (That's in contrast to pressing ENTER, which does redraw the listbox.)
The cause
A call to dlg_select_widget() (old API) was replaced with a call to widget_select() (new API). The functions aren't quite the same: widget_select() is a no-op if the widget is already selected (as when pressing <right>, <left>), and so it doesn't redraw the widget.
The solution
We emulate the old behavior (by calling widget_redraw() conditionally).
Change History
comment:1 Changed 8 years ago by mooffie
- Status changed from new to accepted
- Owner set to mooffie
- Branch state changed from no branch to on review
comment:2 follow-up: ↓ 8 Changed 8 years ago by mooffie
(Shouldn't there be a ticket "Release mc 4.8.19", which we could mark this ticket as blocking?)
comment:4 Changed 8 years ago by andrew_b
- Votes for changeset set to andrew_b
- Branch state changed from on review to approved
comment:5 Changed 8 years ago by mooffie
- Status changed from accepted to testing
- Votes for changeset changed from andrew_b to committed-master
- Resolution set to fixed
- Branch state changed from approved to merged
Merged to master: [fc6e3832a6a9cae62cb5d3425d4165bebde08217]
comment:6 Changed 8 years ago by mooffie
- Status changed from testing to closed
I updated NEWS-4.8.19 becuase the bug had to be introduced in 4.8.18.
(I don't have the energy to compile 4.8.18 to verify this assumption, but since the new widget_select() was introduced in 36cc88b5f248, and version 4.8.18 was released shortly later, it's logical to asume it contained the bug.)
comment:7 follow-up: ↓ 9 Changed 8 years ago by zaytsev
Nit: Ticket #3775: missing in the commit message. Please don't forget it in the future.
comment:9 in reply to: ↑ 7 Changed 8 years ago by mooffie
Replying to zaytsev:
Nit: Ticket #3775: missing in the commit message. Please don't forget it in the future.
Oops.
I need to look into git's pre-push hook sometime. I could use it to ensure "Ticket:", "Signed-off-by:", and code indentation.
comment:10 Changed 8 years ago by zaytsev
I need to look into git's pre-push hook sometime. I could use it to ensure "Ticket:", "Signed-off-by:", and code indentation.
The indentation is now checked by Travis every time you push to the mc repository, and so if one happens to mess something, a friendly email from Travis will take care of it, and you have to push a feature branch first so it happens pretty much automagically.
If you decide to invest time in a hook, then it would be great if you could make a maint script out of it, so that I can add it to Travis. Basically, we could say any branch that matches ^[0-9]+_.+$ or something should have Ticket #[0-9]+: in the first commit...
Same for "Signed-off:" tags; I would really prefer this to be checked by Travis, because then not only you, but everybody will benefit without any extra setup effort.
branch: 3775_hostlist_refresh
changeset:049220207ea7c101d6ee5a3ae215198a2b3d1d92