Andreas Kling
85674aa498
WindowServer: Don't deliver the same mouse event twice.
...
We were sometimes delivering the same mouse event twice to the active input
window. This happened because we had already delivered it via the automatic
cursor tracking mechanism.
2019-07-13 11:50:39 +02:00
Robin Burchell
6c4024c04a
Kernel: First cut of a sb16 driver
...
Also add an AudioServer that (right now) doesn't do much.
It tries to open, parse, and play a wav file. In the future, it can do more.
My general thinking here here is that /dev/audio will be "owned" by AudioServer,
and we'll do mixing in software before passing buffers off to the kernel
to play, but we have to start somewhere.
2019-07-13 08:00:24 +02:00
Robin Burchell
8a1a9e78d7
WSWindowManager: Ensure that we pick a single window to deliver a full stream of events to
...
This is effectively a mouse grab except that we don't require any client
coordination to request it (which is probably OK, and certainly a lot
simpler to implement).
This prevents e.g. dragging the mouse cursor out of paint and over the
terminal from selecting text unexpectedly.
2019-07-12 18:19:45 +02:00
Andreas Kling
64d9b43734
WindowServer: Use CProcessStatisticsReader in WSCPUMonitor.
2019-07-10 15:22:44 +02:00
Andreas Kling
1791ebaacd
WindowServer: Convert dbgprintf() in WSWindowManager to dbg().
...
Here goes the first trial run for the new LogStream mechanism.
I like it so far. :^)
2019-07-04 07:07:40 +02:00
Andreas Kling
27f699ef0c
AK: Rename the common integer typedefs to make it obvious what they are.
...
These types can be picked up by including <AK/Types.h>:
* u8, u16, u32, u64 (unsigned)
* i8, i16, i32, i64 (signed)
2019-07-03 21:20:13 +02:00
Andreas Kling
575acfac98
WindowServer: Add a separator before "close" in window menus.
2019-06-30 15:59:11 +02:00
VAN BOSSUYT Nicolas
802d4dcb6b
Meta: Removed all gitignore in the source tree only keeping the root one
2019-06-30 10:41:26 +02:00
Andreas Kling
315716d193
GUI: Use Win2K-like "warm gray" color instead of the older colder gray.
...
Someone suggested this a long time ago and I never got around to it.
So here we go, here's the warm gray! I have to admit I like it better. :^)
2019-06-30 09:23:16 +02:00
Andreas Kling
14b51253c0
WindowServer: Allow changing window opacity with Logo+MouseWheel.
...
This is just a silly little feature that I thought was a bit neat. :^)
2019-06-29 09:27:55 +02:00
Andreas Kling
2bd8118843
Kernel: Change the format of /proc/all to JSON.
...
Update ProcessManager, top and WSCPUMonitor to handle the new format.
Since the kernel is not allowed to use floating-point math, we now compile
the JSON classes in AK without JsonValue::Type::Double support.
To accomodate large unsigned ints, I added a JsonValue::Type::UnsignedInt.
2019-06-29 09:04:45 +02:00
Andreas Kling
872cccb8f7
WindowServer: Make use of the new Vector(initializer_list).
2019-06-28 20:21:28 +02:00
Andreas Kling
5980007e44
Userland: Fix many compiler warnings.
2019-06-22 15:47:08 +02:00
Andreas Kling
0deade2883
WindowServer: Fix compiler warnings.
2019-06-22 14:49:01 +02:00
Andreas Kling
550b0b062b
AK: Rename RetainPtr.h => RefPtr.h, Retained.h => NonnullRefPtr.h.
2019-06-21 18:45:59 +02:00
Andreas Kling
c26e3ce86b
Change "retain" to "ref" in various comments.
2019-06-21 18:40:24 +02:00
Andreas Kling
90b1354688
AK: Rename RetainPtr => RefPtr and Retained => NonnullRefPtr.
2019-06-21 18:37:47 +02:00
Andreas Kling
77b9fa89dd
AK: Rename Retainable => RefCounted.
...
(And various related renames that go along with it.)
2019-06-21 15:30:03 +02:00
Andreas Kling
ef1bfcb9d8
WindowServer: Move some event code from WSWindowManager to WSMenuBarKeeper.
2019-06-21 15:02:11 +02:00
Andreas Kling
ede598589a
WindowServer: Make most of WSMenuBarKeeper private.
...
The outside world doesn't need to know about all this stuff.
2019-06-21 11:12:45 +02:00
Andreas Kling
2e9cc75d11
WindowServer+Taskbar: Let WindowServer manage the "window menus".
...
Taskbar now simply asks the WindowServer to popup a window menu when right
clicking on a taskbar button.
This patch also implements the "close" menu item, and furthermore makes the
window menu show up when you left-click a window's titlebar icon. :^)
2019-06-21 11:03:43 +02:00
Andreas Kling
9ac17c7bc9
WindowServer: Render the global menubar into a separate WSWindow.
...
Previously we were rendering the whole menubar on every compose(),
even if nothing changed about it. Now it's in its own window and can
be invalidated and painted separately.
2019-06-21 08:19:43 +02:00
Andreas Kling
8cb0c765ca
LookupServer: Use a CFile for loading /etc/hosts.
...
This fixes an issue with the lines having extra bytes at the end due after
converting from ByteBuffer to String.
2019-06-20 21:48:33 +02:00
Andreas Kling
4080221547
WindowServer: Remove unused WSWindowManager::m_windows hash table.
2019-06-18 14:40:18 +02:00
Robin Burchell
862682b1bb
SystemServer: Shut down after 5 seconds if testmode=1 is set on the kernel command line
2019-06-16 14:33:59 +02:00
Robin Burchell
c52d553249
WindowServer: Add a shutdown option to the menu, rather than forcing terminal use
2019-06-16 12:25:30 +02:00
Andreas Kling
39d1a9ae66
Meta: Tweak .clang-format to not wrap braces after enums.
2019-06-07 17:13:23 +02:00
Andreas Kling
e09c3a1ae8
SystemServer: Run clang-format on everything.
2019-06-07 11:47:46 +02:00
Andreas Kling
8358833bc8
WindowServer: Run clang-format on everything.
2019-06-07 11:47:19 +02:00
Christopher Dumas
0491d34d0c
LookupServer: use /etc/hosts even for reverse lookups
2019-06-07 08:35:41 +02:00
Christopher Dumas
70a37f9a26
LookupServer: Load hostnames
2019-06-07 08:35:41 +02:00
Christopher Dumas
4f62176c3e
LookupServer: Clang-Format
2019-06-07 08:35:41 +02:00
Christopher Dumas
908d9458c7
WindowServer: New API for Scaled Blit
2019-06-06 18:35:00 +02:00
Christopher Dumas
90d924a97c
WindowServer: Implement scaled backgrounds and scaled blitting function
2019-06-06 18:35:00 +02:00
Christopher Dumas
c72953cf06
WindowServer: Clang-Format
2019-06-06 18:35:00 +02:00
Andreas Kling
01f1333856
LookupServer+LibC: Add support for reverse DNS lookups via gethostbyaddr().
...
LookupServer can now take two types of requests:
* L: Lookup
* R: Reverse lookup
The /bin/host program now does a reverse lookup if the input string is a
valid IPv4 address. :^)
2019-06-06 05:35:03 +02:00
Andreas Kling
3fa0b6cd92
WindowServer: Always update the maximize button icon when we should.
...
We were only updating it in the WSButton callback, not when changing the
maximized state by calling WSWindow::set_maximized().
Fixes #119 .
2019-06-02 15:35:00 +02:00
Robin Burchell
b55b6cd7fc
AK: Add implicit String -> StringView conversion
...
And tidy up existing view() users.
2019-06-02 12:55:51 +02:00
Andreas Kling
51581c21fc
WindowServer+LibGUI: Add a way to bring a window to the front.
...
GWindow::move_to_front() can now be used to move a window to the top of
the window stack.
We use this in Terminal to bring the settings window to the front if it
already exists when it's requested, in case it's hiding behind something.
2019-06-01 20:10:37 +02:00
Andreas Kling
8d7fbbe1fb
WindowServer: Don't reach the end of mode_to_enum() without returning.
2019-06-01 20:02:05 +02:00
Mustafa
a4726b846c
ls: Show user name and group name if available. ( #151 )
...
Fixes #150
2019-06-01 13:23:35 +02:00
Robin Burchell
d31ce9eccd
Misc: Add a simple init process
...
This doesn't do much right now, just fork off a bunch of stuff and set priorities.
2019-05-30 02:57:15 +02:00
Robin Burchell
0dc9af5f7e
Add clang-format file
...
Also run it across the whole tree to get everything using the One True Style.
We don't yet run this in an automated fashion as it's a little slow, but
there is a snippet to do so in makeall.sh.
2019-05-28 17:31:20 +02:00
Andreas Kling
cbd858544d
LibC: Move struct timeval to sys/time.h. #POSIX
2019-05-28 13:48:06 +02:00
Christopher Dumas
3e26faa226
removed extra impl of scaling
2019-05-27 21:40:53 +02:00
Christopher Dumas
da9c70598f
centered backgrounds are now an option
2019-05-27 21:40:53 +02:00
Christopher Dumas
c23882dde1
can now tile background and made sure the IRC choose server popup still works
2019-05-27 21:40:53 +02:00
Christopher Dumas
e3f81bce49
IRC client setttings, Terminal settings, more WM settings
2019-05-27 21:40:53 +02:00
Christopher Dumas
63486b8438
implemented settings for window manager.
2019-05-27 21:40:53 +02:00
Christopher Dumas
d4a16d6031
Network stack is now configurable, and resolution is also configurable, but loading cursors causes a page-fault?
2019-05-27 21:40:53 +02:00