Commit graph

88 commits

Author SHA1 Message Date
therealmate
261a038710 Unmute when changing volume
Fixes https://github.com/pop-os/cosmic-player/issues/212
2026-02-19 14:47:04 -07:00
Guillaume-fgt
91d09b8bda removed unnecessary urls truncating 2026-02-06 08:26:57 +01:00
Guillaume-fgt
74fa8baa55 implementing PlayNext media 2026-02-05 16:01:36 +01:00
Jeremy Soller
ceb8f57ec7
Mute when thumbnailing 2026-01-16 13:42:55 -07:00
Josh Megnauth
bb087578df
Prevent screen turning off during playback
Closes: #157

XDG portals expose a D-Bus interface allowing apps to prevent screen
idling, user switching, and other actions. That interface,
org.freedesktop.portal.Inhibit, does all of the heavy lifting here.

Idling = the screen dimming or shutting off.

Idling is inhibited when a video is actively playing.
Idling is NOT inhibited when videos aren't playing - this includes
paused or stopped videos.
2025-11-13 13:26:23 -05:00
Jeremy Soller
fa1637fe51
Merge pull request #183 from Dewb/feat/thumb-orientation
Correctly orient videos in thumbnail mode
2025-11-11 18:59:32 -07:00
Jeremy Soller
b3642ac5e4
Merge pull request #179 from joshuamegnauth54/cleanup-dependencies
Clean up dependencies, lints
2025-11-11 18:57:14 -07:00
Michael Dewberry
823fd0e521 Use same video creation method for player and thumbnailer 2025-11-08 15:38:09 -05:00
Josh Megnauth
27ea8d2770
Clean up dependencies, lints
`lazy_static` and `smol_str` weren't used. COSMIC Player used `dirs`
once to find the user's home directory. Rust fixed and undeprecated its
`home_dir` function in 1.85, which released earlier this year and is the
MSRV of libcosmic.
2025-11-03 16:12:38 -05:00
Guillaume Fgt
99f1ab8382 fix mouse cursor showing in Fullscreen video 2025-10-15 16:14:37 +02:00
Josh Megnauth
04c354584d
Clear recent media button
Closes: #141
2025-10-12 20:28:55 -04:00
Jeremy Soller
27b7b373b9
Correctly handle videos with no subtitles 2025-10-06 11:49:46 -06:00
Jeremy Soller
f2a48870f5
Allow toggling subtitles, fixes #151 2025-10-06 11:39:02 -06:00
Mitchel Stewart
3dc76ba60d set agent for souphttpsrc 2025-09-11 08:38:24 -06:00
Jeremy Soller
58c778832b
Respond to duration changes, fixes #107 2025-08-15 10:15:28 -06:00
Jeremy Soller
0e0718e45d
Handle codec install during file open, fixes #23 2025-08-14 20:31:47 -06:00
Michael Dewberry
21866486bd Add videoflip filter to automatically handle orientation metadata 2025-08-13 16:16:49 -06:00
Jeremy Soller
55654e1231
Provide thumbnailing 2025-07-11 11:27:48 -06:00
Roman Avdeev
13d3d1b604 Fixed volume scroll 2025-06-27 17:55:47 +00:00
Josh Megnauth
7c16f3e0b4 Retain paused/playing state on scrub
Closes: #110

Prior to this patch, seeking incorrectly resumed playing even if the
player was paused when it should stay paused.
2025-06-27 17:55:06 +00:00
user0-07161
fadecd0068 fix: don't change volume on scroll when sidebar is toggled
otherwise, potential scrolling in the sidebar inferes with volume
control by scrolling
2025-05-19 08:36:19 -06:00
user0-07161
94982b4a4a feat: change volume on mousewheel scroll, #112 2025-05-19 08:36:19 -06:00
Cristian Dinu
6d5c2f020d feat(controls): Hide header bar if no mouse movement
We hide the title bar similarly on how we hide the controls bar.

The difference between the header bar and the controls bar is that in
`Fullscreen` mode we don't display the header bar even if we have mouse
movement.

If a menu or sub-menu is open, but then the user makes no mouse
movement, then the menus will be hidden when the header bar is hidden.

I'm not sure how to handle the side panel, the `nav_bar`, what I call
"the playlist". I decided to not handle it's hiding based on mouse
movement because it is still displayed when we put the window in
`Fullscreen` mode.

