Commit Graph

45 Commits

Author SHA1 Message Date
Rafostar
9354042379 Add preferences dialog
Allows customizing various settings. For now it includes player seeking times and mode customization. More options will be added in the future.
2020-10-25 10:14:14 +01:00
Rafostar
576440faff Fix update media end time 2020-10-23 10:26:11 +02:00
Rafostar
cc4757aef5 Do not hide controls while navigating panel 2020-10-21 13:19:38 +02:00
Rafostar
0291377389 Major code cleanup 2020-10-20 22:30:15 +02:00
Rafostar
4dea498f37 Improve position scale alignment in fullscreen 2020-10-19 13:27:41 +02:00
Rafostar
eafc65d15d Go back to beginning after playback ends 2020-10-16 12:13:00 +02:00
Rafostar
d0eb28b207 Remove GTK3 "widget.show()" leftovers 2020-10-16 10:59:00 +02:00
Rafostar
12c1251c9b Update video info during non-local file playback
With this player will always show current video resolution when playing fragmented media like HLS or MPD online videos
2020-10-16 00:21:43 +02:00
Rafostar
745747b604 Hide time and position scale on LIVE media 2020-10-15 22:49:37 +02:00
Rafostar
57a8e6d933 Add about dialog 2020-10-15 16:21:46 +02:00
Rafostar
ea8226f1d3 Restore seek on drop behavior 2020-10-14 16:45:09 +02:00
Rafostar
80b9eb7c97 Fix volume button scroll 2020-10-13 21:36:11 +02:00
Rafostar
e430956752 Allow navigating over buttons via keyboard 2020-10-13 20:27:58 +02:00
Rafostar
e2d6cc440d Tweak play/pause icons size 2020-10-07 23:41:12 +02:00
Rafostar
43a54920ef Change elapsed time into button 2020-10-07 23:10:11 +02:00
Rafostar
4c5d922d47 Fix toggle play button icon change 2020-10-07 20:22:02 +02:00
Rafostar
041b31c161 Fix enter fullscreen and popover buttons 2020-10-07 16:40:42 +02:00
Rafostar
bae0b805ea Initial GTK4 port
Port most of the player to GTK4. Some things are still broken or disabled due to GTK change, but will be gradually fixed.
2020-10-05 21:19:29 +02:00
Rafostar
31db48d137 Replace deprecated Gtk HBox and VBox with normal Box 2020-09-21 20:49:25 +02:00
Rafostar
21de7e7bfd Replace deprecated margin proporties 2020-09-18 13:11:24 +02:00
Rafostar
234c49221e Enable scroll on volume button 2020-09-14 16:10:09 +02:00
Rafostar
043fe9f75e Move Popover button creation to buttons.js 2020-09-12 21:10:44 +02:00
Rafostar
71c5454547 Fix invisible unfullscreen button 2020-09-12 19:28:17 +02:00
Rafostar
6938f01433 Add "BoxedIconButton" class 2020-09-11 21:28:00 +02:00
Rafostar
5afe5149aa Add music visualizations 2020-09-11 20:33:06 +02:00
Rafostar
b8ed6b32dc Reuse old redio buttons
When a media is changed, normally one would expect to create new radio buttons with video/audio/subtitle tracks names corresponding to current video, but this is inefficient. Destroying objects just to create similiar ones again does take a long time and might lead to memory leaks. That is why a better and faster approach is to simply edit already available objects to match our expectations instead. This commit does just that for tracks radio buttons.
2020-09-10 19:50:41 +02:00
Rafostar
e9ec155e7b Move fullscreen and menu buttons to header bar
Follow other GNOME apps designs by having fullscreen button on the right side of window header bar. The control panel had too many buttons already and we still need to make some space for playlist. This way "fullscreen" button will be on top bar while windowed and "unfullscreen" button will appear on the bottom right only when player entered fullscreen mode.
2020-09-10 14:24:02 +02:00
Rafostar
0c5278e844 Make button popovers appear above the controls bar 2020-09-09 21:40:16 +02:00
Rafostar
ab11d52a68 Recreate volume button from scratch
Create volume button with popover instead of using GTK provided volume button.

Creating new button with only needed elements is more efficient then removing unneeded items from pre-made volume button. This should also increase performance a little when changing volume, because now we generate new icon only when a change is needed. In pre-made button icon is regenerated on each volume change.
2020-09-09 21:34:32 +02:00
Rafostar
a8fa4bc6de Tweak fullscreen menu appearance 2020-09-07 11:27:06 +02:00
Rafostar
d8d342a956 Make everything on fullscreen bigger (TV mode) 2020-09-06 10:18:53 +02:00
Rafostar
7d2edec553 Show playback time and switch to dark mode when fullscreen 2020-09-05 13:49:44 +02:00
Rafostar
e76d1c9e6e Add video, audio and subtitle track selection 2020-09-04 23:43:51 +02:00
Rafostar
4e235a0e9b Add controls background on fullscreen 2020-09-04 10:47:05 +02:00
Rafostar
54bbcd2eb1 Make all interface buttons flat 2020-09-03 23:08:32 +02:00
Rafostar
3d9bab0578 Add overlay for controls when fullscreen
When player is fullscreen playback controls are shown on top of video (at screen bottom). When windowed, controls are shown below the video instead.
2020-09-03 20:01:26 +02:00
Rafostar
70ec6311c0 Add seeking on slider drop and make it default behaviour
Seeking during slider drag is very CPU and HDD intensive task. We are requesting the player to keep seeking in VERY short amounts of time. This can be performed more effectively by doing a single seek after slider drop. Since this is a different behaviour then usually in media players, I am making this optional (enabled by default).
2020-09-02 18:31:22 +02:00
Rafostar
c2bc1e39cc Add "addButton" convenience function 2020-09-02 16:54:58 +02:00
Rafostar
116dc4dd20 Destroy removed volume control buttons 2020-09-02 09:12:17 +02:00
Rafostar
9f04b74e05 Fix volume button icon behaviour 2020-09-01 23:43:40 +02:00
Rafostar
326ba66da0 Spread volume icon changes evenly 2020-09-01 17:46:47 +02:00
Rafostar
b401bc15ff Improve volume scale icons logic 2020-09-01 12:10:55 +02:00
Rafostar
e35d18505e Use else-if 2020-08-31 23:13:47 +02:00
Rafostar
f70fe43303 Add toggle fullscreen button 2020-08-31 22:21:46 +02:00
Rafostar
918ba34885 Add Gtk app 2020-08-31 20:47:10 +02:00