Commit graph

31 commits

Author SHA1 Message Date
Jeremy Sowden 5b50ebaefb libdockapp: removed assertion that short-form options have length 2.
The mixed-option parsing code includes an assertion that short-form
options have a length of two.  However, there is no other validation of
this requirement and some dock-apps do not comply with it, which means
that if one exec's them with an unrecognized option or a mix of short
options, the assertion fails and the app aborts.

For example:

  $ /usr/bin/wmail --help | grep '\<display\>'
    -display <string>            display to use
  $ /usr/bin/wmail --blah
  wmail: daargs.c:126: contains: Assertion `strlen(needle) == 2' failed.
  Aborted

Since there is no explicit statement of this requirement, let's replace
the assertion with a conditional.
2019-06-13 22:35:56 +01:00
Anil N' via Window Maker Development deb3acc132 libdockapp: Fix for missing windowname and one more.
- "Untitled window" appears in xfce4-wmdock-plugin's enumeration of
  dockapps using libdockapp.
- Reference to string buffer that might not live long enough.
2019-01-04 18:09:46 +00:00
Doug Torrance 3132e13337 Update old windowmaker.org/dockapps urls to dockapps.net 2018-06-28 04:13:53 +01:00
Doug Torrance 219e04f6ad Update mailing list links to new Google Groups. 2018-05-14 23:34:53 +01:00
Doug Torrance 1891366919 libdockapp: Add DAMakeShapeFromData() and DAMakeShapeFromFile() functions.
libdockapp supports shaped dockapps with the DASetShape() function, but this
function requires as input a bitmap.  Previously, there was no support for
creating such a bitmap from XBM data without using Xlib directly.

We add two functions, DAMakeShapeFromData(), which is a wrapper around
XCreateBitmapFromData and allows developers to #include XBM data, and
DAMakeShapeFromFile(), which is a wrapper around XReadBitmapfile and
lets developers specify the path to an XBM file.
2017-08-31 08:32:04 +02:00
Doug Torrance ebae7f641b libdockapp: Make DAParseArguments() optional.
Some dockapps may want to handle command line options themselves, so we
make this function optional.

Previously, if this function was skipped, then a segfault would result when
trying to access the _daContext global while first creating the dockapp
window.

Now we check if _daContext has been initialized first, and if not, we
initialize it.
2017-08-30 09:49:11 +02:00
Doug Torrance 3cbdd1664a libdockapp: Use Requires.private in pkg-config file to avoid overlinking. 2017-08-13 10:32:45 +01:00
Doug Torrance 24c0e4e4f2 libdockapp: Don't withdraw dockapps in windowed mode.
In Window Maker, windows with application class "DockApp" are automatically
withdrawn.  We don't want this in windowed mode. We use the application
name instead, with the usual convention of capitalizing the initial letter.
2017-04-27 11:29:10 +01:00
Doug Torrance fa7743bc58 libdockapp: Do not include pathnames in Window Name and Class Properties
Patch by Corin-EU from GitHub [1].

In libdockapps file wmgeneral.c, wname is set from argv[0] and is then used
to set the window name and class resource. Often applications are called with
their full path which then means that the window name has a path in it,
thereby requiring an unwieldy path specific string for "Name" in WMState if
the applet is to be captured in the WM dock.

The simple solution is that wname should be the basename of argv[0] to
ensure that the window name for the applet is the simple and obvious one.
Thus the inclusion of header file libgen.h is required.

Just say "no" to path slashes "/" in window name/class resources ....

[1] https://github.com/d-torrance/dockapps/issues/5
2017-04-26 23:27:19 +01:00
Doug Torrance db83d64e1c libdockapp: Bump to version 0.7.2. 2015-10-21 09:07:01 -04:00
Doug Torrance 8f98cec497 libdockapp: Clean generated file dockapp.pc.
Based on the Debian patch [1].

[1] https://sources.debian.net/src/libdockapp/1:0.7.1-1/debian/patches/clean_dockapp.pc.patch/
2015-10-21 09:07:01 -04:00
Doug Torrance ee44bd28c4 libdockapp: Remove AC_PATH_XTRA macro from configure.ac
We already check for libraries with the PKG_CHECK_MODULES macros.  This also
allows the Debian package to drop the Build-Depend on libice-dev.

Based on the Debian patch [1].

[1] https://sources.debian.net/src/libdockapp/1:0.7.1-1/debian/patches/remove_AC_PATH_XTRA.diff/
2015-10-21 09:07:01 -04:00
Doug Torrance 79685780ff libdockapp: Recompress fonts without timestamp.
This fixes the package-contains-timestamped-gzip warning given by Lintian
for the Debian package.  (This warning is really unnecessary, as its purpose
it to check for reproducible builds and the fonts are not compressed at
build time, but I see no harm in removing these timestamps.)
2015-10-21 09:07:01 -04:00
Doug Torrance c11470a0b7 libdockapp: Bump to version 0.7.1. 2015-10-18 00:20:33 -04:00
Doug Torrance 54e081bcc4 libdockapp: Update update-changelog target in Makefile.
Only grab libdockapp commits.
2015-10-18 00:20:33 -04:00
Doug Torrance fc16f5d425 libdockapp: Update header location in examples. 2015-10-18 00:20:33 -04:00
Shining 796427153b libdockapp: Simplify instructions to generate a ./configure script.
Based on suggestions by Alexey Frolov and BALATON Zoltan.
2015-10-09 17:43:38 -04:00
Shining 582393e1ba libdockapp: Info about generating 'configure' script in README
In the README it is said to run ./configure but there's no such script in the
tarball. I wrote instructions to generate a ./configure with libtool and autotools.
2015-10-05 17:38:14 -04:00
Rodolfo García Peñas (kix) faae8b4f2f Include libwmgeneral in libdockapp
This patch includes the libwmgeneral library in the libdockapp
library.

The new library is now version 3 (previous was version 2) and it
includes the new include folder in $libdir/libdockapp.

The wmgeneral files were moved from the previous folder (libwmgeneral)
and the folder is now removed.

Signed-off-by: Rodolfo García Peñas (kix) <kix@kix.es>
2015-08-15 09:52:19 +01:00
Doug Torrance 45e0863ded libdockapp: Release version 0.6.4. 2014-11-28 16:39:20 +00:00
Doug Torrance 7961c22e72 libdockapp: Update contact information. 2014-11-28 16:39:20 +00:00
Doug Torrance 536b9b677a libdockapp: Add update-changelog target to Makefile to update ChangeLog. 2014-11-28 16:39:20 +00:00
Doug Torrance 69a7c6f39b libdockapp: Add new ChangeLog, created by git2cl. 2014-11-28 16:39:20 +00:00
Doug Torrance 423d103fb3 libdockapp: Merge ChangeLog into NEWS (they were largely the same). 2014-11-28 16:39:20 +00:00
Doug Torrance 16088c0c34 libdockapp: Add #include <time.h> to basic example.
Otherwise, we get the following compiler warning:
basic.c: In function ‘main’:
basic.c:111:2: warning: implicit declaration of function ‘time’ [-Wimplicit-function-declaration]
  srandom(time(NULL));
  ^
2014-11-28 16:39:20 +00:00
Doug Torrance b22f634ce2 libdockapp: Replace example Imakefiles with Makefiles.
imake is deprecated.
2014-11-28 16:39:20 +00:00
Doug Torrance 19bf1f277f libdockapp: Use consistent code formatting.
Used uncrustify to minimize warnings and errors from checkpatch.pl in the
Window Maker source tree.
2014-11-28 16:39:20 +00:00
Doug Torrance b002ed2e01 libdockapp: Remove CVS cruft. 2014-11-28 16:39:20 +00:00
Doug Torrance d02f58d26d libdockapp: Remove trailing whitespace. 2014-11-28 16:30:06 +00:00
Doug Torrance 3c0684b235 libdockapp: Remove autotools-generated files. 2014-11-28 16:30:06 +00:00
Doug Torrance 2dd42394ac libdockapp: Add version 0.6.3 to repository.
Obtained from:
http://sourceforge.net/projects/libdockapp/files/libdockapp-0.6.3.tar.gz/download
2014-11-28 16:30:06 +00:00