Commit Graph

64 Commits

Author SHA1 Message Date
Miguel de Icaza
f64d6da2e4 1998-10-30 Federico Mena Quintero <federico@nuclecu.unam.mx>
* gdesktop.c: We are now using the new desktop icon code.  It is
	not yet complete, but what is there does work.  We have icon
	creation, auto-layout and snapping.  Next step is drag and drop
	and popup menus.

	* glayout.c: #ifdef out the stuff that uses the old desktop code.
	I will replace it gradually.
	* gmain.c: Likewise.
	* gscreen.c: Likewise.
1998-10-30 23:22:35 +00:00
Miguel de Icaza
8e3b730338 Small warning fixes.
Miguel.
1998-10-30 17:51:28 +00:00
Miguel de Icaza
e704d53f77 sync sync - Federico 1998-10-30 17:08:03 +00:00
Miguel de Icaza
903eb5a880 Sync to laptop; I ifdef-ed the old code just so that it will compile - Federico 1998-10-30 00:47:54 +00:00
msw
12f7db92e9 Wed Oct 28 14:34:22 EST 1998 Matt Wilson <msw@gimp.org>
* gnome/gdesktop.c, gnome/gdesktop-icon.c:
	  s/desktop-icon.h/gdesktop-icon.h/g
1998-10-28 19:31:04 +00:00
Miguel de Icaza
3a4a872fd2 Sync from laptop: Get CList mode working; Parts of the window detection code -mig 1998-10-28 01:47:57 +00:00
Miguel de Icaza
c5dca5a751 1998-10-23 Federico Mena Quintero <federico@nuclecu.unam.mx>
* gdesktop.c (desktop_icon_set_position): Do not lower the
	window.  The gnome-compliant wm will know what to do with windows
	on the Desktop layer.
	(post_setup_desktop_icon): Likewise.

	* desktop-icon.c (create_window_shape): Fetch the mask of the
	image "by hand", as we cannot rely on the canvas item having
	created it yet.

	* desktop-icon.c (desktop_icon_realize): Doh.  We need to
	initialize the gnome_win_hints before we set any of the hints.
1998-10-26 23:19:37 +00:00
Miguel de Icaza
772cae09e0 Fixes for desktop icons - Federico 1998-10-23 14:31:02 +00:00
Miguel de Icaza
e7911e2b15 Sync sync - debugging time - Federico
1998-10-21  Federico Mena Quintero  <federico@nuclecu.unam.mx>

	* gdesktop.c (create_desktop_icon): Renamed from
	my_create_transparent_text_window.  Now uses the DesktopIcon
	widget for its work.
	(get_desktop_icon_for_dentry): Renamed from
	get_transparent_window_for_dentry.  Uses the DesktopIcon widget.
	(get_desktop_icon_for_di): Renamed from
	get_transparent_window_for_di.
	(desktop_icon_properties): Do not size_request the icon, since now
	we can get its dimensions directly from the DesktopIcon structure.

	* desktop-icon.[ch]: New file that takes care of desktop icons.
	It provides the spiffy widget that is used for them.

	* Makefile.in: Added desktop-icon.[ch] to the list of sources.
	MC should use Automake, I think.
1998-10-22 00:32:21 +00:00
Miguel de Icaza
cd9efdc2dd Yes, we are a drop target. With all of the features requested on the
mail I got from DrMike some months ago :-)

It needs a bit of debugging still

Miguel
1998-10-21 18:05:08 +00:00
Miguel de Icaza
809d80eb90 Ok, Midnight Commander is now a nice, wonderful Drag source for the
new DnD.  Boy, is it cute.

Question:  should I use the default icon for DnD provided by Gtk+
or use the old icons I have? the old icons are a bit more sexy.

Miguel.
1998-10-21 01:09:50 +00:00
Miguel de Icaza
e591c91db2 - Make input handling work nicely on the icon list.
- First pass at the new drag and drop protocol, using the
  default handlers, more work on this tomorrow.
1998-10-20 05:37:45 +00:00
Miguel de Icaza
215cd45d16 Sync for laptop, do not touch this for now 1998-10-20 01:52:16 +00:00
johne
49643c9ffb gdesktop.c: launcher-program.xpm to png. 1998-09-17 05:42:05 +00:00
Raja R Harinath
25ed8288b9 * gdesktop.c: Include "mad.h", for xmalloc.
* gkey.c: Likewise.
* gscreen.c: Likewise.
(panel_create_file_list): Use `g_free', not `free'.
1998-08-20 22:04:52 +00:00
The Rasterman
5240be11ae Wed Aug 19 19:45:16 EDT 1998 The Rasterman <raster@redhat.com>
* gdesktop.c - changed dnd setting routine for desktop icon to set
	events on child window...
	* gtrans.c - chnaged routines to make window with
	child rawing area and set shape on parent window
1998-08-19 23:39:57 +00:00
Miguel de Icaza
465cd6bda9 VFS changes from the list; A lot of fixes for the GNOME interface
that have been reported.  More to come.
1998-06-03 14:08:47 +00:00
Miguel de Icaza
08dc3ad481 Only process drop events for the data types we actually know.
Should help Jaka's MDI.

