forked from vitrine/wmaker
This reverts commit cbe2f4e61a.
The reason for the revert is the regression reported here:
http://marc.info/?l=openbsd-ports&m=133151145814675&w=2
I've been able to reliably reproduce the double-spawning of
xterms I've been seeing. The bad news is that it still happens
even with a fresh configuration directory.
To reproduce:
0) Create a keyboard shortcut if one does not already exist (I'm
using <ctrl>+u set to spawn an xterm)
1) Open WindowMaker's preferences.
2) Click on "Applications Menu Definition" (it's the icon
immediately to the left of the keyboard icon)
3) Click save, and then close.
4) Keyboard shortcuts will spawn two applications.
I use keyboard shortcuts to spawn xterms, browsers, and filemanagers.
All of them spawn twice after performing the above. To fix it,
<F12> or <right-click> -> Exit -> Restart.
If I repeat steps 1-3, three windows will spawn. Repeat again and
four windows will spawn etc. (I stopped after getting five to
spawn at once).
45 lines
1.4 KiB
C
45 lines
1.4 KiB
C
/* rootmenu.h- user defined menu
|
|
*
|
|
* Window Maker window manager
|
|
*
|
|
* Copyright (c) 2000-2003 Alfredo K. Kojima
|
|
*
|
|
* This program is free software; you can redistribute it and/or modify
|
|
* it under the terms of the GNU General Public License as published by
|
|
* the Free Software Foundation; either version 2 of the License, or
|
|
* (at your option) any later version.
|
|
*
|
|
* This program is distributed in the hope that it will be useful,
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
* GNU General Public License for more details.
|
|
*
|
|
* You should have received a copy of the GNU General Public License along
|
|
* with this program; if not, write to the Free Software Foundation, Inc.,
|
|
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
|
*/
|
|
|
|
#ifndef WMROOTMENU_H
|
|
#define WMROOTMENU_H
|
|
|
|
#include "WindowMaker.h"
|
|
|
|
|
|
typedef void *WRootMenuData;
|
|
|
|
|
|
typedef struct _WRootMenuReader {
|
|
Bool (*checkMenuChange)(char *path, time_t lastAccessTime);
|
|
|
|
WRootMenuData (*openMenuFile)(char *path);
|
|
Bool (*hasMoreData)(WRootMenuData *data);
|
|
Bool (*nextCommand)(WRootMenuData *data,
|
|
char **title,
|
|
char **command,
|
|
char **parameter,
|
|
char **shortcut);
|
|
void (*closeMenuFile)(WRootMenuData *data);
|
|
} WRootMenuReader;
|
|
|
|
#endif /* WMROOTMENU_H */
|