summaryrefslogtreecommitdiff
path: root/Servers
AgeCommit message (Collapse)Author
2019-06-02AK: Add implicit String -> StringView conversionRobin Burchell
And tidy up existing view() users.
2019-06-01WindowServer+LibGUI: Add a way to bring a window to the front.Andreas Kling
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-01WindowServer: Don't reach the end of mode_to_enum() without returning.Andreas Kling
2019-06-01ls: Show user name and group name if available. (#151)Mustafa
Fixes #150
2019-05-30Misc: Add a simple init processRobin Burchell
This doesn't do much right now, just fork off a bunch of stuff and set priorities.
2019-05-28Add clang-format fileRobin Burchell
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-28LibC: Move struct timeval to sys/time.h. #POSIXAndreas Kling
2019-05-27removed extra impl of scalingChristopher Dumas
2019-05-27centered backgrounds are now an optionChristopher Dumas
2019-05-27can now tile background and made sure the IRC choose server popup still worksChristopher Dumas
2019-05-27IRC client setttings, Terminal settings, more WM settingsChristopher Dumas
2019-05-27implemented settings for window manager.Christopher Dumas
2019-05-27Network stack is now configurable, and resolution is also configurable, but ↵Christopher Dumas
loading cursors causes a page-fault?
2019-05-26WSCompositor: Allow a compose to bypass the timer when it first happensRobin Burchell
d66fa60fcf23fa7217a065479af6b1f5a851a506 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-26WSCompositor: Use a timer to schedule compose rather than an eventRobin Burchell
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-26WSEventLoop: Don't assert when being told to construct a crazy window typeRobin Burchell
Seriously non-cool :(
2019-05-25WindowServer: Tweak window titlebar look somewhat.Andreas Kling
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-25WindowServer: Remove unused old "middle border" color.Andreas Kling
2019-05-25WindowServer: Don't draw titlebar separator for titlebar-less windows.Andreas Kling
2019-05-24WindowServer: Make it possible to turn off window title bars (#88)Christopher Dumas
Also, Launcher now does not use titlebars. Only check if titlebar should be shown if the window type works with that.
2019-05-24WindowServer: Remove some unused WSWindowManager members.Andreas Kling
2019-05-24Launcher loads applications from Launcher.ini, is started by default, and is ↵Christopher Dumas
resized automatically Co-Authored-By: Andreas Kling <awesomekling@gmail.com>
2019-05-24WindowServer: Factor out compositing from WSWindowManager into WSCompositor.Andreas Kling
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-24WindowServer: Add 2560x1440 resolution option.Andreas Kling
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-21WindowServer: Don't eat a MouseUp when producing a MouseDoubleClickRobin Burchell
Otherwise, double clicking a button will leave it in pressed state.
2019-05-20WindowServer: Don't start window resize for MouseUp or MouseMove.Andreas Kling
2019-05-20WindowServer: Convert some assertions into client did_misbehave()'s.Andreas Kling
2019-05-20WindowServer: Use blocking sockets for client connections.Andreas Kling
2019-05-20WindowServer: Allow sending up to 32 invalidation rects inline.Andreas Kling
Oops, it looks like I left the max inline rects limit at 1 while debugging this code.. We can fit 32 rects in a single WSAPI message without needing a second "extra data" message, so let's use the space we have!
2019-05-20Kernel: Report EAGAIN from read() on a non-blocking socket if the buffer is ↵Robin Burchell
empty This is not EOF, and never should have been so -- can trip up other code when porting. Also updates LibGUI and WindowServer which both relied on the old behaviour (and didn't work without changes). There may be others, but I didn't run into them with a quick inspection.
2019-05-19WindowServer: Improve client write handling a littleRobin Burchell
* EPIPE now correctly deletes the client connection * EAGAIN (which is now returned by the kernel if the write buffer fills) terminates the connection also
2019-05-18WSWindowManager: Add double click to maximize/restoreRobin Burchell
2019-05-17WindowServer: Add support for fullscreen windows.Andreas Kling
Fullscreen windows are rendered alone and above everything else when they are active, and as part of the regular window stack order when something else is active. Currently windows cannot be made fullscreen after-the-fact, but must have the fullscreen flag included in their CreateWindow message. It should not possible to interact with the menu, taskbar or window frame while the active window is fullscreened. :^)
2019-05-17Build: Install most headers to Root (and libcore.a/libgui.a)Robin Burchell
This makes out-of-tree linking possible. And at the same time, add a CMakeToolchain.txt file that can be used to build arbitrary cmake-using applications on Serenity by pointing to the CMAKE_TOOLCHAIN_FILE when running cmake: -DCMAKE_TOOLCHAIN_FILE=~/code/serenity/Toolchain/CMakeToolchain.txt
2019-05-17WindowServer: Add a more dynamic app listRobin Burchell
This contains more stuff, and is easier to add to since it's just a vector :)
2019-05-16WindowServer: Don't treat bottom titlebar edge as part of the border.Andreas Kling
We were allowing initiation of resize from the bottom titlebar edge since everything inside the window frame that's not either inside the title bar, or inside the window content, is considered the border.
2019-05-16WindowServer: Fill unbacked windows with their background color.Andreas Kling
This avoids flashing a content-less window frame during client startup.
2019-05-16WSWindowManager: Fix a small whoopsie with double click deliveryRobin Burchell
We must reset the click clock to invalid after delivering the double click event. Otherwise, a subsequent click will make us (incorrectly) deliver another double click.
2019-05-16WindowServer/GMenu: Adjust the popup position to fit the window inside the ↵Robin Burchell
screen Rather than passing a "top_anchored" bool. Fixes #22.
2019-05-15Move double click events from LibGUI to the window serverRobin Burchell
2019-05-13WindowServer+LibGUI: Handle mouse wheel deltas in the mouse event stream.Andreas Kling
The wheel events will end up in GWidget::mousewheel_event(GMouseEvent&) on the client-side. This patch also implements basic wheel scrolling in GScrollableWidget via this mechanism. :^)
2019-05-13Fix "make clean" not deleting app binaries.Andreas Kling
2019-05-13WindowServer: Don't add maximize button to non-resizable windows.Andreas Kling
The minimize button can stay though, since it doesn't change the window size, just the visibility. :^)
2019-05-13WindowServer: Make the ordering in the window switcher a bit more sane.Andreas Kling
2019-05-12WindowServer: Rearrange minimize/maximize/close buttons (in that order.)Andreas Kling
2019-05-12WindowServer: Add a maximize/unmaximize button to windows.Andreas Kling
2019-05-12Change String&& arguments to const String& in a couple of places.Andreas Kling
String&& is more nuisance than anything, and the codegen improvement is basically negligible since the underlying type is already retainable.
2019-05-12WindowServer: Show downscaled window thumbnails in the window switcher.Andreas Kling
2019-05-11WindowServer: Improve window frames by giving them a raised frame look. :^)Andreas Kling
2019-05-10LibGUI+WindowServer: Improve checkmark appearance.Andreas Kling