1
0
mirror of https://github.com/gryf/wmaker.git synced 2025-12-19 20:38:08 +01:00
Commit Graph

2449 Commits

Author SHA1 Message Date
Tamas TEVESZ
f65b99e615 Remove warnings
* Remove assigned but not used variables (GCC 4.6)
* Bump _XOPEN_SOURCE to 600, ridding of FreeBSD warnings (this probably need
  to be tweaked on a per-implementation basis as problems arise)
2011-03-24 16:19:52 +01:00
Tamas TEVESZ
43c7abe79f Adapt for libpng changes 2011-03-24 16:19:37 +01:00
Szabó Ambrus
7feb59251e Fix compilation in FreeBSD
In FreeBSD make doesn`t work, only gmake.
2011-03-15 00:27:01 +01:00
Haroldo Santos
c82138eab9 switchpanel: Add skip_switchpanel advanced option
Some applications running in my machine are only background
windows, e.g.: screenlets showing CPU usage.

In current wmaker version all these applications pollute my
switchpanel, so I wrote this patch (thanks Carlos for the helping me).

It includes an additional advanced option for windows "Do not
include in switchpanel" which, if set, allows applications to
not appear in the switchpanel.

Signed-off-by: Haroldo Santos <haroldo.santos@gmail.com>
2011-02-17 19:29:15 +01:00
Camille d'Alméras
077a2eaa71 wmgenmenu: Add French and Spanish translations
[crm: edits in configure.ac and Makefile.am]
Signed-off-by: Camille d'Alméras <camilledalmeras@yahoo.com>
Signed-off-by: Carlos R. Mafra <crmafra@gmail.com>
2011-02-13 18:08:46 +01:00
Carlos R. Mafra
751b6e7938 WPrefs: Update ballon text for "Window Focus Preferences"
Thanks to Camille d'Alméras for pointing it out.

Signed-off-by: Carlos R. Mafra <crmafra@gmail.com>
2011-01-31 12:25:20 +01:00
Carlos R. Mafra
bbaa42240f WPrefs: Update po/Makefile.am to reflect file deletion
Otherwise 'make WPrefs.pot' inside WPrefs.app/po fails.

Signed-off-by: Carlos R. Mafra <crmafra@gmail.com>
2011-01-31 12:10:24 +01:00
Carlos R. Mafra
7036890288 wmgenmenu: Add more apps
Signed-off-by: Carlos R. Mafra <crmafra@gmail.com>
2011-01-31 10:52:07 +01:00
Andrea Gelmini
7c14c0b14a Remove duplicated #includes 2010-11-29 11:59:22 +01:00
Brad Jorsch
85f31104cd Display modifiers in window menu
The window menu displays the shortcut key for operations with a
shortcut, but does not display the modifiers. This reduces the utility
of the display as it's hard to know whether "h" means "Mod4+h" or
"Ctrl+Mod4+h" or something else.

This patch prefixes those shortcut displays with the modifier names,
e.g. Ctrl+Mod4+h, and adds a preference ModifierKeyLabels to allow
overriding this, e.g. to "⌃◇h". It doesn't add this preference to
WPrefs, if someone else wants to do that feel free.

Signed-off-by: Brad Jorsch <anomie@users.sourceforge.net>
2010-11-17 02:53:04 +01:00
Andreas Metzler
1b2745fad8 Update documentation of ABI/API changes again.
Update documentation of ABI/API changes in NEWS files (up to date GIT
next as of 2010-10-30).
2010-11-01 09:35:29 +01:00
Brad Jorsch
5ff0272508 Fix pkgdatadir
The previous patch "Fix path substitutions" accidentally caused autoconf
to overwrite automake's pkgdatadir. Since configure.ac does absolutely
nothing interesting with pkgdatadir anyway, just remove it completely.

Signed-off-by: Brad Jorsch <anomie@users.sourceforge.net>
2010-10-18 10:26:16 +02:00
Andreas Metzler
1060f49366 pkgconfig - minimize direct linking
Use Libs.private to avoid unnecesary direct linking.

Signed-off-by: Andreas Metzler <ametzler@downhill.at.eu.org>
2010-10-18 10:25:49 +02:00
Andreas Metzler
614eb4c9e8 Simplify/fix pkgconfig installation
Patch "Fix path substitutions" moved generation of pkgconfig files from
./configure to Makefiles. However the generation is not triggered since
the pkgconfig files are not listed as dependency. Fix by conversion to a
straightforward automake rule.

Acked-by: Brad Jorsch <anomie@users.sourceforge.net>
Signed-off-by: Andreas Metzler <ametzler@downhill.at.eu.org>
2010-10-18 10:24:45 +02:00
Brad Jorsch
76eab97209 Don't save app settings proplist when nothing changed
Signed-off-by: Brad Jorsch <anomie@users.sourceforge.net>
2010-10-12 23:34:28 +02:00
Tamas TEVESZ
b5ed9841bc WINGs: Add wshellquote()
Transforms its argument so that the result is safe to pass to the shell
as an argument.

With very heavy inspirations from NetBSD's shquote(3),
http://cvsweb.netbsd.org/bsdweb.cgi/src/lib/libc/gen/shquote.c?annotate
http://man.netbsd.org/cgi-bin/man-cgi?shquote

Signed-off-by: Tamas TEVESZ <ice@extreme.hu>
2010-10-12 23:24:45 +02:00
Brad Jorsch
3f8bba8064 Reset bouncing app icon position when bounce ends
If the app is destroyed before the bounce finishes, the icon may be left
out of position. Fix that by explicitly resetting the position when the
bounce is complete for whatever reason, not just when the bounce ends
normally.

Signed-off-by: Brad Jorsch <anomie@users.sourceforge.net>
2010-10-12 15:46:42 +02:00
Tamas TEVESZ
4f853ce3b6 wmmenugen: Finish the XDG parser
Recognize the freedesktop.org-mandated Main Categories in .desktop files
and put menu entries in the appropriate categories.

Signed-off-by: Tamas TEVESZ <ice@extreme.hu>
2010-10-10 19:38:14 +02:00
Tamas TEVESZ
a23b72c32a wmmenugen: Add file name validator function
Add optional interface parsers may choose to implement that, when
a directory is being scanned for files to parse, may, based on
the file name, decide whether or not said file should be parsed.

Signed-off-by: Tamas TEVESZ <ice@extreme.hu>
2010-10-10 19:36:34 +02:00
Tamas TEVESZ
5377ec8fba wmmenugen: Add executable detection, make Wmconfig use it
Add fileInPath, which determines whether or not a given file exists
in $PATH (some heuristics apply).

Make the Wconfig parser use it.

Signed-off-by: Tamas TEVESZ <ice@extreme.hu>
2010-10-10 19:34:45 +02:00
Tamas TEVESZ
0451160f7d wmmenugen: Finish Wmconfig parser, touch up PropList writer
As far as i can tell this finishes the Wmconfig parser (all bits we are
interested in/can use are parsed and converted).

The PropList writer gained ability to properly react to and handle various
flags passed by parsers.

Signed-off-by: Tamas TEVESZ <ice@extreme.hu>
2010-10-10 10:04:32 +02:00
Brad Jorsch
a396f3bd66 Only cache pixmaps for docked icons
There is little point caching a pixmap for an app that isn't in the
dock. This patch creates a function wAppIconSave that saves only if the
app icon is docked, and adds calls to that function in all the places
where an appicon can transition from undocked to docked.

It also "adds" a function wApplicationSaveIconPathFor that saves an icon
path to the configuration plist; the function already existed, it was
just static before.

Signed-off-by: Brad Jorsch <anomie@users.sourceforge.net>
2010-10-08 22:03:31 +02:00
Brad Jorsch
125cba8f82 Paint app icons when updated
Add calls to wAppIconPaint when wIconUpdate is called on the app icon.

Signed-off-by: Brad Jorsch <anomie@users.sourceforge.net>
2010-10-08 22:03:31 +02:00
Brad Jorsch
ee1f13da45 Fix wIconUpdate logic
This patch changes the logic for choosing the icon, and gets rid of
wIconChangeImage in favor of wIconChangeImageFile.

Old logic:
* On create, load either NET_WM_ICON or the file from disk.
* On update, choose (in order):
  1. WM_HINTS icon_window
  2. WM_HINTS icon_pixmap
  3. Whatever was loaded on creation, unless wIconChangeImage or
	 wIconChangeImageFile was called.
  4. Default icon.

New logic:
* On update, choose (in order):
  1. WM_HINTS icon_window
  2. NET_WM_ICON
  3. WM_HINTS icon_pixmap
  4. Icon file from disk.
  5. Default icon.

Signed-off-by: Brad Jorsch <anomie@users.sourceforge.net>
2010-10-08 22:00:24 +02:00
Brad Jorsch
7aff3b6e44 Fix handling of NET_WM_ICON
NET_WM_ICON is a property change, not a message.

updateIconImage doesn't use scr, remove it.

updateIconImage should clear out the net_icon_image if there isn't one
anymore (i.e. XGetWindowProperty fails or the icon cannot be extracted).

When the icon is changed, we need to call wIconUpdate.

Signed-off-by: Brad Jorsch <anomie@users.sourceforge.net>
2010-10-08 22:00:23 +02:00
Brad Jorsch
5eebb8bc3c Fix some warnings
Non-obvious fixes:

WINGs/wfilepanel.c: Cast to void to avoid an unused calculated value
warning.

WINGs/wtabview.c: Test tab<0 to avoid a warning from the next condition
about signed overflow in an inlined invocation of the function.

Signed-off-by: Brad Jorsch <anomie@users.sourceforge.net>
2010-10-08 22:00:23 +02:00
Alexey I. Froloff
51134d2438 wmaker.inst: quote shell variables
Signed-off-by: Alexey I. Froloff <raorn@altlinux.org>
2010-10-08 18:13:56 +02:00
Alexey I. Froloff
ba5fceb21c wmaker.inst: better locale check
Signed-off-by: Alexey I. Froloff <raorn@altlinux.org>
2010-10-08 18:13:56 +02:00
Tamas TEVESZ
3c408fa179 Update local copy of GPLv2 and FSF address in copyrights
Signed-off-by: Tamas TEVESZ <ice@extreme.hu>
2010-10-08 18:13:56 +02:00
Tamas TEVESZ
8b68042b30 Add wmmenugen, an extensible PropList-format menu generator
Signed-off-by: Tamas TEVESZ <ice@extreme.hu>
2010-10-08 18:13:56 +02:00
Tamas TEVESZ
210bcec4de WINGs: tree enhancements
- add WMFindInTreeWithDepthLimit, which is like WMFindInTree, but
  does not descend down more than a set limit.

- add WMTreeWalk, which will walk a WMTreeNode, running a callback
  function on each node.

Signed-off-by: Tamas TEVESZ <ice@extreme.hu>
2010-10-08 00:11:44 +02:00
Tamas TEVESZ
9a2732a4c3 Add back WINGs/tree.c that was removed in c9d0c7c
Signed-off-by: Tamas TEVESZ <ice@extreme.hu>
2010-10-08 00:11:36 +02:00
Brad Jorsch
668cac00f6 Cleanup .gitignore
Remove some obsolete entries, add some needed new ones, and sort the
thing.

Signed-off-by: Brad Jorsch <anomie@users.sourceforge.net>
2010-10-07 12:04:31 +02:00
Adam Hoka
7cc64627cc WINGs: fts() -> nftw() in wrmdirhier()
Plus reorganize headers a bit.

Signed-off-by: Tamas TEVESZ <ice@extreme.hu>
2010-10-07 12:04:31 +02:00
Brad Jorsch
b16181143c Fix stuck appicon from embedded apps
When applications are embedded in firefox via mozplugger, e.g. ooffice
for viewing .doc files or xpdf for viewing pdfs, and the embedded
application opens a popup window, we end up with a shared appicon for
the embedded app that remains until Window Maker is restarted.

The underlying cause is that mozplugger winds up reparenting the
embedded app's original leader window to a subwindow of itself, so
wmaker's SubstructureNotifyMask on the root window no longer picks up
the DestroyNotify when that original leader is destroyed.

It seems easy to fix once you track down the problem: when fixing
several other properties in fixLeaderProperties(), add
StructureNotifyMask so we get DestroyNotify no matter where the leader
gets reparented to. A more targeted fix would only add
StructureNotifyMask when the fake group's origLeader is set, but I don't
think a few extra structure notifications are going to cause us any real
problems.

Signed-off-by: Brad Jorsch <anomie@users.sourceforge.net>
2010-10-07 12:04:31 +02:00
Tamas TEVESZ
4b894021d9 Missed a piece in tree.c removal
Signed-off-by: Tamas TEVESZ <ice@extreme.hu>
2010-10-07 12:04:31 +02:00
Andreas Metzler
cdf457d2d5 Document ABI/API changes
Document ABI/API changes in NEWS files (up to date GIT next as of
2010-10-02)
2010-10-07 12:04:31 +02:00
Brad Jorsch
3490c8bd30 Minor fixes to appicon highlighting
When an app hides its window but doesn't exit (e.g. apps that "minimize"
to the system tray), the highlighting was not being removed.

When alt-tabbing, the tabbed-to app's icon was not getting highlighted.

Signed-off-by: Brad Jorsch <anomie@users.sourceforge.net>
2010-10-07 12:04:31 +02:00
Tamas TEVESZ
70abda81d0 Make OPEN_MENU be able to include PropList menus
Signed-off-by: Tamas TEVESZ <ice@extreme.hu>
2010-10-07 12:04:31 +02:00
Brad Jorsch
c37046e6a9 Fix wusleep
struct timespec's tm_nsec is in nanoseconds, not microseconds.

Signed-off-by: Brad Jorsch <anomie@users.sourceforge.net>
2010-10-07 12:04:31 +02:00
Carlos R. Mafra
09e6fd1526 Remove translations of INSTALL-WMAKER, README and FAQ.I18N
Signed-off-by: Carlos R. Mafra <crmafra@gmail.com>
2010-10-07 12:04:31 +02:00
Brad Jorsch
060ba6a9cd Fix path substitutions
Autoconf uses multiple levels of variables when defining paths. For
example, ${datadir} by default is ${datarootdir}, which by default is
${prefix}/share, which by default is /usr/local. Substituting from
./configure, as is done by AC_DEFINE or AC_DEFINE_UNQUOTED, does not
expand all these variables. This was causing some of our defines to have
garbage like "${prefix}/share/pixmaps" rather than the intended
"/usr/local/share/pixmaps".

The solution is to generate the files needing these paths from the
Makefile rather than from ./configure, because make does fully expand
all those levels.

Signed-off-by: Brad Jorsch <anomie@users.sourceforge.net>
2010-10-07 12:04:31 +02:00
Brad Jorsch
f6080ffd56 Fix "make dist"
Signed-off-by: Brad Jorsch <anomie@users.sourceforge.net>
2010-10-07 12:04:31 +02:00
Tamas TEVESZ
ffda48bd61 Add LCOV support to generate coverage information
How to use:

- Install LCOV (http://ltp.sourceforge.net/coverage/lcov.php)
- AFAICT, compiler must be GCC.
- ./configure --prefix=/some/path --enable-lcov=/var/www

  This will configure the sources so that generated coverage information
  (HTML pages) will end up in /var/www/coverage-report. Choose a directory
  you have write access to.

- make

  No installation necessary (although it probably doesn't hurt to have
  WM installed in ${prefix} so it can find resources and stuff, but the
  build tree must be kept intact anyway).

- Put ${srcroot}/src, ${srcroot}/WPrefs.app and ${srcroot}/util first in
  your path.
- Arrange for your .xinitrc or DM to start ${srcroot}/src/wmaker as your
  window manager.
- Use it as you normally would, possibly for an extended period of time.
- make coverage.

  This will create a tree of web pages under /var/www/coverage-report

- Further `make coverage's (after some more use) will re-generate the
  report (deleting the directory first).

