Re: [PATCH v3] wmaker: Consistent configuration options.

2017-03-22 Thread BALATON Zoltan

On Wed, 22 Mar 2017, Carlos R. Mafra wrote:

On Wed, 22 Mar 2017 at 11:44:20 +0100, BALATON Zoltan wrote:

On Wed, 22 Mar 2017, Doug Torrance wrote:

Some of the paths in IconPath and PixmapPath have been removed.  In
particular, the various system pixmap paths (/usr/include/X11/pixmaps,
/usr/share/pixmaps, and /usr/local/share/pixmaps) have been removed in
favor of PIXMAPDIR, which is specified by the user at build.  Also,
/usr/share/icons has been removed from IconPath.  The root of this
directory will contain very few icons, as the icons themselves are located
in subdirectories corresponding to XDG icon themes.


I don't think this is a good idea because then it's not possible to
specify icon paths at runtime.
Compile time option is less flexible and only allows to set one value
so I think these options should be kept.



(Otherwise some users will see missing icons after upgrade as well.)


I don't think that will be the case. By default wmaker.inst does not
overwrite user's config files at installation time.


OK, then I think I've misunderstood the patch. If these options are still 
working and taken from the user's config just some defaults have been 
removed for new installations then no problem with it.


Regards,
BALATON Zoltan


--
To unsubscribe, send mail to wmaker-dev-unsubscr...@lists.windowmaker.org.


Re: [PATCH v3] wmaker: Consistent configuration options.

2017-03-22 Thread Doug Torrance

On 03/22/2017 06:52 AM, Doug Torrance wrote:

On 03/22/2017 06:44 AM, BALATON Zoltan wrote:

On Wed, 22 Mar 2017, Doug Torrance wrote:

Some of the paths in IconPath and PixmapPath have been removed.  In
particular, the various system pixmap paths (/usr/include/X11/pixmaps,
/usr/share/pixmaps, and /usr/local/share/pixmaps) have been removed in
favor of PIXMAPDIR, which is specified by the user at build.  Also,
/usr/share/icons has been removed from IconPath.  The root of this
directory will contain very few icons, as the icons themselves are
located
in subdirectories corresponding to XDG icon themes.


I don't think this is a good idea because then it's not possible to
specify icon paths at runtime. Compile time option is less flexible and
only allows to set one value so I think these options should be kept.
(Otherwise some users will see missing icons after upgrade as well.)


It's definitely possible to change the icon paths at runtime -- edit
IconPath in ~/GNUstep/Defaults/WindowMaker or use the Search Path
Configuration panel in WPrefs.


I suppose I also could have explained my reasoning a bit better.

In the old src/defaults.c, the non-Window Maker system pixmap paths are 
indicated by the PIXMAPDIR macro only, and also /usr/include/X11/pixmaps 
for IconPath.  From the patch:



 #define DEF_PIXMAP_PATHS \
- "(\"~/pixmaps\",\"~/GNUstep/Library/WindowMaker/Pixmaps\",\""PIXMAPDIR"\")"




 #define DEF_ICON_PATHS \
-
"(\"~/pixmaps\",\"~/GNUstep/Library/Icons\",\"/usr/include/X11/pixmaps/\",\""PIXMAPDIR"\")"


In the old W/D/WindowMaker, there appear to be several guesses as to 
what PIXMAPDIR might be, without actually using its value at all.  From 
the patch:



-  IconPath = (
-"~/GNUstep/Library/Icons",
-"#pkgdatadir#/Icons",
-"#pkgdatadir#/Pixmaps",
-"/usr/include/X11/pixmaps",
-"~/GNUstep/Library/WindowMaker/Pixmaps",
-"~/GNUstep/Library/WindowMaker/CachedPixmaps",
-"/usr/share/icons",
-"/usr/local/share/pixmaps",
-"/usr/share/pixmaps"
-  );
-  PixmapPath = (
-"~/GNUstep/Library/WindowMaker/Pixmaps",
-"~/GNUstep/Library/WindowMaker/Backgrounds",
-"~/GNUstep/Library/WindowMaker/CachedPixmaps",
-"#pkgdatadir#/Pixmaps",
-"#pkgdatadir#/Backgrounds",
-"/usr/include/X11/pixmaps",
-"/usr/local/share/pixmaps",
-"/usr/share/pixmaps"
-  );


