Commit Graph

558 Commits

Author SHA1 Message Date
Slava Zanko
35dae723ee Changes into src directory:
* src/background.c:
   * handling read() errors in background_attention()
   * handling IO errors in parent_call_string()
   * ignoring IO errors in background_attention()
   * ignoring write() errors in parent_call_header()
   * ignore IO errors in parent_call()
 *  src/cons.saver.c:
   * handling IO errors in show_console_contents_linux()
   * handling IO errors in handle_console_linux()
 * src/file.c: handling mc_chdir() errors in panel_operate
 * src/find.c: ignoring errors on chdir() call
 * src/main.c:
   * ignoring errors on last write()'s in main()
   * ignoring mc_chdir() errors in setup_dummy_mc()
   * ignoring mc_chdir() errors in translated_mc_chdir()
 * src/panelize.c: ignoring errors on chdir() call
 * src/screen.c:
   * ignoring mc_chdir() errors in panel_new_with_dir()
   * ignoring mc_chdir() errors in reload_panelized()
   * ignoring mc_chdir() errors in update_panels()
 * src/subshell.c: ignoring errors on chdir() call
 * src/tree.c: ignoring mc_chdir() errors in tree_rescan()
 * src/treestore.c: handling read errors in tree_store_load_from()
 * src/widget.c: handling mc_write() errors in save_text_to_clip_file

Signed-off-by: Slava Zanko <slavazanko@gmail.com>
2010-05-04 17:34:20 +03:00
Andrew Borodin
78032688f5 Added capability to run MC as standalone diff viewer.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
Signed-off-by: Ilia Maslakov <il.smind@gmail.com>
2010-04-26 11:44:31 +04:00
Ilia Maslakov
329ef3846a Ticket #120 (View diff files)
added src/diffviewer/ydiff.[ch] into project tree
    added entry 'View diff files' into 'Command' menu
    added 'diffviewer' color pairs
    fixed Makefile and configure.am
    added new binding CmdDiffView into '[main]' section
    Big thanx to 'Daniel Borca <dborca@yahoo.com>' for ydiff

Signed-off-by: Ilia Maslakov <il.smind@gmail.com>

    Added diffviewer own library

Signed-off-by: Slava Zanko <slavazanko@gmail.com>

    Fixed CFLAGS for diffviewer.

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>

    changed skins, added section
        [diffviewer]
            added=
            changedline=
            changednew=
            changed=
            removed=
            folder=
            error=

Signed-off-by: Ilia Maslakov <il.smind@gmail.com>

Reimplementation of hardcoded shortcuts to keybindings.

Signed-off-by: Ilia Maslakov <il.smind@gmail.com>
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2010-04-26 11:44:15 +04:00
Andrew Borodin
a78115ad8e Fixed variable declarations and added missing includes.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2010-02-24 16:22:43 +00:00
Andrew Borodin
45073c35e7 Ticket #1992: incorrect sturtup of MC with some special paths.
Problem description:
  1. Run mc as
     mc /#ftp:user@server
  2. If FTP server asks password, MC shows the password dialog window.
  3. If type the first symbol in input line, MC crashes.

Bug cause:
  MC asks ftp password before initialize of input line keybindings.

Solution:
  Reimplemented MC startup sequence.

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2010-02-24 16:22:43 +00:00
Andrew Borodin
08b708c5bb Ticket #1940: verbose option cannot be switched off.
How to reproduce:
  1) run mc
  2) press F9
  3) select 'Options' -> 'Configuration...'
  4) switch off '[ ] Verbose operation' option
  5) select '[ Save ]' button and press Enter
  6) in additional, select 'F9' -> 'Options' -> 'Save setup'
  7) exit from mc
  8) run mc again
  9) select 'F9' -> 'Options' -> 'Configuration...'

'Verbose operation' option always switched on.

This commit fixes this behaviour. But in slow terminals,
the value read form ini is forced set to 0.

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2010-02-22 12:25:08 +03:00
Leonid Myravjev
56d955152c Ticket #1838: source_codepage autodetect with enca program.
Added support of autodetect codepages via 'enca' program.

New parameter in user configuration file (~/.mc/ini):

[Misc]
autodetect_codeset=(one of `enca --list languages | cut -d : -f1`)

Signed-off-by: Slava Zanko <slavazanko@gmail.com>

Little code cleanup.

Signed-off-by: Ilia Maslakov <il.smind@gmail.com>

Type accuracy. Added missing includes.

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2010-02-08 15:56:48 +02:00
Andrew Borodin
081723c4e7 Removed double check of panel history before show it.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2010-02-04 13:42:44 +00:00
Andrew Borodin
ad60c3fd8d Preparation to history cleanup confirmation.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2010-02-04 13:42:44 +00:00
Andrew Borodin
5718372338 Reimplemented usage of history list in history dialog.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2010-02-04 13:42:44 +00:00
Andrew Borodin
1d16fd3a88 Small refactoring of history engine.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2010-02-04 13:42:44 +00:00
Slava Zanko
2b653ecf33 Ticket #1991: toggle panels view
Added keybinding for switch panels view (horizontally/vertically).

