1
0
mirror of https://github.com/gryf/wmaker.git synced 2025-12-18 20:10:29 +01:00
Commit Graph

3609 Commits

Author SHA1 Message Date
Christophe CURIS
2cfb2b5276 configure: rewrote detection for 'xgettext'
The main change is to use Autoconf's syntax for consistency;

Now the detected program is used in the makefiles (user has the possibility
to change the name of the command);

A conditional is used to avoid enabling make targets that would fail if
the command does not exist.

Took opportunity to implement the silent-rules compliance to POT generation
rules.

Signed-off-by: Christophe CURIS <christophe.curis@free.fr>
2015-01-20 21:29:24 +00:00
Christophe CURIS
80e00c3521 configure: rewrote the support for languages in localisation
The code was moved to a dedicated file (wm_i18n.m4) to reduce the size of
configure.ac;

It now searches for gettext+libintl only if LINGUAS is specified, because
there is no need for them otherwise;

The list of supported locales is created automatically from the list of
files present in the source tree, so there won't be problem forgetting to
update the variables when a new language is added, or removed because
one is considered outdated;

The new syntax is now using as much as possible Autoconf's syntax to ensure
consistency and better portability;

Took opportunity to improve the language check loop to make it smaller and
to tell when a locale that the user asked for is not fully supported.

Signed-off-by: Christophe CURIS <christophe.curis@free.fr>
2015-01-20 21:29:24 +00:00
Christophe CURIS
6efbb812b0 doc: create the skeleton to have a documentation for Internationalisation
The source of the documentation is in Texinfo format to have the
possibility someday to distribute in more format that just plain text;

There is a new Makefile to generate automatically the plain text file to be
distributed from the source; this doc is also generated by 'autogen.sh'
because a user would expect to find it before compiling the program, so
even before the 'configure' script have been generated, in the case he is
compiling from a git checkout;

There is a new script to generate the documentation, because from the way
we generate it we cannot assume that 'texi2any' is available  and working
on the user's computer; it is also the opportunity to generate a better
looking document (see the description at the beginning of the script);

In this commit, the documentation only contains the base skeleton, it does
not contain yet any useful content because it is worth it's own commit.

Signed-off-by: Christophe CURIS <christophe.curis@free.fr>
2015-01-20 21:29:24 +00:00
Christophe CURIS
bb544439f4 make: add a variable 'DOMAIN' for the name of the pot and mo files
Having the name of the domain hard-coded in many places in the makefiles
makes it harder to maintain them, specially because much code is duplicated
between the makefiles that handle po files.

There is now the variable DOMAIN that is set once in each concerned
makefile, and the rest of the makefile makes use of it.

Signed-off-by: Christophe CURIS <christophe.curis@free.fr>
2015-01-20 21:29:24 +00:00
Christophe CURIS
c72f013136 make: remove unnecessary chmod when creating directories for locales installation
The permissions are already set correctly by the installation script, so it
it not necessary to re-do it afterwards, it makes the code more complex and
error prone, so this patch removes these chmods.

Signed-off-by: Christophe CURIS <christophe.curis@free.fr>
2015-01-20 21:29:24 +00:00
Christophe CURIS
d6abbafeef WPrefs: fix list of source files for translation
A few files were missing from the list of sources files to be translated.

Took opportunity to make a few strings translatable.

Signed-off-by: Christophe CURIS <christophe.curis@free.fr>
2015-01-20 21:29:24 +00:00
Christophe CURIS
609b3c29a6 wmaker: add missing source files for translation
As pointed by the new script, a number of source file were not included in
the list of files to check for translations.

Took opportunity to make translatable a few of the messages.

Signed-off-by: Christophe CURIS <christophe.curis@free.fr>
2015-01-20 21:29:24 +00:00
Christophe CURIS
6000af3828 WINGs: add missing source files for translation
As pointed by the new check script, many source files were not in the list
used for translation.

Took opportunity to make translatable a few messages that could help user.

Signed-off-by: Christophe CURIS <christophe.curis@free.fr>
2015-01-20 21:29:24 +00:00
Christophe CURIS
b266808331 created script to check the list of source files to handle for translation
Because the source file is redefined in the 'po/' directories, there is a
possibility that they get misaligned.

There is now a script that will check everything is in line; it is
triggered by "make check".

