Age | Commit message (Collapse) | Author |
|
It was a tad too bright. Also make sure we're using the same color in
all the different places. At some point it would be nice to improve global
color settings, etc.
|
|
It should only be visible when we have the process table open.
|
|
|
|
We're going to be using dedicated server socket classes instead.
This was only implemented for CLocalSocket, and clients have been switched
over to using CLocalServer.
|
|
Use CLocalServer to listen for connections in WindowServer and AudioServer.
This allows us to accept incoming CLocalSocket objects from the CLocalServer
and construct client connections based on those.
Removed COpenedSocket since it's replaced by CLocalSocket.
|
|
|
|
This callback uses a CNotifier internally and will fire whenever there's
something to be read from the socket.
|
|
This will allow subclasses to react when the file descriptor changes.
|
|
|
|
Instead of trying to support both client and server in CLocalSocket, let's
have a specialized server class.
The basic usage is:
CLocalServer server;
server.listen("/tmp/name-of-portal");
server.on_ready_to_accept = [&] {
CLocalSocket* client = server.accept();
...
};
This will make things a lot simpler, since an accepting socket doesn't need
half of the stuff that a regular CIODevice provides. :^)
|
|
To start out, add a "Stacks" view where we see what the selected process is
currently doing (via /proc/PID/stack) :^)
|
|
This will be useful for doing something in response to the user selecting
a different process.
|
|
If we don't have the fixed size policy for the first resizee, the layout
system will just ignore the preferred sizes that we're giving it.
|
|
This is implemented as a bool member in CObject, not a virtual.
|
|
This allows you to set the policy for a single orientation rather than
both at the same time.
|
|
Since ChildAdded events originate from the CObject constructor, they are not
fully constructed when their parent learns that they were added.
Added a little comment about this to the child_event() declaration.
|
|
Making space for some new thingy under the process table view.
|
|
|
|
|
|
These will be useful for implementing server sockets.
|
|
|
|
Make GWindow::close() so we can override it in GDialog and quit from the
internal event loop when the window manager tells us to close ourselves.
The dialog will return GDialog::ExecCancel in these situations.
|
|
|
|
|
|
|
|
I'm still getting the hang of this CMake thing.
|
|
|
|
|
|
We forgot to persist our actions in the constructor for later reference, whoops.
Also use the correct path in the "open" action.
|
|
This makes assertion failures generate backtraces again. Sorry to everyone
who suffered from the lack of backtraces lately. :^)
We share code with the /proc/PID/stack implementation. You can now get the
current backtrace for a Thread via Thread::backtrace(), and all the traces
for a Process via Process::backtrace().
|
|
This macro goes at the top of every CObject-derived class like so:
class SomeClass : public CObject {
C_OBJECT(SomeClass)
public:
...
At the moment, all it does is create an override for the class_name() getter
but in the future this will be used to automatically insert member functions
into these classes.
|
|
If we had already processed a couple of queued events by the time we were
told to un-nest the event loop, we'd put the entire current batch at the
head of the outer queue. This meant that we might end up trying to process
the same events multiple times.
Let's not do that. :^)
|
|
It was kinda unpleasant to always see "So-and-so exited with status 123."
|
|
This one is a bit mysterious. I can't find any authoritative answer on what
the correct behavior is, but it seems reasonable to me that free() doesn't
step on errno, since it returns "void" and thus the caller won't know to
inspect errno anyway.
|
|
|
|
This can be used if you change your mind about what value we should roll
back to. :^)
|
|
|
|
Qt had a pretty good name for this concept, so let's steal it. :^)
|
|
Now that everything in AK is buildable, we can just build all of it. :^)
|
|
This is pretty ugly but I don't want to *not* use open_with_path_length()
so let's just shim it.
|
|
|
|
|
|
|
|
The C++ facilities of Serenity are getting pretty comfortable, and I'd like
to take them with me to projects outside the system.
Let's make it a bit easier to do that by bundling AK and LibCore (for now)
into a portable library called "Lagom". :^)
|
|
Clang loses the typestate when passing NonnullRefPtr's via lambda captures.
This is unfortunate, but not much we can do about it. Allowing ptr() makes
it possible to use captured NonnullRefPtrs as you'd expect.
|
|
|
|
|
|
|
|
Add an "ElementType" typedef to NonnullOwnPtr and NonnullRefPtr to allow
clients to easily find the pointee type. Then use this to remove a template
argument from NonnullPtrVector. :^)
|
|
These can just inherit from a shared base template. Thanks to Robin for the
sweet idea :^)
|