Miguel
1998-05-27 00:21:32 +00:00
Miguel de Icaza
fa9cc8e6a9 1998-05-25 Miguel de Icaza <miguel@nuclecu.unam.mx>
* gdesktop.c (desktop_create_directory_entry): Fix, make a
	g_strdup copy of the name. Fixes bug report #78.
	(desktop_icon_context_popup): Simplified this routine as we are
	using file_popup now anyways.
1998-05-25 22:16:11 +00:00
Miguel de Icaza
0baa6ae099 Weee! First bugs fixed from the Bug tracking system:
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
1998-05-24 22:21:56 +00:00
Miguel de Icaza
a416ee4f7b Cool changes:
1998-05-22  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* gwidget.c (x_create_input): Disable the use of the GNOME entries
	for now, as they are very slow.  We need to figure out what is
	wrong with this.

	With this change, dialog boxes close quickly instead of taking
	ages to close.

	* gscreen.c, gdesktop.c (file_popup_add_context, file_popup):
	Share the context menu code in gdesktop.c and gscreen.c.  The
	desktop pop up menus now include all of the stuff that would have
	appeared in the Panel.

	* gdesktop.c (desktop_icon_remove): Remove the file associated
	with this desktop entry if it is on the ~/desktop directory.
1998-05-23 00:55:03 +00:00
Miguel de Icaza
3c06d7ee5e Do not lower on expose -mig 1998-05-21 18:52:35 +00:00
Elliot Lee
22118c031b Lower icons on expose 1998-05-21 17:21:59 +00:00
Miguel de Icaza
3a3c99ed4c Pass1 of the QNX port of mc from Tamasi Gyorgy 1998-05-20 02:12:06 +00:00
Miguel de Icaza
96c55ff5bb Various memory leak fixes.
Miguel.
1998-05-19 18:37:03 +00:00
Tom Tromey
7c515a1b5c Sat May 16 02:29:51 1998 Tom Tromey <tromey@cygnus.com>
* gdesktop.c (url_dropped): `exec' field of desktop entry now a
        vector.
        (dentry_execute): Likewise.
        (desktop_icon_remove): Likewise.
        (get_transparent_window_for_dentry): Likewise.
        (desktop_create_directory_entry): Likewise; also initialize
        exec_length.
1998-05-16 20:54:28 +00:00
Miguel de Icaza
41871990d5 1998-05-04 Miguel de Icaza <miguel@nuclecu.unam.mx>
* gdesktop.c (desktop_icon_drag_start): Do not attempt to use
	icons if we could not load the images for the icon.
1998-05-05 08:08:56 +00:00
Miguel de Icaza
6e4c1d461d 1998-05-04 Miguel de Icaza <miguel@nuclecu.unam.mx>
* gdesktop.c (perform_drop_manually): Use p to walk the dropped
	data.  This is an important bug fix.
1998-05-05 02:47:43 +00:00
Miguel de Icaza
29726d03dc Simple fix for dnd symlinks -mig 1998-05-04 04:33:53 +00:00
Miguel de Icaza
98ff71d81f - Simplified the update_panels routine to only care about the current
panel, the old way of using it was an historic relic.

- This now works properly with the GNOME edition.

- Finished/fixed the implementation of the desktop-remove-icon
  functionality.

- Raster's new multi-ok window.  For some reason this is not getting
  loaded.   I am compiling gdb 4.17 now, as it is better for egcs
  output.

Miguel.
1998-04-30 03:21:52 +00:00
Miguel de Icaza
301a9f4846 Put desktop icons on bottom 1998-04-23 18:23:32 +00:00
Miguel de Icaza
f1afd65290 Property changes on the desktop -mig 1998-04-17 02:23:29 +00:00
Miguel de Icaza
3b2ad8a238 Lots of prototypes added, warnings removed -miguel 1998-04-17 00:59:58 +00:00
Miguel de Icaza
0f31fb67d0 Fixes 80% of the bugs reported by Elliot on his last email.
This does not fix some major "problems", which require some bigger
changes to the program.

Miguel.
1998-04-17 00:21:53 +00:00
Miguel de Icaza
515e64efdc 1. Use the old artificial drag start code.
2. Load/Save desktop-icon transparent state.
3. Add arrange icons code.
4. Add snap to grid option (default now).
5. Fixed viewer crash.

Still left to do:
- Nice config dialog to set the above variables.
1998-04-15 03:16:29 +00:00
Miguel de Icaza
de86596546 Assorted bug fixes -mig 1998-04-09 21:59:32 +00:00
Miguel de Icaza
e0c843048c A bunch of extra TODO items from DrMike have been adressed.
- 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
1998-04-09 04:58:24 +00:00
Miguel de Icaza
ca2ffb99b6 Various fixes reported by DrMike:
- Nicer dialog destruction (no flicker)
- refresh of panels after a drop.
- Pause after run is gone in the gnome edition.
- Improved layout for options dialog box.
- Checkbox widgets are implemented, they now work.

Miguel.
1998-04-07 23:45:27 +00:00
Miguel de Icaza
0842a5390c 1998-03-31 Miguel de Icaza <miguel@nuclecu.unam.mx>
* gcache.c: Added an Image cache for all of the imlib-loaded
	images to avoid destroying/reloading the images.

	* gdesktop.c, gtrans.c: Use the image cache.
1998-04-01 00:52:33 +00:00
Miguel de Icaza
8c4cee34c3 Temporary work around for the buggy DnD implementation in Gdk:
Gdk should not be sending drag_begin_events if a drag event has not
finished.

Gdk has some wierdo way of moving the shaped window, it flashes a
*lot*.

This basically avoid leaving garbage on the desktop, but it is not
the best fix.

Miguel.
1998-03-31 07:35:38 +00:00
Miguel de Icaza
391f08d9e5 Initialize dentry->geometry -mig 1998-03-25 19:29:12 +00:00
Miguel de Icaza
ac70e34d02 MC goes Internationallsls./gmc Spanish translation almost complete -mig 1998-03-25 05:16:00 +00:00
Miguel de Icaza
f29db51778 cwd input line works/filter handling works/clipping label widget/flashing removed -mig 1998-03-24 05:25:56 +00:00
Miguel de Icaza
92ecd7af62 nlink_t patch for some sysvr3 system by Philippe De Muyter 1998-03-23 17:49:04 +00:00
Miguel de Icaza
25d833d805 1998-03-20 Federico Mena Quintero <federico@nuclecu.unam.mx>
* gdesktop.c (icon_properties):
	* gpageprop.c (item_properties): Modified to accept dentry title
	changes as well.
	(item_properties): Fixed base and fname confusion in call to
	concat_dir_and_file().

	* gprop.c (gprop_general_new):
	(gprop_general_get_data): Renamed to general from icon.  The
	general Gprop now lets you enter the title and icon filename for a
	dentry.
1998-03-20 23:38:43 +00:00
Miguel de Icaza
8dc04e93bd 1998-03-19 Federico Mena Quintero <federico@nuclecu.unam.mx>
* gdesktop.c (icon_properties): Whoops, actually save the dentry.
	(post_setup_desktop_icon): Moved the icon positioning call outside
	of this function so that property-changed icons will not move on
	the desktop.
1998-03-20 06:00:20 +00:00
Miguel de Icaza
1cdbe8dbda 1998-03-19 Federico Mena Quintero <federico@nuclecu.unam.mx>
* gdesktop.c (desktop_icon_context_popup): It is not necessary to
	set the menu position.
	(desktop_icon_context_popup): gtk_signal_connect_object_after to the menu
	items with gtk_widget_destroy as a callback so that we can destroy
	the menu widget appropriately.
1998-03-20 05:41:30 +00:00
Miguel de Icaza
442ad09caf 1998-03-19 Federico Mena Quintero <federico@nuclecu.unam.mx>
* gdesktop.c (get_transparent_window_for_dentry): New function,
	creates the proper transparent icon window for a dentry.
	(post_setup_desktop_icon): New function, does post-setup stuff for
	a desktop icon (setting it as a drop target, positioning it, etc.).

	* gpageprop.c (item_properties): Now the dentry parameter is a
	desktop_icon_t instead.
	We now return a bitmask that indicates what stuff changed.  The
	caller can use this information to decide what to update, repaint, etc.

	* gdesktop.h: Moved the icon_t and desktop_icon_t structures here.

	* gpageprop.c (item_properties): Insert icon control if appropriate.

	* gprop.c (gprop_icon_new):
	(gprop_icon_get_data): Renamed from gprop_dir_*().

	* gscreen.c (panel_action_properties): Re-reads panel only if necessary.

	*gpageprop.c (item_properties): now returns TRUE if something got
	changed, FALSE otherwise.  This should be used to decide whether
	to re-read the panel or not.

	* gpageprop.c: #include "../vfs/vfs.h".
	#include "dialog.h".

	* gprop.c (gprop_dir_new):
	(gprop_perm_new):
	(gprop_general_new): Connect to the destroy signal of the toplevel
	widget and destroy the Gprop structure on the callback.
1998-03-20 02:00:09 +00:00
Miguel de Icaza
213a417181 We had time, so we wrote property pages for desktop, files and children all alike -mig and federico 1998-03-19 04:51:17 +00:00
Miguel de Icaza
84013cb8d5 Wed Mar 18 20:35:45 1998 Miguel de Icaza <miguel@nuclecu.unam.mx>
* gdesktop.c (desktop_create_launch_entry): Support for the "Drop"
	target in mc.ext now.

	* Add support for dragging the icons on the desktop.

	(desktop_icon_make_draggable): new function.
	(drop_from_event): simplify.
	(my_create_transparent_text_window): Get the motion notify event.
	(drops_from_event): create a vector based on thge drop event.
	(drop_cb): splitted, call url_drop for regular drops, otherwise it
	is a icon drop.
	(artificial_drag_start): new routine, used now by gscreen.c and
	gdesktop.c
	(drop_on_directory): Check result value of operation.
	(desktop_icon_set_position): sane interface.
	(stop_desktop): Flush all of our state to disk.
1998-03-19 02:57:01 +00:00