- `make coverage-reset' will reset execution counts to zero (see lcov(1)).

Signed-off-by: Tamas TEVESZ <ice@extreme.hu>
2010-10-07 12:04:31 +02:00
Tamas TEVESZ
7859e2d59f Silence a few warnings
Signed-off-by: Tamas TEVESZ <ice@extreme.hu>
2010-10-07 12:04:31 +02:00
Tamas TEVESZ
14863cd3b1 WINGs: Bounded string ops
Signed-off-by: Tamas TEVESZ <ice@extreme.hu>
2010-10-07 12:04:31 +02:00
Tamas TEVESZ
300d02bf54 WINGs: Remove #ifdef OLD_CODE
Signed-off-by: Tamas TEVESZ <ice@extreme.hu>
2010-10-07 12:04:31 +02:00
Tamas TEVESZ
1420e44bb1 WINGs: Modernize wusleep()
- Change the wusleep abomination to be a simple wrapper around
  nanosleep (man says it's been POSIX for almost a decade)
- Remove autoconf tests that became unnecessary along the way

Signed-off-by: Tamas TEVESZ <ice@extreme.hu>
2010-10-07 12:04:31 +02:00
Tamas TEVESZ
de9fcef214 WPrefs: Remove dead code
Signed-off-by: Tamas TEVESZ <ice@extreme.hu>
2010-10-07 12:04:30 +02:00
Tamas TEVESZ
843dc889f4 WINGs: Reorg headers to mark items' locations in source files
Signed-off-by: Tamas TEVESZ <ice@extreme.hu>
2010-10-07 12:04:30 +02:00