* widget.c ([forward|backward]_word): Changed logic of moving - now,
it skips only spaces+punct OR alnum. Reason to have it deleting lines
like "lynx http://www.gnome.org", where "lynx http:" part was erased
in one operation. That's nasty, IMHO. Made this a separate commit, so,
if it seriously breaks compatability it's easy to revert it. Still hope,
nobody'll do that.
* file.c, widget.[ch]: Fixed long existing problems with filenames
and input widgets, then char is greater than 128. They were processed
incorrectly. As usual, char != unsigned char problem.
2000-03-03 Björn Eriksson <mdeans@algonet.se>
* Similar patches came from Andrew V. Samoilov <sav@bcs.zp.ua>.
* mad.[ch]: Some functions wrongly by-passed mad_alloc*() (causing
problems when later g_free()ed.
* Added mad_strndup().
* Repeated code collected in mad_fatal_error().
* The gcc-extension/C99-standard variable argument macros (adding
__FILE__, __LINE__ before ', ...') would be nice.
* Alloc_idx_hint and code added, the mad code was way too slow for my
poor computer. A hash-table would be nice.
* (mad_strconcat, mad_strdup_vprintf): g_malloc and g_new are
undefined at the top of mad.c, so mad_alloc must be used.
this dialog doesn't look perfect but at least it doesn't break gmc.
1999-09-14 Norbert Warmuth <nwarmuth@privat.circular.de>
* gnome/layout: Added the new samba password dialog.
* src/widget.[ch] (input_new): added const qualifier
* src/util.c (wipe_password): Check for NULL.
1999-09-14 Norbert Warmuth <nwarmuth@privat.circular.de>
* vfs/smbfs.c (various places): Store filenames in memory with the unix
character set and convert it back to the dos character set when filenames
are passed back to the samba server. If samba is configured correctly
this will fix the problems with filenames which contain national characters.
(bucket_set_authinfo): Set domain, username and password which will
be used to log on and authenticate against the samba server and remember this
information on a host/share basis. If set use PASSWD to get the
password. If already authenticated against the host and share use this
information. If already authenticated against host and IPC$ use this
information. If neither of the former is true ask the user how to
log on.
(authinfo_get_authinfo_from_user): New function. Query the user for
domain, username and password to use for authentication.
(authinfo_free): New function. Free memory in authentication structure.
(authinfo_free_all): New function. Free the list used to remember
authentication information.
(authinfo_compare_host_and_share, authinfo_compare_host): New functions.
Helper functions used to search the authentication list.
(authinfo_add): New function. Add one authentication entry to the
authlist.
(authinfo_remove): New function. Remove one entry from the authlist.
(free_bucket): Free memory associated with one bucket.
(smbfs_get_free_bucket): Initialize the complete connection array
with 0. Free the memory allocated for a bucket and initialize the
bucket before reusing it.
(smbfs_open_link): use new functions to get authentication information
(get_stat_info, smbfs_stat): remove unused variables.
* gnome/gconf.h (PORT_STATIC_IN_STRING_FILE_XTIME): new port specific
feature. The Gnome edition first calls all string_file functions
and then uses the return values of these functions. Therefore additional
static buffers in string_file_[acm]time are needed.
* src/screen.c (string_file_[amc]time): These three functions use
file_date which returns a pointer to a static buffer. In the
Gnome edition this buffer has to be coppied to a static buffer
which isn't used in the other two functions (Fix Bug #1766).
* src/util.c, util.h: Moved some constants to util.h
* vfs/tar.c (read_header): Don't segfault when a symlink points to the
root directory.
1999-08-04 Norbert Warmuth <nwarmuth@privat.circular.de>
* src/widget.c (push_history): Add SMB Link to the list of input dialogs
where urls are input without vfs prefix.
Translate the titles of these input dialogs only once.
Removed Gnome specific code because the Gnome edition doesn't use
the input history any more.
* src/util.c (strip_password): Add /#smb: to the list of urls which might
be input with password.
* gnome/gcmd.c (gnome_about_cmd): Change strings in gmc "about" to
static as they only translated once.
* src/menu.c (create_menu, menubar_drop_compute, menubar_paint_idx):
Discount '&' for hotkeys when checking menu widths to avoid the
extra blank space.
Moved this accounting from the drawing to the creating function.
* src/widget.c: Translate History box tittle.
* po/es.po, po/es_ES.po: added translation for history box title
1999-08-01 Norbert Warmuth <nwarmuth@privat.circular.de>
* src/vfs.c: Don't close a function definition with "};". SunCC from
2.5.1 chokes on the extra semicolon.
(mc_munmap): Don't dereference function pointer when checking for
NULL (this check is supposed to prevent a segfault instead of
causing one). This haven't got noticed up to now becaue there's no
file system with mmap but without munmap.
* widget.c (push_history): Only do check the history headings if
the widget has a history entry bound to it.
1999-02-03 Miguel de Icaza <miguel@nuclecu.unam.mx>
* treestore.c (tree_store_start_check, tree_store_mark_checked,
tree_store_end_check): Use a stack for check_name. There are far
too many instances that might call the end_check.
* widget.c (history_put): set the access rights correctly when
the history file is created initially. Don't save the history
if we can't set the access rights.
* src/util.c (strip_password): Extented to find the url in the first
parameter. The second parameter tells whether it should search the
url (indicated by known prefixes) in the first parameter or whether
the first parameter is a url without a prefix ("ftp://", "/#ftp:",
"/#mc:").
* src/main.c (directory_history_add): Strip the password (if any) from
the freshly added value.
* src/widget.c (push_history): ditto. There's a ugly special casing
necessary for the network and ftp link dialogs (urls are entered
with out prefix).
* src/widget.c (history_put): Restrict read and write access to the
history file to the owner (Just in case I forgot to strip passwords
somewhere).
Mon Feb 1 19:32:12 1999 Norbert Warmuth <nwarmuth@privat.circular.de>
* vfs/ftpfs.c (insert_dots): renamed from insert_dot. We have to
insert ".." as well or directories from ftp servers which don't
list "." and ".." are displayed with an additional "/".
Wed Jan 27 03:17:44 1999 Timur Bakeyev <mc@bat.ru>
* Converted memory managment to Glib. Now we use g_new()/g_malloc()/
g_strdup()/g_free() routings. Also, copy_strings() replaced by
g_strconcat(), strcasecmp() -> g_strcasecmp(),and sprintf() by
g_snprintf().
* Some sequences of malloc()/sprintf() changed to g_strdup_printf().
* mad.[ch]: Modified, to work with new GLib's memory managment. Fixed
a missing #undef for tempnam, which caused dead loop. Add several new
functions to emulate GLib memory managment.
*main.c, mad.[ch]: Add a new switch "-M", which allows to redirect MAD
messages to the file.
* util.[ch], utilunix.c: Modified, deleted our variants of strcasecmp()
and strdup() - we have g_ equivalences. Remove get_full_name() - it is
similar to concat_dir_and_file(). Some other tricks with g_* functions.
* global.h: Modified, extended. Now it is main memory mangment include -
i.e. all inclusions of <stdlib.h>, <malloc.h>, <glib.h>, "fs.h", "mem.h",
"util.h" and "mad.h" done there. This elimanates problem with proper or-
der of #include's.
* All around the source - changed order of #include's, most of them gone
to global.h (see above), minor changes, like "0" -> NULL in string func-
tions.
- GNOME edition now compiles without any trace of the text mode
dependencies.
- We no longer link with libraries we do not use (crypt, gpm), this
fixes the recent bug reports.
- More tree updates, enhancements.
Miguel.
* po/it.po: deleted additional "\n" in one msgstr
Sun May 31 10:23:01 1998 Norbert Warmuth <k3190@fh-sw.de>
* key.c (define_sequence): If a sequence clashes the last
definition made will be used. This makes it possible to override
wrong definitions in terminfo/termcap database with learn keys (or
the appropriate entries in mc.lib and ~/.mc/ini).
* widget.c (show_hist): Don't display the listbox partly
off screen (the left panel's history started in column - 2).
* keyxdef.c: include tty.h instead of myslang.h as suggested by
Tamasi Gyorgy <gt_cosy@usa.net>
Fri May 29 15:41:19 1998 Alexander V. Lukyanov <lav@yars.free.net>
* widget.c (update_input): this patch allows entering 8-bit
characters in input fields without screwing attributes. (the
same old sign extension...)
Wed May 27 22:23:48 1998 Ed Cogburn <ecogburn@greene.xtn.net>
* lib/xterm.ti: The 'xterm-color' definition needs 'sgr0'. The tic
program from ncurses 4.2 doesn't like the xterm.ti file that comes
with mc.
Wed May 27 15:29:01 1998 Alexander V. Lukyanov <lav@yars.free.net>
* key.c (get_key_code): characters with high bit set were input
as 0x80 char when use_8th_bit_as_meta was set
1. Selecting text in an input line and typing a char
now does the expected thing (Bug #17)
2. Drag and drop betwen icon view was broken (Bug #16
(This is a bug introduced by the fact that when Icon
View was introduced, I left the testing for the view
mode here and there)
Extra stuff: runtime warnings fixed when creating a new window;
moved the "new window" option to the "file" menu, it makes more
sense there. Force event flushing when I change the progress
status for vfs code.
Miguel
Wed May 20 16:27:56 1998 Norbert Warmuth <k3190@fh-sw.de>
* widget.c (history_put): input line history was defunct because
there was an #ifndef where an #ifdef should be.
Btw. PORT_WIDGET_WANTS_HISTORY seems incomplete because a lot of
history code is included even when this define is undefined.
* edit/syntax.c: Disable debug messages on stderr.
* edit/edit.h: Added missing _()
Sun May 10 14:51:03 1998 Norbert Warmuth <k3190@fh-sw.de>
* ftpfs.c (__ftpfs_chdir): CWD command wasn't sent at all. This
optimation is wrong because for directories containing spaces we
have to "CWD <pathname>" and "LIST -la" instead of
"LIST -la <pathname>".
I implemented a different optimation. Now ftpfs_chdir only stores
the new working directory and sets a flag. __ftpfs_chdir is called
when we really want to change the directory on the ftp server.
(resolve_symlink): Log the directory listing to the logfile.
* ftpfs.h (struct ftpfs_connection): Added a (per connection)
cwd_defered flag.
Sun May 10 13:27:50 1998 Norbert Warmuth <k3190@fh-sw.de>
* widget.c (handle_char): Don't try to to delete default text in
input widget more than once. Right after MC's start copy_filename
(ESC Enter) failed because a flag wasn't cleared while characters
were stuffed into the commandline (Andrej reported this bug).
* main.c (copy_readlink): usr mc_readlink instead of readlink
* file.c: Changed default for the copy/move option "dive into
subdir if exists" to off (note: this was only possible after the
change in setup.c).
(copy_dir_dir): Activated the previously uncommented code which
implements "Dive into subdirs". Even when there's no case where we
actually would like that behaviour it is a documented feature.
Though I don't wanted to change the default behavour. Hence the
option change.
(file_mask_defaults): set dive_into_subdirs
(file_mask_dialog): Fix for debian Bug #20727: Move operation with
"[ ] Dive into subdir if exists" and destination filename not
wildcarded. If destination is an existing directory then files
will be moved into this directory. If destination is not an
existing directory then src file will be renamed (one file
selected) or an error will be displayed (more than one file
selected).
(file_mask_dialog): made the option "Using shell patterns" local
to the current copy/move operation, i.e. this option is always
initialized with the global options's value. Previously it affected
the global Options/Configuration/shell Patterns.
Another possiblilty would be to make the global option a default
option on startup and keep changes in the copy/move dialog
(without saving these changes with save setup).
* setup.c: Don't save and load options which can be changed
outside the options menu. For example I don't like that
preserve_uid_gid and dive_into_subdirs from the copy/move dialog
are saved and restored (strange, what about the other options from
this dialog?).
It would be much cleaner to make these option read-only. This way
one could edit ~/.mc/ini to provide default option setting on
startup and "Save setup" wouldn't have side effects outside the
option's menu.
Sun May 10 13:24:20 1998 Norbert Warmuth <k3190@fh-sw.de>
* doc/mc.1.in, doc/mc.sgml, mc.hlp: Updated to reflect new default
for dive into subdirs.
* background.c (message_1s1d): the unprocessed string with %d was
passed to message_1s; fixed small memory leak
* widget.c (button_callback): WIDGET_CURSOR: make cursor position
dependend from button type (fixes the off by one bug in advanced
changeown).
fix a bug in the panel-widget selection.
i18n changes from Andrej Borsenkow.
Menus renamed, better texts -- thanks Havoc.
lav's fixes for curses compilation.
Miguel
- Double click should work.
- Dragging to other panels shoudl work
- Scrollbar in the viewer
- Entry widgets get their text selected at startup
- Prompts for command if default action does not exist for a filename
- Updated spanish translation.
Plus some other bugs I fixed.
Miguel
* src/find.c: changes to find_parameters/find_file i18n.
* src/widget.c: new function introduced, button_scan_hotkey();
button_new() and button_set_text() fixed to use mentioned function.
* src/key.[ch], src/dlg.c: changes to make recognition of ESC char as
ALT(c) possible for 8-bit chars. (By replacing 'A'/'Z' comparisons with
call to isalpha() in the way proposed by Norbert).
* src/boxes.c: changes to display box i18n
* src/learn.c: changes to learn key dialog i18n
* configure.in: ALL_LINGUAS test added, to allow specify list
of languages to be installed by setting env variable before
configure. If it is empty, it defaults to full list.
* src/menu.h menu_entry.{hot_pos, is_dupped} dropped
* src/menu.c: consistency fixes: pull-down menu items are now
accessible either with arrow keys or with hotkeys, denoted with &
(and highlighted). (key combinations, placed to the right of items
intended to be used from outside the menus). Freeing menu entries
removed as it no longer needed
* src/main.c, edit/editmenu.c: menubar init code is changed to conform
above fixes.
* edit/edit.h: use of "Cancel" in error_dialogs replaced with
"Dismiss", to avoid collisions in translation of "Cancel" in other
places with this case.
* src/boxes.c: select_format() and it's support removed, as it is
obsoleted by input line history feature. display_init()/display_callback
fixed to suite i18n changes. sort_box() - alike.
* src/option.c: pause_options added &'s and gettext calls to expand
statically assigned values.
* src/widget.c: (radio_callback) hotkey recognition is changed to
&-notation, rather than simple uppercase.
* src/dlg.c: (dlg_try_hotkey) plain symbol comparison replaced with
call to isalpha(), this fixes errorneous exit from input line, when
button hotkey is 8-bit NLS char.
* main.c, screen.c, dirhist.c, dirhist.h, main.h, widget.c,
main.h and others?: Directory history added. The previous
directory history code was removed. The directory history now
loads and saves using the same routines as the input widget. The
keys meta-y, and meta-u are used to go backward and forward
through the history. The buttons to the right and left of the
current directory display on the panel can be used as well. The
v button brings up a history, but no key is assigned to this.
Discussion as to correct color and shape of these buttons is
open. show_hist() in widget.c is made generic to be called for
any widget. Help pages still needed to be added for the
directory history.
is enabled; virtual fs setup dialog box is up; save setup; mkdir
link command is hossed. It is more than hossed for some stoopid
reason, the thing is selecting the first file in the panel
just after I talked to it. No matter how argumentative I get
with the code. Have to fix next.
Commit the bits I forgot to commit yesterday.
-miguel.