2 * Copyright (C) 2005-2018 Team Kodi
3 * This file is part of Kodi - https://kodi.tv
5 * SPDX-License-Identifier: GPL-2.0-or-later
6 * See LICENSES/README.md for more information.
11 #include "threads/SystemClock.h"
12 #include "windowing/WinEvents.h"
13 #include "windowing/X11/WinSystemX11.h"
27 class CWinEventsX11
: public IWinEvents
30 CWinEventsX11(CWinSystemX11
& winSystem
);
31 ~CWinEventsX11() override
;
32 bool MessagePump() override
;
33 bool Init(Display
*dpy
, Window win
);
35 bool HasStructureChanged();
36 void PendingResize(int width
, int height
);
37 void SetXRRFailSafeTimer(std::chrono::milliseconds duration
);
40 XBMCKey
LookupXbmcKeySym(KeySym keysym
);
41 bool ProcessKey(XBMC_Event
&event
);
42 Display
*m_display
= nullptr;
44 Atom m_wmDeleteMessage
;
45 char *m_keybuf
= nullptr;
46 size_t m_keybuf_len
= 0;
49 std::map
<uint32_t,uint32_t> m_symLookupTable
;
51 bool m_structureChanged
;
53 XbmcThreads::EndTime
<> m_xrrFailSafeTimer
;
54 bool m_xrrEventPending
;
55 CWinSystemX11
& m_winSystem
;