summaryrefslogtreecommitdiff
path: root/Servers
AgeCommit message (Collapse)Author
2020-02-23Userspace: Use Core::Object::add() when building interfacesAndreas Kling
2020-02-22TTYServer: Use unveil()Brian Gianforcaro
2020-02-21WindowServer: Use system theme for the drag and drop popupsTibor Nagy
2020-02-20WindowServer: Stop exposing open_menu_stack in MenuManagerShannon Booth
The open menu stack is an internal data structure that outside classes shouldn't really need to know about. Add MenuManager::has_open_menu() so that the WindowManager can still know whether a menu is open or not.
2020-02-20WindowServer: Fix not all menus closing after system menu toggleShannon Booth
We were failing to check if the current menu being set was already open. This could result in multiple occurrences of the menu in the open menu stack. When we close all menus descending from a menu we only delete the first occurrence of a given menu from the menu stack (a fair assumption to make as a menu should only be open once). Because of this a menu (or multiple instances of it) could remain in the open menu stack when it should actually be closed, leading to goofy behaviour. Fixes #1238
2020-02-20WindowServer: Geometry labels should follow the system themeTibor Nagy
2020-02-20WindowServer: MenuManager should use selection text color from system themeTibor Nagy
2020-02-19WindowServer+LibGUI: Force full window repaints after theme changeAndreas Kling
We were not repainting windows that were occluded at the time of the theme changing. This patch adds a way to bypass occlusion testing when invalidating window rects. Fixes #1249.
2020-02-19WindowServer+LibGUI+LibHTML: Fix build with -std=c++2aAndreas Kling
2020-02-18Base: Rename /dev/psaux to /dev/mouseAndreas Kling
Since this device doesn't actually hand out raw PS/2 aux packets, let's just call it "mouse" instead. :^)
2020-02-18WindowServer: Remove unsued MenuManager::menu_selection_color()Shannon Booth
2020-02-17WindowServer: Remove unveils of /bin and /etc/passwdAndreas Kling
This is no longer needed now that we have SystemMenu. :^)
2020-02-17WindowServer: Drop the "exec" pledge promise entirelyAndreas Kling
Now that the system menu is out-of-process, we no longer need to exec() from WindowServer, allowing us to drop this promise. Very cool!
2020-02-17WindowServer: Make way for the out-of-process system menuAndreas Kling
This patch removes the internal system menu from WindowServer and replaces it with two IPC API's: SetSystemMenu(menu_id) SetSystemTheme(theme_path, theme_name) These API's will allow us to complete the SystemMenu program and move it entirely out of process.
2020-02-17AudioServer: Remove ASEventLoop class and do all the setup in main()Andreas Kling
This class was too small and unnecessary.
2020-02-16NotificationServer: Add new notification windows below the lowest oneAndreas Kling
Don't stack notifications on top of each other, instead put them below one another on the y axis. This will obviously break if the screen fills with notifications, but that's a FIXME for now. :^)
2020-02-16NotificationServer: Add a system service for desktop notificationsAndreas Kling
This patch adds NotificationServer, which runs as the "notify" user and provides an IPC API for desktop notifications. LibGUI gains the GUI::Notification class for showing notifications. NotificationServer is spawned on demand and will unspawn after dimissing all visible notifications. :^) Finally, this also comes with a small /bin/notify utility.
2020-02-16AK: Add basic Traits for RefPtrAndreas Kling
This allows RefPtr to be stored in a HashTable<RefPtr<T>> :^) It's unfortunate about the const_casts. We'll need to fix HashMap::get to play nice with non-const Traits<T>::PeekType at some point.
2020-02-16WindowServer: Move configuration file into /etc/WindowServerAndreas Kling
This is in preparation for running WindowServer as a separate user.
2020-02-15LibCore: Reduce header dependencies of EventLoopAndreas Kling
2020-02-15LibCore: Replace manual forward declarations with <LibCore/Forward.h>Andreas Kling
2020-02-15AK: Remove manual forward declarations with <AK/Forward.h>Andreas Kling
2020-02-15LibGfx: Replace manual forward declarations with <LibGfx/Forward.h>Andreas Kling
2020-02-14LibGfx: Add forward declaration headerAndreas Kling
This patch adds <LibGfx/Forward.h> with forward declarations for Gfx.
2020-02-14LibCore: Add a forward declaration headerAndreas Kling
This patch adds <LibCore/Forward.h> and uses it in various places to shrink the header dependency graph.
2020-02-14AK: Add a forward declaration headerAndreas Kling
You can now #include <AK/Forward.h> to get most of the AK types as forward declarations. Header dependency explosion is one of the main contributors to compile times at the moment, so this is a step towards smaller include graphs.
2020-02-13WindowServer+LibGUI: Add a "drag move" eventAndreas Kling
This allows windows/widgets to learn when something is being dragged over them. They can then repaint themselves somehow to indicate that they are willing to accept a drop. Currently this is piggybacking somewhat on the mouse event mechanism in WindowServer. I'm not sure that's the best design but it seemed easier to do it this way right now.
2020-02-13WebServer: Ensure directory listing URLs end with a slashBogdan
We will now send a redirect (301) if a directory listing is requested and the request URL doesn't end with a slash character. This makes relative file URLs that we generate in directory listings actually work as expected.
2020-02-13WebServer: Remove debug spam in directory listing codeAndreas Kling
2020-02-13WebServer: Escape HTML entities in path names in directory listingsAndreas Kling
I left a FIXME in here about implementing URL encoding.
2020-02-12WebServer: Show file size and modification time in directory listingsAndreas Kling
This exposed an issue with the unveil() implementation which currently short-circuits path resolution for any path containing "/..". This will cause the ".." entry to show up with a 1970-01-01 mtime for now. FIXME. Also add some rulers and a nice little footer. :^)
2020-02-12WebServer: Add basic directory listingsAndreas Kling
If a directory does not have an index.html file, we will now generate a directory listing HTML document for that directory on the fly. :^)
2020-02-12WindowServer: Move some menu related code into MenuManagerShannon Booth
Shuffle around some menu related code from window manager into menu manager. This still is not perfect, and results in a little more of the window manager to be publically exposed - but this is another step towards better seperation of concerns between menu and window manager. We also move the mouse_event handling into a new function in menu manager as event handling was beginning to become a bit chunky.
2020-02-11WebServer: Use Core::DateTime for logging timestampsAndreas Kling
2020-02-11WebServer: Add copyright headersAndreas Kling
2020-02-11WindowServer: Make some WindowSwitcher members privateAndreas Kling
2020-02-11WindowServer: Remove unused WindowManager::draw_window_switcher()Andreas Kling
2020-02-11WindowServer: Draw a coolbar border around the hovered switcher itemAndreas Kling
This gives a small but nice indication that the switcher window list items are clickable. :^)
2020-02-11WindowServer: Update window switcher when moving window to frontAndreas Kling
If the window switcher is up when a window is made frontmost (usually by clicking on it), the window will now become the selected window in the switcher. This still has a slight feeling of "hmm" but is definitely better than what we had before.
2020-02-11WindowServer: Allow clicking on windows in the window switcherAndreas Kling
You can now switch between windows using your mouse to click them in the window switcher. :^)
2020-02-11WindowServer: Ensure on a menu key press invalid items are not hoveredShannon Booth
Whenever a new menu item is hovered through a up or down key press, we should always end up hovering a valid item.
2020-02-11WindowServer: Assert that a window is not being set as emptyShannon Booth
2020-02-11WindowServer: Remove unimplemented header functionShannon Booth
2020-02-11WindowServer: Use early return to reduce nestingShannon Booth
2020-02-10WindowServer: Move applet code from MenuManager to AppletManager.asliturk
Move applet logic to the own class. Remove applet code from MenuManager. With new AppletManager applet order is configurable via WindowManager.ini file.
2020-02-09WebServer: Add missing space to HTTP error responsesAndreas Kling
Fixes #1200.
2020-02-09WebServer: Send the HTTP response headers in a single packetAndreas Kling
This makes it easier to observe the protocol in packet logs.
2020-02-09WebServer: Tighten things up with pledge() and unveil()Andreas Kling
2020-02-09WebServer: Implement a very basic HTTP server :^)Andreas Kling
This server listens on port 8000 and serves HTML files from /www. It's very simple and quite naive, but I think we can start here and build our way to something pretty neat. Work towards #792.
2020-02-09WindowServer: Remove username from MenuManager.Hüseyin ASLITÜRK
Now, we have UserName applet.