Closes #37
2025-03-31 09:22:42 -06:00
Cristian Dinu
59cd966a30 fix(args): Eliminate the binary from arguments
For an executable the first argument is always the binary itself.
Because of this we have to skip it.

If we don't skip it, then it will be treated as another URL, therefore
`cosmic-player` will end up opening two URLs, one for the binary and one
for the actual file we want to play.

When opening multiple files `cosmic-player` will show the side panel /
playlist with the list of files.

The regression this commit fixed was introduced by `01be9152`.

Closes #96.
2025-03-27 08:49:09 +01:00
LinuxBoy-96
01be9152a7
feat: add help and version flags to argument parser 2025-03-26 16:42:39 +01:00
Hugo
07ed2615d0 Add daemon mode support 2025-03-22 19:22:22 +00:00
Josh Megnauth
701fc818f7 Playlist with multiple, mixed items
Prior to this commit, projects/playlists were limited to folders even if
file URLs were passed as arguments. With this commit both files and
folders are added to projects from the command line.

This doesn't affect opening a file from the GUI yet, but this patch
implements the required plumbing for that as well.
2025-03-13 12:17:54 -06:00
Josh Megnauth
3fd8641df2 Parse multiple URLs via command line
Closes: #44, #47

I used pico-args over clap because the former only adds about 1KB of
binary bloat whereas clap adds almost 1MB.
2025-03-13 12:17:54 -06:00
Josh Megnauth
011c633a8a Open folder passed as command line arg
Allows opening a folder on the command line rather than only a single
file. This is useful for Freedesktop compliant file managers as they
pass files URLs to media players.

This currently only handles one URL whereas the spec allows multiple.
2025-02-03 08:19:00 -07:00
Jeremy Soller
3466b064e9
Support missing metadata, fixes #56 2025-01-31 16:13:56 -07:00
Jeremy Soller
fe143a689f
Adjust text color 2025-01-31 16:09:17 -07:00
Jeremy Soller
d65acd4979
Use bg_component_color as background for audio 2025-01-31 15:34:32 -07:00
Jeremy Soller
67caa89151
Show metadata for audio files, part of #56 2025-01-31 15:19:01 -07:00
Jeremy Soller
841816e8d1
Add tree view, fixes #52, fixes #53 2025-01-24 14:05:50 -07:00
Jeremy Soller
0169cccfa2
Add recent media, part of #53 2025-01-24 12:49:02 -07:00
Jeremy Soller
fd1df4f098
Fix deadlocks when opening files while another file is playing 2025-01-24 12:23:57 -07:00
Jeremy Soller
4fee3f84fa
Scale down album art image 2025-01-19 10:25:46 -07:00
Jeremy Soller
22c7a76f41
Show open with button when no media loaded, fixes #55 2025-01-19 10:19:47 -07:00
Jeremy Soller
5c6163eed7
Move seek to second line when condensed, fixes #54 2025-01-19 10:08:24 -07:00
Jeremy Soller
0ad6d5e3e0 Improve argument handling 2025-01-18 10:09:08 -07:00
Jeremy Soller
73f524c95e
Implement MPRIS and album art, fixes #57, fixes #59, part of #56 2025-01-18 08:47:47 -07:00
Jeremy Soller
e76ea68bfc
Improve plugin install logic 2024-12-30 13:38:54 -07:00
Jeremy Soller
93db103a0c
Update iced_video_player 2024-12-30 12:57:03 -07:00
Jeremy Soller
b26005d780
Move language selection to bottom bar, implement volume 2024-12-05 13:41:58 -07:00
Jeremy Soller
7f9d56ae0c
Add file menu, improve naming of subtitles 2024-12-05 12:20:37 -07:00
Jeremy Soller
d8ee67cc7f
Improve argument handling 2024-10-14 07:08:35 -06:00
Jeremy Soller
9ab453a3bb
Update dependencies 2024-10-10 11:22:22 -06:00
Jeremy Soller
f10350c7ec
Remove ffmpeg implementation 2024-10-09 11:15:04 -06:00
Jeremy Soller
d61426957d
Enable subtitles again 2024-10-08 08:53:53 -06:00
Jeremy Soller
644661e38d
Disable subtitles for now, as they can cause video stream hangs. Add bindings for fullscreen 2024-10-07 13:14:30 -06:00