Commit graph

1225 commits

Author SHA1 Message Date
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
AnotherTest
9473733d7a LibLine: Handle initialize() internally
This patch makes initialize() transparent to the users, but exposes it
publicly, as the users might need a copy of the default termios (i.e.
Shell)
2020-04-28 23:29:07 +02:00
Linus Groh
8b195d1211 TextEditor: Fix typo in comment 2020-04-28 23:12:16 +02:00
Andreas Kling
5eaa7ff406 TextEditor: Add live preview when editing markdown :^)
This works by hooking into the change notifications from the TextEditor
widget and parsing the document content as markdown, and generating an
HTML document from it which is displayed using LibWeb.

This will make it a bit easier to write man pages! :^)
2020-04-28 21:46:43 +02:00
Andreas Kling
ea204ef05b LibMarkdown: Drop MD prefixes and move into "Markdown" namespace :^) 2020-04-28 21:04:25 +02:00
Andreas Kling
3cc31ff3f3 Browser: Make Ctrl+L select the location bar again
..by making sure the Tab actions are scoped to the Tab.
2020-04-28 20:36:08 +02:00
Andreas Kling
5b4b72e699 Browser: Don't put favicons as the window icon
It's nicer to always use the browser's own app icon instead. :^)
2020-04-28 20:31:51 +02:00
Hüseyin ASLITÜRK
b3bdab8cf7 Application: Fix for reboot on PowerDialog close button click 2020-04-28 20:30:48 +02:00
Andres Vieira
bcd5e97286 DisplayProperties: Allow going from a wallpaper to a background colour
Before this patch DisplayProperties couldn't handle correctly going from
a set wallpaper to a background color.

This patch adds a new "Use background color" as a first option for the
Wallpaper combobox as well as correct handling of setting an invalid
bitmap, thus making the WindowManager draw the background color
2020-04-28 15:22:22 +02:00
Andres Vieira
b9df3c3318 FileManager: Disable PropertiesDialog custom rename disabling logic
TextBox already handles well its disabled state so it's no use to have a
way to prevent it from PropertiesDialog, too.
2020-04-28 15:14:02 +02:00
Andres Vieira
092e275633 FileManager: Disable permission checkboxes if user is not owner of path 2020-04-28 10:00:12 +02:00
Andres Vieira
cb118111b6 FileManager: Deny rename in PropertiesDialog if user can't write in path
The FileManager PropertiesDialog always let the user change the name of
files and folders to then be prompted with  write permissions error.

Now it checks for write permissions on the containing folder so it can
"disable" the TextBox input. We can't really disable TextBox right now,
hence the quotes.
2020-04-28 10:00:12 +02:00
Andres Vieira
1d874c03af FileManager: Disable delete action if user can't write in current path
Before this the delete action would be enabled in whenever was the case
in which the user had some selection made. This patch forces a check
to access() with the current folder path to see if the user actually can
delete nodes in it.
2020-04-28 10:00:12 +02:00
Andres Vieira
42f493ec9d FileManager: Add folder-specific paste action
This action is a bit different to the regular paste action because it
takes into account the folder in which the context menu was opened,
so it can be enabled/disabled whether that folder is writable or not for
the current user.

Both paste action use the same logic, now moved to the function
do_action(const GUI::Action&), but in the case of the folder being
right clicked, it pastes inside of it.
2020-04-28 10:00:12 +02:00
Andres Vieira
1f007181be FileManager: Disable paste action for non-writable directories 2020-04-28 10:00:12 +02:00
Andres Vieira
a1bcd9ca8a FileManager: Disables mkdir action if permissions don't allow it
Now the "New directory..." contextual menu is disabled if the current
user doesn't have enough permissions to create a node in the current
path.

