Commit Graph

15 Commits

Author SHA1 Message Date
Patrick Georgi ae001c320f fix misleading indentation
Mostly to shut up the compiler, but some real bugs hidden in there.
2025-12-18 22:58:26 +01:00
Jon Trulson ea2d3927c7 dtfile: remove register keyword 2018-06-27 22:14:51 -06:00
Peter Howkins e57fa0384f dtfile: Change to ANSI function definitions 2018-06-28 04:13:21 +01:00
chase 1fe5a550b2 Fix typo in license headers 2018-04-28 12:30:20 -06:00
Jon Trulson fd5fe65616 dtfile/Desktop: CID 175219,175222,175223,175226,175227 2018-04-12 11:10:42 -06:00
Jon Trulson 7e61925f1b dtfile/Desktop: CID 88133,88159,88339,88798,89331,89466 2018-04-11 16:25:52 -06:00
Eugene Doudine a9dbe60805 Fixes a small bug in grid registration: when an object is placed over another object (can be done manually) and then removed from there, the registration of the covered object is removed as well (that is it's cell is considered empty).
The patch converts desktop_grid[] from Boolean array into array of
counters of objects, which are placed on cells. When object is
placed on /removed from   the screen  the counter gets incremented/decremented.
2014-04-19 18:57:57 -06:00
Eugene Doudine 5544a0fb39 Fixes several issues with grid registration of the dtwm panel on dtfile startup and on workspace addition:
The panel registration code rather stupidly assumed that display
  size is always 1280x1024 pixels. Because of this, depending on screen
  size, the panel could be registered somewhere in the center of the screen
  or completely or partially beyond of it.

  The panels were registered only on startup, not  those, which were added
  from UI.

The fix moves panel registration into separate routine and removes assumption
about display size. The fix yet is not complete since it still makes assumption
about panel's geometry: from dtfile there is still no way to find out
dinamically  the size of panel and it's location.
2014-04-19 18:57:57 -06:00
Eugene Doudine 8bafd85d9a Fixes the off-by-one bug in RegisterInGrid(), which caused dtfile's desktop icons on the right edge of the screen (if desktop width is not a multiple of icon with) to be registered on the next workspace or (in the case of the last workspace) beyond the desktop_grid array (possibly causing segfaults).
On small screens segfaults could be also triggered without any icons on dtfile
startup if dtwm panel (or part of it) was registered beyond the screen when
RegisterInGrid() was called by InitializeDesktopGrid().

The patch also makes grid registration work for large objects (larger than
2 cells in any direction, like dtwm panel or icon with long file name).
Previously only rectangle vertices were registered.
2014-04-19 18:57:57 -06:00
Marcin Cieslak 18a78bbff5 dtfile: fix pointer to integer conversion
Use XtArgVal (usually (long)) to convert
(XtPointer) to (int) and back.

This provides safe way to convert and
avoids compiler warning.
2012-09-23 19:38:40 -06:00
Marcin Cieslak 1079b56422 dtfile: Add missing prototypes
Add missing prototypes and header files to the dtfile
code in order to move closer towards 64-bit compatibility.

Extract the following functions from Motif internal headers:

_XmGetWidgetExtData
_XmRecordEvent
_XmStringUngenerate
_XmTextFieldSetDestination
_XmGetActiveTopLevelMenu

Extract manually prototypes of the obsolete Motif interface:
_XmHighlightBorder
_XmUnhighlightBorder

Remove XmPrivate.h if extractprototype.awk fails

Make the following header files available via -I:
	codelibs/boolean.h
	codelibs/pathutils.h
	codelibs/shellutils.h
and remove shellutils.h from dtwm directory.
2012-09-18 09:59:11 -06:00
Peter Howkins 764a0c7e72 dtfile: Remove 97 compiler warnings 2012-08-30 19:54:01 +01:00
Pascal Stumpf eaec696ad6 Fixes for dtfile on OpenBSD, plus missing prototypes. Use statfs() on BSD to find out if a file system is NFS. 2012-08-10 14:13:45 -06:00
Peter Howkins c884521619 Add GNU LGPL headers to all .c .C and .h files 2012-03-10 18:58:32 +00:00
Peter Howkins 83b6996daa Initial import of the CDE 2.1.30 sources from the Open Group. 2012-03-10 18:21:40 +00:00