mirror of
https://github.com/RGBCube/serenity
synced 2025-05-31 07:38:10 +00:00
Applications: Convert DeprecatedFile
usages to LibFileSystem
This commit is contained in:
parent
5ba7449342
commit
1dc3ba6ed5
14 changed files with 36 additions and 40 deletions
|
@ -9,7 +9,6 @@
|
||||||
#include "WavefrontOBJLoader.h"
|
#include "WavefrontOBJLoader.h"
|
||||||
#include <AK/FixedArray.h>
|
#include <AK/FixedArray.h>
|
||||||
#include <AK/String.h>
|
#include <AK/String.h>
|
||||||
#include <LibCore/DeprecatedFile.h>
|
|
||||||
#include <LibCore/File.h>
|
#include <LibCore/File.h>
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
|
|
||||||
|
|
|
@ -14,7 +14,6 @@
|
||||||
#include <Applications/Browser/WindowActions.h>
|
#include <Applications/Browser/WindowActions.h>
|
||||||
#include <LibConfig/Client.h>
|
#include <LibConfig/Client.h>
|
||||||
#include <LibCore/ArgsParser.h>
|
#include <LibCore/ArgsParser.h>
|
||||||
#include <LibCore/DeprecatedFile.h>
|
|
||||||
#include <LibCore/FileWatcher.h>
|
#include <LibCore/FileWatcher.h>
|
||||||
#include <LibCore/StandardPaths.h>
|
#include <LibCore/StandardPaths.h>
|
||||||
#include <LibCore/System.h>
|
#include <LibCore/System.h>
|
||||||
|
@ -131,16 +130,16 @@ ErrorOr<int> serenity_main(Main::Arguments arguments)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
auto url_from_argument_string = [](DeprecatedString const& string) -> URL {
|
auto url_from_argument_string = [](DeprecatedString const& string) -> ErrorOr<URL> {
|
||||||
if (FileSystem::exists(string)) {
|
if (FileSystem::exists(string)) {
|
||||||
return URL::create_with_file_scheme(Core::DeprecatedFile::real_path_for(string));
|
return URL::create_with_file_scheme(TRY(FileSystem::real_path(string)).to_deprecated_string());
|
||||||
}
|
}
|
||||||
return Browser::url_from_user_input(string);
|
return Browser::url_from_user_input(string);
|
||||||
};
|
};
|
||||||
|
|
||||||
URL first_url = Browser::url_from_user_input(Browser::g_home_url);
|
URL first_url = Browser::url_from_user_input(Browser::g_home_url);
|
||||||
if (!specified_urls.is_empty())
|
if (!specified_urls.is_empty())
|
||||||
first_url = url_from_argument_string(specified_urls.first());
|
first_url = TRY(url_from_argument_string(specified_urls.first()));
|
||||||
|
|
||||||
auto cookie_jar = TRY(Browser::CookieJar::create(*database));
|
auto cookie_jar = TRY(Browser::CookieJar::create(*database));
|
||||||
auto window = Browser::BrowserWindow::construct(cookie_jar, first_url);
|
auto window = Browser::BrowserWindow::construct(cookie_jar, first_url);
|
||||||
|
@ -176,7 +175,7 @@ ErrorOr<int> serenity_main(Main::Arguments arguments)
|
||||||
};
|
};
|
||||||
|
|
||||||
for (size_t i = 1; i < specified_urls.size(); ++i)
|
for (size_t i = 1; i < specified_urls.size(); ++i)
|
||||||
window->create_new_tab(url_from_argument_string(specified_urls[i]), Web::HTML::ActivateTab::No);
|
window->create_new_tab(TRY(url_from_argument_string(specified_urls[i])), Web::HTML::ActivateTab::No);
|
||||||
|
|
||||||
window->show();
|
window->show();
|
||||||
|
|
||||||
|
|
|
@ -16,4 +16,4 @@ set(GENERATED_SOURCES
|
||||||
)
|
)
|
||||||
|
|
||||||
serenity_app(Escalator ICON app-escalator)
|
serenity_app(Escalator ICON app-escalator)
|
||||||
target_link_libraries(Escalator PRIVATE LibCore LibDesktop LibGfx LibGUI LibMain)
|
target_link_libraries(Escalator PRIVATE LibCore LibFileSystem LibDesktop LibGfx LibGUI LibMain)
|
||||||
|
|
|
@ -9,8 +9,8 @@
|
||||||
#include <AK/DeprecatedString.h>
|
#include <AK/DeprecatedString.h>
|
||||||
#include <LibCore/Account.h>
|
#include <LibCore/Account.h>
|
||||||
#include <LibCore/ArgsParser.h>
|
#include <LibCore/ArgsParser.h>
|
||||||
#include <LibCore/DeprecatedFile.h>
|
|
||||||
#include <LibCore/System.h>
|
#include <LibCore/System.h>
|
||||||
|
#include <LibFileSystem/FileSystem.h>
|
||||||
#include <LibGUI/Application.h>
|
#include <LibGUI/Application.h>
|
||||||
#include <LibGUI/Desktop.h>
|
#include <LibGUI/Desktop.h>
|
||||||
#include <LibGUI/MessageBox.h>
|
#include <LibGUI/MessageBox.h>
|
||||||
|
@ -33,8 +33,8 @@ ErrorOr<int> serenity_main(Main::Arguments arguments)
|
||||||
|
|
||||||
auto app = TRY(GUI::Application::try_create(arguments));
|
auto app = TRY(GUI::Application::try_create(arguments));
|
||||||
|
|
||||||
auto executable_path = Core::DeprecatedFile::resolve_executable_from_environment(command[0]);
|
auto executable_path = FileSystem::resolve_executable_from_environment(command[0]);
|
||||||
if (!executable_path.has_value()) {
|
if (executable_path.is_error()) {
|
||||||
GUI::MessageBox::show_error(nullptr, DeprecatedString::formatted("Could not execute command {}: Command not found.", command[0]));
|
GUI::MessageBox::show_error(nullptr, DeprecatedString::formatted("Could not execute command {}: Command not found.", command[0]));
|
||||||
return 127;
|
return 127;
|
||||||
}
|
}
|
||||||
|
|
|
@ -11,7 +11,6 @@
|
||||||
#include <AK/NumberFormat.h>
|
#include <AK/NumberFormat.h>
|
||||||
#include <AK/StringBuilder.h>
|
#include <AK/StringBuilder.h>
|
||||||
#include <LibConfig/Client.h>
|
#include <LibConfig/Client.h>
|
||||||
#include <LibCore/DeprecatedFile.h>
|
|
||||||
#include <LibCore/MimeData.h>
|
#include <LibCore/MimeData.h>
|
||||||
#include <LibCore/StandardPaths.h>
|
#include <LibCore/StandardPaths.h>
|
||||||
#include <LibFileSystem/FileSystem.h>
|
#include <LibFileSystem/FileSystem.h>
|
||||||
|
@ -406,18 +405,21 @@ void DirectoryView::add_path_to_history(DeprecatedString path)
|
||||||
|
|
||||||
bool DirectoryView::open(DeprecatedString const& path)
|
bool DirectoryView::open(DeprecatedString const& path)
|
||||||
{
|
{
|
||||||
auto real_path = Core::DeprecatedFile::real_path_for(path);
|
auto error_or_real_path = FileSystem::real_path(path);
|
||||||
if (real_path.is_null() || !FileSystem::is_directory(path))
|
if (error_or_real_path.is_error() || !FileSystem::is_directory(path))
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
if (chdir(real_path.characters()) < 0) {
|
auto real_path = error_or_real_path.release_value();
|
||||||
|
if (Core::System::chdir(real_path).is_error()) {
|
||||||
perror("chdir");
|
perror("chdir");
|
||||||
|
return false;
|
||||||
}
|
}
|
||||||
if (model().root_path() == real_path) {
|
|
||||||
|
if (model().root_path() == real_path.to_deprecated_string()) {
|
||||||
refresh();
|
refresh();
|
||||||
} else {
|
} else {
|
||||||
set_active_widget(¤t_view());
|
set_active_widget(¤t_view());
|
||||||
model().set_root_path(real_path);
|
model().set_root_path(real_path.to_deprecated_string());
|
||||||
}
|
}
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
|
@ -10,7 +10,6 @@
|
||||||
#include <AK/NumberFormat.h>
|
#include <AK/NumberFormat.h>
|
||||||
#include <Applications/FileManager/DirectoryView.h>
|
#include <Applications/FileManager/DirectoryView.h>
|
||||||
#include <Applications/FileManager/PropertiesWindowGeneralTabGML.h>
|
#include <Applications/FileManager/PropertiesWindowGeneralTabGML.h>
|
||||||
#include <LibCore/DeprecatedFile.h>
|
|
||||||
#include <LibCore/Directory.h>
|
#include <LibCore/Directory.h>
|
||||||
#include <LibCore/System.h>
|
#include <LibCore/System.h>
|
||||||
#include <LibDesktop/Launcher.h>
|
#include <LibDesktop/Launcher.h>
|
||||||
|
@ -102,11 +101,11 @@ ErrorOr<void> PropertiesWindow::create_widgets(bool disable_rename)
|
||||||
type->set_text(get_description(m_mode));
|
type->set_text(get_description(m_mode));
|
||||||
|
|
||||||
if (S_ISLNK(m_mode)) {
|
if (S_ISLNK(m_mode)) {
|
||||||
auto link_destination_or_error = Core::DeprecatedFile::read_link(m_path);
|
auto link_destination_or_error = FileSystem::read_link(m_path);
|
||||||
if (link_destination_or_error.is_error()) {
|
if (link_destination_or_error.is_error()) {
|
||||||
perror("readlink");
|
perror("readlink");
|
||||||
} else {
|
} else {
|
||||||
auto link_destination = link_destination_or_error.release_value();
|
auto link_destination = link_destination_or_error.release_value().to_deprecated_string();
|
||||||
auto* link_location = general_tab->find_descendant_of_type_named<GUI::LinkLabel>("link_location");
|
auto* link_location = general_tab->find_descendant_of_type_named<GUI::LinkLabel>("link_location");
|
||||||
link_location->set_text(link_destination);
|
link_location->set_text(link_destination);
|
||||||
link_location->on_click = [link_destination] {
|
link_location->on_click = [link_destination] {
|
||||||
|
|
|
@ -19,7 +19,6 @@
|
||||||
#include <LibConfig/Client.h>
|
#include <LibConfig/Client.h>
|
||||||
#include <LibConfig/Listener.h>
|
#include <LibConfig/Listener.h>
|
||||||
#include <LibCore/ArgsParser.h>
|
#include <LibCore/ArgsParser.h>
|
||||||
#include <LibCore/DeprecatedFile.h>
|
|
||||||
#include <LibCore/Process.h>
|
#include <LibCore/Process.h>
|
||||||
#include <LibCore/StandardPaths.h>
|
#include <LibCore/StandardPaths.h>
|
||||||
#include <LibCore/System.h>
|
#include <LibCore/System.h>
|
||||||
|
@ -109,8 +108,8 @@ ErrorOr<int> serenity_main(Main::Arguments arguments)
|
||||||
|
|
||||||
LexicalPath path(initial_location);
|
LexicalPath path(initial_location);
|
||||||
if (!initial_location.is_empty()) {
|
if (!initial_location.is_empty()) {
|
||||||
if (!ignore_path_resolution)
|
if (auto error_or_path = FileSystem::real_path(initial_location); !ignore_path_resolution && !error_or_path.is_error())
|
||||||
initial_location = Core::DeprecatedFile::real_path_for(initial_location);
|
initial_location = error_or_path.release_value().to_deprecated_string();
|
||||||
|
|
||||||
if (!FileSystem::is_directory(initial_location)) {
|
if (!FileSystem::is_directory(initial_location)) {
|
||||||
// We want to extract zips to a temporary directory when FileManager is launched with a .zip file as its first argument
|
// We want to extract zips to a temporary directory when FileManager is launched with a .zip file as its first argument
|
||||||
|
@ -142,8 +141,8 @@ ErrorOr<int> serenity_main(Main::Arguments arguments)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (initial_location.is_empty())
|
if (auto error_or_cwd = FileSystem::current_working_directory(); initial_location.is_empty() && !error_or_cwd.is_error())
|
||||||
initial_location = Core::DeprecatedFile::current_working_directory();
|
initial_location = error_or_cwd.release_value().to_deprecated_string();
|
||||||
|
|
||||||
if (initial_location.is_empty())
|
if (initial_location.is_empty())
|
||||||
initial_location = Core::StandardPaths::home_directory();
|
initial_location = Core::StandardPaths::home_directory();
|
||||||
|
|
|
@ -12,7 +12,6 @@
|
||||||
#include "ViewWidget.h"
|
#include "ViewWidget.h"
|
||||||
#include <AK/LexicalPath.h>
|
#include <AK/LexicalPath.h>
|
||||||
#include <AK/StringBuilder.h>
|
#include <AK/StringBuilder.h>
|
||||||
#include <LibCore/DeprecatedFile.h>
|
|
||||||
#include <LibCore/Directory.h>
|
#include <LibCore/Directory.h>
|
||||||
#include <LibCore/MappedFile.h>
|
#include <LibCore/MappedFile.h>
|
||||||
#include <LibCore/MimeData.h>
|
#include <LibCore/MimeData.h>
|
||||||
|
|
|
@ -16,4 +16,4 @@ set(GENERATED_SOURCES
|
||||||
)
|
)
|
||||||
|
|
||||||
serenity_app(Run ICON app-run)
|
serenity_app(Run ICON app-run)
|
||||||
target_link_libraries(Run PRIVATE LibCore LibDesktop LibGfx LibGUI LibMain)
|
target_link_libraries(Run PRIVATE LibCore LibFileSystem LibDesktop LibGfx LibGUI LibMain)
|
||||||
|
|
|
@ -9,9 +9,9 @@
|
||||||
#include <AK/LexicalPath.h>
|
#include <AK/LexicalPath.h>
|
||||||
#include <AK/URL.h>
|
#include <AK/URL.h>
|
||||||
#include <Applications/Run/RunGML.h>
|
#include <Applications/Run/RunGML.h>
|
||||||
#include <LibCore/DeprecatedFile.h>
|
|
||||||
#include <LibCore/StandardPaths.h>
|
#include <LibCore/StandardPaths.h>
|
||||||
#include <LibDesktop/Launcher.h>
|
#include <LibDesktop/Launcher.h>
|
||||||
|
#include <LibFileSystem/FileSystem.h>
|
||||||
#include <LibGUI/Button.h>
|
#include <LibGUI/Button.h>
|
||||||
#include <LibGUI/Event.h>
|
#include <LibGUI/Event.h>
|
||||||
#include <LibGUI/FilePicker.h>
|
#include <LibGUI/FilePicker.h>
|
||||||
|
@ -142,13 +142,12 @@ bool RunWindow::run_via_launch(DeprecatedString const& run_input)
|
||||||
auto url = URL::create_with_url_or_path(run_input);
|
auto url = URL::create_with_url_or_path(run_input);
|
||||||
|
|
||||||
if (url.scheme() == "file") {
|
if (url.scheme() == "file") {
|
||||||
auto real_path = Core::DeprecatedFile::real_path_for(url.path());
|
auto real_path_or_error = FileSystem::real_path(url.path());
|
||||||
if (real_path.is_null()) {
|
if (real_path_or_error.is_error()) {
|
||||||
// errno *should* be preserved from Core::DeprecatedFile::real_path_for().
|
warnln("Failed to launch '{}': {}", url.path(), real_path_or_error.error());
|
||||||
warnln("Failed to launch '{}': {}", url.path(), strerror(errno));
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
url = URL::create_with_url_or_path(real_path);
|
url = URL::create_with_url_or_path(real_path_or_error.release_value().to_deprecated_string());
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!Desktop::Launcher::open(url)) {
|
if (!Desktop::Launcher::open(url)) {
|
||||||
|
|
|
@ -147,7 +147,7 @@ ErrorOr<int> serenity_main(Main::Arguments arguments)
|
||||||
if (tree_map_widget.viewpoint() == 0)
|
if (tree_map_widget.viewpoint() == 0)
|
||||||
window->set_title("/ - SpaceAnalyzer");
|
window->set_title("/ - SpaceAnalyzer");
|
||||||
|
|
||||||
breadcrumbbar.append_segment("/", GUI::FileIconProvider::icon_for_path("/").bitmap_for_size(16), "/", "/");
|
breadcrumbbar.append_segment("/", GUI::FileIconProvider::icon_for_path("/"sv).bitmap_for_size(16), "/", "/");
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -9,4 +9,4 @@ set(SOURCES
|
||||||
)
|
)
|
||||||
|
|
||||||
serenity_app(Terminal ICON app-terminal)
|
serenity_app(Terminal ICON app-terminal)
|
||||||
target_link_libraries(Terminal PRIVATE LibConfig LibCore LibDesktop LibGfx LibGUI LibVT LibMain)
|
target_link_libraries(Terminal PRIVATE LibConfig LibCore LibFileSystem LibDesktop LibGfx LibGUI LibVT LibMain)
|
||||||
|
|
|
@ -10,10 +10,10 @@
|
||||||
#include <LibConfig/Client.h>
|
#include <LibConfig/Client.h>
|
||||||
#include <LibConfig/Listener.h>
|
#include <LibConfig/Listener.h>
|
||||||
#include <LibCore/ArgsParser.h>
|
#include <LibCore/ArgsParser.h>
|
||||||
#include <LibCore/DeprecatedFile.h>
|
|
||||||
#include <LibCore/DirIterator.h>
|
#include <LibCore/DirIterator.h>
|
||||||
#include <LibCore/System.h>
|
#include <LibCore/System.h>
|
||||||
#include <LibDesktop/Launcher.h>
|
#include <LibDesktop/Launcher.h>
|
||||||
|
#include <LibFileSystem/FileSystem.h>
|
||||||
#include <LibGUI/Action.h>
|
#include <LibGUI/Action.h>
|
||||||
#include <LibGUI/ActionGroup.h>
|
#include <LibGUI/ActionGroup.h>
|
||||||
#include <LibGUI/Application.h>
|
#include <LibGUI/Application.h>
|
||||||
|
|
|
@ -10,8 +10,8 @@
|
||||||
|
|
||||||
#include "MainWidget.h"
|
#include "MainWidget.h"
|
||||||
#include <LibCore/ArgsParser.h>
|
#include <LibCore/ArgsParser.h>
|
||||||
#include <LibCore/DeprecatedFile.h>
|
|
||||||
#include <LibCore/System.h>
|
#include <LibCore/System.h>
|
||||||
|
#include <LibFileSystem/FileSystem.h>
|
||||||
#include <LibFileSystemAccessClient/Client.h>
|
#include <LibFileSystemAccessClient/Client.h>
|
||||||
#include <LibGUI/Application.h>
|
#include <LibGUI/Application.h>
|
||||||
#include <LibGUI/Icon.h>
|
#include <LibGUI/Icon.h>
|
||||||
|
@ -33,10 +33,10 @@ ErrorOr<int> serenity_main(Main::Arguments arguments)
|
||||||
parser.add_positional_argument(file_to_edit, "Theme file to edit", "file", Core::ArgsParser::Required::No);
|
parser.add_positional_argument(file_to_edit, "Theme file to edit", "file", Core::ArgsParser::Required::No);
|
||||||
parser.parse(arguments);
|
parser.parse(arguments);
|
||||||
|
|
||||||
Optional<DeprecatedString> path = {};
|
Optional<String> path = {};
|
||||||
|
|
||||||
if (!file_to_edit.is_empty())
|
if (auto error_or_path = FileSystem::absolute_path(file_to_edit); !file_to_edit.is_empty() && !error_or_path.is_error())
|
||||||
path = Core::DeprecatedFile::absolute_path(file_to_edit);
|
path = error_or_path.release_value();
|
||||||
|
|
||||||
TRY(Core::System::pledge("stdio recvfd sendfd thread rpath unix"));
|
TRY(Core::System::pledge("stdio recvfd sendfd thread rpath unix"));
|
||||||
TRY(Core::System::unveil("/tmp/session/%sid/portal/filesystemaccess", "rw"));
|
TRY(Core::System::unveil("/tmp/session/%sid/portal/filesystemaccess", "rw"));
|
||||||
|
@ -52,7 +52,7 @@ ErrorOr<int> serenity_main(Main::Arguments arguments)
|
||||||
// Note: This is deferred to ensure that the window has already popped and thus proper window stealing can be performed.
|
// Note: This is deferred to ensure that the window has already popped and thus proper window stealing can be performed.
|
||||||
app->event_loop().deferred_invoke(
|
app->event_loop().deferred_invoke(
|
||||||
[&window, &path, &main_widget]() {
|
[&window, &path, &main_widget]() {
|
||||||
auto response = FileSystemAccessClient::Client::the().request_file_read_only_approved(window, path.value());
|
auto response = FileSystemAccessClient::Client::the().request_file_read_only_approved(window, path.value().to_deprecated_string());
|
||||||
if (response.is_error())
|
if (response.is_error())
|
||||||
GUI::MessageBox::show_error(window, DeprecatedString::formatted("Opening \"{}\" failed: {}", path.value(), response.error()));
|
GUI::MessageBox::show_error(window, DeprecatedString::formatted("Opening \"{}\" failed: {}", path.value(), response.error()));
|
||||||
else {
|
else {
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue