-
-
Notifications
You must be signed in to change notification settings - Fork 1.3k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
3fc21ba
commit 986ef9f
Showing
5 changed files
with
231 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,37 @@ | ||
From c8e79bfd5408cdc031af0b0edd62110af8f5be49 Mon Sep 17 00:00:00 2001 | ||
From: Sergey Fedorov <[email protected]> | ||
Date: Sat, 7 Dec 2024 16:57:20 +0800 | ||
Subject: [PATCH 1/4] Add missing cstdint header | ||
|
||
--- | ||
src/lib/base/String.h | 1 + | ||
src/lib/net/FingerprintData.h | 1 + | ||
2 files changed, 2 insertions(+) | ||
|
||
diff --git src/lib/base/String.h src/lib/base/String.h | ||
index 9c5a53ba..faf35969 100644 | ||
--- src/lib/base/String.h | ||
+++ src/lib/base/String.h | ||
@@ -23,6 +23,7 @@ | ||
|
||
#include <stdarg.h> | ||
#include <vector> | ||
+#include <cstdint> | ||
|
||
// use standard C++ string class for our string class | ||
typedef std::string String; | ||
diff --git src/lib/net/FingerprintData.h src/lib/net/FingerprintData.h | ||
index 938a6953..8ab16314 100644 | ||
--- src/lib/net/FingerprintData.h | ||
+++ src/lib/net/FingerprintData.h | ||
@@ -20,6 +20,7 @@ | ||
|
||
#include <string> | ||
#include <vector> | ||
+#include <cstdint> | ||
|
||
namespace barrier { | ||
|
||
-- | ||
2.47.1 | ||
|
26 changes: 26 additions & 0 deletions
26
aqua/barrier/files/0002-libplatform-use-ObjC-flags-on-Apple.patch
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,26 @@ | ||
From 280fa0101a57ae2e082beaee5811334b669400a2 Mon Sep 17 00:00:00 2001 | ||
From: Sergey Fedorov <[email protected]> | ||
Date: Sat, 7 Dec 2024 19:02:23 +0800 | ||
Subject: [PATCH 2/4] libplatform: use ObjC flags on Apple | ||
|
||
--- | ||
src/lib/platform/CMakeLists.txt | 5 +++++ | ||
1 file changed, 5 insertions(+) | ||
|
||
diff --git src/lib/platform/CMakeLists.txt src/lib/platform/CMakeLists.txt | ||
index 75551b71..d5aba571 100644 | ||
--- src/lib/platform/CMakeLists.txt | ||
+++ src/lib/platform/CMakeLists.txt | ||
@@ -46,4 +46,9 @@ endif() | ||
if (APPLE) | ||
find_library(COCOA_LIBRARY Cocoa) | ||
target_link_libraries(platform ${COCOA_LIBRARY}) | ||
+ target_compile_options(platform PRIVATE | ||
+ $<$<COMPILE_LANGUAGE:C>:-fobjc-exceptions> | ||
+ $<$<COMPILE_LANGUAGE:C>:-xobjective-c> | ||
+ $<$<COMPILE_LANGUAGE:CXX>:-fobjc-exceptions> | ||
+ ) | ||
endif() | ||
-- | ||
2.47.1 | ||
|
124 changes: 124 additions & 0 deletions
124
aqua/barrier/files/0003-OSXScreen.mm-do-not-use-reserved-id-for-variables.patch
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,124 @@ | ||
From a87a99a1f178a9cae879c5801a48fd0bec6450a6 Mon Sep 17 00:00:00 2001 | ||
From: Sergey Fedorov <[email protected]> | ||
Date: Sat, 7 Dec 2024 20:21:49 +0800 | ||
Subject: [PATCH 3/4] OSXScreen.mm: do not use reserved id for variables | ||
|
||
--- | ||
src/lib/platform/OSXScreen.mm | 40 +++++++++++++++++------------------ | ||
1 file changed, 20 insertions(+), 20 deletions(-) | ||
|
||
diff --git src/lib/platform/OSXScreen.mm src/lib/platform/OSXScreen.mm | ||
index d41e321b..5560ba02 100644 | ||
--- src/lib/platform/OSXScreen.mm | ||
+++ src/lib/platform/OSXScreen.mm | ||
@@ -324,14 +324,14 @@ OSXScreen::registerHotKey(KeyID key, KeyModifierMask mask) | ||
return 0; | ||
} | ||
|
||
- // choose hotkey id | ||
- UInt32 id; | ||
+ // choose hotkey kid | ||
+ UInt32 kid; | ||
if (!m_oldHotKeyIDs.empty()) { | ||
- id = m_oldHotKeyIDs.back(); | ||
+ kid = m_oldHotKeyIDs.back(); | ||
m_oldHotKeyIDs.pop_back(); | ||
} | ||
else { | ||
- id = m_hotKeys.size() + 1; | ||
+ kid = m_hotKeys.size() + 1; | ||
} | ||
|
||
// if this hot key has modifiers only then we'll handle it specially | ||
@@ -343,37 +343,37 @@ OSXScreen::registerHotKey(KeyID key, KeyModifierMask mask) | ||
okay = false; | ||
} | ||
else { | ||
- m_modifierHotKeys[mask] = id; | ||
+ m_modifierHotKeys[mask] = kid; | ||
okay = true; | ||
} | ||
} | ||
else { | ||
- EventHotKeyID hkid = { 'SNRG', (UInt32)id }; | ||
+ EventHotKeyID hkid = { 'SNRG', (UInt32)kid }; | ||
OSStatus status = RegisterEventHotKey(macKey, macMask, hkid, | ||
GetApplicationEventTarget(), 0, | ||
&ref); | ||
okay = (status == noErr); | ||
- m_hotKeyToIDMap[HotKeyItem(macKey, macMask)] = id; | ||
+ m_hotKeyToIDMap[HotKeyItem(macKey, macMask)] = kid; | ||
} | ||
|
||
if (!okay) { | ||
- m_oldHotKeyIDs.push_back(id); | ||
+ m_oldHotKeyIDs.push_back(kid); | ||
m_hotKeyToIDMap.erase(HotKeyItem(macKey, macMask)); | ||
LOG((CLOG_WARN "failed to register hotkey %s (id=%04x mask=%04x)", barrier::KeyMap::formatKey(key, mask).c_str(), key, mask)); | ||
return 0; | ||
} | ||
|
||
- m_hotKeys.insert(std::make_pair(id, HotKeyItem(ref, macKey, macMask))); | ||
+ m_hotKeys.insert(std::make_pair(kid, HotKeyItem(ref, macKey, macMask))); | ||
|
||
- LOG((CLOG_DEBUG "registered hotkey %s (id=%04x mask=%04x) as id=%d", barrier::KeyMap::formatKey(key, mask).c_str(), key, mask, id)); | ||
- return id; | ||
+ LOG((CLOG_DEBUG "registered hotkey %s (id=%04x mask=%04x) as id=%d", barrier::KeyMap::formatKey(key, mask).c_str(), key, mask, kid)); | ||
+ return kid; | ||
} | ||
|
||
void | ||
-OSXScreen::unregisterHotKey(UInt32 id) | ||
+OSXScreen::unregisterHotKey(UInt32 kid) | ||
{ | ||
// look up hotkey | ||
- HotKeyMap::iterator i = m_hotKeys.find(id); | ||
+ HotKeyMap::iterator i = m_hotKeys.find(kid); | ||
if (i == m_hotKeys.end()) { | ||
return; | ||
} | ||
@@ -388,7 +388,7 @@ OSXScreen::unregisterHotKey(UInt32 id) | ||
// XXX -- this is inefficient | ||
for (ModifierHotKeyMap::iterator j = m_modifierHotKeys.begin(); | ||
j != m_modifierHotKeys.end(); ++j) { | ||
- if (j->second == id) { | ||
+ if (j->second == kid) { | ||
m_modifierHotKeys.erase(j); | ||
okay = true; | ||
break; | ||
@@ -396,17 +396,17 @@ OSXScreen::unregisterHotKey(UInt32 id) | ||
} | ||
} | ||
if (!okay) { | ||
- LOG((CLOG_WARN "failed to unregister hotkey id=%d", id)); | ||
+ LOG((CLOG_WARN "failed to unregister hotkey id=%d", kid)); | ||
} | ||
else { | ||
- LOG((CLOG_DEBUG "unregistered hotkey id=%d", id)); | ||
+ LOG((CLOG_DEBUG "unregistered hotkey id=%d", kid)); | ||
} | ||
|
||
// discard hot key from map and record old id for reuse | ||
m_hotKeyToIDMap.erase(i->second); | ||
m_hotKeys.erase(i); | ||
- m_oldHotKeyIDs.push_back(id); | ||
- if (m_activeModifierHotKey == id) { | ||
+ m_oldHotKeyIDs.push_back(kid); | ||
+ if (m_activeModifierHotKey == kid) { | ||
m_activeModifierHotKey = 0; | ||
m_activeModifierHotKeyMask = 0; | ||
} | ||
@@ -1445,8 +1445,8 @@ OSXScreen::getScrollSpeed() const | ||
kCFPreferencesCurrentUser, | ||
kCFPreferencesAnyHost); | ||
if (pref != NULL) { | ||
- CFTypeID id = CFGetTypeID(pref); | ||
- if (id == CFNumberGetTypeID()) { | ||
+ CFTypeID tid = CFGetTypeID(pref); | ||
+ if (tid == CFNumberGetTypeID()) { | ||
CFNumberRef value = static_cast<CFNumberRef>(pref); | ||
if (CFNumberGetValue(value, kCFNumberDoubleType, &scaling)) { | ||
if (scaling < 0.0) { | ||
-- | ||
2.47.1 | ||
|
26 changes: 26 additions & 0 deletions
26
aqua/barrier/files/0004-basic_types.h-pull-in-cstdint-only-with-C.patch
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,26 @@ | ||
From a503785ef27a5cf28a954d564d39d0707e7bb225 Mon Sep 17 00:00:00 2001 | ||
From: Sergey Fedorov <[email protected]> | ||
Date: Sat, 7 Dec 2024 20:33:05 +0800 | ||
Subject: [PATCH 4/4] basic_types.h: pull in cstdint only with C++ | ||
|
||
--- | ||
src/lib/common/basic_types.h | 2 ++ | ||
1 file changed, 2 insertions(+) | ||
|
||
diff --git src/lib/common/basic_types.h src/lib/common/basic_types.h | ||
index 1882e57e..33623c94 100644 | ||
--- src/lib/common/basic_types.h | ||
+++ src/lib/common/basic_types.h | ||
@@ -18,7 +18,9 @@ | ||
|
||
#pragma once | ||
|
||
+#ifdef __cpluplus | ||
#include <cstdint> | ||
+#endif | ||
|
||
// | ||
// make typedefs | ||
-- | ||
2.47.1 | ||
|