This prevents the user going to the "New Directory" InputBox, writing
an appropriate name and accepting just to find they can't even do it :)
2020-04-28 10:00:12 +02:00
Andres Vieira
bf9926743a FileManager: Add paste action to DirectoryView's context menu 2020-04-27 11:21:24 +02:00
Andres Vieira
ef963dae7e FileManager: Paste inside folder if done through its context menu
Now FileManager will paste the clipboard contents inside a folder if the
paste action was clicked through a folder context menu, being the target
directory the selected folder.

This mimicks most of the behaviours that the different file managers
have.
2020-04-27 11:21:24 +02:00
Andres Vieira
91b70d34e7 FileManager: Copy and Delete selected file(s), not current folder
FileManager had this weird behaviour in which it would ignore the
current selection and try to copy and delete the current folder.
2020-04-27 11:21:24 +02:00
Hüseyin ASLITÜRK
089022e7f6 Applications: Add "thread" for HexEditor
HexEditor crashes during try OpenFile dialog.
2020-04-26 21:31:41 +02:00
Andres Vieira
88368df9a2 Base+Browser: Add an icon for the serenity Browser and make it use it
Browser was using the filetype-html icon instead of a dedicated one, so
we now have the globe from that icon reimagined and in good Buggie
company :^)
2020-04-26 21:13:57 +02:00
Hüseyin ASLITÜRK
679702045d QuickShow: Add gif files to navigation file list 2020-04-26 18:44:20 +02:00
Andres Vieira
1617be1e6f FileManager: Disable open_parent_directory_action if the new path is "/" 2020-04-26 15:26:01 +02:00
Andreas Kling
421619fe2f Browser: Rejig the "on_load_counter_change" hook when switching tabs
This feels a little shoddy, but we need to make sure that updates end
up on the right statusbar (since there is one statusbar per tab.)
2020-04-25 17:27:55 +02:00
Andreas Kling
9093625546 Browser: Unveil /etc/passwd so we can find our home directory if needed
Fixes #1952.
2020-04-25 17:21:59 +02:00
Andreas Kling
bd45b2b8d3 Browser: Share one BookmarksBarWidget between all Tabs 2020-04-25 17:20:23 +02:00
Brendan Coles
6dde2c7f47 Browser: Add Browser.ini configuration file
The Browser can now load a home page URL from the user's Browser.ini
configuration file rather than using a hard-coded URL.
2020-04-25 10:55:55 +02:00
Andreas Kling
260e4049ff Browser: Use the active tab's favicon as the window icon :^) 2020-04-24 22:47:53 +02:00
Andreas Kling
d6bbf12b7c LibGUI: Add "uniform tabs" mode to TabWidget (all tabs have same width)
...and enable this in the main Browser UI. :^)
2020-04-24 22:36:25 +02:00
Andreas Kling
682f0ac93b Browser: React to favicon notifications and put favicons in the tabs! 2020-04-24 22:28:05 +02:00
Andreas Kling
3fcfab4404 Browser: Move the "About" action to WindowActions 2020-04-24 20:50:06 +02:00
Andreas Kling
dfe8dea2ac Browser: Remove padding from the main TabWidget
This makes the active tab "take over" the whole window UI, even though
it's actually inside a TabWidget.
2020-04-24 20:42:34 +02:00
Andreas Kling
9d8620f956 Browser: Add icons for the "new tab" and "close tab" actions 2020-04-24 20:42:34 +02:00
Andreas Kling
9617b7ede4 FileManager: Set content margin of DirectoryView to same as children 2020-04-24 19:05:04 +02:00
Linus Groh
fd5f05079d QuickShow: Properly hide toolbar on toggle action
Similar to fullscreen mode we need to hide the toolbar's container.
2020-04-24 17:00:00 +02:00
Linus Groh
d86d73f6e8 QuickShow: Hide toolbar container in fullscreen mode
If we just hide the toolbar itself, its container is still visible and
taking up space at the top of the screen.
2020-04-24 17:00:00 +02:00
Andreas Kling
5c2bdbf27f Browser+LibWeb: Open link in new tab on Ctrl+Click :^) 2020-04-24 14:43:56 +02:00