The case of the "util/" stuff is excluded at current time because the way
they are defined makes it hard to properly deduce the correct list of
sources, and it is not worth, the core need being on wmaker and WPrefs.

Signed-off-by: Christophe CURIS <christophe.curis@free.fr>
2015-01-20 21:29:23 +00:00
Doug Torrance
3d2948e1a0 Add generate-mapfile-from-header.sh to distribution tarball. 2015-01-14 23:40:02 +00:00
Christophe CURIS
d458304610 wrlib: generate automatically the list of symbols to keep from the API header
Instead of having to maintain manually the map file for LD with the list of
symbols that we want to keep in the WRaster library (the purpose is to hide
internal symbols), this patch implements a script that parses the public
API header and extracts automatically the list of names that are supposed
to be visible to the user.

The goal is to reduce possible human errors, like for example the function
RCombineAlpha that was forgotten from the list, yet still keep the map file
feature which is considered a good practice (it reduces the risk for name
clash and the risk of mis-use of internal stuff from the library).

Signed-off-by: Christophe CURIS <christophe.curis@free.fr>
2015-01-05 15:28:44 +00:00
Christophe CURIS
d12b647069 updated autoconf macro gl_LD_VERSION_SCRIPT from gnulib to version 4
This new version now checks that version script with syntax error are
rejected, it probably led to mis-detect the option as supported when it was
actually just ignored with at most a warning; it also now implement caching
of the result to speed-up re-run of configure if user enabled it.

Signed-off-by: Christophe CURIS <christophe.curis@free.fr>
2015-01-05 15:28:44 +00:00
Christophe CURIS
796b557c3a configure: rewrote 2 ARG_WITH for paths to provide better feedback
The 2 options '--with-pixmapdir' and '--with-gnustepdir' did not provide
any feedback to the user if they were not used correctly. The new code now
performs more checks and tell the user about problems.

Signed-off-by: Christophe CURIS <christophe.curis@free.fr>
2015-01-02 10:08:10 +00:00
Christophe CURIS
c7843e3f3b configure: rewrote 3 ARG_ENABLEs to get them to behave properly
In addition to proper quoting for M4, the macro would not behave totally as
expected: for example, providing '--disable-modelock' would enable the
feature instead of keeping it disabled as the default.

The definitions now properly behave as expectable, so the user can
explicitly specify how he wants the feature even if it is the default; it
will also fail on improper use which is always a good idea to ease possible
future evolution.

Signed-off-by: Christophe CURIS <christophe.curis@free.fr>
2015-01-02 10:08:10 +00:00
Christophe CURIS
85a3fb13cc configure: minor updates on quoting for consistency with Autoconf's syntax
Using the appropriate quoting (with [xxx]) can spare us some problem, so
for maintainability of the script the proper quoting was added in a few
places to have a consistent file.

Signed-off-by: Christophe CURIS <christophe.curis@free.fr>
2015-01-02 10:08:10 +00:00
Christophe CURIS
78690de103 configure: cosmetic improvements on comments
This patch brings more consistency in the presentation of comments,
including:
 - 2 line spaces between blocks (M4 macro tend to make the file look quite
bulky, so it is making the file more aerated)
 - fixes in the length of underlining
 - adding a few comments on the reason of the check to ease maintainance

Signed-off-by: Christophe CURIS <christophe.curis@free.fr>
2015-01-02 10:08:09 +00:00
Christophe CURIS
2c6c7d51c9 configure: add email address for bug reports in AC_INIT
The mail address we use is the developer's mailing list; putting it in the
macro will get Autoconf to place it in a few strategic places where it is a
good idea to have it.

Signed-off-by: Christophe CURIS <christophe.curis@free.fr>
2015-01-02 10:08:09 +00:00
Christophe CURIS
f956609a43 configure: added the copyright notice at the begining of the file
This include using the AC_COPYRIGHT macro so our copyright will also be
placed in the generated configure script.

Took opportunity to update the comment on how the file should be processed
to simplify user's life.

Signed-off-by: Christophe CURIS <christophe.curis@free.fr>
2015-01-02 10:08:09 +00:00
Christophe CURIS
200b0d4098 configure: remove a few commented-out stuff that are deprecated
Signed-off-by: Christophe CURIS <christophe.curis@free.fr>
2015-01-02 10:08:09 +00:00
Christophe CURIS
99b1e26412 configure: updates as reported by 'autoupdate'
Some macros have evolved, so this patch brings the appropriate updates:
 - AC_OUTPUT(...) is now split in AC_CONFIG_FILES(...) and AC_OUTPUT, took
