View | Details | Raw Unified
Collapse All | Expand All

(-) WindowMaker-0.91.0/src/window.c (-13 / +62 lines)
 Lines 54-62    Link Here 
    WMSetButtonSelected(panel->swi[4], GetBoolForKey("DontConfirmKill"));
    WMSetButtonSelected(panel->swi[4], GetBoolForKey("DontConfirmKill"));
    WMSetButtonSelected(panel->swi[5], GetBoolForKey("DisableBlinking"));
    WMSetButtonSelected(panel->swi[5], GetBoolForKey("DisableBlinking"));
    WMSetButtonSelected(panel->swi[6], GetBoolForKey("AntialiasedText"));
    WMSetButtonSelected(panel->swi[6], GetBoolForKey("AntialiasedText"));
    WMSetButtonSelected(panel->swi[7], GetBoolForKey("DCMaximize"));
    WMSetButtonSelected(panel->swi[8], GetBoolForKey("SingleClickLaunch"));
}
}
static void
static void
createPanel(Panel *p)
createPanel(Panel *p)
{
{
 Lines 66-75    Link Here 
    panel->box = WMCreateBox(panel->parent);
    panel->box = WMCreateBox(panel->parent);
    WMSetViewExpandsToParent(WMWidgetView(panel->box), 2, 2, 2, 2);
    WMSetViewExpandsToParent(WMWidgetView(panel->box), 2, 2, 2, 2);
    for (i=0; i<7; i++) {
    for (i=0; i<9; i++) {
        panel->swi[i] = WMCreateSwitchButton(panel->box);
        panel->swi[i] = WMCreateSwitchButton(panel->box);
        WMResizeWidget(panel->swi[i], FRAME_WIDTH-40, 25);
        WMResizeWidget(panel->swi[i], FRAME_WIDTH-40, 25);
        WMMoveWidget(panel->swi[i], 20, 20+i*25);
        WMMoveWidget(panel->swi[i], 20, 20+i*23);
    }
    }
    WMSetButtonText(panel->swi[0], _("Disable miniwindows (icons for minimized windows). For use with KDE/GNOME."));
    WMSetButtonText(panel->swi[0], _("Disable miniwindows (icons for minimized windows). For use with KDE/GNOME."));
 Lines 81-86    Link Here 
    WMSetButtonText(panel->swi[6], _("Smooth font edges (needs restart)."));
    WMSetButtonText(panel->swi[6], _("Smooth font edges (needs restart)."));
    WMSetButtonEnabled(panel->swi[6], True);
    WMSetButtonEnabled(panel->swi[6], True);
    WMSetButtonText(panel->swi[7], _("Double click on title bar maximize"));
    WMSetButtonText(panel->swi[8], _("Launch applications and restore windows with a single click"));
    WMRealizeWidget(panel->box);
    WMRealizeWidget(panel->box);
    WMMapSubwidgets(panel->box);
    WMMapSubwidgets(panel->box);
 Lines 103-108    Link Here 
    SetBoolForKey(WMGetButtonSelected(panel->swi[4]), "DontConfirmKill");
    SetBoolForKey(WMGetButtonSelected(panel->swi[4]), "DontConfirmKill");
    SetBoolForKey(WMGetButtonSelected(panel->swi[5]), "DisableBlinking");
    SetBoolForKey(WMGetButtonSelected(panel->swi[5]), "DisableBlinking");
    SetBoolForKey(WMGetButtonSelected(panel->swi[6]), "AntialiasedText");
    SetBoolForKey(WMGetButtonSelected(panel->swi[6]), "AntialiasedText");
    SetBoolForKey(WMGetButtonSelected(panel->swi[7]), "DCMaximize");
    SetBoolForKey(WMGetButtonSelected(panel->swi[8]), "SingleClickLaunch");
}
}
 Lines 466-471    Link Here 
    /* shading animation */
    /* shading animation */
    signed char shade_speed;
    signed char shade_speed;
    /* double click on title bar maximize */
    char dc_maximize;
    /* single click to lauch applications */
    char single_click;
    int edge_resistance;
    int edge_resistance;
    char attract;
    char attract;
 Lines 585-590    Link Here 
    int shad_x = 0, shad_y = 0, docking=0, dockable, collapsed = 0;
    int shad_x = 0, shad_y = 0, docking=0, dockable, collapsed = 0;
    int ix, iy;
    int ix, iy;
    int clickButton = event->xbutton.button;
    int clickButton = event->xbutton.button;
    Bool hasMoved = False;
    Pixmap ghost = None;
    Pixmap ghost = None;
    Window wins[2];
    Window wins[2];
    Bool movingSingle = False;
    Bool movingSingle = False;
 Lines 665-670    Link Here 
            break;
            break;
        case MotionNotify:
        case MotionNotify:
            hasMoved = True;
            if (!grabbed) {
            if (!grabbed) {
                if (abs(dx-ev.xmotion.x)>=MOVE_THRESHOLD
                if (abs(dx-ev.xmotion.x)>=MOVE_THRESHOLD
                    || abs(dy-ev.xmotion.y)>=MOVE_THRESHOLD) {
                    || abs(dy-ev.xmotion.y)>=MOVE_THRESHOLD) {
 Lines 802-807    Link Here 
            if (wPreferences.auto_arrange_icons)
            if (wPreferences.auto_arrange_icons)
                wArrangeIcons(scr, True);
                wArrangeIcons(scr, True);
            if (!hasMoved && wPreferences.single_click)
                iconDblClick(desc, event);
            done = 1;
            done = 1;
            break;
            break;
        }
        }
 Lines 556-561    Link Here 
    {"DisableBlinking",	"NO",		NULL,
    {"DisableBlinking",	"NO",		NULL,
    &wPreferences.dont_blink,	getBool,	NULL
    &wPreferences.dont_blink,	getBool,	NULL
    },
    },
    {"DCMaximize", "NO",               NULL,
    &wPreferences.dc_maximize,   getBool,        NULL
    },
    {"SingleClickLaunch", "NO",                NULL,
    &wPreferences.single_click,  getBool,        NULL
    },
    /* style options */
    /* style options */
    {"MenuStyle", 	"normal",  		seMenuStyles,
    {"MenuStyle", 	"normal",  		seMenuStyles,
    &wPreferences.menu_style, getEnum, 	setMenuStyle
    &wPreferences.menu_style, getEnum, 	setMenuStyle
 Lines 3758-3764    Link Here 
static void
static Bool
handleIconMove(WDock *dock, WAppIcon *aicon, XEvent *event)
handleIconMove(WDock *dock, WAppIcon *aicon, XEvent *event)
{
{
    WScreen *scr = dock->screen_ptr;
    WScreen *scr = dock->screen_ptr;
 Lines 3774-3779    Link Here 
    int tmp;
    int tmp;
    Pixmap ghost = None;
    Pixmap ghost = None;
    Bool docked;
    Bool docked;
    Bool hasMoved = False;
    int superfluous = wPreferences.superfluous; /* we catch it to avoid problems */
    int superfluous = wPreferences.superfluous; /* we catch it to avoid problems */
    int omnipresent = aicon->omnipresent; /* this must be cached!!! */
    int omnipresent = aicon->omnipresent; /* this must be cached!!! */
 Lines 3828-3833    Link Here 
            break;
            break;
        case MotionNotify:
        case MotionNotify:
	    hasMoved = True;
            if (!grabbed) {
            if (!grabbed) {
                if (abs(ofs_x-ev.xmotion.x)>=MOVE_THRESHOLD
                if (abs(ofs_x-ev.xmotion.x)>=MOVE_THRESHOLD
                    || abs(ofs_y-ev.xmotion.y)>=MOVE_THRESHOLD) {
                    || abs(ofs_y-ev.xmotion.y)>=MOVE_THRESHOLD) {
 Lines 3977-3983    Link Here 
#ifdef DEBUG
#ifdef DEBUG
            puts("End icon move");
            puts("End icon move");
#endif
#endif
            return;
            return hasMoved;
        }
        }
    }
    }
}
}
 Lines 4114-4123    Link Here 
            if (getClipButton(event->xbutton.x, event->xbutton.y)!=CLIP_IDLE
            if (getClipButton(event->xbutton.x, event->xbutton.y)!=CLIP_IDLE
                && dock->type==WM_CLIP)
                && dock->type==WM_CLIP)
                handleClipChangeWorkspace(scr, event);
                handleClipChangeWorkspace(scr, event);
            else
	    else
                handleDockMove(dock, aicon, event);
	        handleDockMove(dock, aicon, event);
        } else
            } else {
            handleIconMove(dock, aicon, event);
                Bool hasMoved = handleIconMove(dock, aicon, event);
                if (!hasMoved && wPreferences.single_click)
                   iconDblClick(desc, event);
                }
    } else if (event->xbutton.button==Button2 && dock->type==WM_CLIP &&
    } else if (event->xbutton.button==Button2 && dock->type==WM_CLIP &&
               aicon==scr->clip_icon) {
               aicon==scr->clip_icon) {
 Lines 891-896    Link Here 
    int dx=event->xbutton.x, dy=event->xbutton.y;
    int dx=event->xbutton.x, dy=event->xbutton.y;
    int grabbed=0;
    int grabbed=0;
    int clickButton=event->xbutton.button;
    int clickButton=event->xbutton.button;
    Bool hasMoved = False;
    if (WCHECK_STATE(WSTATE_MODAL))
    if (WCHECK_STATE(WSTATE_MODAL))
        return;
        return;
 Lines 942-947    Link Here 
            break;
            break;
        case MotionNotify:
        case MotionNotify:
	    hasMoved = True;
            if (!grabbed) {
            if (!grabbed) {
                if (abs(dx-ev.xmotion.x)>=MOVE_THRESHOLD
                if (abs(dx-ev.xmotion.x)>=MOVE_THRESHOLD
                    || abs(dy-ev.xmotion.y)>=MOVE_THRESHOLD) {
                    || abs(dy-ev.xmotion.y)>=MOVE_THRESHOLD) {
 Lines 979-984    Link Here 
            if (wPreferences.auto_arrange_icons)
            if (wPreferences.auto_arrange_icons)
                wArrangeIcons(wwin->screen_ptr, True);
                wArrangeIcons(wwin->screen_ptr, True);
            if (!hasMoved && wPreferences.single_click)
                miniwindowDblClick(desc, event);
            return;
            return;
        }
        }
 Lines 3089-3101    Link Here 
    if (event->xbutton.button==Button1) {
    if (event->xbutton.button==Button1) {
        if (event->xbutton.state == 0) {
        if (event->xbutton.state == 0) {
            if (!WFLAGP(wwin, no_shadeable)) {
           /* check preferences, maximize or shade */
           if (wPreferences.dc_maximize) {
              if (!WFLAGP(wwin, no_resizable)) {
                 /* maximize window */
                 if (wwin->flags.maximized != 0) {
                    wUnmaximizeWindow(wwin);
                    wwin->flags.maximized = 0;
                 }
                 else {
                    wMaximizeWindow(wwin, MAX_VERTICAL|MAX_HORIZONTAL);
                    wwin->flags.maximized = MAX_VERTICAL|MAX_HORIZONTAL;
                 }
              }
           }
	   else {
             if (!WFLAGP(wwin, no_shadeable)) {
                /* shade window */
                /* shade window */
                if (wwin->flags.shaded)
                if (wwin->flags.shaded)
                    wUnshadeWindow(wwin);
                   wUnshadeWindow(wwin);
                else
                else
                    wShadeWindow(wwin);
                   wShadeWindow(wwin);
            }
           }
     }
        } else {
        } else {
            int dir = 0;
            int dir = 0;