Ticket #2239: myth_lirc_latest.diff.libmyth

File myth_lirc_latest.diff.libmyth, 3.5 KB (added by navahogunleg@…, 16 years ago)

Patch to make remoteXXXX identifiers work again in SVN version (using Qt4) [patch split up into files because of too many local changes]

Line 
1Index: lirc.cpp
2===================================================================
3--- lirc.cpp    (revision 17082)
4+++ lirc.cpp    (working copy)
5@@ -13,6 +13,7 @@
6 #include "lirc.h"
7 #include "lircevent.h"
8 #include "util.h"
9+#include "mythkeysequence.h"
10 
11 /** \class LircClient
12  *  \brief Interface between mythtv and lircd
13@@ -81,7 +82,7 @@
14         while ((ret = lirc_code2char(lircConfig, ir, &code)) == 0 &&
15                code != NULL)
16         {
17-            QKeySequence a(code);
18+            MythKeySequence a(code);
19 
20             int keycode = 0;
21 
22@@ -94,13 +95,20 @@
23 
24             for (unsigned int i = 0; i < a.count(); i++)
25             {
26-                keycode = a[i];
27-
28-                QApplication::postEvent(mainWindow, new LircKeycodeEvent(code,
29+                if (a[i]->isRemote()) // is really bound to a remoteXXX
30+                {
31+                    QApplication::postEvent(mainWindow, new LircKeycodeEvent( a[i]->text().latin1(), 0, true  ));
32+                }
33+                else
34+                {
35+                    keycode = a[i]->value( );
36+                    QApplication::postEvent(mainWindow, new LircKeycodeEvent(code,
37                                         keycode, true));
38-                QApplication::postEvent(mainWindow, new LircKeycodeEvent(code,
39+                    QApplication::postEvent(mainWindow, new LircKeycodeEvent(code,
40                                         keycode, false));
41 
42+                }
43+
44                 SpawnApp();
45             }
46         }
47Index: jsmenu.cpp
48===================================================================
49--- jsmenu.cpp  (revision 17082)
50+++ jsmenu.cpp  (working copy)
51@@ -32,6 +32,7 @@
52 #include <fcntl.h>
53 
54 #include "mythcontext.h"
55+#include "mythkeysequence.h"
56 
57 #include <iostream>
58 using namespace std;
59@@ -295,7 +296,7 @@
60 **--------------------------------------------------------------------------*/
61 void JoystickMenuClient::EmitKey(QString code)
62 {
63-    QKeySequence a(code);
64+    MythKeySequence a(code);
65 
66     int keycode = 0;
67 
68@@ -308,7 +309,7 @@
69 
70     for (unsigned int i = 0; i < a.count(); i++)
71     {
72-        keycode = a[i];
73+        keycode = a[i]->value();
74 
75         QApplication::postEvent(mainWindow, new JoystickKeycodeEvent(code,
76                                 keycode, true));
77Index: libmyth.pro
78===================================================================
79--- libmyth.pro (revision 17082)
80+++ libmyth.pro (working copy)
81@@ -17,7 +17,7 @@
82 HEADERS += generictree.h httpcomms.h langsettings.h lcddevice.h
83 HEADERS += managedlist.h mythconfigdialogs.h mythconfiggroups.h
84 HEADERS += mythcontext.h mythdbcon.h mythdeque.h mythdialogs.h
85-HEADERS += mythevent.h mythexp.h mythmedia.h mythmediamonitor.h
86+HEADERS += mythkeysequence.h mythevent.h mythexp.h mythmedia.h mythmediamonitor.h
87 HEADERS += mythobservable.h mythplugin.h mythpluginapi.h mythsocket.h
88 HEADERS += mythstorage.h mythwidgets.h mythwizard.h
89 HEADERS += oldsettings.h output.h qmdcodec.h remotefile.h
90@@ -35,7 +35,7 @@
91 SOURCES += managedlist.cpp mythconfigdialogs.cpp mythconfiggroups.cpp
92 SOURCES += mythcontext.cpp mythdbcon.cpp mythdialogs.cpp
93 SOURCES += mythmedia.cpp mythmediamonitor.cpp
94-SOURCES += mythobservable.cpp mythplugin.cpp mythsocket.cpp
95+SOURCES += mythobservable.cpp mythplugin.cpp mythsocket.cpp mythkeysequence.cpp
96 SOURCES += mythstorage.cpp mythwidgets.cpp mythwizard.cpp
97 SOURCES += oldsettings.cpp output.cpp qmdcodec.cpp remotefile.cpp
98 SOURCES += screensaver.cpp screensaver-null.cpp settings.cpp themeinfo.cpp
99