summaryrefslogtreecommitdiff
path: root/Applications
diff options
context:
space:
mode:
authorAndreas Kling <awesomekling@gmail.com>2019-04-24 02:20:38 +0200
committerAndreas Kling <awesomekling@gmail.com>2019-04-24 02:20:38 +0200
commitf7a23f36687d5102f0d5c5e5366edd9e0f31d1d1 (patch)
tree3bdf51584596fc16638e2432d3f8b419c4ed72a8 /Applications
parentca9ed13643246911bdad7a34494b0420c740da7a (diff)
downloadserenity-f7a23f36687d5102f0d5c5e5366edd9e0f31d1d1.zip
Taskbar: Forgot to add WindowIdentifier.h.
Diffstat (limited to 'Applications')
-rw-r--r--Applications/Taskbar/WindowIdentifier.h32
1 files changed, 32 insertions, 0 deletions
diff --git a/Applications/Taskbar/WindowIdentifier.h b/Applications/Taskbar/WindowIdentifier.h
new file mode 100644
index 0000000000..afed91a288
--- /dev/null
+++ b/Applications/Taskbar/WindowIdentifier.h
@@ -0,0 +1,32 @@
+#pragma once
+
+#include <AK/Traits.h>
+#include <AK/kstdio.h>
+
+class WindowIdentifier {
+public:
+ WindowIdentifier(int client_id, int window_id)
+ : m_client_id(client_id)
+ , m_window_id(window_id)
+ {
+ }
+
+ int client_id() const { return m_client_id; }
+ int window_id() const { return m_window_id; }
+
+ bool operator==(const WindowIdentifier& other) const
+ {
+ return m_client_id == other.m_client_id && m_window_id == other.m_window_id;
+ }
+private:
+ int m_client_id { -1 };
+ int m_window_id { -1 };
+};
+
+namespace AK {
+template<>
+struct Traits<WindowIdentifier> {
+ static unsigned hash(const WindowIdentifier& w) { return pair_int_hash(w.client_id(), w.window_id()); }
+ static void dump(const WindowIdentifier& w) { kprintf("WindowIdentifier(%d, %d)", w.client_id(), w.window_id()); }
+};
+}