Default value for keybind is
[main]
CmdTogglePanelsView = alt-comma

Signed-off-by: Slava Zanko <slavazanko@gmail.com>
2010-02-04 11:29:16 +02:00
Andrew Borodin
0bd03e07f5 Ticket #1990: code cleanup before 4.7.0.2 release.
Fixed warings: local variable shadows a global declaration.

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
Signed-off-by: Ilia Maslakov <il.smind@gmail.com>
2010-02-02 21:45:05 +03:00
Slava Zanko
862652bd1b Move src/cons.saver into src/consaver/* subdir
Signed-off-by: Slava Zanko <slavazanko@gmail.com>
2010-01-26 10:30:26 +02:00
Slava Zanko
25155c311a Move all interface includes from subdirs lib/*/*.h into lib/*.h
Signed-off-by: Slava Zanko <slavazanko@gmail.com>
2010-01-26 10:30:25 +02:00
Slava Zanko
cd4dbf3a09 Changes for build after moving strutil into lib
Signed-off-by: Slava Zanko <slavazanko@gmail.com>
2010-01-26 10:30:24 +02:00
Slava Zanko
dbaff2b6f6 Reorganization of sources. Part 2
* moved src/fileloc.h into lib/fileloc.h
 * moved src/timefmt.h into lib/timefmt.h
 * removed unneedded includes into src/util.c

Signed-off-by: Slava Zanko <slavazanko@gmail.com>
2010-01-26 10:30:23 +02:00
Slava Zanko
93dbc46e9c Reorganization of sources. Part 1.
* moved src/global.h into lib/global.h
 * moved glibcompat.[ch] from ./src/ into ./lib/
 * moved fs.h from ./src/ into ./lib/

Signed-off-by: Slava Zanko <slavazanko@gmail.com>
2010-01-26 10:30:23 +02:00
Slava Zanko
39d5b94cac Reorganized pathes to files in '#include' directives 2010-01-26 10:30:22 +02:00
Slava Zanko
ddb9ada2e8 Changes in sources matched with mass movement of $(srcdir)/src/*/ into $(srcdir)/lib/*/
Signed-off-by: Slava Zanko <slavazanko@gmail.com>
2010-01-26 10:30:22 +02:00
Slava Zanko
43805741aa Changes in sources matched with movement of $(srcdir)/vfs into $(srcdir)/lib/vfs/mc-vfs
Signed-off-by: Slava Zanko <slavazanko@gmail.com>
2010-01-26 10:30:21 +02:00
Slava Zanko
f90725ad0d Changes in sources matched with movement of $(srcdir)/edit into $(srcdir)/src/editor
Signed-off-by: Slava Zanko <slavazanko@gmail.com>
2010-01-26 10:30:19 +02:00
Andrew Borodin
1055b85072 Ticket #1918: viewer in QuickView mode corrupts screen.
Initial step: code refactoring:
  * small code formatting;
  * type accuracy;
  * introduce new type 'panel_view_mode_t' for panel type.

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2010-01-06 18:12:53 +03:00
Enrico Weigelt, metux IT service
8c9619cef1 Replaced WITH_SMBFS by ENABLE_VFS_SMB 2010-01-02 16:29:24 +01:00
Enrico Weigelt, metux IT service
ec1a52fb0a VFS: renamed USE_VFS to ENABLE_VFS 2009-12-30 11:06:11 +02:00
Andrew Borodin
4ef67c33b9 No need to call done_menu() at MC exit.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2009-12-16 11:10:42 +02:00
Andrew Borodin
1e32a51d2d Optimization of DLG_RESIZE message handling.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2009-12-16 11:10:42 +02:00
Sergei Trofimovich
4f2079fec7 clang: fixed useful warnings (-Wformat related)
../../mc/edit/editcmd.c:2519:50: error: field precision should have type 'int', but argument has type 'gsize' (aka 'unsigned long') [-Wformat]
    match_expr = g_strdup_printf ("(^|\\s+|\\b)%.*s[^\\s\\.=\\+\\[\\]\\(\\)\\,\\;\\:\\\"\\'\\-\\?\\/\\|\\\\\\{\\}\\*\\&\\^\\%%\\$#@\\!]+", word_len, bufpos);
                                                 ^                                                                                         ~~~~~~~~
../../mc/edit/editcmd.c:2700:38: error: field precision should have type 'int', but argument has type 'gsize' (aka 'unsigned long') [-Wformat]
    match_expr = g_strdup_printf ("%.*s", word_len, bufpos);
                                     ^    ~~~~~~~~
2 diagnostics generated.
make[2]: *** [editcmd.o] Error 1
make[2]: Target `all' not remade because of errors.
../../../mc/src/mcconfig/common.c:71:74: error: format string is not a string literal (potentially insecure) [-Wformat-security]
        g_propagate_error (error, g_error_new (mc_main_error_quark() ,0, strerror(errno)));
                                                                         ^~~~~~~~~~~~~~~
../../../mc/src/mcconfig/common.c:83:74: error: format string is not a string literal (potentially insecure) [-Wformat-security]
        g_propagate_error (error, g_error_new (mc_main_error_quark() ,0, strerror(errno)));
                                                                         ^~~~~~~~~~~~~~~
2 diagnostics generated.
make[3]: *** [libmcconfig_la-common.lo] Error 1
make[3]: Target `all' not remade because of errors.
../../mc/src/main.c:2165:41: error: format string is not a string literal (potentially insecure) [-Wformat-security]
        message (D_ERROR, _("Warning"), error->message);
                                        ^~~~~~~~~~~~~~
1 diagnostic generated.

Signed-off-by: Sergei Trofimovich <slyfox@inbox.ru>
2009-12-16 11:10:41 +02:00
Slava Zanko
59efad629f Ticket #1613: remove charset confirmation on startup
Since mc-4.7.0-pre1 was added charset confirmation if charset was changed.

This commit was adds automatic recognize of system charset and fix in current
config. Also, now contig file will untouched if 'Auto save setup' option is switched off.

Signed-off-by: Slava Zanko <slavazanko@gmail.com>
2009-11-19 10:36:37 +02:00
Andrew Borodin
ed2e33574a Fixed generation of shortcut string for menu items.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2009-11-19 10:07:52 +03:00
Andrew Borodin
1ed7892f8e Modified ButtonBar engine to allow bind keys to unused buttons.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2009-11-19 10:07:51 +03:00
Andrew Borodin
eb2e4b0e17 Unified some commands that differ in its behaviour when called via menu or shortcuts.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2009-11-19 10:07:51 +03:00
Andrew Borodin
e252488ac2 Added Esc key to the key name table.
Also some fixes of DLG_ACTION message handling in panels and viewer.

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2009-11-19 10:07:51 +03:00
Andrew Borodin
c2693b7212 Implemented keybindings engine for ButtonBar (F1-F10 keys).
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2009-11-19 10:07:51 +03:00
Andrew Borodin
b7f367542a Modified menu command handling using DLG_ACTION message.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2009-11-19 10:07:51 +03:00
Andrew Borodin
11d21f1437 Modified dialog callback function.
Added two parameters:
  * Widget *sender -- to recognize the wiget that have sent message;
  * void *data -- to pass any user-defined data to the dialog.

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2009-11-19 10:07:51 +03:00
Andrew Borodin
ccabd60ffc Implemented keybindings for Help window.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2009-11-19 10:07:51 +03:00
Andrew Borodin
5592a472f6 Optimization of command handling. 2009-11-19 10:07:51 +03:00
Andrew Borodin
8224a26cf4 ButtonBar optimizations.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2009-11-19 10:07:51 +03:00
Andrew Borodin
6b71dc9f12 Added missed shortcuts for ButtonBar commands.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2009-11-19 10:07:51 +03:00
Andrew Borodin
da33e767e9 Type accuracy and code clean up.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2009-11-19 10:07:51 +03:00
Andrew Borodin
efdb645468 Implemeted keybindings for Tree widget
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2009-11-19 10:07:51 +03:00
Andrew Borodin
71c9e4c668 Ticket #212: implemented keybindings for ButtonBar.
First step: renamed type of dialog command execution function.
Made execution function more flexible: added parameters for
sender and receiver widgets and user data.

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2009-11-19 10:07:51 +03:00
Andrew Borodin
91a4598b54 Ticket #1755: code cleanup before 4.7.0-pre4 release.
Free some variables allocated at MC startup.

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2009-10-30 14:41:03 +02:00
Ilia Maslakov
478328812f Ticket #244
add shared clipboard support

Signed-off-by: Ilia Maslakov <il.smind@google.com>

    Fixed memory leaks. Type accuracy. Optimization.

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>

    * fixed ctrl-g handler
    * change action names from InputKillSave to InputXStore and InputPaste to InputXPaste
    * update mc.keymap.default mc.keymap.emacs

Signed-off-by: Ilia Maslakov <il.smind@gmail.com>
2009-10-29 12:18:18 +00:00
Ilia Maslakov
91c7dbb71c Ticket #1724 (forgotten hotkeys)
* fixed binding in mc.keymap.default and mc.keymap.emacs
    for CmdCopyCurrentTagged, CmdCopyOtherTagged,
    CmdCopyCurrentPathname, CmdCopyOtherPathname
    * fixed typo

Signed-off-by: Ilia Maslakov <il.smind@gmail.com>
2009-10-29 06:23:51 +00:00
Andrew Borodin
729d4f08a9 Implemented default actual shortcuts for main menu.
Some functions and commands are renamed.

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2009-10-26 16:15:31 +03:00
Andrew Borodin
41989bd0c6 Implemented display of actual shortcuts in main menu.
Many shortcuts are not defined in keymap file and therefore
not displayed in menu.

Editor menu is not reimplemented yet.

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2009-10-26 16:15:31 +03:00
Ilia Maslakov
82b7c4fdee Add support for multi-hotkeys in editor (like a ctrl-x,t).
Signed-off-by: Ilia Maslakov <il.smind@gmail.com>
2009-10-26 16:15:31 +03:00
Andrew Borodin
89336afb6b Added missed '#include "fileloc.h"' in main.c.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2009-10-26 16:15:31 +03:00