Commit graph

1261 commits

Author SHA1 Message Date
Andreas Kling
20f50f9133 LibProtocol: Pass response headers in a case insensitive HashMap
HTTP headers are case-insensitive, so just add CaseInsensitiveTraits
to the HashMap and we're good to go! :^)
2020-05-10 22:32:12 +02:00
Andreas Kling
aef5d28828 Browser: Allow opening URLs by dropping them on the HtmlView :^) 2020-05-10 22:32:12 +02:00
Andreas Kling
f1708b3832 LibWeb: Teach HtmlView how to render Markdown files :^) 2020-05-10 22:32:12 +02:00
Andreas Kling
5fcd25e8f6 Browser: Use "about:blank" as the default home page
This can be overridden in Browser.ini, but if there's no value there,
we now use "about:blank"
2020-05-10 11:18:47 +02:00
Andreas Kling
fe0de26277 LibWeb+Browser: Support about: URL protocol so "about:blank" works :^)
For now, we simply load an empty resource from any about: URL.
2020-05-10 11:14:30 +02:00
FalseHonesty
60024ab574 Browser: Close tabs when middle clicked 2020-05-09 23:54:20 +02:00
Linus Groh
e92e919724 Browser: Add missing copyright header to WindowActions.{cpp,h} 2020-05-09 23:45:16 +02:00
Andreas Kling
f41cd808de TextEditor: Use JS syntax highlighting for .json files :^) 2020-05-09 16:48:28 +02:00
Andreas Kling
f596b12a04 LibVT+Terminal: Support hyperlinks in the terminal :^)
We now support basic hyperlinking in the terminal with <OSC>;8;;URL<ST>
Links are opened via LaunchServer on Ctrl+LeftMouse.
2020-05-09 16:16:16 +02:00
Nicholas Hollett
b7810a31c3 LibDesktop: Switch to LaunchServer for DesktopServices::open
Moves DirectoryServices out of LibCore (because we need to link with
LibIPC), renames it Desktop::Launcher (because Desktop::DesktopServices
doesn't scan right) and ports it to use the LaunchServer which is now
responsible for starting programs for a file.
2020-05-09 15:13:32 +02:00
Hüseyin ASLITÜRK
3874664752 Applications: FontEditor, relocate form items by fonts size
FontEditor widget rewritten for respect to the font size and added fixed width and height header values.
2020-05-09 10:00:13 +02:00
Andreas Kling
239fd33405 Services: Move Taskbar and SystemMenu from Applications to Services 2020-05-08 22:00:41 +02:00
Andreas Kling
cf3b58fbe8 Services: Renamed from Servers
It didn't feel right to have a "DHCPClient" in a "Servers" directory.
Rename this to Services to better reflect the type of programs we'll
be putting in there.
2020-05-08 21:57:44 +02:00
Andreas Kling
788293ead8 Browser: Move InspectorWidget into the Browser namespace 2020-05-08 21:38:30 +02:00
Hüseyin ASLITÜRK
39a8db936a Applications: Replace SystemMenu name to hi voltage emoji 2020-05-08 09:49:41 +02:00
Nick Tiberi
9d0c6a32bd Browser: Show line numbers when viewing page source 2020-05-07 22:59:40 +02:00
Linus Groh
85b69e54e4 Browser: Escape percent sign in download progress format string
Otherwise the following is printed:

printf_internal: Unimplemented format specifier   (fmt: 0% of %s)
2020-05-07 16:01:03 +02:00
Maciej Sobaczewski
8989300851
Browser: Assume http:// when no protocol is provided in the location bar (#2142) 2020-05-07 11:57:53 +02:00
FalseHonesty
8182a709e3 Browser: Open links in a new tab when middle clicked 2020-05-06 21:59:29 +02:00
Linus Groh
9dbab2d05e Misc: Replace "String(string_view)" with "string_view.to_string()"
StringView::to_string() was added in 917ccb1 but not actually used
anywhere yet.
2020-05-06 19:28:59 +02:00
Linus Groh
2c14714ee0 Browser: Add dedicated "view source" window
Basically a window containing a read-only GUI::TextEditor containing the
source code of the current webpage. No temporary file needed :^)

Fixes #1103.
2020-05-06 17:14:51 +02:00
modmuss50
3142c4a4fd Browser: Add "Copy link" context menu item 2020-05-06 12:14:54 +02:00
Yonatan Goldschmidt
83eb31bb2e Taskbar: Remove checkable property from taskbar buttons
If a button is checkable, its "checked" state is inversed in
Button::click. It's not needed for taskbar buttons - their checked
state is updated in TaskbarWindow::wm_event, based on the
current state of their window.

Fixes: #1878.
2020-05-06 12:14:07 +02:00
Andreas Kling
d6ab9e6790 Browser: Add a basic GUI download feature
We now allow you to download files by right-clicking a link and then
choosing "Download".

All files are currently saved to the standard downloads location that
we get from Core::StandardPaths::downloads_directory().

In the future, we'll probably want to come up with a more restrictive
way of doing the "write to disk" portion of this.
We should also improve the ProtocolServer to allow streaming of data
instead of writing everything in one big go.

