Commit graph

18 commits

Author SHA1 Message Date
Andreas Kling
fa69b9fbb7 IRCClient: Switch to using an HtmlView for the IRC window contents :^)
This seemed like a perfect fit for LibHTML. We can now style the IRC
channels and queries however we like with the power of HTML and CSS.

This patch doesn't do much in the way of styling, it just gets the
basic mechanism into place.
2019-10-28 20:53:19 +01:00
Andreas Kling
4f4438c04c LibGUI: Convert GSplitter to ObjectPtr 2019-09-21 16:11:02 +02:00
Andreas Kling
e7b55037f4 LibGUI: Convert GTableView to ObjectPtr 2019-09-21 16:03:59 +02:00
Andreas Kling
93851c3832 LibGUI: Convert GTextBox, GTextEditor and GResizeCorner to ObjectPtr 2019-09-21 15:46:47 +02:00
Andreas Kling
75eb84c7e4 IRCClient: Size columns to-fit in the window and member views 2019-09-04 19:07:59 +02:00
Andreas Kling
aa2224a2f0 GWidget: Add set_preferred_size(width, height) overload.
It was annoying to always write set_preferred_size({ width, height }). :^)
2019-07-20 22:39:24 +02:00
Andreas Kling
fd604a7c68 Applications: Run clang-format on everything. 2019-06-07 11:48:03 +02:00
Andreas Kling
fa232ac180 LibGUI: Remove GModel activations to GAbstractView.
Now you can hook activation via GAbstractView::on_activation.
The design still isn't quite right, we should eventually move the selection
away from the model somehow.
2019-05-09 04:56:52 +02:00
Andreas Kling
313ac51832 LibGUI: Turn GTextBox into a wrapper around a single-line GTextEditor. 2019-04-10 03:08:29 +02:00
Andreas Kling
74786f2d5a IRCClient: Use GSplitter in the window layouts.
This really brings the UI to life in a pleasant way. It's a bit annoying
that you can't initiate a resize by clicking on the shading of a splitter
resizer that actually belongs to the neighboring GFrame, I'm not sure how
to fix that yet but I'll think of something.
2019-03-30 13:57:34 +01:00
Andreas Kling
34118aaaca IRCClient: Tweak size of window input boxes.
Now that GTextEditor is a GFrame, we need to make some room here for the
frame around the editor. :^)
2019-03-29 03:06:07 +01:00
Andreas Kling
951377e93e GTableView: Add ability to hide individual columns at view-level.
Use this in IRCClient to hide the "sender" column in the server message view
since everything in that view comes from the "Server" anyway.
2019-03-20 13:36:07 +01:00
Andreas Kling
f47945759b LibGUI: Make GTableModel a retainable object.
It became clear that this class needs to support multiple owners.
2019-03-20 03:27:07 +01:00
Andreas Kling
d0559c0e27 IRCClient: Scroll windows to bottom when new messages arrive.
This will need some tweaking to feel truly good, but this is already
better than just staying at the top while messages come in.
2019-03-19 03:09:51 +01:00
Andreas Kling
a0411f61f8 IRCClient: Make the IRCWindow input box look symmetrical. 2019-03-19 02:45:01 +01:00
Andreas Kling
b4f787090c IRCClient: Add a little "(n)" indicator to window list for unread messages. 2019-03-16 02:14:53 +01:00
Andreas Kling
1394677528 IRCClient: Refactor window creation responsibilities.
IRCChannel and IRCQuery objects now create their own windows with the
help of an aid_create_window callback provided by IRCAppWindow.

There's still a bit of murk but this is already an improvement.
2019-03-16 01:45:49 +01:00
Andreas Kling
fc7f700c20 IRCClient: Rename IRCClientWindowFoo => IRCWindowFoo. 2019-03-16 01:15:19 +01:00
Renamed from Applications/IRCClient/IRCClientWindow.cpp (Browse further)