So the user would have specified PIXMAPDIR at configure, this value gets 
compiled in, but then the paths get overwritten when W/D/WindowMaker is 
read and PIXMAPDIR is ignored.


Most users probably never noticed this, as the default is 
${datadir}/pixmaps, which is likely /usr/share/pixmaps or 
/usr/local/share/pixmaps, both of which were in W/D/WindowMaker.


As for /usr/include/X11/pixmaps, this seems to be a pretty archaic 
location.  In all of Debian, only one package still uses it (ctwm).


Doug


--
To unsubscribe, send mail to wmaker-dev-unsubscr...@lists.windowmaker.org.


Re: [PATCH v3] wmaker: Consistent configuration options.

2017-03-22 Thread Carlos R. Mafra
On Wed, 22 Mar 2017 at 11:44:20 +0100, BALATON Zoltan wrote:
> On Wed, 22 Mar 2017, Doug Torrance wrote:
> >Some of the paths in IconPath and PixmapPath have been removed.  In
> >particular, the various system pixmap paths (/usr/include/X11/pixmaps,
> >/usr/share/pixmaps, and /usr/local/share/pixmaps) have been removed in
> >favor of PIXMAPDIR, which is specified by the user at build.  Also,
> >/usr/share/icons has been removed from IconPath.  The root of this
> >directory will contain very few icons, as the icons themselves are located
> >in subdirectories corresponding to XDG icon themes.
> 
> I don't think this is a good idea because then it's not possible to
> specify icon paths at runtime.
> Compile time option is less flexible and only allows to set one value
> so I think these options should be kept.

> (Otherwise some users will see missing icons after upgrade as well.)

I don't think that will be the case. By default wmaker.inst does not
overwrite user's config files at installation time.


-- 
To unsubscribe, send mail to wmaker-dev-unsubscr...@lists.windowmaker.org.


Re: [PATCH v3] wmaker: Consistent configuration options.

2017-03-22 Thread Doug Torrance

On 03/22/2017 06:44 AM, BALATON Zoltan wrote:

On Wed, 22 Mar 2017, Doug Torrance wrote:

Some of the paths in IconPath and PixmapPath have been removed.  In
particular, the various system pixmap paths (/usr/include/X11/pixmaps,
/usr/share/pixmaps, and /usr/local/share/pixmaps) have been removed in
favor of PIXMAPDIR, which is specified by the user at build.  Also,
/usr/share/icons has been removed from IconPath.  The root of this
directory will contain very few icons, as the icons themselves are
located
in subdirectories corresponding to XDG icon themes.


I don't think this is a good idea because then it's not possible to
specify icon paths at runtime. Compile time option is less flexible and
only allows to set one value so I think these options should be kept.
(Otherwise some users will see missing icons after upgrade as well.)


It's definitely possible to change the icon paths at runtime -- edit 
IconPath in ~/GNUstep/Defaults/WindowMaker or use the Search Path 
Configuration panel in WPrefs.


Doug


--
To unsubscribe, send mail to wmaker-dev-unsubscr...@lists.windowmaker.org.


Re: [PATCH v3] wmaker: Consistent configuration options.

2017-03-22 Thread BALATON Zoltan

On Wed, 22 Mar 2017, Doug Torrance wrote:

Some of the paths in IconPath and PixmapPath have been removed.  In
particular, the various system pixmap paths (/usr/include/X11/pixmaps,
/usr/share/pixmaps, and /usr/local/share/pixmaps) have been removed in
favor of PIXMAPDIR, which is specified by the user at build.  Also,
/usr/share/icons has been removed from IconPath.  The root of this
directory will contain very few icons, as the icons themselves are located
in subdirectories corresponding to XDG icon themes.


I don't think this is a good idea because then it's not possible to 
specify icon paths at runtime. Compile time option is less flexible and 
only allows to set one value so I think these options should be kept. 
(Otherwise some users will see missing icons after upgrade as well.)


Regards,
BALATON Zoltan


