Tracking flag changes from modules
Is there any way that the module interface allows keeping track of changes to the window flags of a window? Currently FvwmPager allows moving of FixedPosition mini-windows, but the main window does not move. Just checking for IS_FIXED in MoveWindow doesn't work if the FixedPosition flag was set after the window was added to the pager (i.e with 'WindowStyle FixedPosition') since the flags get outdated. I've been looking some at the module interface, but I think that no message exist to indicate change in window flags. Is this correct? /Viktor
CVS griph: * Make pager move !IconTitle windows
CVSROOT:/home/cvs/fvwm Module name:fvwm Changes by: griph 06/08/07 11:08:16 Modified files: . : ChangeLog NEWS modules: ChangeLog modules/FvwmPager: x_pager.c Log message: * Make pager move !IconTitle windows
icon movement tracking
Should the flag tracking icon movement be set by MoveToPage? Currently it's not, which makes icons jump back to the initial page if do for example 'Style * IconTitle' if an icon has been moved to another page by MoveToPage. On a sidenote the same problem exists whenever moving icons with the pager, even if they are kept on the same page. /Viktor
FvwmIconMan: debug code cleanup
Hello, Here some documentation fixes and debug code cleanups in FvwmIconMan. Please see attached patch's ChangeLog section for more information. Bye. -- Serge Koksharov, Free Software user supporter GPG public key ID: 0x3D330896 (pgp.mit.edu) Key fingerprint: 5BC4 0475 CB03 6A31 0076 82C2 C240 72F0 3D33 0896 diff -Naur fvwmCVS-orig/modules/ChangeLog fvwmCVS-fixed/modules/ChangeLog --- fvwmCVS-orig/modules/ChangeLog 2006-08-07 11:54:31.0 +0400 +++ fvwmCVS-fixed/modules/ChangeLog 2006-08-07 20:59:43.0 +0400 @@ -1,3 +1,58 @@ +2006-08-07 Serge Koksharov gentoosiast dog yandex dot ru + + * FvwmIconMan/FvwmIconMan.1.in: + documented printdebug, refresh, searchback and searchforward builtin + commands. + fixed typos. + + * FvwmIconMan/FvwmIconMan.c (main): + changed ifdef from ELECTRIC_FENCE to HAVE_LIBEFENCE. + removed now useless 'ifdef DEBUG_ATTACH' construction with hardcoded + paths. + removed now useless 'if 0' construction. + (PrintMemuse): + fixed compiler warning. + + * FvwmIconMan/FvwmIconMan.h: + changed ifdef from DMALLOC to HAVE_DMALLOC_H. + + * FvwmIconMan/debug.c (ConsoleDebug): + * FvwmIconMan/globals.c (print_managers): + * FvwmIconMan/readconfig.c (parse_format_dependencies): + (print_args): + (print_binding): + * FvwmIconMan/winlist.c (iconmanager_show): + * FvwmIconMan/xmanager.c (check_managers_consistency): + (print_button_info): + changed ifdefs from PRINT_DEBUG to FVWM_DEBUG_MSGS. + + * FvwmIconMan/debug.h: + removed now useless 'if 0' construction. + + * FvwmIconMan/debuglevels.h: + fixed typo. + + * FvwmIconMan/functions.c (builtin_gotomanager): + fixed typo in debug message. + + * FvwmIconMan/globals.c: + removed useless commented definitions of Module ModuleLen which now + aren't hardcoded. + + * FvwmIconMan/readconfig.c: + removed ancient 'if FVWM_VERSION == 1' construction. + (print_binding): + compilation fix. + fixed compiler warnings. + + * FvwmIconMan/xmanager.c (print_buttons): + removed (this function defined but isn't used anywhere in the + code and its functionality superseded by print_button_info + function). + fixed compiler warnings. + (print_button_info): + fixed compiler warnings. + 2006-08-05 Serge Koksharov gentoosiast dog yandex dot ru * FvwmIconMan/FvwmIconMan.1.in: diff -Naur fvwmCVS-orig/modules/FvwmIconMan/debug.c fvwmCVS-fixed/modules/FvwmIconMan/debug.c --- fvwmCVS-orig/modules/FvwmIconMan/debug.c2006-08-07 11:54:29.0 +0400 +++ fvwmCVS-fixed/modules/FvwmIconMan/debug.c 2006-08-07 15:25:18.0 +0400 @@ -60,7 +60,7 @@ { assert(console != NULL); -#ifdef PRINT_DEBUG +#ifdef FVWM_DEBUG_MSGS if (flag) { va_list args; diff -Naur fvwmCVS-orig/modules/FvwmIconMan/debug.h fvwmCVS-fixed/modules/FvwmIconMan/debug.h --- fvwmCVS-orig/modules/FvwmIconMan/debug.h2006-08-07 11:54:29.0 +0400 +++ fvwmCVS-fixed/modules/FvwmIconMan/debug.h 2006-08-07 15:26:52.0 +0400 @@ -3,10 +3,6 @@ #define IN_DEBUG_H #if 0 -# define PRINT_DEBUG -#endif - -#if 0 # define OUTPUT_FILE /dev/console /* # define OUTPUT_FILE /tmp/FvwmIconMan */ #else diff -Naur fvwmCVS-orig/modules/FvwmIconMan/debuglevels.h fvwmCVS-fixed/modules/FvwmIconMan/debuglevels.h --- fvwmCVS-orig/modules/FvwmIconMan/debuglevels.h 2006-08-07 11:54:29.0 +0400 +++ fvwmCVS-fixed/modules/FvwmIconMan/debuglevels.h 2006-08-07 20:59:42.0 +0400 @@ -9,7 +9,7 @@ /* I'm finding lots of the debugging is dereferencing pointers to zero. I fixed some of them, until I grew tired of the game. - If you want to turn these back on, be perpared for lots of core + If you want to turn these back on, be prepared for lots of core dumps. dje 11/15/98. */ int CORE = 0; int FUNCTIONS = 0; diff -Naur fvwmCVS-orig/modules/FvwmIconMan/functions.c fvwmCVS-fixed/modules/FvwmIconMan/functions.c --- fvwmCVS-orig/modules/FvwmIconMan/functions.c2006-08-07 11:54:29.0 +0400 +++ fvwmCVS-fixed/modules/FvwmIconMan/functions.c 2006-08-07 13:51:25.0 +0400 @@ -221,7 +221,7 @@ case SelectButton: case FocusButton: ConsoleMessage( - gotomanger: \select\ or \focus\ does not specify + gotomanager: \select\ or \focus\ does not specify a manager\n); break; diff -Naur fvwmCVS-orig/modules/FvwmIconMan/FvwmIconMan.1.in fvwmCVS-fixed/modules/FvwmIconMan/FvwmIconMan.1.in --- fvwmCVS-orig/modules/FvwmIconMan/FvwmIconMan.1.in 2006-08-07 11:54:29.0 +0400 +++ fvwmCVS-fixed/modules/FvwmIconMan/FvwmIconMan.1.in 2006-08-07 20:40:43.0 +0400 @@ -101,7 +101,7 @@ Font
Re: Tracking flag changes from modules
On Mon, Aug 07, 2006 at 07:26:40PM +0200, Viktor Griph wrote: On Mon, 7 Aug 2006, Dominik Vogt wrote: Is there any way that the module interface allows keeping track of changes to the window flags of a window? Currently FvwmPager allows moving of FixedPosition mini-windows, but the main window does not move. Just checking for IS_FIXED in MoveWindow doesn't work if the FixedPosition flag was set after the window was added to the pager (i.e with 'WindowStyle FixedPosition') since the flags get outdated. I've been looking some at the module interface, but I think that no message exist to indicate change in window flags. Is this correct? Actually, the window flags are part of some message, but they should not be used. Looking at a flag does not solve the problem anyway because the decision whether a window can be moved or not is much more complex (affected by a number of styles). I see that the flags are part of M_CONFIGURE_WINDOW. However, this package is not sent when styles that affect flags are changed, so the flags will be outdated until some other window operation that results in a new config message to be sent. Looking at is_function_allowed in decorations.c it seems as if the move action is goverened by the said flag and mwm hints. Would it be wrong to reimplement a check in the pager for if move is allowed? Yes, it would be wrong. To do so the pager would have to know the mwm functions hints and changes in styles would have to generate configure messages. I'm unhappy that the flags are sent at all. It's just a hack. Ciao Dominik ^_^ ^_^ -- Dominik Vogt, [EMAIL PROTECTED] signature.asc Description: Digital signature
Re: Tracking flag changes from modules
On 8/7/06, Dominik Vogt [EMAIL PROTECTED] wrote: Is there any way that the module interface allows keeping track of changes to the window flags of a window? Currently FvwmPager allows moving of FixedPosition mini-windows, but the main window does not move. Just checking for IS_FIXED in MoveWindow doesn't work if the FixedPosition flag was set after the window was added to the pager (i.e with 'WindowStyle FixedPosition') since the flags get outdated. I've been looking some at the module interface, but I think that no message exist to indicate change in window flags. Is this correct? Actually, the window flags are part of some message, but they should not be used. Looking at a flag does not solve the problem anyway because the decision whether a window can be moved or not is much more complex (affected by a number of styles). What about providing modules a way to ask fvwm to move the windows instead of the module moving them through X calls? This way the sanity checks would be done in fvwm, leaving all these problems to the window manager. It would work the same as moving the viewport. The pager asks fvwm to move the viewport, it doesn't directly move all the windows. But it would require a rewrite of the pager, and some major changes to the fvwm code.. :( not a task for 2.5 I guess... Even so, can this be a 2.6 feature? Cheers Renato Ciao Dominik ^_^ ^_^ -- Echte DSL-Flatrate dauerhaft für 0,- Euro*. Nur noch kurze Zeit! Feel free mit GMX DSL: http://www.gmx.net/de/go/dsl
Re: Tracking flag changes from modules
On Tue, 8 Aug 2006, seventh guardian wrote: On 8/7/06, Dominik Vogt [EMAIL PROTECTED] wrote: Is there any way that the module interface allows keeping track of changes to the window flags of a window? Currently FvwmPager allows moving of FixedPosition mini-windows, but the main window does not move. Just checking for IS_FIXED in MoveWindow doesn't work if the FixedPosition flag was set after the window was added to the pager (i.e with 'WindowStyle FixedPosition') since the flags get outdated. I've been looking some at the module interface, but I think that no message exist to indicate change in window flags. Is this correct? Actually, the window flags are part of some message, but they should not be used. Looking at a flag does not solve the problem anyway because the decision whether a window can be moved or not is much more complex (affected by a number of styles). What about providing modules a way to ask fvwm to move the windows instead of the module moving them through X calls? This way the sanity checks would be done in fvwm, leaving all these problems to the window manager. It would work the same as moving the viewport. The pager asks fvwm to move the viewport, it doesn't directly move all the windows. But it would require a rewrite of the pager, and some major changes to the fvwm code.. :( not a task for 2.5 I guess... Even so, can this be a 2.6 feature? The mechanism for asking fvwm to move a window is already there. It's just to send the Move command. However, this does not fix the problem, since there is no way for the pager to know if the move was successful or not. It could move the mini window back to te original position on button release and then send the move command and wait for a corresponding configure-package to know the new position if the window was moved. This however would cause windows jumping back and forth in the pager. Some sort of meanpath would be to add a message for ignored requests and have it have the same info as the configure window package, but that's definately a hack. Both these 'solutions' would allow the miniature window to move, but have them jump back on non-moveable windows. The best thing would be to not allow movement on non-moveable windows to start in the pager view. /Viktor