* gdesktop.c, gdnd.c, gaction.c, gicon.c,
gnome-file-property-dialog.c, gpopup.c, gpopup2.c, gprefs.cgmain.h,
setup.c: Add option of using GNOME "magic" routines to determine file
types. This makes MC intelligently look at the data in the file to see
what type of file it is, rather than looking at the filename extension.
This slows down MC quite a bit, so it has been made an optional
preference item. Type detection is expected to improve as mime-magic
matures.
* configure.in: Massive changes to build system to permit
gnome-2.0 compilation. From here on out, you need gnome-2.0 or
greater installed.
You will prolly not be able to get this to work.
* gaction.c (gmc_open_filename): Use gnome_mime_needsterminal()
instead of gnome_mime_type_or_default(). This was a thinko.
Thanks to Aaron Lehmann <aaronl@vitelus.com> for pointing this
out.
* gdesktop.c (desktop_arrange_icons): Return immediately if there
are no icons in the desktop. BUGFIX: bugs.gnome.org #3789.
(desktop_popup): Desensitize the "arrange icons" commands if there
are no icons in the desktop.
* make_thumb.c: close symlink hole
* *.c: add return_val_if_fail, it is better than crashing. Sorry
about that *image = NULL, but gcc should be able to optimize
out in non-debugging case.
* gpopup2.c (create_actions): Now the Mount/Unmount/Eject device
code will be lumped together with the other MIME_ACTIONS, even
thought they're not controlled there.
* gmain.c, gmain.h: add a '--disablerootwarning' flag which
disable the iritating "You're running gmc as root." dialog box.
(idealy, that box should also contain a "don't show this
message again" checkbox; any objection?).
* gcorba.c (corba_activate_server): New function. Activate the
POA manager here, when we are actually ready to process requests,
instead of at the beginning of initialization.
* gmain.c (create_panels): Call corba_activate_server().
* gscreen.c (panel_chdir): Clear the lists if the chdir operation
was not successful.
* gtkflist.c (gtk_flist_button_press): Only emit the open_row
signal if we are not on the empty area.
* gscreen.c (x_create_panel): Do not change the dialog head's
current pointer.
* gmain.c (x_init_dlg): Only call x_focus_widget() if there is a
current widget.
(non_corba_create_panels): Removed the nasty hack that created a
dummy panel and destroyed it in the idle loop. Wheeeeeee!
1999-09-21 Federico Mena Quintero <federico@redhat.com>
* dlg.c (init_dlg): Walk the list of widgets only if it exists.
(dlg_broadcast_msg_to): Use safer list-walking code for if someone
inserts a widget inside the message broadcast.
* dlg.c (init_dlg): Walk the list of widgets only if it exists.
1999-09-21 Federico Mena Quintero <federico@redhat.com>
* gmain.c (x_init_dlg): Only call x_focus_widget() if there is a
current widget.
* gdesktop.c (handle_recreate_default_icons): New option to
re-create the default set of icons.
* gdesktop-init.c (gdesktop_links_init): Create the link to the
user's home directory here.
1999-09-20 Federico Mena Quintero <federico@redhat.com>
* gcorba.c (WindowFactory_get_windows_by_directory): Fill in the
sequence correctly.
* gsession.c (load_panel_info): Doh. Fix test for presence of the
cwd info.
(load_session_info): If we could not load the panel info, do not
insert bogus data in the list.
* gsession.c (load_panel_info): Doh. Fix test for presence of the
cwd info.
(load_session_info): If we could not load the panel info, do not
insert bogus data in the list.
The following is a patch from Volker Braun
<volker.braun@physik.hu-berlin.de> to fix column resizing in the
file panels.
* gcustom-layout.c (custom_layout_apply): Set the
default_user_format to the new format.
* gscreen.c (panel_fill_panel_list): Set the column widths
according to the previously stored values.
Nuked the old and hideous panel_file_list_configure_contents().
(panel_file_list_configure): Connect to resize_column in the clist.
(panel_create_file_list): Do not connect to size_allocate.
(x_create_panel): Set the column width array for this panel. Set
the user format from the default one if it exists.
* gsession.c (PanelInfo): Added information about column widths
and the user format.
(save_panel_info): Save the complete information.
(load_panel_info): Load the complete information.
(free_panel_info): Free the user format.
(idle_create_panels): Set the user format and column widths.
1999-09-20 Federico Mena Quintero <federico@redhat.com>
The following is a patch from Volker Braun
<volker.braun@physik.hu-berlin.de> to fix column resizing in the
file panels.
* setup.c (options): Declare the column width option values.
(save_configure): Save the default user format.
(load_setup): Load the default user format.
* panel.h (WPanel): Added a field for the column widths.
* lib/startup.links: Changed the news link to Gnotices
1999-09-19 David Martin <dmartina@usa.net>
* gtkedit/editcmd.c (edit_print_string): Use unsigned char so that
8 bit chars from strftime get displayed when inserting date.
* lib/mc.ext.in: Add entries for bzip2 compressed pages as used in
Mandrake 6.0. The generic entry for bzip2 moved to the end of the
file to avoid interferences. In this one I changed the extension check
to a type check (as used for gzip) which might give problems in some
systems.
* src/user.c (check_patterns): char* is used instead of char [] in sizeof
* src/util.c (string_perm): prefix named pipes by 'p' and not by `s'
1999-09-19 David Martin <dmartina@usa.net>
* gtkedit/editcmd.c (edit_print_string): Use unsigned char so that
8 bit chars from strftime get displayed when inserting date.
* lib/mc.ext.in: Add entries for bzip2 compressed pages as used in
Mandrake 6.0. The generic entry for bzip2 moved to the end of the
file to avoid interferences. In this one I changed the extension check
to a type check (as used for gzip) which might give problems in some
systems.
* configure.in: Use -Tlatin1 to format man pages when available and
"view" 8 bit chars.
1999-09-19 Norbert Warmuth <nwarmuth@privat.circular.de>
* gtkedit/edit.h: Include files reordered in order to make it compile with
--with-debug
* gtkedit/editcmd.c (menu_save_mode_cmd): calculate dialog width
dependent on lenght of translated strings to display.
* src/mad.c, mad.h, util.c, util.h: Move mad-functions from util.[ch]
to mad.[ch]
* src/option.c: Include files reordered in order to make it compile with
--with-debug
* src/mad.c (mad_init): New function. Initialize debug FILE pointer to
stderr (moved to a function because not on every system stderr is
a constant).
(mad_set_debug): added const qualifier
* src/main.c (main): call mad_init
* po/*.po: s/defination/definition/
* gnome/Makefile.in ($(MAGICDEV_GENERATED)): Make it compile with $buildir
!= $srcdir.
* vfs/ftpfs.c (ftpfs_set_debug), vfs.h: added const qualifier.
* vfs/mcserv.c: removed definition of mad_strconcat which is also
in mad.c.
* smbfs.c: #define NO_CONFIG_H before including the samba
includes; this way it will not re=define HAVE_LIBREADLINE. This
situation sucks. Should we change the names of the widget.h
history_*() functions?
1999-09-17 Federico Mena Quintero <federico@redhat.com>
* gmain.c (x_init_dlg): Display a warning if the GtkTed code path
is ever reached.
(xtoolkit_create_dialog): Likewise.
(x_add_widget): Likewise.
* Remove the magicdev autoconf test in favor of just
including the idl file. Otherwise we have a dependency
loop between this and magicdev.
1999-09-16 Owen Taylor <otaylor@redhat.com>
* gmount.c: Remove the HAVE_MAGICDEV conditional.
* Makefile.in magicdev.idl: Add the magicdev.idl file
here to avoid creating dependency loops.
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.
* Makefile.in (MAGICDEV_OBJS): Built common/stubs
for magicdev if we found it.
* gmount.c (automounter_is_running): If we detected
magicdev support at compile time, use a CORBA query
to detect if it is running.
* gcorba.c (WindowFactory_get_windows_by_directory): Set the
length of the sequence we are returning.
* gmount.c (setup_devices): is_block_device_mounted expects
mount point, not device.
* gtkdtree.c (scan_subtree): Do not set the current path here,
just load the subtree.
(gtk_dtree_get_row_path): Removed the column argument, since it
was never used.
(scan_subtree): Added a path argument that can be calculated
upstream.
(gtk_dtree_expand): Compute the path for scan_subtree().
(gtk_dtree_select_row): Compute the path for scan_subtree(), and
set the tree's current path here. This is the right thing;
setting the current path is completely orthogonal from scanning a
subtree.
* gtkdtree.c (gtk_dtree_class_init): Sigh. Create a new signal,
called "possibly_ungrab", used to request the client to ungrab the
mouse at the proper time. This is required because the stupid
clist button press handler grabs the mouse, and we don't want that.
(gtk_dtree_select_row): Emit the possibly_ungrab signal here.
* gscreen.c (panel_tree_drag_motion): Set the
panel->drag_tree_dragging_over flag.
(panel_tree_drag_leave): Unset said flag.
(panel_tree_possibly_ungrab): Ungrab the mouse here.