Commit graph

5 commits

Author SHA1 Message Date
Andreas Kling
db98327bdc Plumb menu item activation events from WindowServer to clients.
GMenu now has an "on_item_activation" callback that fires whenever one
of its items are activated. The menu item identifier is used to distinguish
between items.

Use this to implement font switching in Terminal. :^)
2019-02-12 10:08:35 +01:00
Andreas Kling
c75ecaae32 Terminal: Move the notifier into the Terminal class. 2019-02-11 15:07:05 +01:00
Andreas Kling
052a101cc5 Terminal: Fix lagged full flush after scrolling the whole buffer.
Now that we're using the lazy rendering model of LibGUI, we can't wait until
paint_event() to decide how much we want to update. :^)
2019-02-10 14:47:09 +01:00
Andreas Kling
53d34a0885 Port Terminal to LibGUI.
To facilitate listening for action on arbitrary file descriptors,
I've added a GNotifier class. It's quite simple but very useful:

GNotifier notifier(fd, GNotifier::Read);
notifier.on_ready_to_read = [this] (GNotifier& fd) {
    // read from fd or whatever else you like :^)
};

The callback will get invoked by GEventLoop when select() says we
have something to read on the fd.
2019-02-10 14:28:39 +01:00
Andreas Kling
2cf1dd5b6f Move apps into a top-level Applications/ directory. 2019-02-10 08:35:01 +01:00
Renamed from Terminal/Terminal.cpp (Browse further)