Skip to content

Commit 7a14103

Browse files
committed
Use MediathekViewWeb's advanced search syntax
Fixes #10, Fixes #12
1 parent 6da1374 commit 7a14103

File tree

9 files changed

+119
-185
lines changed

9 files changed

+119
-185
lines changed

Cargo.lock

+2-2
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Cargo.toml

+1-1
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ gtk = { version = "0.8.1", package = "gtk4", features = ["gnome_46", "blueprint"
1717
gvdb-macros = "0.1.12"
1818
html2pango = "0.6.0"
1919
indexmap = { version = "2.2.6", features = ["serde"] }
20-
mediathekviewweb = "0.3.0"
20+
mediathekviewweb = { version = "0.3.1" }
2121
once_cell = "1.19.0"
2222
phf = { version = "0.11.2", features = ["macros"] }
2323
reqwest = { version = "0.12.2", features = ["json"] }

data/de.k_bo.Televido.gschema.xml

+2-8
Original file line numberDiff line numberDiff line change
@@ -17,16 +17,10 @@
1717
<key name="visible-view" type="s">
1818
<default>"live"</default>
1919
</key>
20-
<key name="search-in-topic" type="b">
21-
<default>true</default>
22-
</key>
23-
<key name="search-in-title" type="b">
24-
<default>true</default>
25-
</key>
26-
<key name="search-in-description" type="b">
20+
<key name="search-everywhere" type="b">
2721
<default>false</default>
2822
</key>
29-
<key name="search-in-channel" type="b">
23+
<key name="include-future" type="b">
3024
<default>false</default>
3125
</key>
3226
<key name="sort-by" type="s">
Loading
Loading

po/de.po

+37-36
Original file line numberDiff line numberDiff line change
@@ -7,16 +7,16 @@ msgid ""
77
msgstr ""
88
"Project-Id-Version: Televido main\n"
99
"Report-Msgid-Bugs-To: https://github.com/d-k-bo/televido/issues\n"
10-
"POT-Creation-Date: 2024-04-26 17:13+0200\n"
11-
"PO-Revision-Date: 2024-04-26 17:14+0200\n"
10+
"POT-Creation-Date: 2024-05-23 17:16+0200\n"
11+
"PO-Revision-Date: 2024-05-23 17:18+0200\n"
1212
"Last-Translator: David Cabot <[email protected]>\n"
1313
"Language-Team: \n"
1414
"Language: de\n"
1515
"MIME-Version: 1.0\n"
1616
"Content-Type: text/plain; charset=UTF-8\n"
1717
"Content-Transfer-Encoding: 8bit\n"
1818
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
19-
"X-Generator: Poedit 3.4.2\n"
19+
"X-Generator: Poedit 3.4.4\n"
2020

2121
#: data/de.k_bo.Televido.desktop.in:5 data/de.k_bo.Televido.metainfo.xml.in:6
2222
msgid "Televido"
@@ -242,77 +242,78 @@ msgstr "Website konnte nicht im Browser geöffnet werden"
242242
msgid "e.g. »tagesschau«"
243243
msgstr "z.B. »tagesschau«"
244244

245-
#: src/mediathek/view.blp:30
246-
msgid "Search in…"
247-
msgstr "Suchen in…"
245+
#: src/mediathek/view.blp:32
246+
msgid "Search everywhere"
247+
msgstr "Überall suchen"
248248

249-
#: src/mediathek/view.blp:36
249+
#: src/mediathek/view.blp:38
250+
msgid "Include future shows"
251+
msgstr "Zukünftige Sendungen einschließen"
252+
253+
#: src/mediathek/view.blp:43
250254
msgid "Sort"
251255
msgstr "Sortierung"
252256

253-
#: src/mediathek/view.blp:49
257+
#: src/mediathek/view.blp:56
254258
msgid "Search for content"
255259
msgstr "Nach Inhalten suchen"
256260

257-
#: src/mediathek/view.blp:50
258-
msgid "Start typing in the search bar to see a list of matching shows"
261+
#: src/mediathek/view.blp:57
262+
msgid ""
263+
"Start typing in the search bar to see a list of matching shows.\n"
264+
"\n"
265+
"The search field supports <a href=\"https://github.com/mediathekview/"
266+
"mediathekviewweb/blob/master/README.md#erweiterte-suche\">MediathekViewWeb's "
267+
"advanced search syntax</a> (German)."
259268
msgstr ""
260269
"Schreiben Sie etwas in die Suchleiste, um eine Liste passender Sendungen zu "
261-
"sehen"
270+
"sehen.\n"
271+
"\n"
272+
"Das Suchfeld unterstützt die <a href=\"https://github.com/mediathekview/"
273+
"mediathekviewweb/blob/master/README.md#erweiterte-suche\">erweiterte Such-"
274+
"Syntax von MediathekViewWeb</a>."
262275

263-
#: src/mediathek/view.blp:55
276+
#: src/mediathek/view.blp:62
264277
msgid "No results"
265278
msgstr "Keine Ergebnisse"
266279

267-
#: src/mediathek/view.blp:56
280+
#: src/mediathek/view.blp:63
268281
msgid "Try different search terms or adjust the search filters"
269282
msgstr "Wählen Sie einen anderen Suchbegriff oder verändern Sie die Suchfilter"
270283

271-
#: src/mediathek/view.blp:77
284+
#: src/mediathek/view.blp:85
272285
msgid "Load more"
273286
msgstr "Mehr laden"
274287

275-
#: src/mediathek/view.blp:89
276-
msgid "Topic"
277-
msgstr "Thema"
278-
279-
#: src/mediathek/view.blp:94
280-
msgid "Title"
281-
msgstr "Titel"
282-
283-
#: src/mediathek/view.blp:99
284-
msgid "Description"
285-
msgstr "Beschreibung"
288+
#: src/mediathek/view.blp:97
289+
msgid "Sort By"
290+
msgstr "Sortieren nach"
286291

287-
#: src/mediathek/view.blp:104 src/mediathek/view.blp:114
292+
#: src/mediathek/view.blp:100
288293
msgid "Channel"
289294
msgstr "Sender"
290295

291-
#: src/mediathek/view.blp:111
292-
msgid "Sort By"
293-
msgstr "Sortieren nach"
294-
295-
#: src/mediathek/view.blp:120
296+
#: src/mediathek/view.blp:106
296297
msgid "Date"
297298
msgstr "Datum"
298299

299-
#: src/mediathek/view.blp:126
300+
#: src/mediathek/view.blp:112
300301
msgid "Duration"
301302
msgstr "Dauer"
302303

303-
#: src/mediathek/view.blp:133
304+
#: src/mediathek/view.blp:119
304305
msgid "Sort Order"
305306
msgstr "Sortierreihenfolge"
306307

307-
#: src/mediathek/view.blp:136
308+
#: src/mediathek/view.blp:122
308309
msgid "Ascending"
309310
msgstr "Aufsteigend"
310311

311-
#: src/mediathek/view.blp:142
312+
#: src/mediathek/view.blp:128
312313
msgid "Descending"
313314
msgstr "Absteigend"
314315

315-
#: src/mediathek/view.rs:298 src/mediathek/view.rs:347
316+
#: src/mediathek/view.rs:255 src/mediathek/view.rs:296
316317
msgid "Failed to query the MediathekViewWeb API"
317318
msgstr "Daten von der MediathekViewWeb-API konnten nicht abgerufen werden"
318319

po/televido.pot

+28-31
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ msgid ""
88
msgstr ""
99
"Project-Id-Version: televido\n"
1010
"Report-Msgid-Bugs-To: https://github.com/d-k-bo/televido/issues\n"
11-
"POT-Creation-Date: 2024-04-26 17:13+0200\n"
11+
"POT-Creation-Date: 2024-05-23 17:16+0200\n"
1212
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
1313
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
1414
"Language-Team: LANGUAGE <[email protected]>\n"
@@ -219,75 +219,72 @@ msgstr ""
219219
msgid "e.g. »tagesschau«"
220220
msgstr ""
221221

222-
#: src/mediathek/view.blp:30
223-
msgid "Search in…"
222+
#: src/mediathek/view.blp:32
223+
msgid "Search everywhere"
224224
msgstr ""
225225

226-
#: src/mediathek/view.blp:36
226+
#: src/mediathek/view.blp:38
227+
msgid "Include future shows"
228+
msgstr ""
229+
230+
#: src/mediathek/view.blp:43
227231
msgid "Sort"
228232
msgstr ""
229233

230-
#: src/mediathek/view.blp:49
234+
#: src/mediathek/view.blp:56
231235
msgid "Search for content"
232236
msgstr ""
233237

234-
#: src/mediathek/view.blp:50
235-
msgid "Start typing in the search bar to see a list of matching shows"
238+
#: src/mediathek/view.blp:57
239+
msgid ""
240+
"Start typing in the search bar to see a list of matching shows.\n"
241+
"\n"
242+
"The search field supports <a href=\"https://github.com/mediathekview/"
243+
"mediathekviewweb/blob/master/README.md#erweiterte-suche\">MediathekViewWeb's "
244+
"advanced search syntax</a> (German)."
236245
msgstr ""
237246

238-
#: src/mediathek/view.blp:55
247+
#: src/mediathek/view.blp:62
239248
msgid "No results"
240249
msgstr ""
241250

242-
#: src/mediathek/view.blp:56
251+
#: src/mediathek/view.blp:63
243252
msgid "Try different search terms or adjust the search filters"
244253
msgstr ""
245254

246-
#: src/mediathek/view.blp:77
255+
#: src/mediathek/view.blp:85
247256
msgid "Load more"
248257
msgstr ""
249258

250-
#: src/mediathek/view.blp:89
251-
msgid "Topic"
252-
msgstr ""
253-
254-
#: src/mediathek/view.blp:94
255-
msgid "Title"
256-
msgstr ""
257-
258-
#: src/mediathek/view.blp:99
259-
msgid "Description"
259+
#: src/mediathek/view.blp:97
260+
msgid "Sort By"
260261
msgstr ""
261262

262-
#: src/mediathek/view.blp:104 src/mediathek/view.blp:114
263+
#: src/mediathek/view.blp:100
263264
msgid "Channel"
264265
msgstr ""
265266

266-
#: src/mediathek/view.blp:111
267-
msgid "Sort By"
268-
msgstr ""
269-
270-
#: src/mediathek/view.blp:120
267+
#: src/mediathek/view.blp:106
271268
msgid "Date"
272269
msgstr ""
273270

274-
#: src/mediathek/view.blp:126
271+
#: src/mediathek/view.blp:112
275272
msgid "Duration"
276273
msgstr ""
277274

278-
#: src/mediathek/view.blp:133
275+
#: src/mediathek/view.blp:119
279276
msgid "Sort Order"
280277
msgstr ""
281278

282-
#: src/mediathek/view.blp:136
279+
#: src/mediathek/view.blp:122
283280
msgid "Ascending"
284281
msgstr ""
285282

286-
#: src/mediathek/view.blp:142
283+
#: src/mediathek/view.blp:128
287284
msgid "Descending"
288285
msgstr ""
289286

290-
#: src/mediathek/view.rs:298 src/mediathek/view.rs:347
287+
#: src/mediathek/view.rs:255 src/mediathek/view.rs:296
291288
msgid "Failed to query the MediathekViewWeb API"
292289
msgstr ""
293290

src/mediathek/view.blp

+13-27
Original file line numberDiff line numberDiff line change
@@ -19,17 +19,24 @@ template $TvMediathekView: Adw.Bin {
1919
Gtk.SearchEntry search_entry {
2020
placeholder-text: _("e.g. »tagesschau«");
2121
hexpand: true;
22+
search-delay: 250;
2223
text: bind template.query_string bidirectional;
2324
}
2425

2526
Gtk.Box {
2627
orientation: horizontal;
2728
spacing: 6;
2829

29-
Gtk.MenuButton search_in_button {
30-
label: _("Search in…");
31-
menu-model: search_in_menu;
32-
hexpand: true;
30+
Gtk.ToggleButton {
31+
icon-name: "search-global-symbolic";
32+
tooltip-text: _("Search everywhere");
33+
active: bind template.search_everywhere bidirectional;
34+
}
35+
36+
Gtk.ToggleButton {
37+
icon-name: "month-symbolic";
38+
tooltip-text: _("Include future shows");
39+
active: bind template.include-future bidirectional;
3340
}
3441

3542
Gtk.MenuButton sort_button {
@@ -47,7 +54,7 @@ template $TvMediathekView: Adw.Bin {
4754
Adw.StatusPage status_page {
4855
icon-name: "loupe-symbolic";
4956
title: _("Search for content");
50-
description: _("Start typing in the search bar to see a list of matching shows");
57+
description: _("Start typing in the search bar to see a list of matching shows.\n\nThe search field supports <a href=\"https://github.com/mediathekview/mediathekviewweb/blob/master/README.md#erweiterte-suche\">MediathekViewWeb's advanced search syntax</a> (German).");
5158
}
5259

5360
Adw.StatusPage nothing_found_view {
@@ -73,6 +80,7 @@ template $TvMediathekView: Adw.Bin {
7380
}
7481

7582
Gtk.Button {
83+
visible: bind template.more-available;
7684
halign: center;
7785
label: _("Load more");
7886
action-name: "mediathek.load-more";
@@ -84,28 +92,6 @@ template $TvMediathekView: Adw.Bin {
8492
}
8593
}
8694

87-
menu search_in_menu {
88-
item {
89-
label: _("Topic");
90-
action: "mediathek.search-in-topic";
91-
}
92-
93-
item {
94-
label: _("Title");
95-
action: "mediathek.search-in-title";
96-
}
97-
98-
item {
99-
label: _("Description");
100-
action: "mediathek.search-in-description";
101-
}
102-
103-
item {
104-
label: _("Channel");
105-
action: "mediathek.search-in-channel";
106-
}
107-
}
108-
10995
menu sort_menu {
11096
section {
11197
label: _("Sort By");

0 commit comments

Comments
 (0)