You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

115 lines
4.8 KiB

<?xml version="1.0" encoding="UTF-8"?>
<interface>
<menu id="media-menu-model">
<section>
<item>
<attribute name="label" translatable="yes">_Copy Image</attribute>
<attribute name="action">media-viewer.copy-image</attribute>
<attribute name="hidden-when">action-disabled</attribute>
</item>
<item>
<attribute name="label" translatable="yes">S_ave Image</attribute>
<attribute name="action">media-viewer.save-image</attribute>
<attribute name="hidden-when">action-disabled</attribute>
</item>
<item>
<attribute name="label" translatable="yes">S_ave Video</attribute>
<attribute name="action">media-viewer.save-video</attribute>
<attribute name="hidden-when">action-disabled</attribute>
</item>
<item>
<attribute name="label" translatable="yes">S_ave Audio</attribute>
<attribute name="action">media-viewer.save-audio</attribute>
<attribute name="hidden-when">action-disabled</attribute>
</item>
<item>
<attribute name="label" translatable="yes">_Permalink</attribute>
<attribute name="action">media-viewer.permalink</attribute>
<attribute name="hidden-when">action-disabled</attribute>
</item>
</section>
</menu>
<template class="MediaViewer" parent="GtkWidget">
<child>
<object class="AdwFlap" id="flap">
<property name="orientation">vertical</property>
<property name="locked" bind-source="MediaViewer" bind-property="fullscreened" bind-flags="sync-create|invert-boolean"/>
<property name="reveal-flap" bind-source="MediaViewer" bind-property="fullscreened" bind-flags="sync-create|invert-boolean"/>
<property name="overflow">visible</property>
<child type="flap">
<object class="GtkHeaderBar" id="header_bar">
<style>
<class name="osd"/>
</style>
<property name="title-widget">
<object class="GtkLabel">
<binding name="label">
<lookup name="body">MediaViewer</lookup>
</binding>
<property name="single-line-mode">True</property>
<property name="ellipsize">end</property>
<style>
<class name="title"/>
</style>
</object>
</property>
<child type="start">
<object class="GtkButton" id="back">
<property name="icon-name">go-previous-symbolic</property>
<property name="action-name">media-viewer.close</property>
</object>
</child>
<child type="end">
<object class="GtkMenuButton" id="menu">
<property name="icon-name">view-more-symbolic</property>
<property name="menu-model">media-menu-model</property>
</object>
</child>
<child type="end">
<object class="GtkButton">
<property name="visible" bind-source="MediaViewer" bind-property="fullscreened" bind-flags="sync-create|invert-boolean"/>
<property name="icon-name">view-fullscreen-symbolic</property>
<property name="action-name">win.toggle-fullscreen</property>
</object>
</child>
<child type="end">
<object class="GtkButton">
<property name="visible" bind-source="MediaViewer" bind-property="fullscreened" bind-flags="sync-create"/>
<property name="icon-name">view-restore-symbolic</property>
<property name="action-name">win.toggle-fullscreen</property>
</object>
</child>
</object>
</child>
<child>
<object class="ComponentsScaleRevealer" id="revealer">
<property name="halign">center</property>
<property name="valign">center</property>
<property name="vexpand">true</property>
<property name="child">
<object class="ComponentsMediaContentViewer" id="media">
<property name="autoplay">true</property>
</object>
</property>
</object>
</child>
</object>
</child>
<child>
<object class="GtkEventControllerMotion">
<signal name="motion" handler="handle_motion" swapped="yes"/>
</object>
</child>
<child>
<object class="GtkGestureClick">
<property name="touch-only">true</property>
<signal name="pressed" handler="handle_touch" swapped="yes"/>
</object>
</child>
<child>
<object class="GtkGestureClick">
<signal name="pressed" handler="handle_click" swapped="yes"/>
</object>
</child>
</template>
</interface>