Giter VIP home page Giter VIP logo

desktopleapr's Introduction

# DESKTOP LEAPER, Hector Socas-Navarro 2013 ([email protected])
#  Experimental Python app using the LeapMotion API
#  Released under GPL v2 license. Please, give some credit if
#  you use this
#
# Requirements
# * Linux
# * Python
# * python-Xlib
#   * LeapMotion SDK
#   * if not in your path, LeapSDK/lib/Leap.py and LeapSDK/lib/x??/LeapPython.so
#        must be present in the running directory
# * OPTIONAL: xdotool (if not present, windows cannot be minimized) 
#
# Instructions:
#
#   This program sends simulated key presses to the X server in order to
#   interact with the window manager. The following key bindings need
#   to be associated with certain window manager actions to function
#   properly:
#     Ctrl+Alt+Left, Ctrl+Alt+Right: Switch to desktop on the left or 
#         right
#     Ctrl+Shift+Tab: Invoke the Window Switcher application. Assumed
#         behavior is that while Ctrl+Shift are held down the mouse
#         pointer can be used to select a window
#     Alt+Mouse left click: Grab a window until Alt key is released

#   *Use one finger to move the mouse pointer. Pointer is given by the 
#      position of the palm, not the finger but this is unnoticeable in
#      practice
#   *While moving the pointer, push the finger towards the screen above
#      the Leap Motion to generate a mouse click. Note: It is very 
#      difficult to make precise mouse clicks in this manner
#   *Activate window switcher by holding your hand open with all fingers
#      pointing down. Once activated the hand may be returned to
#      horizontal position but should still be open to move the pointer
#      to the desired window. Once the pointer is over the desired window
#      close hand and leave only one finger or move the hand towards the
#      screen to select that window. It takes practice to do this without
#      altering the pointer poisition.
#   *The window switcher is closed when either the hand is pushed towards
#      the screen above the leap motion or when it is in horizontal
#      position and closed or showing only one finger
#   *To grab a window, hold hour hand horizontally, open your hand
#      completely for a second and then close it quickly. Once a window
#      has been grabbed you can just move it to any other location and
#      release it by simply opening your hand again. It can also be
#      minimized by moving it rapidly to the left edge of the screen
#      (minimization is done invoking the xdotool command so you'd need
#      to have it installed and in the path).
#   *To scroll up or down, hold your hand horizontally with the palm
#      facing down and move all your fingers up or down while the mouse
#      pointer is over a window that can be scrolled.
#   *To switch to the desktop to the left or right, simply open your
#      hand with your palm facing up and slowly rotate it clockwise 
#      or counterclockwise. A slow rotation will be easier to pick up
#      by the Leap Motion.
#

desktopleapr's People

Contributors

hsocasnavarro avatar

Watchers

James Cloos avatar Leonardo Ludueña avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.