summaryrefslogtreecommitdiff
path: root/svx
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2020-01-29 19:59:14 +0000
committerCaolán McNamara <caolanm@redhat.com>2020-02-01 16:47:25 +0100
commitad30e7df148253c6bd8466b3b45e1ed151585c2e (patch)
tree3ad51968c64376add2c11395e48c4f76efd1c413 /svx
parentfec7e3422f4d1c5b9382518a11d0bb99b12e41c9 (diff)
weld MediaPlaybackPanel
Change-Id: I84c9e6f37de3b22b896f8109e49a5a0391630ac2 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/87754 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Diffstat (limited to 'svx')
-rw-r--r--svx/UIConfig_svx.mk2
-rw-r--r--svx/source/sidebar/media/MediaPlaybackPanel.cxx100
-rw-r--r--svx/source/sidebar/media/MediaPlaybackPanel.hxx10
-rw-r--r--svx/uiconfig/ui/medialine.ui292
-rw-r--r--svx/uiconfig/ui/mediaplayback.ui204
-rw-r--r--svx/uiconfig/ui/mediawindow.ui277
6 files changed, 769 insertions, 116 deletions
diff --git a/svx/UIConfig_svx.mk b/svx/UIConfig_svx.mk
index bf3d64b015cf..e8a02daec4b6 100644
--- a/svx/UIConfig_svx.mk
+++ b/svx/UIConfig_svx.mk
@@ -75,7 +75,9 @@ $(eval $(call gb_UIConfig_add_uifiles,svx,\
svx/uiconfig/ui/lightingwindow \
svx/uiconfig/ui/linkwarndialog \
svx/uiconfig/ui/measurewidthbar \
+ svx/uiconfig/ui/medialine \
svx/uiconfig/ui/mediaplayback \
+ svx/uiconfig/ui/mediawindow \
svx/uiconfig/ui/namespacedialog \
svx/uiconfig/ui/numberingwindow \
svx/uiconfig/ui/oldcolorwindow \
diff --git a/svx/source/sidebar/media/MediaPlaybackPanel.cxx b/svx/source/sidebar/media/MediaPlaybackPanel.cxx
index 5fb0e2c8e86f..909eb2798a22 100644
--- a/svx/source/sidebar/media/MediaPlaybackPanel.cxx
+++ b/svx/source/sidebar/media/MediaPlaybackPanel.cxx
@@ -36,18 +36,19 @@ MediaPlaybackPanel::MediaPlaybackPanel (
vcl::Window* pParent,
const css::uno::Reference<css::frame::XFrame>& rxFrame,
SfxBindings* pBindings)
- : PanelLayout(pParent, "MediaPlaybackPanel", "svx/ui/mediaplayback.ui", rxFrame),
+ : PanelLayout(pParent, "MediaPlaybackPanel", "svx/ui/mediaplayback.ui", rxFrame, true),
MediaControlBase(),
maMediaController(SID_AVMEDIA_TOOLBOX, *pBindings, *this),
maIdle("MediaPlaybackPanel"),
mpBindings(pBindings)
{
- get(mpTimeEdit, "timeedit");
- get(mpPlayToolBox, "playtoolbox");
- get(mpMuteToolBox, "mutetoolbox");
- get(mpTimeSlider, "timeslider");
- get(mpVolumeSlider, "volumeslider");
- get(mpZoomListBox, "zoombox");
+ mxTimeEdit = m_xBuilder->weld_entry("timeedit");
+ mxPlayToolBox = m_xBuilder->weld_toolbar("playtoolbox");
+ mxMuteToolBox = m_xBuilder->weld_toolbar("mutetoolbox");
+ mxTimeSlider = m_xBuilder->weld_scale("timeslider");
+ mxVolumeSlider = m_xBuilder->weld_scale("volumeslider");
+ mxZoomListBox = m_xBuilder->weld_combo_box("zoombox");
+
Initialize();
}
@@ -77,10 +78,10 @@ MediaPlaybackPanel::~MediaPlaybackPanel()
void MediaPlaybackPanel::Initialize()
{
InitializeWidgets();
- mpVolumeSlider->SetSlideHdl(LINK(this, MediaPlaybackPanel, VolumeSlideHdl));
- mpPlayToolBox->SetSelectHdl(LINK(this, MediaPlaybackPanel, PlayToolBoxSelectHdl));
- mpMuteToolBox->SetSelectHdl(LINK(this, MediaPlaybackPanel, PlayToolBoxSelectHdl));
- mpTimeSlider->SetSlideHdl(LINK(this, MediaPlaybackPanel, SeekHdl));
+ mxVolumeSlider->connect_value_changed(LINK(this, MediaPlaybackPanel, VolumeSlideHdl));
+ mxPlayToolBox->connect_clicked(LINK(this, MediaPlaybackPanel, PlayToolBoxSelectHdl));
+ mxMuteToolBox->connect_clicked(LINK(this, MediaPlaybackPanel, PlayToolBoxSelectHdl));
+ mxTimeSlider->connect_value_changed(LINK(this, MediaPlaybackPanel, SeekHdl));
maIdle.SetPriority( TaskPriority::HIGHEST );
maIdle.SetInvokeHandler( LINK( this, MediaPlaybackPanel, TimeoutHdl ) );
@@ -90,7 +91,7 @@ void MediaPlaybackPanel::Initialize()
void MediaPlaybackPanel::dispose()
{
- mpTimeEdit.disposeAndClear();
+ disposeWidgets();
PanelLayout::dispose();
}
@@ -109,10 +110,10 @@ void MediaPlaybackPanel::NotifyItemUpdate(
}
}
-void MediaPlaybackPanel::UpdateToolBoxes(MediaItem aMediaItem)
+void MediaPlaybackPanel::UpdateToolBoxes(const MediaItem& rMediaItem)
{
- mpPlayToolBox->Disable();
- avmedia::MediaControlBase::UpdateToolBoxes(aMediaItem);
+ mxPlayToolBox->set_sensitive(false);
+ avmedia::MediaControlBase::UpdateToolBoxes(rMediaItem);
}
void MediaPlaybackPanel::Update()
@@ -126,20 +127,20 @@ void MediaPlaybackPanel::Update()
}
}
-IMPL_LINK_NOARG( MediaPlaybackPanel, VolumeSlideHdl, Slider*, void)
+IMPL_LINK_NOARG( MediaPlaybackPanel, VolumeSlideHdl, weld::Scale&, void)
{
MediaItem aItem(SID_AVMEDIA_TOOLBOX);
- aItem.setVolumeDB( static_cast< sal_Int16 > (mpVolumeSlider->GetThumbPos()));
+ aItem.setVolumeDB(mxVolumeSlider->get_value());
mpBindings->GetDispatcher()->ExecuteList(SID_AVMEDIA_TOOLBOX, SfxCallMode::RECORD, { &aItem });
}
-IMPL_LINK_NOARG( MediaPlaybackPanel, SeekHdl, Slider*, void)
+IMPL_LINK_NOARG( MediaPlaybackPanel, SeekHdl, weld::Scale&, void)
{
MediaItem aItem(SID_AVMEDIA_TOOLBOX);
aItem.setState( MediaState::Pause );
double nTime = 0;
if (mpMediaItem)
- nTime = mpTimeSlider->GetThumbPos() * mpMediaItem->getDuration() / AVMEDIA_TIME_RANGE;
+ nTime = mxTimeSlider->get_value() * mpMediaItem->getDuration() / AVMEDIA_TIME_RANGE;
aItem.setTime(nTime);
mpBindings->GetDispatcher()->ExecuteList(SID_AVMEDIA_TOOLBOX, SfxCallMode::RECORD, { &aItem });
mpBindings->Invalidate(SID_AVMEDIA_TOOLBOX);
@@ -150,48 +151,37 @@ IMPL_LINK_NOARG( MediaPlaybackPanel, TimeoutHdl, Timer*, void)
mpBindings->Invalidate(SID_AVMEDIA_TOOLBOX);
}
-IMPL_LINK( MediaPlaybackPanel, PlayToolBoxSelectHdl, ToolBox*, pControl, void)
+IMPL_LINK( MediaPlaybackPanel, PlayToolBoxSelectHdl, const OString&, rId, void)
{
MediaItem aItem(SID_AVMEDIA_TOOLBOX);
- switch(pControl->GetCurItemId())
- {
- case AVMEDIA_TOOLBOXITEM_PLAY:
- {
- aItem.setState( MediaState::Play );
- if( !mpMediaItem || (mpMediaItem->getTime() == mpMediaItem->getDuration() ))
- aItem.setTime( 0.0 );
- else
- aItem.setTime( mpMediaItem->getTime());
- }
- break;
-
- case AVMEDIA_TOOLBOXITEM_PAUSE:
- {
- aItem.setState( MediaState::Pause );
- }
- break;
+ if (rId == "play")
+ {
+ aItem.setState( MediaState::Play );
- case AVMEDIA_TOOLBOXITEM_STOP:
- {
- aItem.setState( MediaState::Stop );
+ if( !mpMediaItem || (mpMediaItem->getTime() == mpMediaItem->getDuration() ))
aItem.setTime( 0.0 );
- }
- break;
-
- case AVMEDIA_TOOLBOXITEM_MUTE:
- {
- aItem.setMute( !mpMuteToolBox->IsItemChecked( AVMEDIA_TOOLBOXITEM_MUTE ) );
- }
- break;
-
- case AVMEDIA_TOOLBOXITEM_LOOP:
- {
- aItem.setLoop( !mpPlayToolBox->IsItemChecked( AVMEDIA_TOOLBOXITEM_LOOP ) );
- }
- break;
- default: break;
+ else
+ aItem.setTime( mpMediaItem->getTime());
+ }
+ else if (rId == "pause")
+ {
+ aItem.setState( MediaState::Pause );
+ }
+ else if (rId == "stop")
+ {
+ aItem.setState( MediaState::Stop );
+ aItem.setTime( 0.0 );
+ }
+ else if (rId == "mute")
+ {
+ aItem.setMute( mxMuteToolBox->get_item_active("mute") );
}
+ else if (rId == "loop")
+ {
+ aItem.setLoop( mxPlayToolBox->get_item_active("loop") );
+ }
+
if(aItem.getMaskSet() != AVMediaSetMask::NONE)
{
mpBindings->GetDispatcher()->ExecuteList(SID_AVMEDIA_TOOLBOX, SfxCallMode::RECORD, { &aItem } );
diff --git a/svx/source/sidebar/media/MediaPlaybackPanel.hxx b/svx/source/sidebar/media/MediaPlaybackPanel.hxx
index 3f9d06de1d03..b7f516aaf746 100644
--- a/svx/source/sidebar/media/MediaPlaybackPanel.hxx
+++ b/svx/source/sidebar/media/MediaPlaybackPanel.hxx
@@ -23,8 +23,6 @@
#include <com/sun/star/frame/XFrame.hpp>
#include <svx/sidebar/PanelLayout.hxx>
-#include <vcl/slider.hxx>
-#include <vcl/toolbox.hxx>
#include <avmedia/mediaitem.hxx>
#include <sfx2/bindings.hxx>
#include <sfx2/sidebar/ControllerItem.hxx>
@@ -56,7 +54,7 @@ public:
virtual void dispose() override;
protected:
- virtual void UpdateToolBoxes(avmedia::MediaItem aMediaItem) override;
+ virtual void UpdateToolBoxes(const avmedia::MediaItem& rMediaItem) override;
private:
std::unique_ptr< ::avmedia::MediaItem > mpMediaItem;
@@ -68,9 +66,9 @@ private:
virtual void NotifyItemUpdate( const sal_uInt16 nSID,
const SfxItemState eState,
const SfxPoolItem* pState) override;
- DECL_LINK(PlayToolBoxSelectHdl, ToolBox*, void);
- DECL_LINK(VolumeSlideHdl, Slider*, void);
- DECL_LINK(SeekHdl, Slider*, void);
+ DECL_LINK(PlayToolBoxSelectHdl, const OString&, void);
+ DECL_LINK(VolumeSlideHdl, weld::Scale&, void);
+ DECL_LINK(SeekHdl, weld::Scale&, void);
DECL_LINK(TimeoutHdl, Timer*, void);
};
diff --git a/svx/uiconfig/ui/medialine.ui b/svx/uiconfig/ui/medialine.ui
new file mode 100644
index 000000000000..30f39cf12ecc
--- /dev/null
+++ b/svx/uiconfig/ui/medialine.ui
@@ -0,0 +1,292 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- Generated with glade 3.22.1 -->
+<interface domain="svx">
+ <requires lib="gtk+" version="3.18"/>
+ <object class="GtkAdjustment" id="adjustment1">
+ <property name="upper">100</property>
+ <property name="step_increment">1</property>
+ <property name="page_increment">10</property>
+ </object>
+ <object class="GtkAdjustment" id="adjustment2">
+ <property name="upper">100</property>
+ <property name="step_increment">1</property>
+ <property name="page_increment">10</property>
+ </object>
+ <object class="GtkGrid" id="MediaWindow">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <child>
+ <object class="GtkBox">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="hexpand">True</property>
+ <property name="spacing">12</property>
+ <child>
+ <object class="GtkToolbar" id="playtoolbox">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="halign">center</property>
+ <property name="toolbar_style">icons</property>
+ <property name="show_arrow">False</property>
+ <child>
+ <object class="GtkToolButton" id="open">
+ <property name="can_focus">False</property>
+ <property name="no_show_all">True</property>
+ <property name="label" translatable="no">Open</property>
+ <property name="use_underline">True</property>
+ <property name="icon_name">avmedia/res/av02048.png</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">True</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkToolButton" id="apply">
+ <property name="can_focus">False</property>
+ <property name="no_show_all">True</property>
+ <property name="label" translatable="no">Apply</property>
+ <property name="use_underline">True</property>
+ <property name="icon_name">avmedia/res/av02053.png</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">True</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkSeparatorToolItem" id="separator1">
+ <property name="can_focus">False</property>
+ <property name="no_show_all">True</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">False</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkToggleToolButton" id="play">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="no">Play</property>
+ <property name="use_underline">True</property>
+ <property name="icon_name">avmedia/res/av02049.png</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">True</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkToggleToolButton" id="pause">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="no">Pause</property>
+ <property name="use_underline">True</property>
+ <property name="icon_name">avmedia/res/av02050.png</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">True</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkToggleToolButton" id="stop">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="no">Stop</property>
+ <property name="use_underline">True</property>
+ <property name="icon_name">avmedia/res/av02051.png</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">True</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkSeparatorToolItem" id="separator2">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">False</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkToggleToolButton" id="loop">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="no">Repeat</property>
+ <property name="use_underline">True</property>
+ <property name="icon_name">avmedia/res/av02052.png</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">True</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkToolbar" id="timetoolbox">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="toolbar_style">icons</property>
+ <property name="show_arrow">False</property>
+ <child>
+ <object class="GtkToolItem">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <child>
+ <object class="GtkBox">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <child>
+ <object class="GtkScale" id="timeslider">
+ <property name="width_request">128</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="hexpand">True</property>
+ <property name="adjustment">adjustment1</property>
+ <property name="digits">2</property>
+ <property name="draw_value">False</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkEntry" id="timeedit">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="editable">False</property>
+ <property name="xalign">0.5</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ </object>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">True</property>
+ <property name="homogeneous">False</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkToolbar" id="mutetoolbox">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="toolbar_style">icons</property>
+ <property name="show_arrow">False</property>
+ <child>
+ <object class="GtkToggleToolButton" id="mute">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="no">Mute</property>
+ <property name="use_underline">True</property>
+ <property name="icon_name">avmedia/res/av02054.png</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">True</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkToolItem">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <child>
+ <object class="GtkScale" id="volumeslider">
+ <property name="width_request">50</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="opacity">0.9882352941176471</property>
+ <property name="hexpand">True</property>
+ <property name="adjustment">adjustment2</property>
+ <property name="draw_value">False</property>
+ </object>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">True</property>
+ <property name="homogeneous">False</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">2</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkToolbar" id="zoomtoolbox">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="toolbar_style">icons</property>
+ <property name="show_arrow">False</property>
+ <child>
+ <object class="GtkToolItem">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <child>
+ <object class="GtkComboBoxText" id="zoombox">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ </object>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">True</property>
+ <property name="homogeneous">False</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">3</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel" id="url">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="ellipsize">middle</property>
+ <property name="width_chars">10</property>
+ <property name="max_width_chars">10</property>
+ <property name="xalign">0</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">10</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="left_attach">0</property>
+ <property name="top_attach">0</property>
+ </packing>
+ </child>
+ </object>
+</interface>
diff --git a/svx/uiconfig/ui/mediaplayback.ui b/svx/uiconfig/ui/mediaplayback.ui
index ac98284e0e6c..829855450117 100644
--- a/svx/uiconfig/ui/mediaplayback.ui
+++ b/svx/uiconfig/ui/mediaplayback.ui
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!-- Generated with glade 3.16.1 -->
+<!-- Generated with glade 3.22.1 -->
<interface domain="svx">
<requires lib="gtk+" version="3.18"/>
<object class="GtkGrid" id="MediaPlaybackPanel">
@@ -11,21 +11,21 @@
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="halign">center</property>
+ <property name="hexpand">True</property>
<property name="border_width">6</property>
<property name="column_spacing">7</property>
- <property name="row_homogeneous">True</property>
<child>
<object class="GtkLabel" id="label1">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="halign">end</property>
<property name="label" translatable="yes" context="mediaplayback|label1">Playback:</property>
+ <property name="use_underline">True</property>
+ <property name="mnemonic_widget">playtoolbox</property>
</object>
<packing>
<property name="left_attach">0</property>
<property name="top_attach">0</property>
- <property name="width">1</property>
- <property name="height">1</property>
</packing>
</child>
<child>
@@ -34,12 +34,12 @@
<property name="can_focus">False</property>
<property name="halign">end</property>
<property name="label" translatable="yes" context="mediaplayback|label2">Seek:</property>
+ <property name="use_underline">True</property>
+ <property name="mnemonic_widget">timeslider</property>
</object>
<packing>
<property name="left_attach">0</property>
<property name="top_attach">1</property>
- <property name="width">1</property>
- <property name="height">1</property>
</packing>
</child>
<child>
@@ -48,12 +48,12 @@
<property name="can_focus">False</property>
<property name="halign">end</property>
<property name="label" translatable="yes" context="mediaplayback|label3">Volume:</property>
+ <property name="use_underline">True</property>
+ <property name="mnemonic_widget">volumeslider</property>
</object>
<packing>
<property name="left_attach">0</property>
<property name="top_attach">3</property>
- <property name="width">1</property>
- <property name="height">1</property>
</packing>
</child>
<child>
@@ -61,83 +61,191 @@
<property name="width_request">150</property>
<property name="visible">True</property>
<property name="can_focus">True</property>
- <property name="round_digits">1</property>
+ <property name="hexpand">True</property>
<property name="digits">2</property>
<property name="draw_value">False</property>
</object>
<packing>
<property name="left_attach">1</property>
<property name="top_attach">1</property>
- <property name="width">1</property>
- <property name="height">1</property>
+ <property name="width">2</property>
</packing>
</child>
<child>
- <object class="GtkComboBox" id="zoombox">
+ <object class="GtkScale" id="volumeslider">
<property name="width_request">150</property>
- <property name="can_focus">False</property>
- <property name="tooltip_text" translatable="yes" context="mediaplayback|zoombox|tooltip_text">View</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="opacity">0.9882352941176471</property>
+ <property name="hexpand">True</property>
+ <property name="draw_value">False</property>
</object>
<packing>
<property name="left_attach">1</property>
- <property name="top_attach">4</property>
- <property name="width">1</property>
- <property name="height">1</property>
+ <property name="top_attach">3</property>
</packing>
</child>
<child>
- <object class="GtkEntry" id="timeedit:border">
- <property name="width_request">150</property>
- <property name="visible">True</property>
+ <object class="GtkComboBoxText" id="zoombox">
<property name="can_focus">False</property>
- <property name="editable">False</property>
- <property name="xalign">0.5</property>
+ <property name="no_show_all">True</property>
</object>
<packing>
<property name="left_attach">1</property>
- <property name="top_attach">2</property>
- <property name="width">1</property>
- <property name="height">1</property>
+ <property name="top_attach">4</property>
+ <property name="width">2</property>
</packing>
</child>
<child>
- <object class="GtkToolbar" id="playtoolbox">
+ <object class="GtkEntry" id="timeedit">
<property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="halign">center</property>
+ <property name="can_focus">True</property>
+ <property name="editable">False</property>
+ <property name="xalign">0.5</property>
</object>
<packing>
<property name="left_attach">1</property>
- <property name="top_attach">0</property>
- <property name="width">1</property>
- <property name="height">1</property>
+ <property name="top_attach">2</property>
+ <property name="width">2</property>
</packing>
</child>
<child>
<object class="GtkToolbar" id="mutetoolbox">
<property name="visible">True</property>
<property name="can_focus">False</property>
+ <property name="toolbar_style">icons</property>
+ <property name="show_arrow">False</property>
+ <property name="icon_size">2</property>
+ <child>
+ <object class="GtkToggleToolButton" id="mute">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="no">Mute</property>
+ <property name="use_underline">True</property>
+ <property name="icon_name">avmedia/res/av02054.png</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">True</property>
+ </packing>
+ </child>
</object>
<packing>
<property name="left_attach">2</property>
<property name="top_attach">3</property>
- <property name="width">1</property>
- <property name="height">1</property>
</packing>
</child>
<child>
- <object class="GtkScale" id="volumeslider">
- <property name="width_request">150</property>
+ <object class="GtkToolbar" id="playtoolbox">
<property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="opacity">0.98999999999999999</property>
- <property name="draw_value">False</property>
+ <property name="can_focus">False</property>
+ <property name="halign">center</property>
+ <property name="toolbar_style">icons</property>
+ <property name="show_arrow">False</property>
+ <property name="icon_size">2</property>
+ <child>
+ <object class="GtkToolButton" id="open">
+ <property name="can_focus">False</property>
+ <property name="no_show_all">True</property>
+ <property name="label" translatable="no">Open</property>
+ <property name="use_underline">True</property>
+ <property name="icon_name">avmedia/res/av02048.png</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">True</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkToolButton" id="apply">
+ <property name="can_focus">False</property>
+ <property name="no_show_all">True</property>
+ <property name="label" translatable="no">Apply</property>
+ <property name="use_underline">True</property>
+ <property name="icon_name">avmedia/res/av02053.png</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">True</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkSeparatorToolItem" id="separator1">
+ <property name="can_focus">False</property>
+ <property name="no_show_all">True</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">False</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkToggleToolButton" id="play">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="no">Play</property>
+ <property name="use_underline">True</property>
+ <property name="icon_name">avmedia/res/av02049.png</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">True</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkToggleToolButton" id="pause">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="no">Pause</property>
+ <property name="use_underline">True</property>
+ <property name="icon_name">avmedia/res/av02050.png</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">True</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkToggleToolButton" id="stop">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="no">Stop</property>
+ <property name="use_underline">True</property>
+ <property name="icon_name">avmedia/res/av02051.png</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">True</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkSeparatorToolItem" id="separator2">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">True</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkToggleToolButton" id="loop">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="no">Repeat</property>
+ <property name="use_underline">True</property>
+ <property name="icon_name">avmedia/res/av02052.png</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">True</property>
+ </packing>
+ </child>
</object>
<packing>
<property name="left_attach">1</property>
- <property name="top_attach">3</property>
- <property name="width">1</property>
- <property name="height">1</property>
+ <property name="top_attach">0</property>
+ <property name="width">2</property>
</packing>
</child>
<child>
@@ -146,24 +254,10 @@
<child>
<placeholder/>
</child>
- <child>
- <placeholder/>
- </child>
- <child>
- <placeholder/>
- </child>
- <child>
- <placeholder/>
- </child>
- <child>
- <placeholder/>
- </child>
</object>
<packing>
<property name="left_attach">0</property>
<property name="top_attach">0</property>
- <property name="width">1</property>
- <property name="height">1</property>
</packing>
</child>
</object>
diff --git a/svx/uiconfig/ui/mediawindow.ui b/svx/uiconfig/ui/mediawindow.ui
new file mode 100644
index 000000000000..3c2bfb969ffc
--- /dev/null
+++ b/svx/uiconfig/ui/mediawindow.ui
@@ -0,0 +1,277 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- Generated with glade 3.22.1 -->
+<interface domain="svx">
+ <requires lib="gtk+" version="3.18"/>
+ <object class="GtkAdjustment" id="adjustment1">
+ <property name="upper">100</property>
+ <property name="step_increment">1</property>
+ <property name="page_increment">10</property>
+ </object>
+ <object class="GtkGrid" id="MediaWindow">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="border_width">6</property>
+ <child>
+ <object class="GtkBox">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="hexpand">True</property>
+ <property name="vexpand">True</property>
+ <property name="orientation">vertical</property>
+ <property name="spacing">6</property>
+ <child>
+ <object class="GtkLabel" id="url">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="ellipsize">middle</property>
+ <property name="width_chars">10</property>
+ <property name="max_width_chars">10</property>
+ <property name="xalign">0</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkBox">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="spacing">12</property>
+ <child>
+ <object class="GtkScale" id="timeslider">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="hexpand">True</property>
+ <property name="adjustment">adjustment1</property>
+ <property name="digits">2</property>
+ <property name="draw_value">False</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkEntry" id="timeedit">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="editable">False</property>
+ <property name="xalign">0.5</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">3</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkBox">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="hexpand">True</property>
+ <property name="spacing">12</property>
+ <child>
+ <object class="GtkToolbar" id="playtoolbox">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="halign">center</property>
+ <property name="toolbar_style">icons</property>
+ <property name="show_arrow">False</property>
+ <child>
+ <object class="GtkToolButton" id="open">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="no">Open</property>
+ <property name="use_underline">True</property>
+ <property name="icon_name">avmedia/res/av02048.png</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">True</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkToolButton" id="apply">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="no">Apply</property>
+ <property name="use_underline">True</property>
+ <property name="icon_name">avmedia/res/av02053.png</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">True</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkSeparatorToolItem" id="separator1">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">False</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkToggleToolButton" id="play">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="no">Play</property>
+ <property name="use_underline">True</property>
+ <property name="icon_name">avmedia/res/av02049.png</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">True</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkToggleToolButton" id="pause">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="no">Pause</property>
+ <property name="use_underline">True</property>
+ <property name="icon_name">avmedia/res/av02050.png</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">True</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkToggleToolButton" id="stop">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="no">Stop</property>
+ <property name="use_underline">True</property>
+ <property name="icon_name">avmedia/res/av02051.png</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">True</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkSeparatorToolItem" id="separator2">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">False</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkToggleToolButton" id="loop">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="no">Repeat</property>
+ <property name="use_underline">True</property>
+ <property name="icon_name">avmedia/res/av02052.png</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">True</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">4</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkBox">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <child>
+ <object class="GtkToolbar" id="mutetoolbox">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="toolbar_style">icons</property>
+ <property name="show_arrow">False</property>
+ <child>
+ <object class="GtkToggleToolButton" id="mute">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="no">Mute</property>
+ <property name="use_underline">True</property>
+ <property name="icon_name">avmedia/res/av02054.png</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="homogeneous">True</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkScale" id="volumeslider">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="opacity">0.9882352941176471</property>
+ <property name="hexpand">True</property>
+ <property name="adjustment">adjustment2</property>
+ <property name="draw_value">False</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">5</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkComboBoxText" id="zoombox">
+ <property name="can_focus">False</property>
+ <property name="no_show_all">True</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">7</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">4</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="left_attach">0</property>
+ <property name="top_attach">0</property>
+ </packing>
+ </child>
+ </object>
+ <object class="GtkAdjustment" id="adjustment2">
+ <property name="upper">100</property>
+ <property name="step_increment">1</property>
+ <property name="page_increment">10</property>
+ </object>
+</interface>