the opportunity to sort the list of files so it is easier to maintain

 - the macro AC_DECL_SYS_SIGLIST is now replaced by the more generic
AC_CHECK_DECLS([sys_siglist]), but as it turns out that we're not using it,
the check was just removed

 - autoconf assumes that AC_TYPE_SIGNAL is deprecated because the type was
fixed since C89, but as we expect to still run on old hardware, we keep the
macro given by autoupdate on our side for when Autoconf will stop providing
the macro

Signed-off-by: Christophe CURIS <christophe.curis@free.fr>
2015-01-02 10:08:09 +00:00
Christophe CURIS
33d711ce6a wmaker: remove execute permissions on the source file 'wsmap.c'
A source file is not supposed to have the 'execute' bit set, removing it to
avoid problems.

Signed-off-by: Christophe CURIS <christophe.curis@free.fr>
2014-12-31 17:10:39 +00:00
Christophe CURIS
5c9438115b Renamed "Apercu" to "MiniPreview" in the configuration database
The name of the 2 settings have been changed:
 - enable: MiniwindowApercuBalloons -> MiniwindowPreviewBalloons
 - size: ApercuSize -> MiniPreviewSize

The old name is still supported to avoid breaking user's configuration, but
WPrefs will update the setting to the new names when updating the
configuration.

Signed-off-by: Christophe CURIS <christophe.curis@free.fr>
2014-12-31 11:10:46 +00:00
Christophe CURIS
67b4302ef8 Renamed "apercu" to "minipreview" in the source code
To be consistent, all place where the not-properly-written "apercu" was
used in the source code (of wmaker and WPrefs) it has been replaced by an
appropriate "minipreview" or similar, to be in line with the new name
suggested by Yuri Tarasievich.

This new name is better understood by contributors who speak usual english,
but not this word which comes From french but is sparsely understood by
british people.

Signed-off-by: Christophe CURIS <christophe.curis@free.fr>
2014-12-31 11:10:30 +00:00
Christophe CURIS
35fe34ac85 Renamed "Aperçu" into "Mini-Preview" in visible places
Having an thing whose name requires special UTF-8 character to be properly
displayed is a source of portability problem (including xgettext issue
reported by Alwin);

Considering also that this french word is only understood (sparesely) in
Great Britain, but not by international english speaking community;

This patch then replace it by the "Mini-Preview" suggested by Yuri
Tarasievich, which is more likely to be understood.

Signed-off-by: Christophe CURIS <christophe.curis@free.fr>
2014-12-31 11:09:30 +00:00
Christophe CURIS
e78e485fb3 make: do not compile stuff in the 'test' directory
To be consistent with the rest of the project's behaviour, do not try to
compile what is in the toplevel's "test" directory for a normal
compilation.

The content of this directory does not really test anything, so it is not
useful for users, and there is always the risk that it could break
compilation because it is not heavily maintained (and does not deserves to)
so this patch just skips the directory, as already done for wrlib/tests/
and WINGs/Tests.

Signed-off-by: Christophe CURIS <christophe.curis@free.fr>
2014-12-30 18:59:18 +00:00
Christophe CURIS
7962bfa612 wmaker: removed global variable "flags.nopolling"
As found by Rodolfo García Peñas, this flag is never given a value; further
investigations in the history of the project show that this flag have never
been implemented because its action is totally redundant with the flag
"noupdate".

As the later flag's name is more clear about what the behaviour for the
user is, as opposed to what is being done under the hood, its name is kept
and the "nopolling" flag is removed.