--
To unsubscribe, send mail to wmaker-dev-unsubscr...@lists.windowmaker.org.


Re: [PATCH v3] wmaker: Consistent configuration options.

2017-03-22 Thread Carlos R. Mafra
On Wed, 22 Mar 2017 at  1:29:38 -0400, Doug Torrance wrote:
> The default configuration options are given in two places in the source
> code:
>   - src/default.c
>   - WindowMaker/Defaults/WindowMaker.in
> 
> The defaults are initially set in the former, but are then overwritten by
> the latter.
> 
> Ideally, the default options in these two locations should coincide.
> However, there are currently several issues.
> - Many of the options are missing from WindowMaker/Defaults/WindowMaker.in
> - Many of the options have conflicting defaults between the two locations.
> - A number of options given in WindowMaker/Defaults/WindowMaker.in no longer
>   exist.
> 
> In this patch, we bring the defaults in the two locations in line with one
> another.  We have given preference to the defaults in W/D/WindowMaker, as
> these are the one users have been used to.
> 
> Some of the paths in IconPath and PixmapPath have been removed.  In
> particular, the various system pixmap paths (/usr/include/X11/pixmaps,
> /usr/share/pixmaps, and /usr/local/share/pixmaps) have been removed in
> favor of PIXMAPDIR, which is specified by the user at build.  Also,
> /usr/share/icons has been removed from IconPath.  The root of this
> directory will contain very few icons, as the icons themselves are located
> in subdirectories corresponding to XDG icon themes.
> 
> We add a comment to src/defaults.c to remind future developers who
> add or remove options to change the default values in both locations.
> 
> We also take the opportunity to remove the unused DEF_INFO_TEXT_FONT
> macro.

Thank you, Doug!


-- 
To unsubscribe, send mail to wmaker-dev-unsubscr...@lists.windowmaker.org.


[PATCH v3] wmaker: Consistent configuration options.

2017-03-21 Thread Doug Torrance
The default configuration options are given in two places in the source
code:
  - src/default.c
  - WindowMaker/Defaults/WindowMaker.in

The defaults are initially set in the former, but are then overwritten by
the latter.

Ideally, the default options in these two locations should coincide.
However, there are currently several issues.
- Many of the options are missing from WindowMaker/Defaults/WindowMaker.in
- Many of the options have conflicting defaults between the two locations.
- A number of options given in WindowMaker/Defaults/WindowMaker.in no longer
  exist.

In this patch, we bring the defaults in the two locations in line with one
another.  We have given preference to the defaults in W/D/WindowMaker, as
these are the one users have been used to.

Some of the paths in IconPath and PixmapPath have been removed.  In
particular, the various system pixmap paths (/usr/include/X11/pixmaps,
/usr/share/pixmaps, and /usr/local/share/pixmaps) have been removed in
favor of PIXMAPDIR, which is specified by the user at build.  Also,
/usr/share/icons has been removed from IconPath.  The root of this
directory will contain very few icons, as the icons themselves are located
in subdirectories corresponding to XDG icon themes.

We add a comment to src/defaults.c to remind future developers who
add or remove options to change the default values in both locations.

We also take the opportunity to remove the unused DEF_INFO_TEXT_FONT
macro.
---
 WindowMaker/Defaults/Makefile.am|   3 +-
 WindowMaker/Defaults/WindowMaker.in | 386 +++-
 src/defaults.c  |  86 
 src/wconfig.h.in|  33 ++-
 4 files changed, 319 insertions(+), 189 deletions(-)

diff --git a/WindowMaker/Defaults/Makefile.am b/WindowMaker/Defaults/Makefile.am
index 182385c..1556fbf 100644
--- a/WindowMaker/Defaults/Makefile.am
+++ b/WindowMaker/Defaults/Makefile.am
@@ -12,7 +12,8 @@ WMWindowAttributes: $(srcdir)/WMWindowAttributes.in
chmod 644 WMWindowAttributes
 
 WindowMaker: $(srcdir)/WindowMaker.in
