From a1c1b7f733687553c454aba7d5af3332c15f05bd Mon Sep 17 00:00:00 2001 From: Markus Ongyerth Date: Wed, 2 Oct 2019 21:34:23 +0200 Subject: [PATCH 3/3] Add commandline option always-on-top --- src/main.c | 6 ++++++ src/parole-player.c | 5 +++++ src/parole-player.h | 1 + 3 files changed, 12 insertions(+) diff --git a/src/main.c b/src/main.c index 7bd7948..e47dac7 100644 --- a/src/main.c +++ b/src/main.c @@ -222,6 +222,7 @@ int main(int argc, char **argv) { gchar *client_id = NULL; gboolean no_controls = FALSE; gint aspect_ratio = 0; + gboolean always_on_top = FALSE; /* Command-line options */ GOptionEntry option_entries[] = { @@ -259,6 +260,8 @@ int main(int argc, char **argv) { &client_id, NULL, NULL }, { "aspect-ratio", 0, G_OPTION_FLAG_HIDDEN, G_OPTION_ARG_INT, &aspect_ratio, N_("Aspect ratio"), NULL }, + { "always-on-top", 'a', G_OPTION_FLAG_IN_MAIN, G_OPTION_ARG_NONE, + &always_on_top, N_("Always display window on top"), NULL}, {G_OPTION_REMAINING, '\0', 0, G_OPTION_ARG_FILENAME_ARRAY, &filenames, N_("Media to play"), NULL}, { NULL, }, @@ -350,6 +353,9 @@ int main(int argc, char **argv) { aspect_ratio <= 5) parole_player_aspect_ratio(player, aspect_ratio); + if (always_on_top) + parole_player_always_on_top(player); + if (no_controls) parole_player_no_controls(player); diff --git a/src/parole-player.c b/src/parole-player.c index 9e5ec40..8e7b3bd 100644 --- a/src/parole-player.c +++ b/src/parole-player.c @@ -3996,3 +3996,8 @@ static gboolean parole_player_dbus_play_disc(ParolePlayer *player, return TRUE; } + +void parole_player_always_on_top(ParolePlayer *player) { + if (player && player->priv && player->priv->window) + gtk_window_set_keep_above(GTK_WINDOW(player->priv->window), TRUE); +} diff --git a/src/parole-player.h b/src/parole-player.h index 5cc5baf..f05ba1c 100644 --- a/src/parole-player.h +++ b/src/parole-player.h @@ -79,6 +79,7 @@ void parole_player_no_controls (ParolePlayer *p void parole_player_aspect_ratio (ParolePlayer *player, gint aspect_ratio); +void parole_player_always_on_top(ParolePlayer *player); GSimpleAction *parole_player_get_action(ParolePlayerAction action); -- 2.21.0