diff options
author | Andreas Kling <awesomekling@gmail.com> | 2019-04-10 17:35:43 +0200 |
---|---|---|
committer | Andreas Kling <awesomekling@gmail.com> | 2019-04-10 17:35:43 +0200 |
commit | fc1d3074de27fbcd0bf07e61781850f628fba0f1 (patch) | |
tree | ef4f2e1e8d663aa8f31a9580ef5c05693093e891 | |
parent | b2542414d706d55a6c39dd538d0d532d33179e5c (diff) | |
download | serenity-fc1d3074de27fbcd0bf07e61781850f628fba0f1.zip |
LibCore: Move LibGUI/GNotifier to LibCore/CNotifier.
-rw-r--r-- | Applications/IRCClient/IRCClient.cpp | 6 | ||||
-rw-r--r-- | Applications/IRCClient/IRCClient.h | 4 | ||||
-rw-r--r-- | Applications/Terminal/Terminal.cpp | 6 | ||||
-rw-r--r-- | Applications/Terminal/Terminal.h | 4 | ||||
-rw-r--r-- | LibCore/CEventLoop.cpp | 20 | ||||
-rw-r--r-- | LibCore/CEventLoop.h | 8 | ||||
-rw-r--r-- | LibCore/CNotifier.cpp | 15 | ||||
-rw-r--r-- | LibCore/CNotifier.h (renamed from LibGUI/GNotifier.h) | 10 | ||||
-rw-r--r-- | LibCore/Makefile | 1 | ||||
-rw-r--r-- | LibGUI/GEventLoop.cpp | 2 | ||||
-rw-r--r-- | LibGUI/GEventLoop.h | 2 | ||||
-rw-r--r-- | LibGUI/GNotifier.cpp | 15 | ||||
-rw-r--r-- | LibGUI/GSocket.cpp | 8 | ||||
-rw-r--r-- | LibGUI/GSocket.h | 4 | ||||
-rw-r--r-- | LibGUI/Makefile | 1 |
15 files changed, 53 insertions, 53 deletions
diff --git a/Applications/IRCClient/IRCClient.cpp b/Applications/IRCClient/IRCClient.cpp index a48f5ca5ac..a6310789b6 100644 --- a/Applications/IRCClient/IRCClient.cpp +++ b/Applications/IRCClient/IRCClient.cpp @@ -4,7 +4,7 @@ #include "IRCLogBuffer.h" #include "IRCWindow.h" #include "IRCWindowListModel.h" -#include <LibGUI/GNotifier.h> +#include <LibCore/CNotifier.h> #include <sys/socket.h> #include <netinet/in.h> #include <arpa/inet.h> @@ -47,8 +47,8 @@ void IRCClient::set_server(const String &hostname, int port) void IRCClient::on_socket_connected() { - m_notifier = make<GNotifier>(m_socket->fd(), GNotifier::Read); - m_notifier->on_ready_to_read = [this] (GNotifier&) { receive_from_server(); }; + m_notifier = make<CNotifier>(m_socket->fd(), CNotifier::Read); + m_notifier->on_ready_to_read = [this] { receive_from_server(); }; send_user(); send_nick(); diff --git a/Applications/IRCClient/IRCClient.h b/Applications/IRCClient/IRCClient.h index 91522b729b..a493fd2975 100644 --- a/Applications/IRCClient/IRCClient.h +++ b/Applications/IRCClient/IRCClient.h @@ -11,7 +11,7 @@ class IRCChannel; class IRCQuery; class IRCWindowListModel; -class GNotifier; +class CNotifier; class IRCClient final : public CObject { friend class IRCChannel; @@ -118,7 +118,7 @@ private: String m_nickname; Vector<char> m_line_buffer; - OwnPtr<GNotifier> m_notifier; + OwnPtr<CNotifier> m_notifier; HashMap<String, RetainPtr<IRCChannel>> m_channels; HashMap<String, RetainPtr<IRCQuery>> m_queries; diff --git a/Applications/Terminal/Terminal.cpp b/Applications/Terminal/Terminal.cpp index 4fe66c6039..a8e6267858 100644 --- a/Applications/Terminal/Terminal.cpp +++ b/Applications/Terminal/Terminal.cpp @@ -19,7 +19,7 @@ Terminal::Terminal(int ptm_fd) : m_ptm_fd(ptm_fd) - , m_notifier(ptm_fd, GNotifier::Read) + , m_notifier(ptm_fd, CNotifier::Read) { m_cursor_blink_timer.set_interval(500); m_cursor_blink_timer.on_timeout = [this] { @@ -28,9 +28,9 @@ Terminal::Terminal(int ptm_fd) }; set_font(Font::default_fixed_width_font()); - m_notifier.on_ready_to_read = [this] (GNotifier& notifier) { + m_notifier.on_ready_to_read = [this]{ byte buffer[BUFSIZ]; - ssize_t nread = read(notifier.fd(), buffer, sizeof(buffer)); + ssize_t nread = read(m_ptm_fd, buffer, sizeof(buffer)); if (nread < 0) { dbgprintf("Terminal read error: %s\n", strerror(errno)); perror("read(ptm)"); diff --git a/Applications/Terminal/Terminal.h b/Applications/Terminal/Terminal.h index f13eab22e6..3fedf44bdf 100644 --- a/Applications/Terminal/Terminal.h +++ b/Applications/Terminal/Terminal.h @@ -6,7 +6,7 @@ #include <SharedGraphics/GraphicsBitmap.h> #include <SharedGraphics/Rect.h> #include <LibGUI/GWidget.h> -#include <LibGUI/GNotifier.h> +#include <LibCore/CNotifier.h> #include <LibGUI/GTimer.h> class Font; @@ -152,7 +152,7 @@ private: bool m_in_active_window { false }; bool m_need_full_flush { false }; - GNotifier m_notifier; + CNotifier m_notifier; float m_opacity { 1 }; bool m_needs_background_fill { true }; diff --git a/LibCore/CEventLoop.cpp b/LibCore/CEventLoop.cpp index d7b474d276..d18da8fc65 100644 --- a/LibCore/CEventLoop.cpp +++ b/LibCore/CEventLoop.cpp @@ -1,7 +1,7 @@ #include <LibCore/CObject.h> #include <LibCore/CEventLoop.h> #include <LibCore/CEvent.h> -#include <LibGUI/GNotifier.h> +#include <LibCore/CNotifier.h> #include <LibC/unistd.h> #include <LibC/stdio.h> #include <LibC/fcntl.h> @@ -19,7 +19,7 @@ static CEventLoop* s_main_event_loop; static Vector<CEventLoop*>* s_event_loop_stack; HashMap<int, OwnPtr<CEventLoop::EventLoopTimer>>* CEventLoop::s_timers; -HashTable<GNotifier*>* CEventLoop::s_notifiers; +HashTable<CNotifier*>* CEventLoop::s_notifiers; int CEventLoop::s_next_timer_id = 1; CEventLoop::CEventLoop() @@ -27,7 +27,7 @@ CEventLoop::CEventLoop() if (!s_event_loop_stack) { s_event_loop_stack = new Vector<CEventLoop*>; s_timers = new HashMap<int, OwnPtr<CEventLoop::EventLoopTimer>>; - s_notifiers = new HashTable<GNotifier*>; + s_notifiers = new HashTable<CNotifier*>; } if (!s_main_event_loop) { @@ -153,11 +153,11 @@ void CEventLoop::wait_for_event() add_file_descriptors_for_select(rfds, max_fd_added); max_fd = max(max_fd, max_fd_added); for (auto& notifier : *s_notifiers) { - if (notifier->event_mask() & GNotifier::Read) + if (notifier->event_mask() & CNotifier::Read) add_fd_to_set(notifier->fd(), rfds); - if (notifier->event_mask() & GNotifier::Write) + if (notifier->event_mask() & CNotifier::Write) add_fd_to_set(notifier->fd(), wfds); - if (notifier->event_mask() & GNotifier::Exceptional) + if (notifier->event_mask() & CNotifier::Exceptional) ASSERT_NOT_REACHED(); } @@ -189,11 +189,11 @@ void CEventLoop::wait_for_event() for (auto& notifier : *s_notifiers) { if (FD_ISSET(notifier->fd(), &rfds)) { if (notifier->on_ready_to_read) - notifier->on_ready_to_read(*notifier); + notifier->on_ready_to_read(); } if (FD_ISSET(notifier->fd(), &wfds)) { if (notifier->on_ready_to_write) - notifier->on_ready_to_write(*notifier); + notifier->on_ready_to_write(); } } @@ -250,12 +250,12 @@ bool CEventLoop::unregister_timer(int timer_id) return true; } -void CEventLoop::register_notifier(Badge<GNotifier>, GNotifier& notifier) +void CEventLoop::register_notifier(Badge<CNotifier>, CNotifier& notifier) { s_notifiers->set(¬ifier); } -void CEventLoop::unregister_notifier(Badge<GNotifier>, GNotifier& notifier) +void CEventLoop::unregister_notifier(Badge<CNotifier>, CNotifier& notifier) { s_notifiers->remove(¬ifier); } diff --git a/LibCore/CEventLoop.h b/LibCore/CEventLoop.h index 2de219c5cd..9f97461711 100644 --- a/LibCore/CEventLoop.h +++ b/LibCore/CEventLoop.h @@ -10,7 +10,7 @@ class CEvent; class CObject; -class GNotifier; +class CNotifier; class CEventLoop { public: @@ -29,8 +29,8 @@ public: static int register_timer(CObject&, int milliseconds, bool should_reload); static bool unregister_timer(int timer_id); - static void register_notifier(Badge<GNotifier>, GNotifier&); - static void unregister_notifier(Badge<GNotifier>, GNotifier&); + static void register_notifier(Badge<CNotifier>, CNotifier&); + static void unregister_notifier(Badge<CNotifier>, CNotifier&); void quit(int); @@ -72,5 +72,5 @@ private: static HashMap<int, OwnPtr<EventLoopTimer>>* s_timers; static int s_next_timer_id; - static HashTable<GNotifier*>* s_notifiers; + static HashTable<CNotifier*>* s_notifiers; }; diff --git a/LibCore/CNotifier.cpp b/LibCore/CNotifier.cpp new file mode 100644 index 0000000000..59c2a460fe --- /dev/null +++ b/LibCore/CNotifier.cpp @@ -0,0 +1,15 @@ +#include <LibCore/CNotifier.h> +#include <LibGUI/GEventLoop.h> + +CNotifier::CNotifier(int fd, unsigned event_mask) + : m_fd(fd) + , m_event_mask(event_mask) +{ + GEventLoop::register_notifier(Badge<CNotifier>(), *this); +} + +CNotifier::~CNotifier() +{ + GEventLoop::unregister_notifier(Badge<CNotifier>(), *this); +} + diff --git a/LibGUI/GNotifier.h b/LibCore/CNotifier.h index 6876c481f4..baa3532b92 100644 --- a/LibGUI/GNotifier.h +++ b/LibCore/CNotifier.h @@ -2,7 +2,7 @@ #include <AK/Function.h> -class GNotifier { +class CNotifier { public: enum Event { None = 0, @@ -10,11 +10,11 @@ public: Write = 2, Exceptional = 4, }; - GNotifier(int fd, unsigned event_mask); - ~GNotifier(); + CNotifier(int fd, unsigned event_mask); + ~CNotifier(); - Function<void(GNotifier&)> on_ready_to_read; - Function<void(GNotifier&)> on_ready_to_write; + Function<void()> on_ready_to_read; + Function<void()> on_ready_to_write; int fd() const { return m_fd; } unsigned event_mask() const { return m_event_mask; } diff --git a/LibCore/Makefile b/LibCore/Makefile index 2d90c6b16b..35a08edc3b 100644 --- a/LibCore/Makefile +++ b/LibCore/Makefile @@ -1,5 +1,6 @@ OBJS = \ CElapsedTimer.o \ + CNotifier.o \ CObject.o \ CEventLoop.o \ CEvent.o diff --git a/LibGUI/GEventLoop.cpp b/LibGUI/GEventLoop.cpp index 8e1bc69bc0..a7502c0b7e 100644 --- a/LibGUI/GEventLoop.cpp +++ b/LibGUI/GEventLoop.cpp @@ -4,7 +4,7 @@ #include "GWindow.h" #include <LibGUI/GApplication.h> #include <LibGUI/GAction.h> -#include <LibGUI/GNotifier.h> +#include <LibCore/CNotifier.h> #include <LibGUI/GMenu.h> #include <LibGUI/GDesktop.h> #include <LibC/unistd.h> diff --git a/LibGUI/GEventLoop.h b/LibGUI/GEventLoop.h index bf09c4d401..3ee1dfc1fc 100644 --- a/LibGUI/GEventLoop.h +++ b/LibGUI/GEventLoop.h @@ -6,7 +6,7 @@ class GAction; class CObject; -class GNotifier; +class CNotifier; class GWindow; class GEventLoop final : public CEventLoop { diff --git a/LibGUI/GNotifier.cpp b/LibGUI/GNotifier.cpp deleted file mode 100644 index 649cc84bcc..0000000000 --- a/LibGUI/GNotifier.cpp +++ /dev/null @@ -1,15 +0,0 @@ -#include <LibGUI/GNotifier.h> -#include <LibGUI/GEventLoop.h> - -GNotifier::GNotifier(int fd, unsigned event_mask) - : m_fd(fd) - , m_event_mask(event_mask) -{ - GEventLoop::register_notifier(Badge<GNotifier>(), *this); -} - -GNotifier::~GNotifier() -{ - GEventLoop::unregister_notifier(Badge<GNotifier>(), *this); -} - diff --git a/LibGUI/GSocket.cpp b/LibGUI/GSocket.cpp index b1a1f4797d..6b088e2dbe 100644 --- a/LibGUI/GSocket.cpp +++ b/LibGUI/GSocket.cpp @@ -1,5 +1,5 @@ #include <LibGUI/GSocket.h> -#include <LibGUI/GNotifier.h> +#include <LibCore/CNotifier.h> #include <sys/socket.h> #include <netinet/in.h> #include <arpa/inet.h> @@ -53,11 +53,11 @@ bool GSocket::connect(const GSocketAddress& address, int port) if (rc < 0) { if (errno == EINPROGRESS) { printf("in progress.\n"); - m_notifier = make<GNotifier>(fd(), GNotifier::Event::Write); - m_notifier->on_ready_to_write = [this] (GNotifier&) { + m_notifier = make<CNotifier>(fd(), CNotifier::Event::Write); + m_notifier->on_ready_to_write = [this] { printf("%s{%p} connected!\n", class_name(), this); m_connected = true; - m_notifier->set_event_mask(GNotifier::Event::None); + m_notifier->set_event_mask(CNotifier::Event::None); if (on_connected) on_connected(); }; diff --git a/LibGUI/GSocket.h b/LibGUI/GSocket.h index f9501eab3f..697845d2d1 100644 --- a/LibGUI/GSocket.h +++ b/LibGUI/GSocket.h @@ -3,7 +3,7 @@ #include <LibGUI/GIODevice.h> #include <LibGUI/GSocketAddress.h> -class GNotifier; +class CNotifier; class GSocket : public GIODevice { public: @@ -40,5 +40,5 @@ protected: private: virtual bool open(GIODevice::OpenMode) override { ASSERT_NOT_REACHED(); } Type m_type { Type::Invalid }; - OwnPtr<GNotifier> m_notifier; + OwnPtr<CNotifier> m_notifier; }; diff --git a/LibGUI/Makefile b/LibGUI/Makefile index 37b21c6e62..b687153aa8 100644 --- a/LibGUI/Makefile +++ b/LibGUI/Makefile @@ -17,7 +17,6 @@ LIBGUI_OBJS = \ GEventLoop.o \ GLabel.o \ GListBox.o \ - GNotifier.o \ GTextBox.o \ GScrollBar.o \ GStatusBar.o \ |