Merge pull request #19293 from hrydgard/remote-disc-ui-update

Rework remote ISO UI a bit
This commit is contained in:
Henrik Rydgård 2024-06-23 18:08:41 +02:00 committed by GitHub
commit 515cac745c
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
47 changed files with 292 additions and 137 deletions

View File

@ -34,9 +34,9 @@ dependencies = [
[[package]]
name = "anstyle-query"
version = "1.0.3"
version = "1.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a64c907d4e79225ac72e2a354c9ce84d50ebb4586dee56c82b3ee73004f537f5"
checksum = "ad186efb764318d35165f1758e7dcef3b10628e26d41a44bc5550652e6804391"
dependencies = [
"windows-sys",
]
@ -53,9 +53,9 @@ dependencies = [
[[package]]
name = "clap"
version = "4.5.4"
version = "4.5.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "90bc066a67923782aa8515dbaea16946c5bcc5addbd668bb80af688e53e548a0"
checksum = "5db83dced34638ad474f39f250d7fea9598bdd239eaced1bdf45d597da0f433f"
dependencies = [
"clap_builder",
"clap_derive",
@ -63,9 +63,9 @@ dependencies = [
[[package]]
name = "clap_builder"
version = "4.5.2"
version = "4.5.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ae129e2e766ae0ec03484e609954119f123cc1fe650337e155d03b022f24f7b4"
checksum = "f7e204572485eb3fbf28f871612191521df159bc3e15a9f5064c66dba3a8c05f"
dependencies = [
"anstream",
"anstyle",
@ -75,9 +75,9 @@ dependencies = [
[[package]]
name = "clap_derive"
version = "4.5.4"
version = "4.5.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "528131438037fd55894f62d6e9f068b8f45ac57ffa77517819645d10aed04f64"
checksum = "c780290ccf4fb26629baa7a1081e68ced113f1d3ec302fa5948f1c381ebf06c6"
dependencies = [
"heck",
"proc-macro2",
@ -87,9 +87,9 @@ dependencies = [
[[package]]
name = "clap_lex"
version = "0.7.0"
version = "0.7.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "98cc8fbded0c607b7ba9dd60cd98df59af97e84d24e49c8557331cfc26d301ce"
checksum = "4b82cf0babdbd58558212896d1a4272303a57bdb245c2bf1147185fb45640e70"
[[package]]
name = "colorchoice"
@ -118,9 +118,9 @@ dependencies = [
[[package]]
name = "proc-macro2"
version = "1.0.84"
version = "1.0.86"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ec96c6a92621310b51366f1e28d05ef11489516e93be030060e5fc12024a49d6"
checksum = "5e719e8df665df0d1c8fbfd238015744736151d4445ec0836b8e628aae103b77"
dependencies = [
"unicode-ident",
]
@ -142,9 +142,9 @@ checksum = "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f"
[[package]]
name = "syn"
version = "2.0.66"
version = "2.0.67"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c42f3f41a2de00b01c0aaad383c5a45241efc8b2d1eda5661812fda5f3cdcff5"
checksum = "ff8655ed1d86f3af4ee3fd3263786bc14245ad17c4c7e85ba7187fb3ae028c90"
dependencies = [
"proc-macro2",
"quote",
@ -159,9 +159,9 @@ checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b"
[[package]]
name = "utf8parse"
version = "0.2.1"
version = "0.2.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "711b9620af191e0cdc7468a8d14e709c3dcdb115b36f838e601583af800a370a"
checksum = "06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821"
[[package]]
name = "windows-sys"

View File

@ -44,6 +44,7 @@
#include "Core/System.h"
#include "Core/WebServer.h"
#include "UI/RemoteISOScreen.h"
#include "UI/OnScreenDisplay.h"
using namespace UI;
@ -271,10 +272,22 @@ static bool LoadGameList(const Path &url, std::vector<Path> &games) {
return !games.empty();
}
RemoteISOScreen::RemoteISOScreen(const Path &filename) : UIDialogScreenWithGameBackground(filename) {}
RemoteISOScreen::RemoteISOScreen(const Path &filename) : TabbedUIDialogScreenWithGameBackground(filename) {}
void RemoteISOScreen::CreateTabs() {
auto ri = GetI18NCategory(I18NCat::REMOTEISO);
UI::LinearLayout *connect = AddTab("Connect", ri->T("Connect"));
connect->SetSpacing(5.0f);
CreateConnectTab(connect);
UI::LinearLayout *settings = AddTab("Settings", ri->T("Settings"));
CreateSettingsTab(settings);
}
void RemoteISOScreen::update() {
UIDialogScreenWithBackground::update();
TabbedUIDialogScreenWithGameBackground::update();
if (!WebServerStopped(WebServerFlags::DISCS)) {
auto result = IsServerAllowed(g_Config.iRemoteISOPort);
@ -296,21 +309,28 @@ void RemoteISOScreen::update() {
serverRunning_ = nowRunning;
}
void RemoteISOScreen::CreateViews() {
void RemoteISOScreen::CreateConnectTab(UI::ViewGroup *tab) {
auto di = GetI18NCategory(I18NCat::DIALOG);
auto ri = GetI18NCategory(I18NCat::REMOTEISO);
Margins actionMenuMargins(0, 20, 15, 0);
Margins contentMargins(0, 20, 5, 5);
ViewGroup *leftColumn = new ScrollView(ORIENT_VERTICAL, new LinearLayoutParams(FILL_PARENT, FILL_PARENT, 0.4f, contentMargins));
LinearLayout *leftColumnItems = new LinearLayout(ORIENT_VERTICAL, new LayoutParams(WRAP_CONTENT, FILL_PARENT));
ViewGroup *rightColumn = new ScrollView(ORIENT_VERTICAL, new LinearLayoutParams(300, FILL_PARENT, actionMenuMargins));
LinearLayout *rightColumnItems = new LinearLayout(ORIENT_VERTICAL);
if (serverRunning_) {
leftColumnItems->Add(new NoticeView(NoticeLevel::SUCCESS, ri->T("Currently sharing"), "", new LinearLayoutParams(Margins(12, 5, 0, 5))));
} else {
leftColumnItems->Add(new NoticeView(NoticeLevel::INFO, ri->T("Not currently sharing"), "", new LinearLayoutParams(Margins(12, 5, 0, 5))));
}
if ((RemoteISOShareType)g_Config.iRemoteISOShareType == RemoteISOShareType::RECENT) {
leftColumnItems->Add(new TextView(ri->T("RemoteISODesc", "Games in your recent list will be shared"), new LinearLayoutParams(Margins(12, 5, 0, 5))));
} else {
leftColumnItems->Add(new TextView(std::string(ri->T("Share Games(Server)")) + " " + Path(g_Config.sRemoteISOSharedDir).ToVisualString(), new LinearLayoutParams(Margins(12, 5, 0, 5))));
leftColumnItems->Add(new TextView(std::string(ri->T("Share Games (Server)")) + ": " + Path(g_Config.sRemoteISOSharedDir).ToVisualString(), new LinearLayoutParams(Margins(12, 5, 0, 5))));
}
leftColumnItems->Add(new TextView(ri->T("RemoteISOWifi", "Note: Connect both devices to the same wifi"), new LinearLayoutParams(Margins(12, 5, 0, 5))));
firewallWarning_ = leftColumnItems->Add(new TextView(ri->T("RemoteISOWinFirewall", "WARNING: Windows Firewall is blocking sharing"), new LinearLayoutParams(Margins(12, 5, 0, 5))));
@ -330,18 +350,73 @@ void RemoteISOScreen::CreateViews() {
rightColumnItems->Add(new Choice(ri->T("Share Games (Server)")))->OnClick.Handle(this, &RemoteISOScreen::HandleStartServer);
browseChoice->SetEnabled(true);
}
Choice *settingsChoice = new Choice(ri->T("Settings"));
rightColumnItems->Add(settingsChoice)->OnClick.Handle(this, &RemoteISOScreen::HandleSettings);
LinearLayout *beforeBack = new LinearLayout(ORIENT_HORIZONTAL, new AnchorLayoutParams(FILL_PARENT, FILL_PARENT));
LinearLayout *beforeBack = new LinearLayout(ORIENT_HORIZONTAL, new LayoutParams(FILL_PARENT, FILL_PARENT));
beforeBack->Add(leftColumn);
beforeBack->Add(rightColumn);
root_ = new AnchorLayout(new LayoutParams(FILL_PARENT, FILL_PARENT));
root_->Add(beforeBack);
root_->Add(new Choice(di->T("Back"), "", false, new AnchorLayoutParams(150, WRAP_CONTENT, 10, NONE, NONE, 10)))->OnClick.Handle<UIScreen>(this, &UIScreen::OnBack);
leftColumn->Add(leftColumnItems);
rightColumn->Add(rightColumnItems);
tab->Add(beforeBack);
}
void RemoteISOScreen::CreateSettingsTab(UI::ViewGroup *remoteisoSettings) {
serverRunning_ = !WebServerStopped(WebServerFlags::DISCS);
auto ri = GetI18NCategory(I18NCat::REMOTEISO);
remoteisoSettings->Add(new ItemHeader(ri->T("Remote disc streaming")));
remoteisoSettings->Add(new CheckBox(&g_Config.bRemoteShareOnStartup, ri->T("Share on PPSSPP startup")));
remoteisoSettings->Add(new CheckBox(&g_Config.bRemoteISOManual, ri->T("Manual Mode Client", "Manually configure client")));
remoteisoSettings->Add(new CheckBox(&g_Config.bRemoteTab, ri->T("Show Remote tab on main screen")));
if (System_GetPropertyBool(SYSPROP_HAS_FOLDER_BROWSER)) {
static const char *shareTypes[] = { "Recent files", "Choose directory" };
remoteisoSettings->Add(new PopupMultiChoice(&g_Config.iRemoteISOShareType, ri->T("Files to share"), shareTypes, 0, ARRAY_SIZE(shareTypes), I18NCat::REMOTEISO, screenManager()));
FolderChooserChoice *folderChooser = remoteisoSettings->Add(new FolderChooserChoice(GetRequesterToken(), &g_Config.sRemoteISOSharedDir, ri->T("Files to share")));
folderChooser->SetEnabledFunc([=]() {
return g_Config.iRemoteISOShareType == (int)RemoteISOShareType::LOCAL_FOLDER;
});
} else {
// Can't pick a folder, only allow sharing recent stuff.
g_Config.iRemoteISOShareType = (int)RemoteISOShareType::RECENT;
}
UI::Choice *remoteServer = new PopupTextInputChoice(GetRequesterToken(), &g_Config.sLastRemoteISOServer, ri->T("Remote Server"), "", 255, screenManager());
remoteisoSettings->Add(remoteServer);
remoteServer->SetEnabledPtr(&g_Config.bRemoteISOManual);
PopupSliderChoice *remotePort = remoteisoSettings->Add(new PopupSliderChoice(&g_Config.iLastRemoteISOPort, 0, 65535, 0, ri->T("Remote Port"), 100, screenManager()));
remotePort->SetEnabledPtr(&g_Config.bRemoteISOManual);
UI::Choice *remoteSubdir;
{
PopupTextInputChoice *remoteSubdirInput = new PopupTextInputChoice(GetRequesterToken(), &g_Config.sRemoteISOSubdir, ri->T("Remote Subdirectory"), "", 255, screenManager());
remoteSubdirInput->OnChange.Handle(this, &RemoteISOScreen::OnChangeRemoteISOSubdir);
remoteSubdir = remoteSubdirInput;
}
remoteisoSettings->Add(remoteSubdir);
remoteSubdir->SetEnabledPtr(&g_Config.bRemoteISOManual);
PopupSliderChoice *portChoice = new PopupSliderChoice(&g_Config.iRemoteISOPort, 0, 65535, 0, ri->T("Local Server Port", "Local Server Port"), 100, screenManager());
remoteisoSettings->Add(portChoice);
portChoice->SetDisabledPtr(&serverRunning_);
}
static void CleanupRemoteISOSubdir() {
// Replace spaces and force forward slashes.
// TODO: Maybe we should uri escape this after?
ReplaceAll(g_Config.sRemoteISOSubdir, " ", "%20");
ReplaceAll(g_Config.sRemoteISOSubdir, "\\", "/");
// Make sure it begins with /.
if (g_Config.sRemoteISOSubdir.empty() || g_Config.sRemoteISOSubdir[0] != '/')
g_Config.sRemoteISOSubdir = "/" + g_Config.sRemoteISOSubdir;
}
UI::EventReturn RemoteISOScreen::OnChangeRemoteISOSubdir(UI::EventParams &e) {
CleanupRemoteISOSubdir();
return UI::EVENT_DONE;
}
UI::EventReturn RemoteISOScreen::HandleStartServer(UI::EventParams &e) {
@ -368,11 +443,6 @@ UI::EventReturn RemoteISOScreen::HandleBrowse(UI::EventParams &e) {
return EVENT_DONE;
}
UI::EventReturn RemoteISOScreen::HandleSettings(UI::EventParams &e) {
screenManager()->push(new RemoteISOSettingsScreen());
return EVENT_DONE;
}
RemoteISOConnectScreen::RemoteISOConnectScreen() {
scanCancelled = false;
scanAborted = false;
@ -570,84 +640,3 @@ void RemoteISOBrowseScreen::CreateViews() {
upgradeBar_ = 0;
}
RemoteISOSettingsScreen::RemoteISOSettingsScreen() {
serverRunning_ = !WebServerStopped(WebServerFlags::DISCS);
}
void RemoteISOSettingsScreen::update() {
UIDialogScreenWithBackground::update();
bool nowRunning = !WebServerStopped(WebServerFlags::DISCS);
if (serverRunning_ != nowRunning) {
RecreateViews();
}
serverRunning_ = nowRunning;
}
void RemoteISOSettingsScreen::CreateViews() {
auto ri = GetI18NCategory(I18NCat::REMOTEISO);
ViewGroup *remoteisoSettingsScroll = new ScrollView(ORIENT_VERTICAL, new LayoutParams(FILL_PARENT, FILL_PARENT));
remoteisoSettingsScroll->SetTag("RemoteISOSettings");
LinearLayout *remoteisoSettings = new LinearLayoutList(ORIENT_VERTICAL);
remoteisoSettings->SetSpacing(0);
remoteisoSettingsScroll->Add(remoteisoSettings);
remoteisoSettings->Add(new ItemHeader(ri->T("Remote disc streaming")));
remoteisoSettings->Add(new CheckBox(&g_Config.bRemoteShareOnStartup, ri->T("Share on PPSSPP startup")));
remoteisoSettings->Add(new CheckBox(&g_Config.bRemoteISOManual, ri->T("Manual Mode Client", "Manually configure client")));
remoteisoSettings->Add(new CheckBox(&g_Config.bRemoteTab, ri->T("Show Remote tab on main screen")));
if (System_GetPropertyBool(SYSPROP_HAS_FOLDER_BROWSER)) {
static const char *shareTypes[] = { "Recent files", "Choose directory" };
remoteisoSettings->Add(new PopupMultiChoice(&g_Config.iRemoteISOShareType, ri->T("Files to share"), shareTypes, 0, ARRAY_SIZE(shareTypes), I18NCat::REMOTEISO, screenManager()));
FolderChooserChoice *folderChooser = remoteisoSettings->Add(new FolderChooserChoice(GetRequesterToken(), &g_Config.sRemoteISOSharedDir, ri->T("Files to share")));
folderChooser->SetEnabledFunc([=]() {
return g_Config.iRemoteISOShareType == (int)RemoteISOShareType::LOCAL_FOLDER;
});
} else {
// Can't pick a folder, only allow sharing recent stuff.
g_Config.iRemoteISOShareType = (int)RemoteISOShareType::RECENT;
}
UI::Choice *remoteServer = new PopupTextInputChoice(GetRequesterToken(), &g_Config.sLastRemoteISOServer, ri->T("Remote Server"), "", 255, screenManager());
remoteisoSettings->Add(remoteServer);
remoteServer->SetEnabledPtr(&g_Config.bRemoteISOManual);
PopupSliderChoice *remotePort = remoteisoSettings->Add(new PopupSliderChoice(&g_Config.iLastRemoteISOPort, 0, 65535, 0, ri->T("Remote Port"), 100, screenManager()));
remotePort->SetEnabledPtr(&g_Config.bRemoteISOManual);
UI::Choice *remoteSubdir;
{
PopupTextInputChoice *remoteSubdirInput = new PopupTextInputChoice(GetRequesterToken(), &g_Config.sRemoteISOSubdir, ri->T("Remote Subdirectory"), "", 255, screenManager());
remoteSubdirInput->OnChange.Handle(this, &RemoteISOSettingsScreen::OnChangeRemoteISOSubdir);
remoteSubdir = remoteSubdirInput;
}
remoteisoSettings->Add(remoteSubdir);
remoteSubdir->SetEnabledPtr(&g_Config.bRemoteISOManual);
PopupSliderChoice *portChoice = new PopupSliderChoice(&g_Config.iRemoteISOPort, 0, 65535, 0, ri->T("Local Server Port", "Local Server Port"), 100, screenManager());
remoteisoSettings->Add(portChoice);
portChoice->SetDisabledPtr(&serverRunning_);
remoteisoSettings->Add(new Spacer(25.0));
root_ = new AnchorLayout(new LayoutParams(FILL_PARENT, FILL_PARENT));
root_->Add(remoteisoSettingsScroll);
AddStandardBack(root_);
}
static void CleanupRemoteISOSubdir() {
// Replace spaces and force forward slashes.
// TODO: Maybe we should uri escape this after?
ReplaceAll(g_Config.sRemoteISOSubdir, " ", "%20");
ReplaceAll(g_Config.sRemoteISOSubdir, "\\", "/");
// Make sure it begins with /.
if (g_Config.sRemoteISOSubdir.empty() || g_Config.sRemoteISOSubdir[0] != '/')
g_Config.sRemoteISOSubdir = "/" + g_Config.sRemoteISOSubdir;
}
UI::EventReturn RemoteISOSettingsScreen::OnChangeRemoteISOSubdir(UI::EventParams &e) {
CleanupRemoteISOSubdir();
return UI::EVENT_DONE;
}

View File

@ -24,21 +24,27 @@
#include "Common/UI/ViewGroup.h"
#include "UI/MiscScreens.h"
#include "UI/MainScreen.h"
#include "UI/TabbedDialogScreen.h"
class RemoteISOScreen : public UIDialogScreenWithGameBackground {
class RemoteISOScreen : public TabbedUIDialogScreenWithGameBackground {
public:
RemoteISOScreen(const Path &filename);
const char *tag() const override { return "RemoteISO"; }
void CreateTabs() override;
protected:
UI::EventReturn OnChangeRemoteISOSubdir(UI::EventParams &e);
void CreateConnectTab(UI::ViewGroup *viewGroup);
void CreateSettingsTab(UI::ViewGroup *viewGroup);
bool ShowSearchControls() const override { return false; }
void update() override;
void CreateViews() override;
UI::EventReturn HandleStartServer(UI::EventParams &e);
UI::EventReturn HandleStopServer(UI::EventParams &e);
UI::EventReturn HandleBrowse(UI::EventParams &e);
UI::EventReturn HandleSettings(UI::EventParams &e);
UI::TextView *firewallWarning_ = nullptr;
bool serverRunning_ = false;
@ -97,20 +103,5 @@ protected:
std::vector<Path> games_;
};
class RemoteISOSettingsScreen : public UIDialogScreenWithBackground {
public:
RemoteISOSettingsScreen();
const char *tag() const override { return "RemoteISOSettings"; }
protected:
void update() override;
void CreateViews() override;
UI::EventReturn OnChangeRemoteISOSubdir(UI::EventParams &e);
bool serverRunning_ = false;
};
std::string RemoteSubdir();
std::string FormatRemoteISOUrl(const char *host, int port, const char *subdir);

View File

@ -1064,8 +1064,12 @@ written = ‎مكتوب في لغة C++ من أجل السرعة والمتان
[RemoteISO]
Browse Games = ‎تصفح الألعاب
Connect = Connect
Currently sharing = Currently sharing
Files to share = Files to share
Local Server Port = ‎منفذ السرفر المحلي
Manual Mode Client = ‎الوضع اليدوي للعميل
Not currently sharing = Not currently sharing
Remote disc streaming = Remote disc streaming
Remote Port = ‎منفذ السرفر البعيد
Remote Server = ‎السرفر البعيد

View File

@ -1056,8 +1056,12 @@ written = Written in C++ for speed and portability
[RemoteISO]
Browse Games = Browse games
Connect = Connect
Currently sharing = Currently sharing
Files to share = Files to share
Local Server Port = Local server port
Manual Mode Client = Manual mode client
Not currently sharing = Not currently sharing
Remote disc streaming = Remote disc streaming
Remote Port = Remote port
Remote Server = Remote server

View File

@ -1056,8 +1056,12 @@ written = Написано в C++ за бързина и съвместимос
[RemoteISO]
Browse Games = Browse games
Connect = Connect
Currently sharing = Currently sharing
Files to share = Files to share
Local Server Port = Local server port
Manual Mode Client = Manual mode client
Not currently sharing = Not currently sharing
Remote disc streaming = Remote disc streaming
Remote Port = Remote port
Remote Server = Remote server

View File

@ -1056,8 +1056,12 @@ written = Written in C++ for speed and portability
[RemoteISO]
Browse Games = Browse games
Connect = Connect
Currently sharing = Currently sharing
Files to share = Files to share
Local Server Port = Local server port
Manual Mode Client = Manual mode client
Not currently sharing = Not currently sharing
Remote disc streaming = Remote disc streaming
Remote Port = Remote port
Remote Server = Remote server

View File

@ -1056,8 +1056,12 @@ written = Vytvořeno v jazyce C++ pro rychlost a přenosnost
[RemoteISO]
Browse Games = Browse games
Connect = Connect
Currently sharing = Currently sharing
Files to share = Files to share
Local Server Port = Local server port
Manual Mode Client = Manual mode client
Not currently sharing = Not currently sharing
Remote disc streaming = Remote disc streaming
Remote Port = Remote port
Remote Server = Remote server

View File

@ -1056,8 +1056,12 @@ written = Skrevet i C++ for hastighed og portabilitet
[RemoteISO]
Browse Games = Browse games
Connect = Connect
Currently sharing = Currently sharing
Files to share = Files to share
Local Server Port = Local server port
Manual Mode Client = Manual mode client
Not currently sharing = Not currently sharing
Remote disc streaming = Remote disc streaming
Remote Port = Remote port
Remote Server = Remote server

View File

@ -1056,8 +1056,12 @@ written = Programmiert in C++ für Geschwindigkeit und Portabilität
[RemoteISO]
Browse Games = Spiele durchsuchen
Connect = Connect
Currently sharing = Currently sharing
Files to share = Files to share
Local Server Port = Lokaler Serverport
Manual Mode Client = Manual mode client
Not currently sharing = Not currently sharing
Remote disc streaming = Remote Disc streaming
Remote Port = Remote Port
Remote Server = Remote Server

View File

@ -1056,8 +1056,12 @@ written = Pake C++ digaraka yamo na malassi
[RemoteISO]
Browse Games = Browse games
Connect = Connect
Currently sharing = Currently sharing
Files to share = Files to share
Local Server Port = Local server port
Manual Mode Client = Manual mode client
Not currently sharing = Not currently sharing
Remote disc streaming = Remote disc streaming
Remote Port = Remote port
Remote Server = Remote server

View File

@ -1080,8 +1080,12 @@ Spanish = Spanish
[RemoteISO]
Browse Games = Browse games
Connect = Connect
Currently sharing = Currently sharing
Files to share = Files to share
Local Server Port = Local server port
Manual Mode Client = Manually configure client
Not currently sharing = Not currently sharing
Remote disc streaming = Remote disc streaming
Remote Port = Remote port
Remote Server = Remote server

View File

@ -1057,8 +1057,12 @@ written = Escrito en lenguaje C++ para una mejor portabilidad y velocidad
[RemoteISO]
Browse Games = Buscar juegos
Connect = Connect
Currently sharing = Currently sharing
Files to share = Files to share
Local Server Port = Puerto del servidor local
Manual Mode Client = Cliente en modo manual
Not currently sharing = Not currently sharing
Remote disc streaming = Streaming de disco remoto
Remote Port = Puerto remoto
Remote Server = Servidor remoto

View File

@ -1058,8 +1058,12 @@ written = Escrito en lenguaje C++ para una mejor portabilidad y velocidad
[RemoteISO]
Browse Games = Buscar juegos
Connect = Connect
Currently sharing = Currently sharing
Files to share = Files to share
Local Server Port = Puerto del servidor local
Manual Mode Client = Clíente modo manual
Not currently sharing = Not currently sharing
Remote disc streaming = Streaming de disco remoto
Remote Port = Puerto remoto
Remote Server = Servidor remoto

View File

@ -1056,8 +1056,12 @@ written = ‎نوشته شده است C++ برای سریع و پرتابل بو
[RemoteISO]
Browse Games = Browse games
Connect = Connect
Currently sharing = Currently sharing
Files to share = Files to share
Local Server Port = Local server port
Manual Mode Client = Manual mode client
Not currently sharing = Not currently sharing
Remote disc streaming = Remote disc streaming
Remote Port = Remote port
Remote Server = Remote server

View File

@ -1056,8 +1056,12 @@ written = Kirjoitettu C++:ssa nopeutta ja siirrettävyyttä varten
[RemoteISO]
Browse Games = Selaa pelejä
Connect = Connect
Currently sharing = Currently sharing
Files to share = Files to share
Local Server Port = Paikallisen palvelimen portti
Manual Mode Client = Käsikäyttötilan asiakas
Not currently sharing = Not currently sharing
Remote disc streaming = Etälevyjen suoratoisto
Remote Port = Etäportti
Remote Server = Etäpavelin

View File

@ -1047,8 +1047,12 @@ written = Écrit en C++ pour la vitesse et la portabilité
[RemoteISO]
Browse Games = Parcourir les jeux
Connect = Connect
Currently sharing = Currently sharing
Files to share = Files to share
Local Server Port = Port local du serveur
Manual Mode Client = Configurer le client manuellement
Not currently sharing = Not currently sharing
Remote disc streaming = Streaming de disque distant
Remote Port = Port distant
Remote Server = Serveur distant

View File

@ -1056,8 +1056,12 @@ written = Escrito en linguaxe C++ para unha mellor portabilidade e velocidade
[RemoteISO]
Browse Games = Browse games
Connect = Connect
Currently sharing = Currently sharing
Files to share = Files to share
Local Server Port = Local server port
Manual Mode Client = Manual mode client
Not currently sharing = Not currently sharing
Remote disc streaming = Remote disc streaming
Remote Port = Remote port
Remote Server = Remote server

View File

@ -1056,8 +1056,12 @@ written = Γραμμένο σε C++ για ταχύτητα και φορητό
[RemoteISO]
Browse Games = Περιήγηση παιχνιδιών
Connect = Connect
Currently sharing = Currently sharing
Files to share = Files to share
Local Server Port = Τοπική θύρα διακομιστή
Manual Mode Client = Λειτουργία πελάτη Manual
Not currently sharing = Not currently sharing
Remote disc streaming = Απομακρυσμένη ροή του δίσκου
Remote Port = Απομακρυσμένη θύρα
Remote Server = Απομακρυσμένος διακομιστής

View File

@ -1056,8 +1056,12 @@ written = למהירות וניידות C++ נכתב ב
[RemoteISO]
Browse Games = Browse games
Connect = Connect
Currently sharing = Currently sharing
Files to share = Files to share
Local Server Port = Local server port
Manual Mode Client = Manual mode client
Not currently sharing = Not currently sharing
Remote disc streaming = Remote disc streaming
Remote Port = Remote port
Remote Server = Remote server

View File

@ -1056,8 +1056,12 @@ written = ב בתכנ ++C תודיינו תוריהמל
[RemoteISO]
Browse Games = Browse games
Connect = Connect
Currently sharing = Currently sharing
Files to share = Files to share
Local Server Port = Local server port
Manual Mode Client = Manual mode client
Not currently sharing = Not currently sharing
Remote disc streaming = Remote disc streaming
Remote Port = Remote port
Remote Server = Remote server

View File

@ -1056,8 +1056,12 @@ written = Napisan u C++ za brzinu i za pokretnost
[RemoteISO]
Browse Games = Pretraži igre
Connect = Connect
Currently sharing = Currently sharing
Files to share = Files to share
Local Server Port = Local server port
Manual Mode Client = Ručno konfiguriraj klijent
Not currently sharing = Not currently sharing
Remote disc streaming = Daljinsko dijeljenje diska
Remote Port = porta Daljinskog
Remote Server = Daljinski server

View File

@ -1056,8 +1056,12 @@ written = C++ban írva a sebességért és portolhatóságért
[RemoteISO]
Browse Games = Játékok tallózása
Connect = Connect
Currently sharing = Currently sharing
Files to share = Files to share
Local Server Port = Lokális szerver port
Manual Mode Client = Kliens kézi konfigurálása
Not currently sharing = Not currently sharing
Remote disc streaming = Távoli lemez streamelése
Remote Port = Távoli port
Remote Server = Távoli szerver

View File

@ -1056,8 +1056,12 @@ written = Ditulis dalam bahasa C++ demi kecepatan dan portabilitas
[RemoteISO]
Browse Games = Telusuri permainan
Connect = Connect
Currently sharing = Currently sharing
Files to share = Files to share
Local Server Port = Port pelayan lokal
Manual Mode Client = Mode klien manual
Not currently sharing = Not currently sharing
Remote disc streaming = Pengendali disk streaming jarak jauh
Remote Port = Pengendali port jarak jauh
Remote Server = Pengandali server jarak jauh

View File

@ -1057,8 +1057,12 @@ WhatsThis = Cos'è questo?
[RemoteISO]
Browse Games = Cerca i giochi
Connect = Connect
Currently sharing = Currently sharing
Files to share = Files to share
Local Server Port = Porta locale del server
Manual Mode Client = Client in modalità manuale
Not currently sharing = Not currently sharing
Remote disc streaming = Streaming del disco remoto
Remote Port = Porta in remoto
Remote Server = Server in remoto

View File

@ -1056,8 +1056,12 @@ WhatsThis = 詳細はこちら
[RemoteISO]
Browse Games = ゲームをブラウズする
Connect = Connect
Currently sharing = Currently sharing
Files to share = Files to share
Local Server Port = ローカルサーバーのポート
Manual Mode Client = マニュアルモードクライアント
Not currently sharing = Not currently sharing
Remote disc streaming = リモートディスクストリーミング
Remote Port = リモートポート
Remote Server = リモートサーバー

View File

@ -1056,8 +1056,12 @@ written = Ditulis dalam C++ Kanggo kacepetan lan portabilitas
[RemoteISO]
Browse Games = Browse games
Connect = Connect
Currently sharing = Currently sharing
Files to share = Files to share
Local Server Port = Local server port
Manual Mode Client = Manual mode client
Not currently sharing = Not currently sharing
Remote disc streaming = Remote disc streaming
Remote Port = Remote port
Remote Server = Remote server

View File

@ -1056,8 +1056,12 @@ Spanish = 스페인어
[RemoteISO]
Browse Games = 게임 찾아보기
Connect = Connect
Currently sharing = Currently sharing
Files to share = Files to share
Local Server Port = 로컬 서버 포트
Manual Mode Client = 수동 모드 클라이언트
Not currently sharing = Not currently sharing
Remote disc streaming = 원격 디스크 스트리밍
Remote Port = 원격 포트
Remote Server = 원격 서버

View File

@ -1070,8 +1070,12 @@ Spanish = ئیسپانی
[RemoteISO]
Browse Games = Browse games
Connect = Connect
Currently sharing = Currently sharing
Files to share = Files to share
Local Server Port = Local server port
Manual Mode Client = Manually configure client
Not currently sharing = Not currently sharing
Remote disc streaming = Remote disc streaming
Remote Port = Remote port
Remote Server = Remote server

View File

@ -1056,8 +1056,12 @@ written = ຂຽນໂດຍພາສາ C++ ເພື່ອປະສິດທ
[RemoteISO]
Browse Games = Browse games
Connect = Connect
Currently sharing = Currently sharing
Files to share = Files to share
Local Server Port = Local server port
Manual Mode Client = Manual mode client
Not currently sharing = Not currently sharing
Remote disc streaming = Remote disc streaming
Remote Port = Remote port
Remote Server = Remote server

View File

@ -1056,8 +1056,12 @@ written = Parašyta C++ kalboje dėl greičio ir portabilumo
[RemoteISO]
Browse Games = Browse games
Connect = Connect
Currently sharing = Currently sharing
Files to share = Files to share
Local Server Port = Local server port
Manual Mode Client = Manual mode client
Not currently sharing = Not currently sharing
Remote disc streaming = Remote disc streaming
Remote Port = Remote port
Remote Server = Remote server

View File

@ -1056,8 +1056,12 @@ written = Ditulis dengan C++ untuk kelajuan dan mudah alih
[RemoteISO]
Browse Games = Browse games
Connect = Connect
Currently sharing = Currently sharing
Files to share = Files to share
Local Server Port = Local server port
Manual Mode Client = Manual mode client
Not currently sharing = Not currently sharing
Remote disc streaming = Remote disc streaming
Remote Port = Remote port
Remote Server = Remote server

View File

@ -1056,8 +1056,12 @@ written = Geschreven in C++ voor snelheid en draagbaarheid
[RemoteISO]
Browse Games = Games bladeren...
Connect = Connect
Currently sharing = Currently sharing
Files to share = Files to share
Local Server Port = Lokale serverpoort
Manual Mode Client = Handmatige modus client
Not currently sharing = Not currently sharing
Remote disc streaming = Externe schijf streamen
Remote Port = Externe poort
Remote Server = Externe server

View File

@ -1056,8 +1056,12 @@ written = Written in C++ for speed and portability
[RemoteISO]
Browse Games = Browse games
Connect = Connect
Currently sharing = Currently sharing
Files to share = Files to share
Local Server Port = Local server port
Manual Mode Client = Manual mode client
Not currently sharing = Not currently sharing
Remote disc streaming = Remote disc streaming
Remote Port = Remote port
Remote Server = Remote server

View File

@ -1061,8 +1061,12 @@ written = Napisano w C++ dla wydajności i mobilności
[RemoteISO]
Browse Games = Przeglądaj gry
Connect = Connect
Currently sharing = Currently sharing
Files to share = Files to share
Local Server Port = Port serwera lokalnego
Manual Mode Client = Ręcznie skonfiguruj klienta
Not currently sharing = Not currently sharing
Remote disc streaming = Zdalna transmisja płyty
Remote Port = Port serwera zdalnego
Remote Server = Serwer zdalny

View File

@ -1080,8 +1080,12 @@ Spanish = Espanhol
[RemoteISO]
Browse Games = Procurar jogos
Connect = Connect
Currently sharing = Currently sharing
Files to share = Files to share
Local Server Port = Porta do servidor local
Manual Mode Client = Configurar o cliente manualmente
Not currently sharing = Not currently sharing
Remote disc streaming = Streaming remoto do disco
Remote Port = Porta remota
Remote Server = Servidor remoto

View File

@ -1082,8 +1082,12 @@ WhatsThis = O que é isto?
[RemoteISO]
Browse Games = Procurar jogos
Connect = Connect
Currently sharing = Currently sharing
Files to share = Files to share
Local Server Port = Porta do servidor local
Manual Mode Client = Definir o cliente manualmente
Not currently sharing = Not currently sharing
Remote disc streaming = Streaming remoto do disco
Remote Port = Porta remota
Remote Server = Servidor remoto

View File

@ -1057,8 +1057,12 @@ written = Scris in C++ pt. viteză si portabilitate
[RemoteISO]
Browse Games = Browse games
Connect = Connect
Currently sharing = Currently sharing
Files to share = Files to share
Local Server Port = Local server port
Manual Mode Client = Manual mode client
Not currently sharing = Not currently sharing
Remote disc streaming = Remote disc streaming
Remote Port = Remote port
Remote Server = Remote server

View File

@ -1056,8 +1056,12 @@ WhatsThis = Что это такое?
[RemoteISO]
Browse Games = Просмотр игр
Connect = Connect
Currently sharing = Currently sharing
Files to share = Files to share
Local Server Port = Локальный порт сервера
Manual Mode Client = Ручной режим клиента
Not currently sharing = Not currently sharing
Remote disc streaming = Удалённая трансляция диска
Remote Port = Удалённый порт
Remote Server = Удалённый сервер

View File

@ -1057,22 +1057,26 @@ WhatsThis = Vad är detta?
[RemoteISO]
Browse Games = Bläddra bland spel
Connect = Koppla upp
Currently sharing = Delar
Files to share = Filer att dela
Local Server Port = Lokal serverport
Manual Mode Client = Manuell klient
Remote disc streaming = Remote disc streaming
Remote Port = Remote port
Remote Server = Remote server
Remote Subdirectory = Remote subdirectory
Not currently sharing = Delar inte
Remote disc streaming = ISO-fjärrstreaming
Remote Port = Fjärr-port
Remote Server = Fjärr-server
Remote Subdirectory = Fjärr-subkatalog
RemoteISODesc = Spel i din Senast-lista kommer delas
RemoteISOLoading = Uppkopplad, laddar spel-lista...
RemoteISOScanning = Scanning... Click "share games" on your server device
RemoteISOScanningTimeout = Scanning... check your desktop's firewall settings
RemoteISOScanning = Skannar... Klicka "Dela spel" på din server-enhet
RemoteISOScanningTimeout = Skannar... kolla dina brandväggsinställningar
RemoteISOWifi = Notera: Koppla båda enheterna till samma Wi-Fi-nätverk
RemoteISOWinFirewall = VARNING: Windows Firewall blockerar delning
Settings = Inställningar
Share Games (Server) = Dela spel (server)
Share on PPSSPP startup = Börja dela när PPSSPP startar
Show Remote tab on main screen = Show Remote tab on main screen
Show Remote tab on main screen = Visa Remote-fliken på main screen
Stop Sharing = Sluta dela
Stopping.. = Slutar...

View File

@ -1057,8 +1057,12 @@ written = Nakasulat sa C++ para sa bilis at portability
[RemoteISO]
Browse Games = I-browse ang mga laro
Connect = Connect
Currently sharing = Currently sharing
Files to share = Files to share
Local Server Port = Port ng lokal na server
Manual Mode Client = Manual mode client
Not currently sharing = Not currently sharing
Remote disc streaming = Remote disc streaming
Remote Port = Remote port
Remote Server = Remote server

View File

@ -1064,10 +1064,13 @@ written = เขียนโดยใช้ภาษา C++ เพื่อค
[RemoteISO]
Browse Games = ค้นหาไปยังเกม
Choose directory = เลือกไปที่เส้นทางโฟลเดอร์
Connect = Connect
Currently sharing = Currently sharing
Default = ค่าดั้งเดิม
Files to share = ไฟล์ที่ต้องการแชร์
Local Server Port = พอร์ตเซิร์ฟเวอร์แหล่งภายใน
Manual Mode Client = ไคลเอ็นต์โหมดใช้งานด้วยตนเอง
Not currently sharing = Not currently sharing
Recent files = ไฟล์เกมที่เล่นล่าสุด
Remote disc streaming = เล่นเกมผ่านสตรีมมิ่ง
Remote Port = ควบคุมพอร์ตจากระยะไกล

View File

@ -1057,8 +1057,12 @@ written = Hız ve Taşınabilirlik için C++ ile Yazıldı
[RemoteISO]
Browse Games = Oyunlara bak...
Connect = Connect
Currently sharing = Currently sharing
Files to share = Files to share
Local Server Port = Yerel sunucu portu
Manual Mode Client = Manuel mod istemcisi
Not currently sharing = Not currently sharing
Remote disc streaming = Uzaktan disk akışı
Remote Port = Uzaktan port
Remote Server = Uzaktan sunucu

View File

@ -1056,8 +1056,12 @@ written = Написаний на C++ для швидкості \nта підт
[RemoteISO]
Browse Games = Перегляд ігор
Connect = Connect
Currently sharing = Currently sharing
Files to share = Files to share
Local Server Port = Локальний порт сервера
Manual Mode Client = Клієнт в ручному режимі
Not currently sharing = Not currently sharing
Remote disc streaming = Віддалена трансляція диску
Remote Port = Віддалений порт
Remote Server = Віддалений сервер

View File

@ -1056,8 +1056,12 @@ written = Được viết bằng C++ cho tốc độ và portability
[RemoteISO]
Browse Games = Duyệt games
Connect = Connect
Currently sharing = Currently sharing
Files to share = Files to share
Local Server Port = Cổng sever nội bộ
Manual Mode Client = Chế độ khách thủ công
Not currently sharing = Not currently sharing
Remote disc streaming = Điều khiển đĩa từ xa
Remote Port = Cổng từ xa
Remote Server = server từ xa

View File

@ -1057,8 +1057,12 @@ written = 使用C++编写以保证速度与移植性
[RemoteISO]
Browse Games = 浏览游戏
Connect = Connect
Currently sharing = Currently sharing
Files to share = Files to share
Local Server Port = 本地服务器端口
Manual Mode Client = 手动配置客户端
Not currently sharing = Not currently sharing
Remote disc streaming = 远程游戏串流
Remote Port = 远程端口
Remote Server = 远程服务器

View File

@ -1056,8 +1056,12 @@ WhatsThis = 這是什麼?
[RemoteISO]
Browse Games = 瀏覽遊戲
Connect = Connect
Currently sharing = Currently sharing
Files to share = Files to share
Local Server Port = 本機伺服器連接埠
Manual Mode Client = 手動設定用戶端
Not currently sharing = Not currently sharing
Remote disc streaming = 遠端光碟串流
Remote Port = 遠端連接埠
Remote Server = 遠端伺服器