X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=src%2Fpython.cc;h=ff02d6d4022843d936b6fa8009e74914b233f499;hb=084d6f4e42396a5d2baf72877b5abf3ae6fef7be;hp=9905dec59b2dd93211793b9b451c6bec3d773d3b;hpb=d8aff44a6a639de83ba8f0957f9f9f17f2a05532;p=chaz%2Fopenbox diff --git a/src/python.cc b/src/python.cc index 9905dec5..ff02d6d4 100644 --- a/src/python.cc +++ b/src/python.cc @@ -123,6 +123,26 @@ PyObject *ebind(ob::EventAction action, PyObject *func) Py_INCREF(Py_None); return Py_None; } +PyObject *kgrab(int screen, PyObject *func) +{ + if (!PyCallable_Check(func)) { + PyErr_SetString(PyExc_TypeError, "Invalid callback function."); + return NULL; + } + + if (!ob::openbox->bindings()->grabKeyboard(screen, func)) { + PyErr_SetString(PyExc_RuntimeError,"Unable to grab keybaord."); + return NULL; + } + Py_INCREF(Py_None); return Py_None; +} + +PyObject *kungrab() +{ + ob::openbox->bindings()->ungrabKeyboard(); + Py_INCREF(Py_None); return Py_None; +} + PyObject *kbind(PyObject *keylist, ob::KeyContext context, PyObject *func) { if (!PyCallable_Check(func)) {