1
0
mirror of https://github.com/gryf/wmaker.git synced 2026-02-22 01:45:46 +01:00

bug fixes in icon placement, attribute inspector, balloon, workspace display

timeout
This commit is contained in:
kojima
1999-04-30 23:31:00 +00:00
parent b13dba1183
commit daeb6d67e2
16 changed files with 2787 additions and 471 deletions

View File

@@ -3550,7 +3550,7 @@ handleIconMove(WDock *dock, WAppIcon *aicon, XEvent *event)
#endif
}
wRaiseFrame(icon->core);
/* wRaiseFrame(icon->core);*/
if (!wPreferences.flags.noclip)
clip = scr->workspaces[scr->current_workspace]->clip;

View File

@@ -32,6 +32,7 @@
#include "framewin.h"
#include "window.h"
#include "icon.h"
#include "appicon.h"
#include "actions.h"
#include "funcs.h"
#include "application.h"
@@ -72,7 +73,8 @@ iconPosition(WCoreWindow *wcore, int sx1, int sy1, int sx2, int sy2,
parent = wcore->descriptor.parent;
/* if it is an application icon */
if (wcore->descriptor.parent_type == WCLASS_APPICON) {
if (wcore->descriptor.parent_type == WCLASS_APPICON
&& !((WAppIcon*)parent)->docked) {
*retX = ((WAppIcon*)parent)->x_pos;
*retY = ((WAppIcon*)parent)->y_pos;

View File

@@ -806,11 +806,11 @@ revertSettings(WMButton *button, InspectorPanel *panel)
char *wm_class = NULL;
int workspace, level;
if (WMGetButtonSelected(panel->instRb) != 0)
if (panel->instRb && WMGetButtonSelected(panel->instRb) != 0)
wm_instance = wwin->wm_instance;
else if (WMGetButtonSelected(panel->clsRb) != 0)
else if (panel->clsRb && WMGetButtonSelected(panel->clsRb) != 0)
wm_class = wwin->wm_class;
else if (WMGetButtonSelected(panel->bothRb) != 0) {
else if (panel->bothRb && WMGetButtonSelected(panel->bothRb) != 0) {
wm_instance = wwin->wm_instance;
wm_class = wwin->wm_class;
}

View File

@@ -32,6 +32,7 @@
#include <unistd.h>
#include <ctype.h>
#include <string.h>
#include <time.h>
#include "WindowMaker.h"
#include "wcore.h"
@@ -228,6 +229,7 @@ typedef struct WorkspaceNameData {
int count;
RImage *back;
RImage *text;
time_t timeout;
} WorkspaceNameData;
@@ -237,7 +239,8 @@ hideWorkpaceName(void *data)
{
WScreen *scr = (WScreen*)data;
if (!scr->workspace_name_data || scr->workspace_name_data->count == 0) {
if (!scr->workspace_name_data || scr->workspace_name_data->count == 0
|| time(NULL) > scr->workspace_name_data->timeout) {
XUnmapWindow(dpy, scr->workspace_name);
if (scr->workspace_name_data) {
@@ -406,8 +409,13 @@ showWorkspaceName(WScreen *scr, int workspace)
data->count = 10;
/* set a 2 second timeout for the effect */
data->timeout = time(NULL) + 1 +
(WORKSPACE_NAME_DELAY + WORKSPACE_NAME_FADE_DELAY*data->count)/1000;
scr->workspace_name_data = data;
return;
erro:
@@ -437,9 +445,9 @@ wWorkspaceChange(WScreen *scr, int workspace)
if (workspace != scr->current_workspace) {
wWorkspaceForceChange(scr, workspace);
} else {
} /*else {
showWorkspaceName(scr, workspace);
}
}*/
}
@@ -494,7 +502,7 @@ wWorkspaceForceChange(WScreen *scr, int workspace)
if ((tmp = scr->focused_window)!= NULL) {
if (IS_OMNIPRESENT(tmp) || tmp->flags.changing_workspace)
foc = tmp;
foc2 = tmp; /* for gnome stuff.. used to be foc = tmp */
while (tmp) {
if (tmp->frame->workspace!=workspace && !tmp->flags.selected) {