-   $(AM_V_GEN)sed -e "s:#pkgdatadir#:$(pkgdatadir):" 
$(srcdir)/WindowMaker.in \
+   $(AM_V_GEN)sed -e "s:#pkgdatadir#:$(pkgdatadir):" \
+   -e "s:#pixmapdir#:$(pixmapdir):" $(srcdir)/WindowMaker.in \
> WindowMaker ; \
chmod 644 WindowMaker
 
diff --git a/WindowMaker/Defaults/WindowMaker.in 
b/WindowMaker/Defaults/WindowMaker.in
index c68feef..79a3624 100644
--- a/WindowMaker/Defaults/WindowMaker.in
+++ b/WindowMaker/Defaults/WindowMaker.in
@@ -1,139 +1,251 @@
 {
-  SmoothWorkspaceBack = NO;
-  PopupSwitchMenu = NO;
-  MenuStyle = normal;
-  DisableMiniwindows = NO;
-  DisableWorkspacePager = NO;
-  OpenTransientOnOwnerWorkspace = NO;
-  EdgeResistance = 30;
-  WorkspaceBorderSize = 0;
-  WorkspaceBorder = None;
-  IconificationStyle = Zoom;
-  IconPath = (
-"~/GNUstep/Library/Icons",
-"#pkgdatadir#/Icons",
-"#pkgdatadir#/Pixmaps",
-"/usr/include/X11/pixmaps",
-"~/GNUstep/Library/WindowMaker/Pixmaps",
-"~/GNUstep/Library/WindowMaker/CachedPixmaps",
-"/usr/share/icons",
-"/usr/local/share/pixmaps",
-"/usr/share/pixmaps"
-  );
-  PixmapPath = (
-"~/GNUstep/Library/WindowMaker/Pixmaps",
-"~/GNUstep/Library/WindowMaker/Backgrounds",
-"~/GNUstep/Library/WindowMaker/CachedPixmaps",
-"#pkgdatadir#/Pixmaps",
-"#pkgdatadir#/Backgrounds",
-"/usr/include/X11/pixmaps",
-"/usr/local/share/pixmaps",
-"/usr/share/pixmaps"
-  );
-  WindowTitleBalloons = YES;
-  IconSize = 64;
-  FocusMode = manual;
-  DisableWSMouseActions = NO;
-  MouseLeftButtonAction = SelectWindows;
-  MouseMiddleButtonAction = OpenWindowListMenu;
-  MouseRightButtonAction = OpenApplicationsMenu;
-  MouseWheelAction = None;
-  ColormapSize = 4;
-  DisableDithering = NO;
-  ModifierKey = Mod1;
-  NewStyle = "new";
-  DisableDock = NO;
-  DisableClip = NO;
-  DisableDrawers = NO;
-  Superfluous = YES;
-  StickyIcons = NO;
-  SaveSessionOnExit = NO;
-  ColormapMode = auto;
-  RaiseDelay = 0;
-  AutoFocus = YES;
-  WindowPlacement = auto;
-  WindowPlaceOrigin = (64, 0);
-  UseSaveUnders = NO;
-  DisableSound = NO;
-  DisableAnimations = NO;
-  DontLinkWorkspaces = YES;
-  AutoArrangeIcons = NO;
-  AdvanceToNewWorkspace = NO;
-  CycleWorkspaces = NO;
-  ResizeDisplay = center;
-  MoveDisplay = floating;
-  OpaqueMove = YES;
-  IconPosition = "blh";
-  WrapMenus = NO;
-  ScrollableMenus = YES;
-  MenuScrollSpeed = fast;
-  IconSlideSpeed = fast;
-  ShadeSpeed = fast;
-  DoubleClickTime = 250;
-  AlignSubmenus = NO;
-  NoWindowOverIcons = NO;
-  IgnoreFocusClick = NO;
-  CloseKey = None;
-  MaximizeKey = None;
-  VMaximizeKey = None;
-  RaiseLowerKey = None;
-  DontConfirmKill = NO;
-  ShadeKey = None;
-  NextWorkspaceKey = "Mod1+Control+Right";
-  PrevWorkspaceKey = "Mod1+Control+Left";
-  RootMenuKey = F12;
-  WindowListKey = F11;
-  WindowMenuKey = "Control+Escape";
-  RaiseKey = "Mod1+Up";
-  LowerKey =