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
Robin Burchell
9b86eb9fad
WSCompositor: Allow a compose to bypass the timer when it first happens
...
d66fa60fcf
introduced the use of a timer
to coalesce screen updates. This is OK, but it does introduce update
latency.
To help mitigate the impact of this, we now have a second (immediate)
timer. When a compose pass is first triggered, the immediate timer will
allow the compose to happen on the next spin of the event loop (so, only
coalescing updates across a single event loop pass). Any updates that
trigger while the delayed timer is running, though, will be delayed to
that (~60fps) timer.
This fixes #103 .
2019-05-26 18:22:33 +02:00
Robin Burchell
d66fa60fcf
WSCompositor: Use a timer to schedule compose rather than an event
...
Really poor man's vsync. Still not actual vsync, but at least we won't
constantly spin buffers if we get many dirty rects.
2019-05-26 04:10:05 +02:00
Robin Burchell
79dba9a545
WSEventLoop: Don't assert when being told to construct a crazy window type
...
Seriously non-cool :(
2019-05-26 03:41:53 +02:00
Andreas Kling
41ebb3eba3
WindowServer: Tweak window titlebar look somewhat.
...
Add a subtle shadow to the titlebar text. Also make the titlebar one pixel
taller to fully accomodate the 90s "3D frame" effect. :^)
2019-05-25 21:55:53 +02:00
Andreas Kling
34150f0836
WindowServer: Remove unused old "middle border" color.
2019-05-25 21:19:42 +02:00
Andreas Kling
e478a2fb0a
WindowServer: Don't draw titlebar separator for titlebar-less windows.
2019-05-25 04:17:21 +02:00
Christopher Dumas
957f8b84f2
WindowServer: Make it possible to turn off window title bars ( #88 )
...
Also, Launcher now does not use titlebars.
Only check if titlebar should be shown if the window type works with that.
2019-05-24 23:37:23 +02:00
Andreas Kling
d0bc21b96f
WindowServer: Remove some unused WSWindowManager members.
2019-05-24 21:11:55 +02:00
Christopher Dumas
dd84dcf31f
Launcher loads applications from Launcher.ini, is started by default, and is resized automatically
...
Co-Authored-By: Andreas Kling <awesomekling@gmail.com>
2019-05-24 20:40:09 +02:00
Andreas Kling
ad908f1395
WindowServer: Factor out compositing from WSWindowManager into WSCompositor.
...
This is far from finished and the two classes are awkwardly grabbing at each
other's innards, but here's a first step in the right direction.
2019-05-24 19:32:46 +02:00
Andreas Kling
abbcdba72e
WindowServer: Add 2560x1440 resolution option.
...
Also expand the QEMU VGA memory size to 64 MB, since otherwise we won't
have enough memory for double-buffering the screen.
2019-05-24 14:02:17 +02:00
Robin Burchell
9aa9454c6b
WindowServer: Don't eat a MouseUp when producing a MouseDoubleClick
...
Otherwise, double clicking a button will leave it in pressed state.
2019-05-21 16:43:56 +02:00