Commit Graph

1410 Commits

Author SHA1 Message Date
Rafał Dzięgiel
f967e169b5 clapper-gtk: Update LINGUAS file 2024-06-29 18:24:26 +02:00
Rafał Dzięgiel
04a5bc8523 New Crowdin updates (#431)
* New translations clapper-gtk.pot (Portuguese, Brazilian)

* New translations clapper-app.pot (Portuguese, Brazilian)

* New translations clapper-app.pot (Catalan)

* New translations clapper-app.pot (Chinese Simplified)

* New translations clapper-gtk.pot (Chinese Simplified)

* New translations clapper-gtk.pot (Occitan)

* New translations clapper-app.pot (Occitan)
2024-06-29 18:18:06 +02:00
Rafał Dzięgiel
135be60497 clapper-gtk: billboard: Make transition a tad faster 2024-06-29 17:49:41 +02:00
Rafał Dzięgiel
736fddbe46 meson: Do not list Clapper API features when not building it
No need to list API features if API is not being built.

This avoids an issue with meson script error when Clapper API
build is skipped, since these are not declared then.

Fixes #468
2024-06-29 17:35:47 +02:00
Rafał Dzięgiel
63f2fa1946 examples: Start playback after assembling app window
This is the correct order of how things should be done, so teach what is right
2024-06-29 15:07:59 +02:00
Rafał Dzięgiel
99708e1267 clapper-gtk: status: Apply ".osd" style class
Otherwise text is invisible on light themed apps,
since it renders as black letters on a black background
2024-06-29 15:05:12 +02:00
Rafał Dzięgiel
636e61ead1 clapper-gtk: video: Use "scaletempo" by default
Do not require applications to import GStreamer and their devs to learn its
basics just to set this single element. Similarly as ClapperGtkVideo sets
"clappersink" during construction, it can also set "scaletempo" as this is
the most common choice for an audio filter.

Elements can still be changed like before if desired by setting corresponding
player properties.
2024-06-29 14:52:25 +02:00
Rafał Dzięgiel
147399afd8 clapper: media-item: Fix construct with NULL as "cache-location" 2024-06-28 19:47:07 +02:00
Rafał Dzięgiel
2843a17879 Merge pull request #467 from Rafostar/cached-items
clapper: Add media item creation with cached file
2024-06-27 22:13:36 +02:00
Rafał Dzięgiel
bf0a8b68db clapper: Add media item creation with cached file
Allow creating item with a previously downloaded cache file.
When set, file at location will be tried to be loaded first.
If this fails, URI will be used as normal.
2024-06-27 20:57:59 +02:00
Rafał Dzięgiel
af4ae2c942 clapper: Fix missing "download-complete" signal on short videos
Short video might be fully downloaded before playback starts.
This prevents us from emitting "download-complete" signal with
corresponding media item when download cache is enabled.

Check if we have pending item, as this will be the item downloaded
in such case (before it becomes playing item).
2024-06-22 11:20:57 +02:00
Rafał Dzięgiel
c0221dedc8 examples: Fix typo 2024-06-22 11:12:10 +02:00
Rafał Dzięgiel
9f54c1058c Merge pull request #463 from Rafostar/ms-win
Support MS Windows
2024-06-21 20:32:50 +02:00
Rafał Dzięgiel
07f850d58a workflows: Add windows build job 2024-06-21 18:50:24 +02:00
Rafał Dzięgiel
650b568319 clapper-app: meson: Do not install mimes on Windows
They are unsupported. We use file extensions instead.
2024-06-21 18:50:21 +02:00
Rafał Dzięgiel
abff579b70 clapper-app: Fix missing media in file dialog on Windows
Windows does not support mime-types file filters, so use file extensions instead
2024-06-21 18:50:13 +02:00
Rafał Dzięgiel
0b253b41f6 clapper-app: meson: Binaries with/without console on Windows 2024-06-20 18:32:50 +02:00
Rafał Dzięgiel
d5832bd2db gst-plugin: Improve importers lookup on Win32 2024-06-19 22:44:27 +02:00
Rafał Dzięgiel
98371e822e gst-plugin: Allow overriding importers path with env variable 2024-06-17 21:41:11 +02:00
Rafał Dzięgiel
3f2e5d569d clapper-gtk: video: Fix signals disconnection after dispose
A possibility exists that something else keeps a reference to the player
even after video is disposed. In this case signals from the player would
not be disconnected.

We have to disconnect them manually here to ensure their callbacks will
not be used after disposal.
2024-06-17 19:26:18 +02:00
Rafał Dzięgiel
f58e722002 clapper-app: Fix unused variable warning when no MPRIS
When compiling without MPRIS feature "instance_count" is left unused,
so skip it with preprocessor in order to avoid warning.
2024-06-16 17:35:06 +02:00
Rafał Dzięgiel
262983e857 clapper-app: Ensure private types for GtkBuilder
We need to ensure types that are not part of public API, otherwise GtkBuilder will fail to use them
(e81aad25a1/gtk/glade/README.glade (L15)).
2024-06-16 15:21:23 +02:00
Rafał Dzięgiel
6ca1bccd1a clapper-gtk: Ensure private types before template init
We need to ensure types that are not part of public API, otherwise GtkBuilder will fail to use them
(e81aad25a1/gtk/glade/README.glade (L15)).
2024-06-16 14:51:56 +02:00
Rafał Dzięgiel
c25cfd9598 clapper-app: meson: Do not skip whole data install on non-linux
We cannot run app without schemas, thus we need to compile and install them on any OS
2024-06-16 13:50:54 +02:00
Rafał Dzięgiel
3ce937c2b9 gst-plugin: Properly export external API symbols
We do not install headers from gst-plugin, but still need to export
symbols to compile modules that use plugin provided shared libraries.
2024-06-16 13:50:49 +02:00
Rafał Dzięgiel
521a83bad0 clapper: meson: Add additional check for gdbus-codegen
Check at meson level if "gdbus-codegen" is available and otherwise
exit cleanly, possibly building without MPRIS feature instead of failing.
2024-06-16 13:50:41 +02:00
Rafał Dzięgiel
d4598846d3 clapper-gtk: Properly export external API symbols 2024-06-16 13:48:27 +02:00
Rafał Dzięgiel
50d4fbe43b clapper: Properly export external API symbols 2024-06-16 13:48:17 +02:00
Rafał Dzięgiel
df371c698a clapper-app: Fix opened file content type detection
Fixes issues with detecting whether file has one of supported subtitles mime types
2024-06-14 17:32:03 +02:00
Rafał Dzięgiel
2eaf5032cd Merge pull request #451 from Rafostar/resize-me
Resize app window to match aspect ratio with middle click
2024-05-26 17:06:58 +02:00
Rafał Dzięgiel
28de283a98 clapper-app: Add auto window resize keyboard shortcut
In addition to middle click, also add "Super+r" keyboard shortcut to perform window resize to fit video action
2024-05-25 21:30:26 +02:00
Rafał Dzięgiel
ae6512b233 clapper-app: Resize window to match aspect ratio with middle click 2024-05-25 21:16:59 +02:00
Rafał Dzięgiel
5049f620eb Merge pull request #449 from Rafostar/new-window
Add "New Window" functionality in UI
2024-05-20 22:55:14 +02:00
Rafał Dzięgiel
439e5831e2 clapper-app: Apply options from active window to newly created one
When a new window is created, apply all current values to it (volume, speed,
set GStreamer elements, etc.). It would not be the best experience when user
opens a new window, plays something and 100% volume is used in it.
2024-05-20 22:40:28 +02:00
Rafał Dzięgiel
6484599e46 clapper-gtk: Fix GtkWindowControls style when OSD on video 2024-05-15 21:37:48 +02:00
Rafał Dzięgiel
333f8b4692 clapper-app: Make info window close with Esc key
Fixes #448
2024-05-14 21:13:02 +02:00
Rafał Dzięgiel
9b7c12c3d0 flatpak: Fix MPRIS permission
Since now we do multiple windows, an instance number is added
to owned connection name (as specified in MPRIS spec).

Update Flatpak MPRIS permission to handle that.
2024-05-13 20:32:54 +02:00
Rafał Dzięgiel
6fb25dd22b clapper-app: Add new window keyboard shortcut 2024-05-13 20:05:59 +02:00
Rafał Dzięgiel
cc5c2b2403 clapper-app: Add "New Window" menu option
Allow creating new windows from within the app
2024-05-13 19:15:31 +02:00
Rafał Dzięgiel
71142ab0c6 Merge pull request #444 from Rafostar/cmd-options
Add more command line options
2024-05-12 20:47:45 +02:00
Rafał Dzięgiel
cc8ed7b488 clapper-app: Do not store "enqueue" value in options
It is used immediately, so no need to store it.
2024-05-12 20:30:19 +02:00
Rafał Dzięgiel
6f0ed93b08 clapper-app: Only restore saved settings to new windows 2024-05-12 20:30:16 +02:00
Rafał Dzięgiel
10e0421342 clapper-app: Clamp command line args to allowed values
Instead of running into warnings or other problems when user
specifies an out of range value for command line option, just
clamp them to nearest allowed one.
2024-05-12 20:30:14 +02:00
Rafał Dzięgiel
bcd1d48922 clapper-app: Add command line context params string
Describe what kind of remaining (non-options) strings can
be passed when launching via command line.
2024-05-12 20:30:11 +02:00
Rafał Dzięgiel
aac050e252 clapper-app: Add command line option to enter fullscreen 2024-05-12 20:30:09 +02:00
Rafał Dzięgiel
1330e49ed8 clapper-app: Add command line option to set progression mode 2024-05-12 20:30:07 +02:00
Rafał Dzięgiel
22fb88d0f2 clapper-app: Support creating multiple windows 2024-05-12 20:30:01 +02:00
Rafał Dzięgiel
42b5acd967 clapper: mpris: Fix MPRIS own-name documentation 2024-05-12 20:16:28 +02:00
Rafał Dzięgiel
8e14ec1697 clapper-app: Cleanup to not store app options as global and static
Now that we are using both local and global command line vfuncs, we
can just get and apply options in them and free values later.

This avoids having options global and static.
2024-05-12 19:34:37 +02:00
Rafał Dzięgiel
a257d3f003 clapper-app: Add command line option to enqueue files 2024-05-12 19:34:33 +02:00