Link
Link Link Link Link Link Link Link
Tutorials
How-To: Disable Enlightenment Window Mouse Button Bindings
This tutorial describes how to prevent the Enlightenment (E16) window manager from intercepting mouse events needed by Pipeline. Normally, all mouse events generated while holding down the ALT key anywhere over a window are used by Enlightenment to invoke window move, resize and other window manager operations. This makes it impossible to zoom and pan in Pipeline's Node Viewer and Job Viewer. It also interfers with using the popup menus in Pipeline which require the ALT modifier when running Enlightenment. The problem isn't limited to Pipeline since these ALT+MOUSE events are also commonly used in other 3D software, including Maya and Houdini, for performing viewer and graph manipulation.

Luckily, its pretty easy to disable this undesirable behavior by commenting out a section of one of Enlightenment's configuration files. The configuration file which needs to be edited is normally located here:

/usr/share/enlightenment/config/keybindings.cfg

This location may vary depending on your Enlightenment installation, but the file name will always be "keybindings.cfg". This edit should be done by a system administrator since you will need to be root to edit this file. Open it in your favorite text editor and look for this section near the start of the file:


/* 
 * Global button bindings... specially named actionclass that applies to
 * all client windows - so you can bind "alt - left click" to move the
 * window, raise it or something.... 
 */

__ACLASS __BGN
  __NAME BUTTONBINDINGS
  __TYPE __TYPE_NORMAL
    __EVENT __MOUSE_PRESS
    __BUTTON 1
    __MODIFIER_KEY __ALT
    __ACTION __A_MOVE
  __NEXT_ACTION
    __EVENT __MOUSE_PRESS
    __BUTTON 1
    __MODIFIER_KEY __ALT_SHIFT
    __ACTION __A_SWAPMOVE
  __NEXT_ACTION
    __EVENT __DOUBLE_CLICK
    __BUTTON 1
    __MODIFIER_KEY __ALT
    __ACTION __A_SHADE
  __NEXT_ACTION
    __EVENT __MOUSE_PRESS
    __BUTTON 2
    __MODIFIER_KEY __ALT
    __ACTION __A_RESIZE
  __NEXT_ACTION
    __EVENT __DOUBLE_CLICK
    __BUTTON 2
    __MODIFIER_KEY __ALT
    __ACTION __A_MAX_HEIGHT available
  __NEXT_ACTION
    __EVENT __MOUSE_PRESS
    __BUTTON 3
    __MODIFIER_KEY __ALT
    __ACTION __A_SHOW_MENU "named WINOPS_MENU"
__END

...
        

Simply comment out this entire section using C-style commenting, like so:

/* 
 * Global button bindings... specially named actionclass that applies to
 * all client windows - so you can bind "alt - left click" to move the
 * window, raise it or something.... 
 */

/*
__ACLASS __BGN
  __NAME BUTTONBINDINGS
  __TYPE __TYPE_NORMAL
    __EVENT __MOUSE_PRESS
    __BUTTON 1
    __MODIFIER_KEY __ALT
    __ACTION __A_MOVE
  __NEXT_ACTION
    __EVENT __MOUSE_PRESS
    __BUTTON 1
    __MODIFIER_KEY __ALT_SHIFT
    __ACTION __A_SWAPMOVE
  __NEXT_ACTION
    __EVENT __DOUBLE_CLICK
    __BUTTON 1
    __MODIFIER_KEY __ALT
    __ACTION __A_SHADE
  __NEXT_ACTION
    __EVENT __MOUSE_PRESS
    __BUTTON 2
    __MODIFIER_KEY __ALT
    __ACTION __A_RESIZE
  __NEXT_ACTION
    __EVENT __DOUBLE_CLICK
    __BUTTON 2
    __MODIFIER_KEY __ALT
    __ACTION __A_MAX_HEIGHT available
  __NEXT_ACTION
    __EVENT __MOUSE_PRESS
    __BUTTON 3
    __MODIFIER_KEY __ALT
    __ACTION __A_SHOW_MENU "named WINOPS_MENU"
__END
*/

...
        

Save the file and restart Enlightment. You should now be able to use the ALT modifier to zoom and pan in Pipeline.
Copyright 2005 Temerity Software, Inc.