summaryrefslogtreecommitdiff
path: root/src/totem-object.c
Commit message (Collapse)AuthorAgeFilesLines
* main: Add Shift+V to toggle subtitlesBastien Nocera2022-02-111-1/+4
| | | | Closes: #130
* main: Add "V" keyboard shortcut to cycle through subtitlesBastien Nocera2022-02-111-0/+2
|
* main: Move subtitles and audio tracks to a separate menuBastien Nocera2022-02-111-0/+26
|
* backend: Add subtitles/languages changed signalsBastien Nocera2022-02-111-4/+8
| | | | This fixes the subtitles and languages menus being updated too often.
* menu: Split updating subtitles and languages menusBastien Nocera2022-02-111-2/+4
|
* backend: Move subtitles/languages list caching to video widgetBastien Nocera2022-02-111-1/+0
| | | | | | | | | | | | Instead of having the front-end keep track of track lists, and compare them, keep them inside the video widget. This also fixes the old totem-menu code that didn't check for title equality when comparing lists. Note that this updates the subtitles and languages menu too often, as we're *always* updating the menu even when it hasn't changed. Fixes: becbe7f8ef61f51ccbbb228f248b85b02e1eeab9
* main: Remove error check on playlist initialisationBastien Nocera2022-02-101-3/+0
| | | | This can't happen now, the playlist uses a GResource and a template.
* main: Move fullscreen toolbar to GtkBuilderBastien Nocera2022-02-101-15/+5
|
* main: Merge controls.ui into totem.uiBastien Nocera2022-02-091-20/+8
|
* main: Move spinner to GtkBuilderBastien Nocera2022-02-091-6/+1
|
* main: Move bvw_grid to GtkBuilderBastien Nocera2022-02-091-5/+1
|
* main: Move video widget creation to GtkBuilderBastien Nocera2022-02-091-7/+1
|
* main: Port to new video widget APIBastien Nocera2022-02-091-2/+2
|
* main: Remove yet another intermediate box widgetBastien Nocera2022-02-081-11/+3
| | | | tmw_bvw_box contained the video widget and an unused revealer.
* main: Don't hide cursor when switched away from playerBastien Nocera2022-02-041-1/+3
| | | | | | | | If we exited the player with the popups still shown, the timeout to hide the popups would hide the cursor. Remove the timeouts when switching away from the player and don't schedule new timeouts. Closes: #502
* main: Fix warning on Alt-TabBastien Nocera2022-02-041-0/+1
| | | | | | | | | | | | | Alt+Tab'ing the window after starting totem without any movies throws an error: (totem:511152): Gtk-CRITICAL **: 18:12:59.499: gtk_widget_event: assertion 'WIDGET_REALIZED_FOR_EVENT (widget, event)' failed The widget in question is BaconVideoWidget for which we removed an explicit gtk_widget_realize() while doing the GL port. Reinstate that call for GTK 3. Closes: #503
* main: Remove obsolete popover transitions overridesBastien Nocera2022-02-041-2/+0
| | | | | They were disabled because they broke in clutter-gtk, but now the calls are obsolete, and the animations work correctly, so remove those calls.
* backend: Port to gtkglsinkBastien Nocera2022-02-041-114/+253
| | | | | | | | | | | | | | | | | | | | | Replace the clutter-gtk based video widget with a native GL GStreamer widget, "gtkglsink". - Display aspect-ratio support for non-square pixels was removed. While it still worked correctly (you can try setting your display's resolution to a different aspect ratio), things like text and icons, and everything else in every application and the shell chrome would have been looked broken, including the video player. Except the video in the video player. - Video aspect ratio, pillar-boxing, letter-boxing and automatic rotation is now handled in the GStreamer widget - The placeholder logos, when playing files with unsupported video, or no video tracks have been changed. - Handling of mouse events has been simplified Some functionality could not be brought forward at this time: - Crop-zooming (available using the R/T keys) isn't implemented yet - Gestures support, which never worked properly anyway, wasn't reimplemented
* main: Add visual hint to development buildBastien Nocera2022-02-031-0/+8
| | | | See https://gitlab.gnome.org/GNOME/Initiatives/-/wikis/DevOps-with-Flatpak#adding-a-visual-hint-for-development
* main: Fix warning starting remote applicationBastien Nocera2022-02-021-4/+7
| | | | | | | | (totem:2268540): Gtk-CRITICAL **: 21:59:00.013: gtk_style_context_add_provider_for_screen: assertion 'GDK_IS_SCREEN (screen)' failed (totem:2268540): GLib-GObject-WARNING **: 21:59:00.013: invalid (NULL) pointer instance etc. Fixes: a784629f446f024bc585a9484fd0e119f7f28fcb
* main: Only force dark style after options are parsedBastien Nocera2022-01-261-6/+6
| | | | And the application is registered.
* main: Use libhandy to force the dark style preferenceChristopher Davis2022-01-261-3/+5
| | | | | | | Also ensures that we use hc-dark when highcontrast mode is set. Closes: #492
* main: Allow passing empty display name to add_to_playlist()Bastien Nocera2021-10-021-1/+1
|
* preferences: Rename preferences to totem-preferences-dialog.*Georges Basile Stavracas Neto2021-06-291-1/+1
| | | | | Rename these files to match the class name they implement. Rename the .ui file to match them.
* preferences: GTKify constructorGeorges Basile Stavracas Neto2021-06-291-1/+2
| | | | | | Make the creation of TotemPreferencesDialog more GTK-like, using totem_preferences_dialog_new() instead of a setup function, and don't set any field of TotemObject.
* object: Move prefs creation to totem-preferences.cGeorges Basile Stavracas Neto2021-06-291-6/+0
| | | | | | In preparation for future changes where TotemObject will have less control over the preferences widgetry, move it to the totem-preferences.c file.
* backend: Remove _set_logo() callBastien Nocera2021-05-051-3/+0
| | | | And make the logo always be the application logo.
* backend: Remove "logo-mode" propertyBastien Nocera2021-05-051-6/+0
| | | | | Since removing the browser plugin, we don't have a use for not showing the logo when we don't have video, so remove the "logo-mode" property.
* main: Make XF86Back go back up a level in libraryignapk2020-09-211-1/+6
| | | | | | | | | | | | | | | | Currently XF86Back key triggers the same action as XF86AudioPrev, which is seeking previous media in current playlist. In other GNOME apps like epiphany and nautilus XF86Back is used to navigate back in the UI, which makes totem behaviour inconsistent. On the other hand, totem doesn't have a strong spatial navigation between sections so navigating the playlist is more useful than between pages. With that in mind, make it possible to use XF86Back to go back up a level when in the library. Fixes https://gitlab.gnome.org/GNOME/totem/-/issues/367
* main: Make Alt+Right/Alt+Left workBastien Nocera2020-08-221-0/+25
|
* main: Fix Ctrl+Space shortcut not workingBastien Nocera2020-08-221-0/+4
|
* main: Fix Ctrl+F fullscreen shortcut not workingBastien Nocera2020-08-221-0/+2
|
* main: Re-indent window_key_press_event_cb()Bastien Nocera2020-08-221-10/+8
| | | | Looks like artistic indentation from the noughties.
* main: Add F1 shortcut to the player viewBastien Nocera2020-08-201-0/+3
| | | | It was bizarrely missing.
* main: Replace deprecated gtk_show_uri()Gabor Karsay2019-10-071-1/+1
| | | | | gtk_show_uri_on_window() is the recommended call to be used as it passes information necessary for sandbox helpers to parent their dialogs properly.
* build: Add support for building Nightly versionBastien Nocera2019-09-251-1/+1
| | | | | | | | This includes renaming a few files that mentioned org.gnome.Totem directly as we want the new nightly build to be parallel installable with a stable version, as org.gnome.Totem.Devel. Closes: #359
* main: Present application window if already openUmang Jain2019-05-061-0/+3
| | | | | | This raises the application window on the top of the stack of all the open windows and present it to the user. See gtk_window_present_with_time() documentation for more details.
* main: Add a useful totem_object_stop() APIBastien Nocera2019-02-231-15/+26
| | | | Which behaves like the Stop button on a CD player.
* main: Remove totem_object_stop()Bastien Nocera2019-02-231-18/+10
| | | | | | This API was unusable from outside the core of totem, as it only changed the state of a couple of items in the UI, but not all the ones needed to have the UI "in the right state".
* main: Remove unused TotemTimeLabel widgetBastien Nocera2019-02-191-1/+0
| | | | Unused since the browser plugin was removed.
* main: Use new starttime column in playlistBastien Nocera2019-02-171-11/+14
| | | | | | | | First, to reimplement the "starttime" session restore. This handily removes a variable in the TotemObject. Then use it to implement starttime from any playlist. Closes: #10
* main: Update state of previous/next when chapters info arrivesBastien Nocera2019-02-151-0/+1
| | | | | | | | | | | This fixes the previous/next buttons not being sensitive when a single file with chapter data is read as the "hey, a chapter is available now" would come in later than we usually check. The keyboard shortcuts for previous/next track already worked as whether a chapter marker is available is checked when the key has been pressed. Closes: #215
* main: Add API to track the current "main page"Bastien Nocera2019-02-141-1/+18
| | | | | | The "main page" is either "grilo" when browsing for content, or "player" when playing something back. This property might be of interest to plugins that only want to work in one of those 2 views.
* main: Simplify prev/next button sensitivity with new helpersBastien Nocera2019-02-141-13/+4
|
* main: Add can_seek_{previous,next} APIBastien Nocera2019-02-141-0/+28
|
* main: Don't allow --fullscreen when not playingBastien Nocera2019-02-141-15/+10
| | | | | | | | | | | When running "totem --fullscreen" (whether already running or not), only go fullscreen if playing, not when navigating content, as there's no way to get out of that mode easily. If you relied on this bug for something, use window manager keyboard shortcuts to set the fullscreen state instead. Closes: #197
* main: Fix media player controls not appearing in gnome-shellBastien Nocera2019-02-141-0/+2
| | | | | | | | | | | | | | | | Media player controls in gnome-shell wouldn't appear if totem was first launched normally, and a video selected afterwards, but would work if one double-clicked on a file. The problem was that the controls would only show if the CanPlay MPRIS property was set to true, and the plugin would only change that property if it received a property notification for an MRL being set. Nothing was sending that property notification though. One line later, the property is sent, and the MPRIS plugin works whether or not totem was opened with a double-click. Closes: #208
* main: Make it possible to load subtitles from the command-lineBastien Nocera2019-02-131-11/+36
| | | | | | | | | | | | | | Make commands like: $ totem foo.srt foo.mov or: $ totem foo.mov foo.srt or: $ totem foo.mov followed by: $ totem foo.srt work as expected. Closes: #256
* main: Make Ctrl+W go back before exitingBastien Nocera2019-02-131-9/+13
| | | | | | | | Make Ctrl+W the equivalent to pressing the back button, to return to the content view from the player, or go "up" in the navigation. Ctrl+W will still close the application when back isn't shown anymore. Closes: #280
* main: Remove unused math.h includeBastien Nocera2019-02-071-1/+0
|