summaryrefslogtreecommitdiffstats
path: root/opensuse/core/qt3/0048-qclipboard_hack_80072.patch
diff options
context:
space:
mode:
Diffstat (limited to 'opensuse/core/qt3/0048-qclipboard_hack_80072.patch')
-rw-r--r--opensuse/core/qt3/0048-qclipboard_hack_80072.patch51
1 files changed, 0 insertions, 51 deletions
diff --git a/opensuse/core/qt3/0048-qclipboard_hack_80072.patch b/opensuse/core/qt3/0048-qclipboard_hack_80072.patch
deleted file mode 100644
index 2f508019b..000000000
--- a/opensuse/core/qt3/0048-qclipboard_hack_80072.patch
+++ /dev/null
@@ -1,51 +0,0 @@
-qt-bugs@ issue : none, probably even won't be
-bugs.kde.org number : 80072
-applied: no
-author: Lubos Lunak <l.lunak@kde.org>
-
-A crude hack for KDE #80072. No good idea how to fix it properly yet :(.
-
-================================================================================
-Index: src/kernel/qclipboard_x11.cpp
-===================================================================
---- src/kernel/qclipboard_x11.cpp.orig
-+++ src/kernel/qclipboard_x11.cpp
-@@ -112,6 +112,7 @@ static int pending_timer_id = 0;
- static bool pending_clipboard_changed = FALSE;
- static bool pending_selection_changed = FALSE;
-
-+Q_EXPORT bool qt_qclipboard_bailout_hack = false;
-
- // event capture mechanism for qt_xclb_wait_for_event
- static bool waiting_for_data = FALSE;
-@@ -464,6 +465,15 @@ static Bool checkForClipboardEvents(Disp
- || e->xselectionclear.selection == qt_xa_clipboard)));
- }
-
-+static bool selection_request_pending = false;
-+
-+static Bool check_selection_request_pending( Display*, XEvent* e, XPointer )
-+ {
-+ if( e->type == SelectionRequest && e->xselectionrequest.owner == owner->winId())
-+ selection_request_pending = true;
-+ return False;
-+ }
-+
- bool qt_xclb_wait_for_event( Display *dpy, Window win, int type, XEvent *event,
- int timeout )
- {
-@@ -515,6 +525,14 @@ bool qt_xclb_wait_for_event( Display *dp
- do {
- if ( XCheckTypedWindowEvent(dpy,win,type,event) )
- return TRUE;
-+ if( qt_qclipboard_bailout_hack ) {
-+ XEvent dummy;
-+ selection_request_pending = false;
-+ if ( owner != NULL )
-+ XCheckIfEvent(dpy,&dummy,check_selection_request_pending,NULL);
-+ if( selection_request_pending )
-+ return TRUE;
-+ }
-
- // process other clipboard events, since someone is probably requesting data from us
- XEvent e;