~smspillaz/compiz-plugins-main/compiz-plugins-main.fix_939228

« back to all changes in this revision

Viewing changes to expo/src/expo.cpp

  • Committer: Daniel van Vugt
  • Date: 2012-04-24 10:28:10 UTC
  • Revision ID: daniel.van.vugt@canonical.com-20120424102810-rf9fvr9g20iu1oh6
Change the mouse pointer while dragging windows in expo. Just like the
ubuntu branches do. (LP: #987647)

Show diffs side-by-side

added added

removed removed

Lines of Context:
26
26
#include "expo.h"
27
27
#include <math.h>
28
28
#include <GL/glu.h>
 
29
#include <X11/cursorfont.h>
29
30
 
30
31
COMPIZ_PLUGIN_20090315 (expo, ExpoPluginVTable);
31
32
 
608
609
                               CompWindowGrabMoveMask |
609
610
                               CompWindowGrabButtonMask);
610
611
 
 
612
                screen->updateGrab (grabIndex, dragCursor);
 
613
 
611
614
                w->raise ();
612
615
                w->moveInputFocusTo ();
613
616
                break;
616
619
            prevCursor = newCursor;
617
620
        }
618
621
        break;
 
622
    case DnDNone:
 
623
        screen->updateGrab (grabIndex, screen->normalCursor ());
 
624
        break;
619
625
    default:
620
626
        break;
621
627
    }
1339
1345
    upKey    = XKeysymToKeycode (s->dpy (), XStringToKeysym ("Up"));
1340
1346
    downKey  = XKeysymToKeycode (s->dpy (), XStringToKeysym ("Down"));
1341
1347
 
 
1348
    dragCursor = XCreateFontCursor (screen->dpy (), XC_fleur);
 
1349
 
1342
1350
    EXPOINITBIND (ExpoKey, doExpo);
1343
1351
    EXPOTERMBIND (ExpoKey, termExpo);
1344
1352
    EXPOINITBIND (ExpoButton, doExpo);
1357
1365
    GLScreenInterface::setHandler (gScreen, false);
1358
1366
}
1359
1367
 
 
1368
ExpoScreen::~ExpoScreen ()
 
1369
{
 
1370
    if (dragCursor != None)
 
1371
        XFreeCursor (screen->dpy (), dragCursor);
 
1372
}
 
1373
 
1360
1374
ExpoWindow::ExpoWindow (CompWindow *w) :
1361
1375
    PluginClassHandler<ExpoWindow, CompWindow> (w),
1362
1376
    window (w),