Ticket #3076: copy/move doesn't work if num_history_items_recorded=0.

How to reproduce:
1. Set num_history_items_recorded=0 in my $HOME/.config/mc/ini
2. Run mc.
3. Press F5 to copy and then enter.
Result: nothing happens.

Solution: refactoring of initial text usage in input line.
Use def_text to fill WInput:buffer when WInput is created.
Then overwrite WInput::buffer content from history if history usage
is enabled.

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
(input_update): don't do anything if widget is unowned or is in inactive dialog.

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
Remove WInput::field_width. Use Widget::cols instead.

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
Refactoring of WInput history.

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
Merge branch '3076_num_history_items_recorded_0'

* 3076_num_history_items_recorded_0:
  Refactoring of WInput history.
  Remove WInput::field_width. Use Widget::cols instead.
  (input_update): don't do anything if widget is unowned or is in inactive dialog.
  Ticket #3076: copy/move doesn't work if num_history_items_recorded=0.