Rafał Dzięgiel
6ddb53252a
clapper: Implement harvest caching
...
Using recently added local cache functionality, store harvests
that have expiration date. With this, next time the same URI is
selected for playback we can read it from cache, skipping loading
of any enhancer plugins and doing network requests.
This also works nicely with Clapper discoverer feature.
Making queued items be fetched and cached ahead of playback.
2025-05-20 18:56:28 +02:00
Rafał Dzięgiel
b30d53d8ce
clapper: Add ability to set harvest expiration date
2025-05-20 17:18:20 +02:00
Rafał Dzięgiel
1527873bcc
clapper: Fix missing unref of mapped file
...
In case where enhancer plugin version did not match
an unref was missing of read file.
2025-05-19 20:42:32 +02:00
Rafał Dzięgiel
e23f2acb3e
meson: Remove unused "config.h" variable
2025-05-18 13:24:51 +02:00
Rafał Dzięgiel
1dfcb218ac
meson: Bump min required libadwaita version
...
Since URI dialog was ported to use AdwAlertDialog,
a minimal Adw version has to be changed to 1.5.
2025-05-17 18:55:31 +02:00
Rafał Dzięgiel
b05f0f2b30
meson: Remove GIR init section
...
Clapper GStreamer plugin is not part of GObject Introspection,
so no need to init GStreamer when compiling bindings.
2025-05-17 18:20:33 +02:00
Rafał Dzięgiel
dad0d46196
Merge pull request #546 from Rafostar/configurable-enhancers
...
Make Clapper Enhancers configurable
2025-05-16 18:30:05 +02:00
Rafał Dzięgiel
e34f729f62
clapper: Move basic functions into separate files
...
Avoid including whole "clapper.h" internally.
Faster recompilation when changes are done.
2025-05-16 17:02:29 +02:00
Rafał Dzięgiel
a97e7d1a96
clapper: Avoid using hardcoded API name in enhancers loader on win32
2025-05-16 17:02:10 +02:00
Rafał Dzięgiel
c6c4fe309b
clapper: Implement data cache
...
Add data cache functions and use them to store enhancer data into local cache file.
This way we can restore all properties and interfaces used in enhancer without
creating its instance. This avoids loading interpreters like Python at init time
making startup a lot faster.
2025-05-16 17:02:07 +02:00
Rafał Dzięgiel
3ef6e9694a
clapper-app: Add enhancers to preferences window
...
Browse, read info and configure Clapper enhancer plugins from preferences window
2025-05-16 17:02:03 +02:00
Rafał Dzięgiel
d951be7a56
clapper: Remove usage of "X-Interfaces" in enhancer data
...
At this point its sole remaining place where its used is one debug message.
For this reason remove it. With this, enhancer plugin files no longer need to
have this in them unless they want to keep Clapper 0.8 compat (otherwise unused).
2025-05-16 17:01:59 +02:00
Rafał Dzięgiel
98fdd7c58b
clapper: Introduce "ClapperEnhancerProxy" objects
...
Add support for configuring Clapper Enhancers. In order to do that,
introduce enhancer proxy object that act as intermediary between
player and enhancer plugin.
We cannot give direct access to enhancer instances from code, since
they are managed (created and destroyed) by player as/when needed.
Also due to some interpreted languages not working with multiple
threads. Instead, give proxy objects that will store each enhancer
configuration to be applied when an enhancer instance is created.
With this, implementations also gain ability to browse available
enhancers, see what they support and change their properties.
Enhancers are now also assigned to player, instead of being only global.
This allows to configure them separately on a per player instance basis.
Writing configurable enhancers is super easy too, as all plugin has
to do is install standard GParamSpec properties to its class with a
corresponding gschema file (for global props only) and its done.
2025-05-16 17:01:51 +02:00
Rafał Dzięgiel
147d94088c
Merge pull request #548 from ximion/master
...
Use modern appstream, instead of appstream-util for validation
2025-05-03 15:42:28 +02:00
Matthias Klumpp
c7790d9f7b
Use modern appstream, instead of appstream-util for validation
2025-05-03 01:56:53 +02:00
Rafał Dzięgiel
f5731957dc
New Crowdin updates ( #524 )
...
* New translations clapper-app.pot (Chinese Simplified)
* New translations clapper-app.pot (Chinese Simplified)
* New translations clapper-app.pot (Romanian)
* New translations clapper-app.pot (French)
* New translations clapper-app.pot (Spanish)
* New translations clapper-app.pot (Afrikaans)
* New translations clapper-app.pot (Arabic)
* New translations clapper-app.pot (Catalan)
* New translations clapper-app.pot (Czech)
* New translations clapper-app.pot (Danish)
* New translations clapper-app.pot (German)
* New translations clapper-app.pot (Greek)
* New translations clapper-app.pot (Basque)
* New translations clapper-app.pot (Finnish)
* New translations clapper-app.pot (Hebrew)
* New translations clapper-app.pot (Hungarian)
* New translations clapper-app.pot (Italian)
* New translations clapper-app.pot (Japanese)
* New translations clapper-app.pot (Korean)
* New translations clapper-app.pot (Lithuanian)
* New translations clapper-app.pot (Dutch)
* New translations clapper-app.pot (Norwegian)
* New translations clapper-app.pot (Polish)
* New translations clapper-app.pot (Portuguese)
* New translations clapper-app.pot (Russian)
* New translations clapper-app.pot (Slovak)
* New translations clapper-app.pot (Serbian (Cyrillic))
* New translations clapper-app.pot (Swedish)
* New translations clapper-app.pot (Turkish)
* New translations clapper-app.pot (Ukrainian)
* New translations clapper-app.pot (Chinese Simplified)
* New translations clapper-app.pot (Chinese Traditional)
* New translations clapper-app.pot (Vietnamese)
* New translations clapper-app.pot (Portuguese, Brazilian)
* New translations clapper-app.pot (Persian)
* New translations clapper-app.pot (Croatian)
* New translations clapper-app.pot (Hindi)
* New translations clapper-app.pot (Asturian)
* New translations clapper-app.pot (Occitan)
* New translations clapper-app.pot (Persian)
* New translations clapper-app.pot (Portuguese, Brazilian)
* New translations clapper-app.pot (Finnish)
* New translations clapper-app.pot (Russian)
* New translations clapper-gtk.pot (Russian)
* New translations clapper-app.pot (French)
* New translations clapper-app.pot (Portuguese)
* New translations clapper-app.pot (German)
2025-04-27 15:20:33 +02:00
Rafał Dzięgiel
2e3c98d9b4
Merge pull request #530 from Rafostar/pipeline-preview-launcher
...
Ability to show GStreamer pipeline
2025-04-27 13:04:04 +02:00
Rafał Dzięgiel
d09824fb1a
clapper-app: Show error dialog on pipeline preview failure
2025-04-26 21:25:13 +02:00
Rafał Dzięgiel
366315077e
clapper-app: Use user data dir for storing pipeline exports
...
System tmp directory does not work within containers such as Flatpak
for our usage with file launcher, so make our own temp in app data dir
2025-04-26 18:33:02 +02:00
Rafał Dzięgiel
a75184a471
flatpak: Build graphviz
...
Needed for pipeline preview app functionality
2025-04-26 18:32:59 +02:00
Rafał Dzięgiel
5bd6ba8948
meson: Add "pipeline-preview" to printed summary
2025-04-26 18:32:57 +02:00
Rafał Dzięgiel
160dbce265
clapper-app: Add "show pipeline" key shortcut to help overlay
2025-04-26 18:32:55 +02:00
Rafał Dzięgiel
224326857b
clapper-app: Create pipeline preview file async
2025-04-26 18:32:42 +02:00
Rafał Dzięgiel
f9b31c51a7
Merge pull request #538 from fritteli/fix-typo-in-german-translation
...
chore: Fix typo in german translation
2025-04-11 20:11:27 +02:00
Manuel Friedli
be1de8bc77
chore: Fix typo in german translation
2025-04-04 23:06:42 +02:00
Rafał Dzięgiel
b8a4a90b6c
clapper-app: Delete temp dir on exit
...
Pipeline preview creates temp files, so delete whole directory
recursively on app exit. Since these files are used through
launcher/portal with another app, we do not know when user finished
using them, thus we cannot detect and remove them earlier.
2025-02-18 18:30:09 +01:00
Rafał Dzięgiel
d73f33785d
clapper-app: Fix a file path in POTFILES
...
Since #479 "window" was renamed to "dialog".
We also need to update POTFILES accordingly.
2025-02-16 17:49:11 +01:00
Rafał Dzięgiel
dca8fbd336
clapper-app: Add GStreamer pipeline preview
...
Allow to preview GStreamer pipeline while playing content.
This makes it easier to check what is used underneath.
2025-02-16 17:36:05 +01:00
Rafał Dzięgiel
681d5b8699
clapper: Add a function to get pipeline graph data
2025-02-16 17:23:34 +01:00
Rafał Dzięgiel
009f272f64
Merge pull request #479 from geopjr-forks/fix/adw-1-6-deprecations
...
clapper-app: Fix libadwaita 1.6 deprecations
2025-02-16 13:22:54 +01:00
Evan Paterakis
a5bc1b5578
clapper-app: set uri-dialog's content width to 420
...
Co-authored-by: Rafał Dzięgiel <40623528+Rafostar@users.noreply.github.com >
2025-02-15 19:17:04 +02:00
Rafał Dzięgiel
49471882c1
clapper-app: Update POT file
2025-02-15 12:48:42 +01:00
Evan Paterakis
069be30225
clapper-app: fix adw 1.6 deprecations
2025-02-12 17:49:22 +02:00
Rafał Dzięgiel
5f83d93374
Merge pull request #525 from abhijeeth-babu/patch-1
...
Remove "Music" from Clapper's keywords to lower its priority as a music player
2025-02-10 19:59:51 +01:00
Rafał Dzięgiel
d0a9122833
Merge pull request #528 from Rafostar/ci-arm64
...
workflows: Build natively on arm64
2025-02-10 19:26:16 +01:00
Rafał Dzięgiel
c29b8871a3
workflows: Build natively on arm64
...
Replace QEMU with native arm64 runners, now that they are available
2025-02-10 18:21:37 +01:00
Rafał Dzięgiel
d4d0f9e95e
flatpak: Sync with Flathub
2025-02-08 12:48:37 +01:00
Rafał Dzięgiel
291c6e35f2
Back to development
2025-02-08 11:48:12 +01:00
Abhijeeth Babu
69bace7150
Remove other unneeded keywords (Album, GNOME, Clapper) from desktop file
2025-01-27 22:57:01 +05:30
Abhijeeth Babu
401e33b1c0
Remove "Music" from Clapper's keywords to lower its priority as a music player
...
This PR removes the keyword "Music" from Clapper's `.desktop` file to lower its priority as a music player in desktop search results. This ensures that Clapper is not prominently suggested when searching for music-related applications, while retaining its functionality as a video player.
### Changes:
- Removed "Music" from the `Keywords` field in the `.desktop` file.
This change does not affect Clapper's ability to play audio files but adjusts its visibility in application search results.
2025-01-25 22:10:10 +05:30
Rafał Dzięgiel
a449b6b3f5
0.8.0
0.8.0
2025-01-20 21:29:59 +01:00
Rafał Dzięgiel
2d12c8980d
clapper-app: Update LINGUAS file
2025-01-20 21:17:53 +01:00
Rafał Dzięgiel
ea102ed870
clapper-gtk: Update LINGUAS file
2025-01-20 21:17:13 +01:00
Rafał Dzięgiel
ee6f3cccdb
New Crowdin updates ( #517 )
...
* New translations clapper-gtk.pot (German)
* New translations clapper-app.pot (German)
* New translations clapper-app.pot (German)
* New translations clapper-app.pot (Portuguese)
* New translations clapper-gtk.pot (Portuguese)
* New translations clapper-app.pot (Portuguese)
* New translations clapper-app.pot (Russian)
* New translations clapper-app.pot (French)
* New translations clapper-gtk.pot (French)
* New translations clapper-app.pot (French)
* New translations clapper-app.pot (Chinese Simplified)
* New translations clapper-app.pot (Chinese Simplified)
* New translations clapper-gtk.pot (Polish)
* New translations clapper-app.pot (Polish)
* New translations clapper-gtk.pot (Romanian)
* New translations clapper-app.pot (Romanian)
* New translations clapper-app.pot (Romanian)
2025-01-20 21:13:13 +01:00
Rafał Dzięgiel
63d393662e
metainfo: Update version history
2025-01-20 20:46:59 +01:00
Rafał Dzięgiel
80285fb50b
clapper: Fix importing enhancers with extra path
...
We cannot use "goto" here, like it was before, as we would fall into an endless loop.
2025-01-20 17:43:48 +01:00
Rafał Dzięgiel
e9377f0c6a
Merge pull request #519 from Rafostar/misc-fixes
...
Miscellaneous fixes
2025-01-19 18:02:10 +01:00
Rafał Dzięgiel
ce102b9c76
workflows: Use flatpak-builder action master version
...
Since "flatpak-builder" action uses deprecated "upload-artifact"
version, that can stop working soon, disable it and upload ourselves.
This is supported in master, but not in any tagged version,
so for now switch to using action from master branch.
Also bump used runtime to GNOME 47 when building.
2025-01-19 17:42:08 +01:00
Rafał Dzięgiel
4df812066f
clapper: enhancers-loader: Support loading extra enhancers
...
Allow setting an additional dir(s) with "CLAPPER_ENHANCERS_EXTRA_PATH" env.
This should allow to add other enhancers without removing default ones.
If app/user needs to remove default ones, "CLAPPER_ENHANCERS_PATH" env
can be set to empty.
2025-01-19 15:48:45 +01:00
Rafał Dzięgiel
8752d08113
clapper: enhancers-loader: Fix default enhancers dir on Win32
2025-01-19 15:48:34 +01:00