Andrew Borodin
28574f8008
(vfs_s_subclass::dir_uptodate): return gboolean instead of int.
...
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2020-05-17 18:48:18 +03:00
Andrew Borodin
9581c263b2
VFS: use mc_timer for timestamps.
...
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2020-05-17 18:48:18 +03:00
Andrew Borodin
a94dd7d2de
VFS GC: use mc_timer.
...
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2020-05-17 18:48:18 +03:00
Andrew Borodin
b9cf2898c4
Ticket #4057 : blank screen with invisible error.
...
How to reproduce:
Run `mcedit .` from an empty shell. mc used to show an error banner. Now
it shows black-on-black error message.
do_refresh() function expects that at least one fullscreen dialog (file
manager, editor, etc) is existing in the dialog stack. If query dialog
is created before any fullscreen one, do_refresh() do nothing.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2020-05-11 10:43:05 +03:00
Andrew Borodin
e14d44c839
Ticket #3847 : chattr command implementattion.
...
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2020-05-05 19:06:18 +03:00
Andrew Borodin
cef0bb0138
Fix segfault in case of click on widget that doesn't handle mouse.
...
Use default mouse callback function if widget doesn't handle mouse.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2020-04-03 16:53:15 +03:00
Andrew Borodin
bcdd81c628
WGroup: support colors.
...
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2020-03-08 20:17:32 +03:00
Andrew Borodin
d38eb77c8c
WGroup: support state.
...
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2020-03-08 20:17:32 +03:00
Andrew Borodin
f0e13d8fba
Make WST_CONSTRUCT a default widget state.
2020-03-08 20:17:32 +03:00
Andrew Borodin
f39f05632a
WGroup: support key events.
...
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2020-03-08 20:17:32 +03:00
Andrew Borodin
2e734e5618
Make keybind map a member of Widget.
...
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2020-03-08 20:17:32 +03:00
Andrew Borodin
326c4ce1d9
(dlg_key_event): clarify post-hotkey handling.
...
Current widget is the sender of MSG_UNHANDLED_KEY message.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2020-03-08 20:17:32 +03:00
Andrew Borodin
c2aadb2ad5
WGroup: support mouse events.
...
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2020-03-08 20:17:32 +03:00
Andrew Borodin
4b3b49faad
(widget_draw): support groups.
...
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2020-03-08 20:17:32 +03:00
Andrew Borodin
d1f9e698ac
WDialog: use WBackground in frameless dialogs (screens).
...
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2020-03-08 20:17:32 +03:00
Andrew Borodin
a87f1e7bf6
Create WBackground widget.
...
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2020-03-08 20:17:29 +03:00
Andrew Borodin
ed9199e94e
Create WFrame widget.
...
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2020-03-08 20:17:02 +03:00
Andrew Borodin
c77dc88ff9
WGroup: support draw.
...
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2020-03-08 20:15:37 +03:00
Andrew Borodin
2a265e38a0
WDialog set/change size API: move to WGroup.
...
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2020-03-08 20:15:37 +03:00
Andrew Borodin
04f04ba130
Send new widget size as parameter of MSG_RESIZE message.
...
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2020-03-08 20:15:37 +03:00
Andrew Borodin
045816ed13
(dlg_set_position): use WRect.
...
(widget_set_size_rect): new API.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2020-03-08 20:15:37 +03:00
Andrew Borodin
d13a28a91d
Create WRect class.
...
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2020-03-08 20:15:34 +03:00
Andrew Borodin
6acd8475dd
Update cursor API: support groups.
...
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2020-03-08 20:13:35 +03:00
Andrew Borodin
206baa8b9a
(widget_is_active): support groups.
2020-03-08 20:13:35 +03:00
Andrew Borodin
95b4a86d44
(dlg_get_current_widget_id): rename to group_get_current_widget_id.
...
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2020-03-08 20:13:35 +03:00
Andrew Borodin
e9d23e90f0
Find widget API: support groups.
...
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2020-03-08 20:13:33 +03:00
Andrew Borodin
fdf3d9c3b7
WGroup: implement init & destroy.
...
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2020-03-08 20:12:45 +03:00
Andrew Borodin
5ce511e07e
Implement uniq widget ID for each widget.
...
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2020-03-08 20:11:55 +03:00
Andrew Borodin
b9cf650605
Move send broadcast message API from WDialog to WGroup.
...
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2020-03-08 20:11:55 +03:00
Andrew Borodin
74c510f4fb
Widget and WGroup API changes:
...
* (widget_destroy): new API to destroy widget.
* (group_del_widget): rename to group_remove_widget. Don't destroy
widget after remove it from group.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2020-03-08 20:11:55 +03:00
Andrew Borodin
22ad70ed02
Move widget add/del API from WDialog to WGroup.
...
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2020-03-08 20:11:55 +03:00
Andrew Borodin
6eedbce076
Move widget selection API from WDialog to WGroup.
...
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2020-03-08 20:11:39 +03:00
Andrew Borodin
d575c7058b
Move winch_pending member from WDialog to WGroup.
...
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2020-03-08 20:09:13 +03:00
Andrew Borodin
e4e0070db5
Ticket #2919 : implement WGroup widget.
...
WGroup is the base widget for complex objects such as windows, dialog
windows, etc.
Initial steps:
* move widget list of dialog into WGroup class;
* inherit WGroup from Widget;
* inherit WDialog from WGroup.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2020-03-08 20:09:12 +03:00
Andrew Borodin
dff8ee2981
(get_key_code): yet another refactoring.
...
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2020-02-29 19:10:17 +03:00
Andrew Borodin
78b01cdf87
(get_key_code): minor refactoring.
...
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2020-02-29 19:10:17 +03:00
Andrew Borodin
444ec92d81
(get_key_code): fix coding style.
...
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2020-02-29 19:10:17 +03:00
Andrew Borodin
97eb8faab0
(mc_skin_lines_load_frm): cleanup, fix coding style.
...
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2020-02-29 19:10:17 +03:00
Andrew Borodin
f9cb0ba79f
lib/vfs/parse_ls_vga.c: refactoring.
...
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2020-02-29 19:10:17 +03:00
Andrew Borodin
65a7278d8a
lib/vfs/parse_ls_vga.c: fix coding style.
...
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2020-02-29 19:10:17 +03:00
Andrew Borodin
86ba1d78b7
lib/vfs/parse_ls_vga.c: use gboolean instead of int for boolean values.
...
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2020-02-29 19:10:17 +03:00
Andrew Borodin
31b37a1f79
Ticket #4050 : code cleanup before 4.8.25 release.
...
Update copyright years.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2020-02-29 19:10:17 +03:00
Andrew Borodin
ac184ebafe
Ticket #4064 : fix garbage in history.
...
(do_show_hist): apply new input history and current postition to avoid
use-after-free after call of history_show().
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2020-02-21 18:24:59 +03:00
Andrew Borodin
9a57984974
Close sigwinch_pipe at shutdown.
...
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2020-02-08 19:35:36 +03:00
Andrew Borodin
b5dae72e1e
(tty_create_winch_pipe): use GLib APIs to create pipe
...
...to get rid of OS-specific features and limitations.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2020-02-08 19:35:36 +03:00
Andrew Borodin
91688ab76e
Ticket #4052 : reimplement SIGWINCH handling.
...
Bump minimum GLib requirenment to 2.30.0.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2020-02-08 19:35:36 +03:00
Andrew Borodin
c867b9d40e
Ticket #5056 : avoid subshell warning for mcedit run from mc.
...
Don't show message "GNU Midnight Commander is already running on this
terminal. Subshell support will be disabled." if standalone
mcedit/mcview/mcdiffview is run from mc. Show this message only in case
of mc run from another mc, as was before commit
41abcbf706
(ticket #3380 ).
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2020-02-08 19:26:49 +03:00
Andrew Borodin
b75ee9169e
Ticket #4053 : fix FTBFS with glib2 >= 2.63.3.
...
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2020-01-24 21:23:24 +03:00
Andrew Borodin
28ca5cb128
Ticket #4052 : fix FTBFS on OSes w/o O_CLOEXEC.
...
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2020-01-22 10:44:19 +03:00
Andrew Borodin
d034500fd6
(button_set_text): do nothing if new and current texts are equal.
...
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2019-12-15 13:02:31 +03:00