summaryrefslogtreecommitdiff
path: root/Userland/Applications/FileManager
AgeCommit message (Collapse)Author
2022-05-29FileManager: Replace '->' with '→' in symlink statusbar info messageLinus Groh
This looks so much nicer, as the '-' and '>' are not aligned in the default font configuration.
2022-05-13Revert "FileManager: Reduce scope of some variables related to context…Sam Atkins
menu" This reverts commit 61dc48977832c7f705b9ccd29b74c9dd69ef5627. This commit was causing FileManager to crash whenever you selected to open a file using the context menu.
2022-05-13LibGUI+Userland: Make Dialog::ExecResult an enum classSam Atkins
2022-05-13FileManager: Check for write permission before enabling certain actionsofftkp
Upon DirectoryView selection change, check for write permission before enabling delete and cut. This disallows attempting to delete/cut and paste a file that you don't have write permission to by using keybinds. Fixes #13983.
2022-05-07FileManager: Remove unused lstat() callKarol Kosek
2022-05-07FileManager: Reduce scope of some variables related to context menuKarol Kosek
2022-05-07FileManager: Don't use bitwise OR operators on booleansKarol Kosek
2022-05-07FileManager: Rename action_show_dotfiles to show_dotfiles_actionKarol Kosek
All actions are named that way.
2022-05-07FileManager: Use VERIFY() instead of if checks with VERIFY_NOT_REACHEDKarol Kosek
Besides micro simplifying the code, this will also show the failed condition in the console, instead of vague 'ASSERTION FAILED: false'.
2022-04-16LibCore+Everywhere: Make Core::Stream read_line() return StringViewSam Atkins
Similar reasoning to making Core::Stream::read() return Bytes, except that every user of read_line() creates a StringView from the result, so let's just return one right away.
2022-04-11FileManager: Use Core::System::exec()Sam Atkins
2022-03-24Userland+Tests: Convert File::read_link() from String to ErrorOr<String>Kenneth Myhra
This converts the return value of File::read_link() from String to ErrorOr<String>. The rest of the change is to support the potential of an Error being returned and subsequent release of the value when no Error is returned. Unfortunately at this stage none of the places affected can utililize our TRY() macro.
2022-03-13FileManager: Use Core::Stream for FileOperationProgressWidgetSam Atkins
2022-03-13FileManager: Use TRY in run_file_operation()Sam Atkins
The exception is `execvp()` since that has no Core::System wrapper yet.
2022-02-28Applications: Change static constexpr variables to constexprLenny Maiorani
Function-local `static constexpr` variables can be `constexpr`. This can reduce memory consumption, binary size, and offer additional compiler optimizations.
2022-02-19Filemanager: Only enable rename if availableSimon Danner
2022-02-14Applications: Use default constructors/destructorsLenny Maiorani
https://isocpp.github.io/CppCoreGuidelines/CppCoreGuidelines#cother-other-default-operation-rules "The compiler is more likely to get the default semantics right and you cannot implement these functions better than the compiler."
2022-02-14WindowServer+Userland: Pass wallpapers as `Gfx::Bitmap` instead of pathJames Puleo
The WindowServer _really_ does not need to know the filesystem path to it's wallpaper, and allows setting arbitrary wallpapers (those outside of `/res/wallpapers`). The GUI::Desktop will keep track of the path to the wallpaper (if any), and save it to config if desired (to be persisted). This avoids the need to `unveil` paths to the wallpaper, fixing #11158
2022-02-13Userland: Run gml-formatIdan Horowitz
This brings the existing GML files up to spec with the new requirements
2022-02-12FileManager: Add F6 alternate shortcut to "location" actionAatos Majava
This mirrors the behaviour in Browser.
2022-02-07Meta+Userland: Run the GML formatter on CI and pre-commitkleines Filmröllchen
Now that the GML formatter is both perserving comments and also mostly agrees to the existing GML style, it can be used to auto-format all the GML files in the system. This commit does not only contain the scripts for running the formatting on CI and the pre-commit hook, but also initially formats all the existing GML files so that the hook is successfull.
2022-02-05FileManager: Add an animation for deleting filesJason
2022-02-03FileManager: Don't show command palette for the desktopSam Atkins
2022-02-03FileManager: Disable "View as..." actions for desktop DirectoryViewSam Atkins
This stops these actions from being activated with Ctrl+[1,2,3] or the command palette.. Switching to table or columns view would just hide all the icons, so let's not make those options available.
2022-01-28Revert "FileManager: Display times in the user's local time zone"Timothy Flynn
This reverts commit 080b054695f03df2f731d9a519432e3f196f48e6.
2022-01-28FileManager: Display times in the user's local time zoneTimothy Flynn
2022-01-12Base+Userland: Add various iconselectrikmilk
Add new icons to menus, add existing icons that could be used in menus.
2022-01-09FileManager: Do not allow rename files that cannot be modifiedLeonardo Nicolas
Pressing the F2 key on files that the user doesn't have permission was opening the file name for editing. This patch fixes the issue disabling the file name editing when the user doesn't have permission to do it. To reproduce the issue: 1) Open the File Manager 2) Click on the /etc directory 3) Select any file 4) Press the F2 key 5) Update the file name
2022-01-05FileManager: Show Dotfiles when passing a Dotfile as an argumentLucas CHOLLET
Before this patch, FileManager was failing to open the directory and open `/` instead.
2022-01-05FileManager: Use String const& instead of StringLucas CHOLLET
Change ErrorOr<int> run_in_windowed_mode(String, String) to ErrorOr<int> run_in_windowed_mode(String const&, String const&)
2021-12-28FileManager: Add "Create Archive" actionJulian Offenhäuser
This option will appear when you select one or more files or directories. It will then ask the user to enter a name for the new archive (or use the current directories' name if left empty) and create it under that name in the currently opened directory. Note that only .zip files are currently supported.
2021-12-24LibGUI+Userland: Make SortingProxyModel::create() return ErrorOrSam Atkins
Unfortunately, most of the users are inside constructors, (and two others are inside callback lambdas) so the error can't propagate, but that can be improved later.
2021-12-05Applications: Cast unused smart-pointer TRY return values to voidSam Atkins
2021-11-28Everywhere: Use default execpromises argument for Core::System::pledgeBrian Gianforcaro
2021-11-24FileManager: Use TRY() a lot more in the main functions :^)Andreas Kling
2021-11-23LibCore+LibSystem: Move syscall wrappers from LibSystem to LibCoreAndreas Kling
With this change, System::foo() becomes Core::System::foo(). Since LibCore builds on other systems than SerenityOS, we now have to make sure that wrappers work with just a standard C library underneath.
2021-11-22Everywhere: Use Application::construct() with Main::Arguments directlyMustafa Quraish
Use the updated API everywhere we are currently manually passing in `arguments.argc` and `arguments.argv`.
2021-11-22Everywhere: Use ArgsParser::parse() with Main::Arguments directlyMustafa Quraish
Use the updated API everywhere we are currently manually passing in `arguments.argc` and `arguments.argv`.
2021-11-22FileManager: Port to LibMain :^)Andreas Kling
This simplifies a handful of calls to pledge() and sigaction().
2021-11-21LibGUI+Everywhere: Make sync requests to Clipboard server more obviousBen Wiederhake
2021-11-11Everywhere: Pass AK::StringView by valueAndreas Kling
2021-11-08LibCore: Use ErrorOr<T> for Core::File::copy_file()Andreas Kling
2021-11-08LibGfx: Use ErrorOr<T> for Bitmap::try_load_from_file()Andreas Kling
This was used in a lot of places, so this patch makes liberal use of ErrorOr<T>::release_value_but_fixme_should_propagate_errors().
2021-11-03LibGUI+FileManager: Clarify Widget margins nameFrHun
Even though they are called content_margins, they are actually only ever used to determine where a Widget is supposed to be grabbable. So all methods and members are renamed accordingly.
2021-10-10FileManager: Listen for changes to Desktop wallpaper in configMustafa Quraish
Since there's no global API for being able to just assign a callback function to config changes, I've made an inline struct in desktop mode with the sole purpose of checking to see if the Wallpaper entry has changed, and then updates GUI::Desktop. It's pretty neat seeing the wallpaper change as soon as you edit the config file :^)
2021-09-13FileOperation: Deduplicate destination file names on copyTetsui Ohkubo
When there is a file with the same name in the destination directory, FileManager overwrites that file without any warning. With this change, such a file will be automatically renamed to "emoji-2.txt", for example. Also, currently there is a check in FileManager that makes copy and paste of a file in the same directory no-op. This change removes that check, because it is no longer a problem.
2021-09-03Everywhere: Use my shiny new serenityos.org email :^)Sam Atkins
2021-09-02FileManager: Kindly ask the user if they want to delete a fileMusab Kılıç
2021-08-31FileManager: Tweak layout spacing in file properties windowAndreas Kling
There wasn't enough vertical spacing between the TabWidget and the three (Ok/Cancel/Apply) buttons at the bottom.
2021-08-31FileManager: Hide the Inode and Symlink Target columns in TableViewAndreas Kling
These are not generally interesting, so let's hide them by default. The user can re-enable them if they want.