Always treat queries that start with ? as search queries (#489)

This commit is contained in:
Oleksii Holub 2024-08-23 02:40:27 +03:00 committed by GitHub
parent 5f5686e6a0
commit 4f2801b739
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 12 additions and 5 deletions

View File

@ -111,11 +111,17 @@ public class QueryResolver(IReadOnlyList<Cookie>? initialCookies = null)
public async Task<QueryResult> ResolveAsync(
string query,
CancellationToken cancellationToken = default
) =>
await TryResolvePlaylistAsync(query, cancellationToken)
)
{
// If the query starts with a question mark, it's always treated as a search query
if (query.StartsWith('?'))
return await ResolveSearchAsync(query[1..], cancellationToken);
return await TryResolvePlaylistAsync(query, cancellationToken)
?? await TryResolveVideoAsync(query, cancellationToken)
?? await TryResolveChannelAsync(query, cancellationToken)
?? await ResolveSearchAsync(query, cancellationToken);
}
public async Task<QueryResult> ResolveAsync(
IReadOnlyList<string> queries,

View File

@ -27,6 +27,7 @@
ScrollViewer.HorizontalScrollBarVisibility="Hidden"
Text="{Binding Query}"
Theme="{DynamicResource SoloTextBox}"
ToolTip.Tip="Any valid YouTube URL or ID is accepted. Prepend a question mark (?) to perform search by text."
Watermark="URL or search query">
<TextBox.InnerLeftContent>
<materialIcons:MaterialIcon