Christopher Davis
7a77f31aa3
build: Place target in meson build dir
...
Instead of putting target/ and target_test/ in the source
directory, we can tell our cargo script to put both target
and our cargo-home in meson's build directory.
In addition, makes tests and builds use the same target
directory, significantly reducing the time it takes to run tests.
2019-03-07 07:04:23 +02:00
Christopher Davis
5b2edc73ec
build: Build resources with meson instead of build.rs
...
Allows us to get rid of build.rs, which was only used to
compile resources. static_resource.rs is now created by
meson, and the meson path is used for include_bytes!.
Closes https://gitlab.gnome.org/World/podcasts/issues/55
2019-03-07 04:35:31 +00:00
Christopher Davis
395e31ff85
build: Use config.rs instead of env! macro
...
Previously we were using the env! macro to determine
build-time variables like version, app ID, and locale dir.
Instead of relying on env vars, we can create a configuration
file with meson and import it.
2019-03-07 04:35:31 +00:00
Sabri Ünal
dd0d828794
Update Turkish translation
2019-03-06 10:46:39 +00:00
Jordan Petridis
277f324cf0
cargo fmt
2019-03-03 17:47:11 +02:00
Jordan Petridis
0ed6c8979e
Upgrade crossbeam-channel
2019-03-03 17:45:43 +02:00
Jordan Petridis
075dd1adeb
cargo: change email metadata of the crates
2019-03-03 04:59:52 +02:00
Jordan Petridis
027faf1949
Change formatting of podcasts-gtk/Cargo.toml
2019-03-03 04:58:40 +02:00
Jordan Petridis
54e049874c
html2text: Use upstream git repo
2019-03-03 04:54:42 +02:00
Jordan Petridis
c4c6ba9ea4
Update dependencies
2019-03-03 04:46:19 +02:00
Jordan Petridis
a77bf0b8fb
Update gtk-rs family of crates
2019-03-03 04:46:19 +02:00
Kukuh Syafaat
b1058933b8
Update Indonesian translation
2019-03-02 12:18:56 +00:00
Jiri Grönroos
32c7f6b29e
Update Finnish translation
2019-03-02 08:51:28 +00:00
Milo Casagrande
137705450b
Update Italian translation
2019-02-28 08:25:39 +00:00
Ask Hjorth Larsen
4dc6034de8
Add Danish translation
2019-02-24 17:46:33 +00:00
Daniel Mustieles
7fa18fe38f
Update Spanish translation
2019-02-19 15:05:09 +00:00
Felix Häcker
68fa547b06
Implement MPRIS pause and play methods.
...
Till now we were only using the play_pause method and
was enough for most of the usecases, but looks like
some mpris clients only use the individual methods.
https://specifications.freedesktop.org/mpris-spec/latest/Player_Interface.html#Method:PlayPause
Close #115
2019-02-05 20:47:56 +00:00
Balázs Úr
a113ed049d
Update Hungarian translation
2019-02-05 20:45:43 +00:00
Piotr Drąg
2f8a6a91f8
Update Polish translation
2019-02-02 15:31:37 +00:00
Piotr Drąg
06091d1af4
Use Unicode ellipsis in a user-visible string
...
See https://developer.gnome.org/hig/stable/typography.html
2019-02-02 12:14:29 +01:00
Daniel Mustieles
fb4e550122
Update Spanish translation
2019-01-29 15:28:41 +00:00
Balázs Úr
a74301f479
Update Hungarian translation
2019-01-28 22:42:49 +00:00
Rafael Fontenelle
c49f417d00
Update Brazilian Portuguese translation
2019-01-28 21:22:53 +00:00
Christopher Davis
6c34686d8d
p-data: Implment support for exporting the shows to an OPML file
...
Close #41
2019-01-27 06:06:46 +02:00
Jordan Petridis
2cb6bf2b98
p-gtk: Update the libhandy bindings
2019-01-21 03:13:51 +02:00
Jiri Grönroos
d8cddfafa0
Update Finnish translation
2019-01-16 18:04:16 +00:00
Bilal Elmoussaoui
bc8d521853
appdata: Improve the appdata file per the specs
...
freedesktop specs:https://freedesktop.org/software/appstream/docs/chap-Quickstart.html
kudos documentation: https://gitlab.gnome.org/GNOME/gnome-software/blob/master/doc/kudos.md
2019-01-09 19:21:29 +00:00
Bilal Elmoussaoui
32424e7938
Meson: add tests to validate desktop & appdata files
2019-01-09 18:24:11 +00:00
Milo Casagrande
c47d375a58
Update Italian translation
2018-12-11 16:49:14 +00:00
Jordan Petridis
9f8ae75691
Remove depricated lints
2018-12-09 03:53:17 +02:00
Christopher Davis
ed62f2b1f2
style.css: Remove custom .devel style class
...
GTK includes it's own .devel style class, so we don't need to
override by creating our own.
2018-12-06 00:30:00 -05:00
Jordan Petridis
b72ba8c66a
podcasts-gtk: make it possible to compile with just cargo
...
This is not supported at all, and it still won't run with cargo
run, thankfully, you should use meson instead...
The only purpose of this commit is to make it possible for
cargo check, and by extension rls, to function and work
properly.
Part of #110
2018-12-02 02:10:09 +02:00
Jordan Petridis
f9f0dad203
cargo fmt
2018-11-29 14:36:06 +02:00
Jordan Petridis
fdb064ffc8
Update dependancies
2018-11-29 11:57:27 +02:00
Jordan Petridis
0888da2197
Upgrade dependencies
2018-11-18 12:59:02 +00:00
Jordan Petridis
19e0b7e565
Further preparations for Rusto 2018 edition
2018-11-18 12:59:01 +00:00
Jordan Petridis
fd4128c364
Prepare for Rust 2018 edition
2018-11-18 12:59:01 +00:00
Jordan Petridis
98f105fda0
Player: Use a wrapper struct to write methods on &self
...
Previously, methods that required the Player to be ref counted,
were using static methods with s: &Rc<Self> as the first argument.
Now the wrapper type auto-derefs to the inner struct and you can
declare methods on just &self.
2018-11-18 12:59:01 +00:00
Kukuh Syafaat
201f2e23c7
Update Indonesian translation
2018-11-15 16:42:30 +00:00
Jordan Petridis
32b257ec30
cargo fmt
2018-11-13 15:29:20 +02:00
Zander Brown
fbda4c76f0
player.rs: Improve the fast-forward handling
...
Previously if you hit fast-forward but the offset remaining was
let that the amount you wanted to seek, it would do nothing.
Now it resets the stream and seekbar to the start.
Eventually this will just move on to the next episode in the
Queue once that's implemented.
2018-11-07 00:46:40 +02:00
Zander Brown
85387a0a9b
Fix for https://gitlab.gnome.org/World/podcasts/issues/105
...
Wow that was a quick one
2018-11-05 17:55:46 +00:00
Jordan Petridis
5ac4f6dcf9
Mpris: Actually raise the window
...
This fixes a bug where can_raise was never registered on dbus,
but it also works around a wayland issue with the .present()
method.
https://gitlab.gnome.org/GNOME/gtk/issues/624
2018-11-04 21:05:09 +02:00
Jordan Petridis
6671f8c6fe
podcasts-gtk: Add per file license annotations
2018-11-04 19:35:35 +02:00
Daniel Mustieles
534c627300
Update Spanish translation
2018-11-02 12:26:05 +00:00
Jordan Petridis
1a1e5ecd3f
Update App icon. Close #102
2018-10-30 20:34:47 +02:00
Alexandre Franke
3e555c64d9
Add French translation
2018-10-29 12:54:45 +00:00
Dušan Kazik
8d6b5f7105
Update Slovak translation
2018-10-28 21:00:26 +00:00
Dušan Kazik
4692be663e
Add Slovak translation
2018-10-28 15:31:17 +00:00
gogo
5ae0fb1b0e
Update Croatian translation
2018-10-24 19:46:48 +00:00
Jordan Petridis
990d830f24
cargo fmt
2018-10-23 13:23:01 +03:00
lightning1141
c1eed45194
fix typo
2018-10-23 10:52:33 +08:00
Anders Jonsson
31ee668311
Update Swedish translation
2018-10-16 19:53:58 +00:00
Piotr Drąg
a61d04f445
Update Polish translation
2018-10-07 14:57:18 +00:00
Marek Černocký
8ba8ada253
Update Czech translation
2018-10-07 14:48:24 +00:00
Jordan Petridis
885b796f85
New release 0.4.6
2018-10-07 10:18:15 +03:00
Emin Tufan Çetin
5997666bad
Update Turkish translation
2018-10-06 15:53:09 +00:00
Jordan Petridis
40186ce155
Update dependancies
2018-10-06 11:29:52 +03:00
Jordan Petridis
9cfdb35224
AboutDialog: Update contributors list
2018-10-06 11:09:07 +03:00
Jordan Petridis
32bd2a89a3
Stacks: Check if there episodes insteads of shows
...
If you added a Feed where a Show exists but it had no episodes
entries, the stack would end up in a populated state, but the
HomeView would be blank without widgets.
This changes it so the stack state depends upon the episodes
table being populated instead of the show. The downside
is that if your only feed is one without episodes you can
no longer navigate and interact with it.
2018-10-06 10:22:24 +03:00
Rafael Fontenelle
1e6eca307b
Update Brazilian Portuguese translation
2018-10-05 14:19:31 +00:00
Alexandre Franke
ab52825c71
Fix typo
2018-10-05 10:04:44 +00:00
Florian Heiser
8f4d017180
Update German translation
2018-10-05 04:41:29 +00:00
Jordan Petridis
357d99ac7c
Remove temporary file
2018-10-04 17:18:07 +03:00
Jordan Petridis
e0b3dd9795
Mpris: Implement the raise method
2018-10-04 16:46:04 +03:00
Jordan Petridis
cd2b087006
Player: Check the episode id before triggering a smart rewind
2018-10-04 05:27:11 +00:00
Jordan Petridis
ef2940142c
PlayerInfo: Store the id of the current playing episode
2018-10-04 05:27:11 +00:00
Jordan Petridis
e13b8b8827
Player: Tweak the smart rewind behavior
...
Check if time interval passed since the last pause, and only
rewind if the delta to indicates that the user had
switched their focus.
In other words, avoid rewinding if the track was just paused and
resumed.
2018-10-04 05:27:11 +00:00
Jordan Petridis
bcc6ab50e2
PlayerInfo: Minor refactor of the mpris cover
2018-10-04 02:19:56 +00:00
Jordan Petridis
23aa8c05ab
Player: Do not duplicate the mpris instance
2018-10-04 02:19:56 +00:00
Jordan Petridis
986d898217
Player: Remove an unwrap
2018-10-04 02:19:56 +00:00
Jordan Petridis
654c0e5e56
Player: Remove Initialization test
...
When constucting Player in the Sandbox, it tries to use X-11
for dbus-autolaunch which is disabled in the flatpak environment.
It fails with the following error:
D-Bus error: Using X11 for dbus-daemon autolaunch was disabled at compile time, set your DBUS_SESSION_BUS_ADDRESS instead (org.freedesktop.DBus.Error.NotSupported)
2018-10-04 02:19:56 +00:00
Felix Häcker
fed0edbf16
Player: use crates.io package of mpris
2018-10-04 02:19:56 +00:00
Felix Häcker
ede91da6f8
cargo fmt
2018-10-04 02:19:56 +00:00
Felix Häcker
1f18d4291f
Player: implement fast forward / rewind for mpris
2018-10-04 02:19:56 +00:00
Felix Häcker
d066e8939d
Player: implement mpris play/pause callbacks
2018-10-04 02:19:56 +00:00
Felix Häcker
e4c3435d34
Player: add basic mpris support
2018-10-04 02:19:56 +00:00
Kukuh Syafaat
2ff921cc1a
Update Indonesian translation
2018-10-02 13:34:32 +00:00
Piotr Drąg
e0e66fa6af
Update Polish translation
2018-09-30 17:17:46 +00:00
Marek Černocký
110e29ec5a
Update Czech translation
2018-09-29 19:31:22 +00:00
Jordan Petridis
8d44649a1e
Update dependancies
2018-09-29 09:54:06 +03:00
Jordan Petridis
ba60db9977
podcasts-gtk: Upgrade reqwests to 0.9
2018-09-29 09:54:06 +03:00
Jordan Petridis
5050dda4d2
Hamburger: Update to reflect the latest HIG changes
...
Preferences are now grouped with the application actions.
The About label was renamed to "About Podcasts".
https://mail.gnome.org/archives/desktop-devel-list/2018-September/msg00015.html
2018-09-29 02:43:19 +03:00
Florian Heiser
9ea1e16ac8
Update German translation
2018-09-27 15:32:33 +00:00
Rodrigo Lledó
922f44f605
Update Spanish translation
2018-09-24 10:17:44 +00:00
Adolfo Jayme Barrientos
6ea3fc918b
Add Catalan translation
2018-09-24 07:52:18 +00:00
Kukuh Syafaat
0c201533f0
Update Indonesian translation
2018-09-22 08:20:38 +00:00
Jordan Petridis
de1c8485ae
Fix rustc warnings
...
New warnings were introduced with rustc 1.29.0
podcasts-data/src/lib.rs: this one can be removed once diesel is
upgraded.
https://github.com/diesel-rs/diesel/issues/1785#issuecomment-422577018
podcasts-gtk/src/i18n.rs: This is just a deprication warning
2018-09-22 04:47:24 +03:00
gogo
a15fea1d65
Update Croatian translation
2018-09-19 12:24:57 +00:00
Emin Tufan Çetin
d8dbbc6832
Update Turkish translation
2018-09-15 20:11:23 +00:00
Marek Černocký
3563a964ef
Add Czech translation
2018-09-15 05:15:51 +00:00
Jordan Petridis
c0e034726a
Upgrade gtk-rs and friends
...
Upgrade gtk-rs, and everything dependings on it like gst-rs and
libhandy bindigns
2018-09-13 15:47:40 +03:00
Rafael Fontenelle
d676a7071a
Update Brazilian Portuguese translation
2018-09-11 00:12:22 +00:00
Rūdolfs Mazurs
a681b2c944
Add Latvian translation
2018-09-10 17:34:18 +00:00
Mario Blättermann
c53701d56b
Update German translation
2018-09-10 07:50:51 +00:00
Anders Jonsson
a8c1f2eccc
Update Swedish translation
2018-09-09 17:39:22 +00:00
Piotr Drąg
cf7ee44efc
Update Polish translation
2018-09-09 17:00:14 +00:00
Jordan Petridis
baa84773a5
EpisodeWidget: Change the "cancel" action icon
2018-09-08 20:17:47 +03:00
Jordan Petridis
a39e642b5a
EpisodeWidget: Change cacnel button to an icon
...
This also reworks the button_box to be just a GtkBox instead.
I couldn't get ButtonBox to behave the way I wanted.
Fixes #89
2018-09-08 20:17:47 +03:00
Jordan Petridis
e42cb49cbe
EpisodeWidget: Hide total_size if request fails
...
This moves the rest of the methods of Progress struct to the downloader
trait and cancels the Progress if the request does nto succed.
Close #90
2018-09-08 20:17:47 +03:00
Jordan Petridis
678b0b9db1
BaseView: Set minimum width to 360
...
While the HomeView and ShowView can't yet scale that low,
the ShowWidget could get to about 270p already which is not
desirable.
This commit sets the minimum width of all the Views to 360p,
which is our mobile target size.
2018-09-08 20:17:47 +03:00
gogo
0476b67b2f
Add Croatian translation
2018-09-06 18:29:14 +00:00
Balázs Meskó
2751a828e0
Add Hungarian translation
2018-09-05 22:09:46 +00:00
Fabio Tomat
60e09c0dd7
Add Friulian translation
2018-09-04 18:18:27 +00:00
Milo Casagrande
a23297e56a
Add Italian translation
2018-09-03 13:42:38 +00:00
Daniel Mustieles
f59be31ded
Update Spanish translation
2018-09-03 06:32:14 +00:00
Anders Jonsson
2e527250de
Add Swedish translation
2018-09-02 23:35:41 +00:00
Piotr Drąg
91dd378f5d
Update Polish translation
2018-09-01 17:49:54 +00:00
Jiri Grönroos
f5b3d033a3
Update Finnish translation
2018-09-01 16:59:07 +00:00
Rafael Fontenelle
db98e3b722
Add Brazilian Portuguese translation
2018-09-01 13:29:55 +00:00
Mario Blättermann
586cf16fdc
Update German translation
2018-08-31 19:05:31 +00:00
Jordan Petridis
064d877205
Appdata: add release notes
2018-08-31 21:00:18 +03:00
Jordan Petridis
fbf8cc87c9
Version bump
2018-08-31 14:14:17 +00:00
Seong-ho Cho
36f169635a
Add Korean translation
2018-08-31 00:56:44 +00:00
Jordan Petridis
3f509f44a1
Update dependancies.
2018-08-30 20:45:53 +03:00
Jordan Petridis
abfe98283b
EpisodeWidget: Allow size labels to elipsize
2018-08-30 20:21:10 +03:00
Kukuh Syafaat
ded0224f51
Add Indonesian translation
2018-08-30 10:43:20 +00:00
Fran Dieguez
0060a634d2
Add Galician translation
2018-08-30 08:45:45 +00:00
Jordan Petridis
993b6e9d0a
Utils: only queue a single cover download
...
Before we were inserting the id of the cover into the registry
from a rayon thread. But rayon will only execute N threads at the
same time and let the rest into a queue. This would casue mutliple
jobs being queued since the cover id was not inserted in the
registry until the downloading had started.
This fixes said behavior by having the main thread block and write
in the id in the registry.
2018-08-28 21:15:52 +00:00
Jordan Petridis
273c9f7b99
Utils: Change the priority of the cover caches
...
Since loadign a pixbuf from the pre-rendered cache is the most
common operation and it does not affect the behavior we can
first check that and then if the cover is midway downloading.
This avoids a mutex lock for the most common path.
2018-08-28 21:15:52 +00:00
Jordan Petridis
822deb2867
Utils: do not block the cover_dl registry
...
Accidently after f21398357b when a download would start,
it would lock the cover_dl_registry hashmap till it had finished.
Since the registry.read() happens on the main thread this would
cause the UI to block until the download was and the mutex guard
from the download thread dropped.
2018-08-28 21:15:52 +00:00
Piotr Drąg
2a888f0bce
Update POTFILES.in
2018-08-28 19:44:34 +02:00
Jordan Petridis
569c00ff5f
Allow for parallel development instance
...
This adds a configuration option in meson, if set it changes the
application ID allowing for stable and development version to be
run at the same time.
2018-08-28 17:22:13 +03:00
Jordan Petridis
15457e1db4
App/Build: Use env! macro to fetch the variable
...
env! is resolved at compile time which means we don't need to read
and set LOCALDI from build.rs
2018-08-28 17:22:13 +03:00
Jordan Petridis
0ae1eb9578
build: Translate desktop and appdata files
2018-08-28 17:22:13 +03:00
Emin Tufan Çetin
a2d8b88337
Update Turkish translation
2018-08-27 08:43:08 +00:00
Zander Brown
88e07031a6
Workaround for FileChooserNative oddness
2018-08-27 07:52:09 +00:00
Piotr Drąg
cb4daa1ba1
Update Polish translation
2018-08-26 16:31:44 +00:00
Mario Blättermann
05d6d8399d
Update German translation
2018-08-25 21:27:45 +00:00
Jordan Petridis
8bc81d6b5e
Update pot files
2018-08-22 08:29:30 +03:00
Jordan Petridis
6c5cb8f07d
AboutDialog: Translate website label
2018-08-22 08:29:12 +03:00
Jordan Petridis
70e79e50d6
Change the website to point to the wiki page
...
Thanks a lot to @svito for creating the page!
2018-08-21 20:11:38 +03:00
Jordan Petridis
d2c6c6cc4d
Update pot files
2018-08-20 14:09:34 +03:00
Jordan Petridis
92ae681517
Add gtk tests
...
Currently we only test the GtkBuilder files.
Also I can't find a way to get gtk to uninitialize and reinitialize
in a different thread.
Close #56
2018-08-20 13:14:41 +03:00
Emin Tufan Çetin
547fdef9c4
Update Turkish translation
2018-08-19 14:54:27 +00:00
Jordan Petridis
04161284a7
Headerbar: Make the switcher insensitive if empty
...
If there are no shows/episodes to display, there isn't any point
to being able to hit the switcher.
2018-08-19 14:31:27 +03:00
Jordan Petridis
14d4818867
App: Disable refresh action while in empty state
...
Close #71
2018-08-19 14:25:41 +03:00
Jordan Petridis
9f42e91088
Refactor content state with Application actions
...
Instead of each view/widget determening if its populated on its own,
make add Application Actions and apply the state globally.
2018-08-19 13:44:11 +03:00
Jordan Petridis
79ac3b9700
Update dependancies
2018-08-18 18:33:26 +03:00
Jordan Petridis
89b99614a0
Refactor the tests to use ? operator
...
As of ructc 1.27 #[test] can return errors. This improves a great
deal the ergonomics.
2018-08-18 17:02:31 +03:00
Tobias Bernard
0dfb48593e
App icon: orange -> red
2018-08-17 12:49:44 +02:00
Mario Blättermann
6b6c390cb8
Add German translation
2018-08-15 17:19:11 +00:00
Jordan Petridis
cd937c4844
utils: Refactor refresh_feed
...
Move channel creation inside the thread.
Drop the Result return type as its not needed anymore.
2018-08-14 15:24:25 +03:00
Jordan Petridis
cc1a5783fd
App: Do not update the db if its empty
...
If the source table is empty skipp the database refresh.
2018-08-14 15:19:31 +03:00
Jordan Petridis
cb122cbc61
ShowWidget: Change description wrap mode
2018-08-14 13:59:42 +03:00
Jordan Petridis
03754c56c6
Fix the test-suite
2018-08-14 13:40:37 +03:00
Jordan Petridis
471f6ff93b
Source: Remove ignore_etags option
...
This is never used anywhere else apart from the testsuite. Instead
of ignoring etags we should instead not save them if the feed does
not return 200 or 304. See #64 .
2018-08-14 13:40:33 +03:00
Jordan Petridis
c53ad56a6d
Remove TODOs and FIXMEs
...
They are either no longer relevant or just forgotten
2018-08-14 13:40:28 +03:00
Jordan Petridis
ae7f65e938
InAppNotif: Switch the timer to milliseconds
...
This allows for more responsive updates. The implementation still
sucks though. Ideally we would pass a receiver in the callback
and have an even lower timeout_add.
2018-08-14 07:58:29 +03:00
Jordan Petridis
b2d71a037c
Headerbar: Remove the update indicator
2018-08-14 07:52:41 +03:00