mirror of
https://github.com/transmission/transmission.git
synced 2025-12-20 02:18:42 +00:00
feat: Remote session RPC url path change option qt client (#7561)
This commit is contained in:
@@ -280,6 +280,7 @@ auto constexpr MyStatic = std::array<std::string_view, TR_N_KEYS>{
|
|||||||
"remote-session-port"sv,
|
"remote-session-port"sv,
|
||||||
"remote-session-requres-authentication"sv,
|
"remote-session-requres-authentication"sv,
|
||||||
"remote-session-username"sv,
|
"remote-session-username"sv,
|
||||||
|
"remote_session_rpc_url_path"sv,
|
||||||
"removed"sv,
|
"removed"sv,
|
||||||
"rename-partial-files"sv,
|
"rename-partial-files"sv,
|
||||||
"reqq"sv,
|
"reqq"sv,
|
||||||
|
|||||||
@@ -282,6 +282,7 @@ enum // NOLINT(performance-enum-size)
|
|||||||
TR_KEY_remote_session_port,
|
TR_KEY_remote_session_port,
|
||||||
TR_KEY_remote_session_requres_authentication,
|
TR_KEY_remote_session_requres_authentication,
|
||||||
TR_KEY_remote_session_username,
|
TR_KEY_remote_session_username,
|
||||||
|
TR_KEY_remote_session_rpc_url_path,
|
||||||
TR_KEY_removed,
|
TR_KEY_removed,
|
||||||
TR_KEY_rename_partial_files,
|
TR_KEY_rename_partial_files,
|
||||||
TR_KEY_reqq,
|
TR_KEY_reqq,
|
||||||
|
|||||||
@@ -96,6 +96,7 @@ std::array<Prefs::PrefItem, Prefs::PREFS_COUNT> const Prefs::Items{
|
|||||||
{ SESSION_REMOTE_PORT, TR_KEY_remote_session_port, QMetaType::Int },
|
{ SESSION_REMOTE_PORT, TR_KEY_remote_session_port, QMetaType::Int },
|
||||||
{ SESSION_REMOTE_AUTH, TR_KEY_remote_session_requres_authentication, QMetaType::Bool },
|
{ SESSION_REMOTE_AUTH, TR_KEY_remote_session_requres_authentication, QMetaType::Bool },
|
||||||
{ SESSION_REMOTE_USERNAME, TR_KEY_remote_session_username, QMetaType::QString },
|
{ SESSION_REMOTE_USERNAME, TR_KEY_remote_session_username, QMetaType::QString },
|
||||||
|
{ SESSION_REMOTE_RPC_URL_PATH, TR_KEY_remote_session_rpc_url_path, QMetaType::QString },
|
||||||
{ COMPLETE_SOUND_COMMAND, TR_KEY_torrent_complete_sound_command, QMetaType::QStringList },
|
{ COMPLETE_SOUND_COMMAND, TR_KEY_torrent_complete_sound_command, QMetaType::QStringList },
|
||||||
{ COMPLETE_SOUND_ENABLED, TR_KEY_torrent_complete_sound_enabled, QMetaType::Bool },
|
{ COMPLETE_SOUND_ENABLED, TR_KEY_torrent_complete_sound_enabled, QMetaType::Bool },
|
||||||
{ USER_HAS_GIVEN_INFORMED_CONSENT, TR_KEY_user_has_given_informed_consent, QMetaType::Bool },
|
{ USER_HAS_GIVEN_INFORMED_CONSENT, TR_KEY_user_has_given_informed_consent, QMetaType::Bool },
|
||||||
@@ -477,6 +478,7 @@ tr_variant Prefs::get_default_app_settings()
|
|||||||
settings.try_emplace(TR_KEY_statusbar_stats, StatsMode);
|
settings.try_emplace(TR_KEY_statusbar_stats, StatsMode);
|
||||||
settings.try_emplace(TR_KEY_watch_dir, download_dir);
|
settings.try_emplace(TR_KEY_watch_dir, download_dir);
|
||||||
settings.try_emplace(TR_KEY_read_clipboard, false);
|
settings.try_emplace(TR_KEY_read_clipboard, false);
|
||||||
|
settings.try_emplace(TR_KEY_remote_session_rpc_url_path, TR_DEFAULT_RPC_URL_STR "rpc");
|
||||||
return tr_variant{ std::move(settings) };
|
return tr_variant{ std::move(settings) };
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -64,6 +64,7 @@ public:
|
|||||||
SESSION_REMOTE_PORT,
|
SESSION_REMOTE_PORT,
|
||||||
SESSION_REMOTE_AUTH,
|
SESSION_REMOTE_AUTH,
|
||||||
SESSION_REMOTE_USERNAME,
|
SESSION_REMOTE_USERNAME,
|
||||||
|
SESSION_REMOTE_RPC_URL_PATH,
|
||||||
COMPLETE_SOUND_COMMAND,
|
COMPLETE_SOUND_COMMAND,
|
||||||
COMPLETE_SOUND_ENABLED,
|
COMPLETE_SOUND_ENABLED,
|
||||||
USER_HAS_GIVEN_INFORMED_CONSENT,
|
USER_HAS_GIVEN_INFORMED_CONSENT,
|
||||||
|
|||||||
@@ -360,7 +360,7 @@ void Session::start()
|
|||||||
}
|
}
|
||||||
url.setHost(prefs_.get<QString>(Prefs::SESSION_REMOTE_HOST));
|
url.setHost(prefs_.get<QString>(Prefs::SESSION_REMOTE_HOST));
|
||||||
url.setPort(prefs_.get<int>(Prefs::SESSION_REMOTE_PORT));
|
url.setPort(prefs_.get<int>(Prefs::SESSION_REMOTE_PORT));
|
||||||
url.setPath(QStringLiteral("/transmission/rpc"));
|
url.setPath(prefs_.get<QString>(Prefs::SESSION_REMOTE_RPC_URL_PATH));
|
||||||
|
|
||||||
if (prefs_.get<bool>(Prefs::SESSION_REMOTE_AUTH))
|
if (prefs_.get<bool>(Prefs::SESSION_REMOTE_AUTH))
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -19,6 +19,7 @@ void SessionDialog::accept()
|
|||||||
prefs_.set(Prefs::SESSION_REMOTE_AUTH, ui_.authCheck->isChecked());
|
prefs_.set(Prefs::SESSION_REMOTE_AUTH, ui_.authCheck->isChecked());
|
||||||
prefs_.set(Prefs::SESSION_REMOTE_USERNAME, ui_.usernameEdit->text());
|
prefs_.set(Prefs::SESSION_REMOTE_USERNAME, ui_.usernameEdit->text());
|
||||||
prefs_.set(Prefs::SESSION_REMOTE_PASSWORD, ui_.passwordEdit->text());
|
prefs_.set(Prefs::SESSION_REMOTE_PASSWORD, ui_.passwordEdit->text());
|
||||||
|
prefs_.set(Prefs::SESSION_REMOTE_RPC_URL_PATH, ui_.rpcEdit->text());
|
||||||
session_.restart();
|
session_.restart();
|
||||||
BaseDialog::accept();
|
BaseDialog::accept();
|
||||||
}
|
}
|
||||||
@@ -72,5 +73,8 @@ SessionDialog::SessionDialog(Session& session, Prefs& prefs, QWidget* parent)
|
|||||||
ui_.passwordEdit->setText(prefs.get<QString>(Prefs::SESSION_REMOTE_PASSWORD));
|
ui_.passwordEdit->setText(prefs.get<QString>(Prefs::SESSION_REMOTE_PASSWORD));
|
||||||
auth_widgets_ << ui_.passwordLabel << ui_.passwordEdit;
|
auth_widgets_ << ui_.passwordLabel << ui_.passwordEdit;
|
||||||
|
|
||||||
|
ui_.rpcEdit->setText(prefs.get<QString>(Prefs::SESSION_REMOTE_RPC_URL_PATH));
|
||||||
|
remote_widgets_ << ui_.rpcLabel << ui_.rpcEdit;
|
||||||
|
|
||||||
resensitize();
|
resensitize();
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -7,7 +7,7 @@
|
|||||||
<x>0</x>
|
<x>0</x>
|
||||||
<y>0</y>
|
<y>0</y>
|
||||||
<width>248</width>
|
<width>248</width>
|
||||||
<height>297</height>
|
<height>324</height>
|
||||||
</rect>
|
</rect>
|
||||||
</property>
|
</property>
|
||||||
<property name="windowTitle">
|
<property name="windowTitle">
|
||||||
@@ -107,6 +107,19 @@
|
|||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
|
<item row="7" column="0">
|
||||||
|
<widget class="QLabel" name="rpcLabel">
|
||||||
|
<property name="text">
|
||||||
|
<string>RPC URL pa&th:</string>
|
||||||
|
</property>
|
||||||
|
<property name="buddy">
|
||||||
|
<cstring>rpcEdit</cstring>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="7" column="1">
|
||||||
|
<widget class="QLineEdit" name="rpcEdit"/>
|
||||||
|
</item>
|
||||||
</layout>
|
</layout>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
|
|||||||
Reference in New Issue
Block a user