Signed-off-by: Christophe CURIS <christophe.curis@free.fr>
2014-12-30 18:59:18 +00:00
Alwin
94136ad29a WPrefs: trivial fixes in text strings
Fix a typo in an error message. Remove an inconsistent dot on a
button. Adds a missing dot in Expert preferences.
2014-12-24 15:24:42 +00:00
Alwin
a65536f500 WMaker: trivial fixes in text strings
Add missing spaces in balloons/error messages. Capitalize `Alt' in
balloon. One report by the Italian translater.
2014-12-24 15:24:42 +00:00
Alwin
a5a23f966e WINGs: trivial fix in text string
Fix a typo in an error message.
2014-12-24 15:24:41 +00:00
Alwin
e3769a0b09 WPrefs: make a text string translatable
The WPrefs miniwindow shows a shorter title that could be translated.
2014-12-23 11:33:36 +00:00
Alwin
1dc7dc4309 Translations: Dutch .po files updated
Recently added/changed msgid's were translated, plus a few cosmetic
improvements. Kept one entry for last stable release.
2014-12-23 11:33:36 +00:00
Doug Torrance
8abf7762cb WPrefs: Clarify purpose of "window snapping" feature in expert panel. 2014-12-23 11:33:36 +00:00
Christophe CURIS
3ed8cb6ffa WPrefs: add possibility to configure the size of the aperçu
The Icon preference panel have been rearranged to include a slider which
controls the size of the Aperçu. This slider is also used to turn off the
feature, so the related checkbox have been removed from the Misc preference
panel, because it is more convenient to have the related settings at the
same place.

Signed-off-by: Christophe CURIS <christophe.curis@free.fr>
2014-12-23 11:33:36 +00:00
Christophe CURIS
31c00a8749 WPrefs: add an image to represent the window in the Window Placement frame
The original square box did not look like anything, by using an image that
looks like a small window it is more clear to users what it represents.

The image was drawn as an XPM keeping a style consistent with everything
else; it was then converted to TIFF using ImageMagick:
  convert -depth 8 -compress lzw xpm/smallwindow.xpm tiff/smallwindow.tiff

Signed-off-by: Christophe CURIS <christophe.curis@free.fr>
2014-12-23 11:33:36 +00:00
Christophe CURIS
a887b44977 WPrefs: grouped the choices for Window Move Display in a single place
By having an array, it makes the code simpler in many places, thus easier
to maintain and to implement new possibilities.

It is the opportunity to log an error message to user instead of silently
accepting invalid values.

Signed-off-by: Christophe CURIS <christophe.curis@free.fr>
2014-12-23 11:33:36 +00:00
Christophe CURIS
d2101b287a WPrefs: grouped the choices for Window Resize Display in a single place
By having an array, it makes the code simpler in many places, thus easier
to maintain and to implement new possibilities.

It is the opportunity to log an error message to user instead of silently
accepting invalid values.

Signed-off-by: Christophe CURIS <christophe.curis@free.fr>
2014-12-23 11:33:36 +00:00
Christophe CURIS
6ef4b06cca WPrefs: created an array to store the database values for the Icon Position setting
By having an array, it makes the code simpler in many places, thus easier
to maintain. Took opportunity to include a comment about the trick used to
have a value convenient for use.

It is the opportunity to log an error message to user instead of silently
accepting invalid values.

Signed-off-by: Christophe CURIS <christophe.curis@free.fr>
2014-12-23 11:33:36 +00:00
Christophe CURIS
d89b1f5ca3 WPrefs: moved the list of icon animations into an array
By grouping the information together, it makes the code less prone to
errors and easier to maintain as it links things that are related.

Took opportunity to log a message for the case where an invalid value
was found to ease user's debug.

Signed-off-by: Christophe CURIS <christophe.curis@free.fr>
2014-12-23 11:33:36 +00:00
Yury Tarasievich
034edb19e3 WPrefs: improve texts in the Window Handling panel
Did not update the translations msgid because I think translators may
wish to get it visible so they can bring similar improvements.

Signed-off-by: Christophe CURIS <christophe.curis@free.fr>
2014-12-21 17:35:06 +00:00
Christophe CURIS
9b67b36276 configure: add detection for O_NOFOLLOW flag to the open function
As discovered by Douglas Torrance, this flag is not really portable, so
this patch adds a check in the configure script to detect if any known
define could help. If no value works, we fall back to defining it with the
neutral value '0', so the compilation will not fail.

Signed-off-by: Christophe CURIS <christophe.curis@free.fr>
2014-12-17 17:33:56 +00:00
Christophe CURIS
e1146e56e0 configure: rewrote the detection for WebP image library
Unfortunately, the detection was broken because the header is using a hack
on the function name to provide compatibility between different versions of
the API, which means the usual link test, which uses a known name of a
symbol, cannot work without also using the header to get the hack applied
on the function's name.

The new detection mechanism now simply check for both header and link at
the same time, so we're probably safe until a Major API change is decided,
in which case we will also have to update WRaster's code anyway.

Signed-off-by: Christophe CURIS <christophe.curis@free.fr>
2014-12-16 09:37:48 +00:00
Christophe CURIS
7d6ecb51f6 wmaker: rewrote the update of _NET_WORKAREA property
As reported by Moritz, the Qt toolkit (and maybe a few other ones) are
using the content of this property, but WindowMaker did not set it properly
so for examples the menus in KDE could fail to display in multi-screen
configuration (probably because the toolkit is using the property to make
sure the menu stays in the visible area).

The original code just assumed it was safe to use the usable area of the
1st screen in the list, but unfortunately it is not that simple.

The new code calculates a rectangle that contains the usable region from
all the screens, so the toolkit gets a more accurate value.

Signed-off-by: Christophe CURIS <christophe.curis@free.fr>
2014-12-16 09:37:48 +00:00
Christophe CURIS
be1c2a01dc configure: require a minimum version for Autoconf to avoid wrong generation
As found by Douglas Torrance, when the 'configure' script is generated
using v2.68 of autoconf then it gets wrongly generated due to a regression
in the handling of names in AS_VAR_PUSHDEF, and crashes with this kind of
sibylline messages:

checking CFLAGS for -Wtrampolines... ./configure: line 11916: wm_cv_c_check_compopt_Werror_trampolines=no, unknown: command not found

This patch adds a check on autoconf version to ensure the problem will get
caught as soon as possible.

Signed-off-by: Christophe CURIS <christophe.curis@free.fr>
2014-12-15 20:24:22 +00:00
David Maciejak
c6e323e75d WINGs: increment version
This patch is incrementing version number as the API changed.
2014-12-10 10:19:54 +00:00
Christophe CURIS
0e884f793a util: remove local constants GLOBAL_DEFAULTS_SUBDIR that are not used
As pointed by gcc, this macro is not used anywhere in the 2 files. Because
the code also suggests that they should be inherited from any other place
anyway, remove them from the file to prevent them from being used in the
future.

Signed-off-by: Christophe CURIS <christophe.curis@free.fr>
2014-12-10 10:19:20 +00:00
Christophe CURIS
f9b14d7824 WPrefs: remove unused constants ICON_TITLE_*FONT
Apparently, there was a time when it was though to add a label below (?)
the icons of the list of panels, but this has never been finished and the
unfinished code to do this was even removed in commit
  0e01e69205

So, as it is unlikely that the "feature" will return, and if it did the
font should be handled in a better way, this patch removes the definition
of the constants with the names for the font used for those labels.

Signed-off-by: Christophe CURIS <christophe.curis@free.fr>
2014-12-10 10:19:20 +00:00
Christophe CURIS
ee617cb291 wmaker: comment out definition of wm-spec constant that we do not use
Include a comment to explain what their aim is, and why WindowMaker is not
making use of them. They are not simply removed because it is informative
for future contributors that we know about them and we purposedly decided
to not use them.

Signed-off-by: Christophe CURIS <christophe.curis@free.fr>
2014-12-10 10:19:19 +00:00
Christophe CURIS
b3c20610e9 wmaker: remove parameter 'which' from local function 'restoreMenu'
This parameter is given always the same value, so there is not reason to
keep it. The code is updated to take this value into account, and the
related constants are removed.

Signed-off-by: Christophe CURIS <christophe.curis@free.fr>
2014-12-10 10:19:19 +00:00
Christophe CURIS
1d1c5f77c7 wmaker: remove constants HORIZONTAL and VERTICAL from moveres.c
These 2 constants have been defined at the beginning of the project, but
where never used later. As the use of the associated constants suggests
that they are not bringing anything useful, this patch simply removes them.

Signed-off-by: Christophe CURIS <christophe.curis@free.fr>
2014-12-10 10:19:19 +00:00
Christophe CURIS
b5e89127ca wmaker: add code to explicitly ignore Motif-WM flags we don't want to handle
The goal is to explain the reason why we don't do anything about them, so
people looking at the code in the future will know why it is this way. The
expected side effect is also to silent warnings [-Wunused-macros] from gcc.

Signed-off-by: Christophe CURIS <christophe.curis@free.fr>
2014-12-10 10:19:19 +00:00