From 9f911d4d52f036a76ae4d6e7d0dce5036f663a7c Mon Sep 17 00:00:00 2001 From: Charles Kerr Date: Tue, 9 Dec 2025 21:15:07 -0600 Subject: [PATCH] refactor: intern `recently-active` (#7909) * refactor: intern recently-active * fixup! refactor: intern recently-active fix a couple of literals missed in rpcimpl.cc --- libtransmission/quark.cc | 2 ++ libtransmission/quark.h | 2 ++ libtransmission/rpcimpl.cc | 6 ++++-- qt/Session.cc | 4 +--- utils/remote.cc | 2 +- 5 files changed, 10 insertions(+), 6 deletions(-) diff --git a/libtransmission/quark.cc b/libtransmission/quark.cc index 5e3a8ff03..4d07d2fb2 100644 --- a/libtransmission/quark.cc +++ b/libtransmission/quark.cc @@ -457,6 +457,8 @@ auto constexpr MyStatic = std::array{ "ratio_mode"sv, "read-clipboard"sv, "read_clipboard"sv, + "recently-active"sv, + "recently_active"sv, "recheckProgress"sv, "recheck_progress"sv, "remote-session-enabled"sv, diff --git a/libtransmission/quark.h b/libtransmission/quark.h index 5a98e0bd7..8689e937d 100644 --- a/libtransmission/quark.h +++ b/libtransmission/quark.h @@ -455,6 +455,8 @@ enum // NOLINT(performance-enum-size) TR_KEY_ratio_mode, TR_KEY_read_clipboard_kebab, TR_KEY_read_clipboard, + TR_KEY_recently_active_kebab, + TR_KEY_recently_active, TR_KEY_recheck_progress_camel, TR_KEY_recheck_progress, TR_KEY_remote_session_enabled_kebab, diff --git a/libtransmission/rpcimpl.cc b/libtransmission/rpcimpl.cc index 02249b961..37cad142e 100644 --- a/libtransmission/rpcimpl.cc +++ b/libtransmission/rpcimpl.cc @@ -256,7 +256,8 @@ using DoneCb = std::function()) { - if (*val == "recently_active"sv || *val == "recently-active") + if (*val == tr_quark_get_string_view(TR_KEY_recently_active) || + *val == tr_quark_get_string_view(TR_KEY_recently_active_kebab)) { auto const cutoff = tr_time() - RecentlyActiveSeconds; auto const recent = torrents.get_matching([cutoff](auto* walk) { return walk->has_changed_since(cutoff); }); @@ -1144,7 +1145,8 @@ namespace make_torrent_field_helpers TrFormat::Object; if (auto val = args_in.value_if(TR_KEY_ids).value_or(""sv); - val == "recently_active"sv || val == "recently-active"sv) + val == tr_quark_get_string_view(TR_KEY_recently_active) || + val == tr_quark_get_string_view(TR_KEY_recently_active_kebab)) { auto const cutoff = tr_time() - RecentlyActiveSeconds; auto const ids = session->torrents().removedSince(cutoff); diff --git a/qt/Session.cc b/qt/Session.cc index 68ee18e89..8dfd4b613 100644 --- a/qt/Session.cc +++ b/qt/Session.cc @@ -388,11 +388,9 @@ void Session::start() void Session::addOptionalIds(tr_variant* args_dict, torrent_ids_t const& torrent_ids) const { - auto constexpr RecentlyActiveKey = std::string_view{ "recently-active" }; - if (&torrent_ids == &RecentlyActiveIDs) { - dictAdd(args_dict, TR_KEY_ids, RecentlyActiveKey); + dictAdd(args_dict, TR_KEY_ids, tr_quark_get_string_view(TR_KEY_recently_active_kebab)); } else if (!std::empty(torrent_ids)) { diff --git a/utils/remote.cc b/utils/remote.cc index 7800cc3e1..b33d56ece 100644 --- a/utils/remote.cc +++ b/utils/remote.cc @@ -607,7 +607,7 @@ void add_id_arg(tr_variant::Map& args, std::string_view id_str, std::string_view if (IdActive == id_str) { - args.insert_or_assign(TR_KEY_ids, "recently-active"sv); + args.insert_or_assign(TR_KEY_ids, tr_variant::unmanaged_string(TR_KEY_recently_active_kebab)); } else if (IdAll != id_str) {