X-Git-Url: https://git.quassel-irc.org/?a=blobdiff_plain;f=src%2Fcontrib%2Flibqxt-2007-10-24%2Fsrc%2Fgui%2Fqxtapplication_x11.cpp;fp=src%2Fcontrib%2Flibqxt-2007-10-24%2Fsrc%2Fgui%2Fqxtapplication_x11.cpp;h=0000000000000000000000000000000000000000;hb=140d8a132103d2fa9baf55036e09b165624de167;hp=237a5e5fd7a0905b8fe8304cbe8462971191d6d7;hpb=97d674034551438238c568e8b42efb08e1ba7354;p=quassel.git diff --git a/src/contrib/libqxt-2007-10-24/src/gui/qxtapplication_x11.cpp b/src/contrib/libqxt-2007-10-24/src/gui/qxtapplication_x11.cpp deleted file mode 100644 index 237a5e5f..00000000 --- a/src/contrib/libqxt-2007-10-24/src/gui/qxtapplication_x11.cpp +++ /dev/null @@ -1,94 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) Qxt Foundation. Some rights reserved. -** -** This file is part of the QxtGui module of the Qt eXTension library -** -** This library is free software; you can redistribute it and/or modify it -** under the terms of th Common Public License, version 1.0, as published by -** IBM. -** -** This file is provided "AS IS", without WARRANTIES OR CONDITIONS OF ANY -** KIND, EITHER EXPRESS OR IMPLIED INCLUDING, WITHOUT LIMITATION, ANY -** WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT, MERCHANTABILITY OR -** FITNESS FOR A PARTICULAR PURPOSE. -** -** You should have received a copy of the CPL along with this file. -** See the LICENSE file and the cpl1.0.txt file included with the source -** distribution for more information. If you did not receive a copy of the -** license, contact the Qxt Foundation. -** -** -** -****************************************************************************/ -#include "qxtapplication.h" -#include "qxtapplication_p.h" -#include -#include -#include - -QxtApplication::QxtApplication(Display* display, Qt::HANDLE visual, Qt::HANDLE colormap) - : QApplication(display, visual, colormap) -{} - -QxtApplication::QxtApplication(Display* display, int& argc, char** argv, Qt::HANDLE visual, Qt::HANDLE colormap) - : QApplication(display, argc, argv, visual, colormap) -{} - -bool QxtApplication::x11EventFilter(XEvent* event) -{ - foreach (QxtNativeEventFilter* filter, qxt_d().nativeFilters) - { - if (filter && filter->x11EventFilter(event)) - return true; - } - - if (event->type == KeyPress) - { - XKeyEvent* key = (XKeyEvent*) event; - qxt_d().activateHotKey(key->state, key->keycode); - } - return QApplication::x11EventFilter(event); -} - -uint QxtApplicationPrivate::nativeModifiers(Qt::KeyboardModifiers modifiers) const -{ - // ShiftMask, LockMask, ControlMask, Mod1Mask, Mod2Mask, Mod3Mask, Mod4Mask, and Mod5Mask - uint native = 0; - if (modifiers & Qt::ShiftModifier) - native |= ShiftMask; - if (modifiers & Qt::ControlModifier) - native |= ControlMask; - if (modifiers & Qt::AltModifier) - native |= Mod1Mask; - // TODO: resolve these? - //if (modifiers & Qt::MetaModifier) - //if (modifiers & Qt::KeypadModifier) - //if (modifiers & Qt::GroupSwitchModifier) - return native; -} - -uint QxtApplicationPrivate::nativeKeycode(Qt::Key key) const -{ - Display* display = QX11Info::display(); - return XKeysymToKeycode(display, XStringToKeysym(QKeySequence(key).toString().toLatin1().data())); -} - -bool QxtApplicationPrivate::registerHotKey(uint modifiers, uint keycode, QWidget* receiver) -{ - Q_UNUSED(receiver); - Display* display = QX11Info::display(); - Window window = QX11Info::appRootWindow(); - Bool owner = True; - int pointer = GrabModeAsync; - int keyboard = GrabModeAsync; - return XGrabKey(display, keycode, modifiers, window, owner, pointer, keyboard); -} - -bool QxtApplicationPrivate::unregisterHotKey(uint modifiers, uint keycode, QWidget* receiver) -{ - Q_UNUSED(receiver); - Display* display = QX11Info::display(); - Window window = QX11Info::appRootWindow(); - return XUngrabKey(display, keycode, modifiers, window); -}