At the moment, I'm just pretty happy with this GUI. :^)
2020-05-05 23:58:22 +02:00
Andreas Kling
588e18721d Browser: Add a simple context menu for hyperlinks
This only has "Open" and "Open in new tab" for now. :^)
2020-05-05 22:42:50 +02:00
DexesTTP
d1a9afa7cd Help: Clicking on link changes the treeview selection
Fixes #1259
2020-05-05 14:27:51 +02:00
DexesTTP
f3cff4c677 SystemMonitor: Replace details with message when process isn't accessible
In addition to being less surprising, this sets up some groundwork for #1676
2020-05-05 12:49:18 +02:00
Andreas Kling
e09b83c60c LibTextCodec: Start fleshing out a simple text codec library
We're starting with a very basic decoding API and only ISO-8859-1 and
UTF-8 decoding (and UTF-8 decoding is really a no-op since String is
expected to be UTF-8.)
2020-05-03 23:01:58 +02:00
Ben Wiederhake
da837fe46e Meta: Fix Makefile permissions (not executable) 2020-05-03 14:24:08 +02:00
AnotherTest
c6825a96c7 AK+FileManager: Move out human_readable_size to AK::NumberFormat 2020-05-03 12:59:26 +02:00
Andres Vieira
ad309d4eca Terminal: Write an empty string instead of (null) on Command key
This prevents a Terminal to create a configuration file with
 Command=(null)

That would make it try to execute the command "(null)" on the next run.
2020-05-02 15:41:27 +02:00
Shannon Booth
0e403a43a4 Terminal: Add config for startup command
This is useful when working on a program as you can put the command into
the config file, instead of having to type it up each time on boot.
2020-05-02 14:12:57 +02:00
Ben Wiederhake
5d3ac4ec9e DisplaySettings: Don't crash after 'pape'
Running 'pape' without arguments (or just editing the WindowServer.ini by hand)
can confuse DisplaySettings. Specifically, if the 'Wallpaper' is set to
'/res/wallpapers/', then DisplaySettings used to crash because 'name_parts'
wouldn't contain any trailing element.

It's hard to define desired behavior, but this is better than crashing
and confusing the user.
2020-05-02 14:12:36 +02:00
Ben Wiederhake
ef433cb367 LibGUI: The UI calls it 'Icon view', fix the name in the code 2020-05-02 14:12:36 +02:00
Andreas Kling
3331098aee WindowServer+LibGUI+Taskbar: Don't include frameless windows in lists
Frameless windows don't need to show up in the taskbar or the switcher.
2020-05-02 12:24:23 +02:00
AnotherTest
7670e5ccf0 LibCore+LibHTTP: Move out the HTTP handler and add HTTPS 2020-05-02 12:24:10 +02:00
Hüseyin ASLITÜRK
8551c10918 Applications: TextEditor INI file syntax highlighter 2020-05-01 16:58:18 +02:00
Andreas Kling
88f7f9712d TextEditor: Use document path as base URL for markdown preview HTML 2020-04-30 23:43:17 +02:00
Andreas Kling
68513abf39 Terminal: Tweak default prompt color slightly :^) 2020-04-30 22:38:40 +02:00
Andreas Kling
06c478852a FileManager: Realize the initial path when opened from the command line 2020-04-30 22:38:28 +02:00
Andreas Kling
a40aa80df1 Debugger: Add missing newline in "help" output 2020-04-30 22:15:16 +02:00
Andreas Kling
5bdd05024f DisplaySettings: Tweak label "Color Name" => "Color" 2020-04-30 22:15:16 +02:00
Andreas Kling
6c0fed3866 TextEditor: Pledge "unix" so we can load images in Markdown preview
We should think a bit more about how we want preview content to
interact with the outside world, but for now let's just make it run.
2020-04-30 12:32:41 +02:00
Dylan Katz
47f413c47f Browser: Add missing tooltip to bookmark button
The tip will say "Add Bookmark" if not a bookmark and "Remove
Bookmark" if it is.
2020-04-30 08:52:21 +02:00
Andreas Kling
85fd0d2187 FileManager: Fix crash when file properties has unnamed UID or GID
It's perfectly valid for a file to be owned by a UID or GID with no
corresponding entry in /etc/passwd or /etc/group respectively.

Fixes #1988.
2020-04-29 19:35:20 +02:00
Andreas Kling
bf727eb44c DisplaySettings: Arrange buttons in "OK, Cancel, Apply" order 2020-04-29 16:25:02 +02:00
Andreas Kling
e8a044390e DisplaySettings: Don't allow desktop background color with alpha 2020-04-29 16:22:29 +02:00
Andreas Kling
51df4bdbfc DisplaySettings: Rename from DisplayProperties 2020-04-29 15:53:51 +02:00
Andreas Kling
f0cde70c18 LibGUI: Simplify submenu construction
The API for adding a submenu to a menu is now:

auto& submenu = menu.add_submenu("Name");
submenu.add_action(my_action);
2020-04-29 11:48:11 +02:00
Emanuele Torre
a220236cde Browser: Add missing #pragma once in Tab.h 2020-04-29 09:38:11 +02:00