Add application-scoped snippets with global fallback and scope-aware sync

This commit is contained in:
agrynco committed 2026-11-06 10:37:01 +02:00
1 parent c18148a574
commit a124e030ab
10 files changed
+215 -18

No files matched your search

+15
View File
@@ -6,6 +6,21 @@
namespace ks
{
std::wstring snippetAppName(std::wstring name)
{
auto first = name.find_first_not_of(L" \t"), last = name.find_last_not_of(L" \t");
if (first == name.npos) return {};
name = lower(name.substr(first, last - first + 1));
if (name.ends_with(L".exe")) name.resize(name.size() - 4);
return name;
}
int snippetAppPriority(const Snippet &snippet, const std::wstring &process)
{
if (snippet.apps.empty()) return 1;
auto name = snippetAppName(process);
for (const auto &app : snippet.apps) if (snippetAppName(app) == name && !name.empty()) return 2;
return 0;
}
int HotkeyHook::update(UINT key, bool down, UINT modifiers,
const std::vector<std::pair<int, Hotkey>> &bindings)
{