parent
7e8032eaf4
commit
03a3775fbb
@ -1,108 +0,0 @@
|
|||||||
From 7acc78ca13968a49e7420b0b609c8190053196e2 Mon Sep 17 00:00:00 2001
|
|
||||||
From: =?UTF-8?q?Caol=C3=A1n=20McNamara?= <caolanm@redhat.com>
|
|
||||||
Date: Thu, 17 Mar 2016 12:21:16 +0000
|
|
||||||
Subject: [PATCH] Resolves: tdf#96989 videos playback at maximum possible
|
|
||||||
volume
|
|
||||||
|
|
||||||
On systems with flat-volumes then setting the volume directly on the playbin to
|
|
||||||
100% results in resetting the global volume to the maximum possible volume.
|
|
||||||
|
|
||||||
We expect to set as % of the current system volume. Putting an intermediate
|
|
||||||
volume object into the pipeline does the more expected thing.
|
|
||||||
|
|
||||||
Change-Id: I911d6fffba0983e4fd7b455e820959a96115de34
|
|
||||||
(cherry picked from commit d4b48e0de7f817c0d4607382724778acf191f9f8)
|
|
||||||
---
|
|
||||||
avmedia/source/gstreamer/gstplayer.cxx | 28 ++++++++++++++++++++++------
|
|
||||||
avmedia/source/gstreamer/gstplayer.hxx | 1 +
|
|
||||||
2 files changed, 23 insertions(+), 6 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/avmedia/source/gstreamer/gstplayer.cxx b/avmedia/source/gstreamer/gstplayer.cxx
|
|
||||||
index 310cf9b..8631e6a 100644
|
|
||||||
--- a/avmedia/source/gstreamer/gstplayer.cxx
|
|
||||||
+++ b/avmedia/source/gstreamer/gstplayer.cxx
|
|
||||||
@@ -282,6 +282,7 @@ Player::Player( const uno::Reference< lang::XMultiServiceFactory >& rxMgr ) :
|
|
||||||
GstPlayer_BASE( m_aMutex ),
|
|
||||||
mxMgr( rxMgr ),
|
|
||||||
mpPlaybin( nullptr ),
|
|
||||||
+ mpVolumeControl( nullptr ),
|
|
||||||
#if defined(ENABLE_GTKSINK)
|
|
||||||
mpGtkWidget( nullptr ),
|
|
||||||
#endif
|
|
||||||
@@ -355,6 +356,7 @@ void SAL_CALL Player::disposing()
|
|
||||||
g_object_unref( G_OBJECT( mpPlaybin ) );
|
|
||||||
|
|
||||||
mpPlaybin = nullptr;
|
|
||||||
+ mpVolumeControl = nullptr;
|
|
||||||
}
|
|
||||||
|
|
||||||
if( mpXOverlay ) {
|
|
||||||
@@ -597,6 +599,20 @@ void Player::preparePlaybin( const OUString& rURL, GstElement *pSink )
|
|
||||||
}
|
|
||||||
|
|
||||||
mpPlaybin = gst_element_factory_make( "playbin", nullptr );
|
|
||||||
+
|
|
||||||
+ //tdf#96989 on systems with flat-volumes setting the volume directly on the
|
|
||||||
+ //playbin to 100% results in setting the global volums to 100% of the
|
|
||||||
+ //maximum. We expect to set as % of the current volume.
|
|
||||||
+ mpVolumeControl = gst_element_factory_make( "volume", nullptr );
|
|
||||||
+ GstElement *pAudioSink = gst_element_factory_make( "autoaudiosink", nullptr );
|
|
||||||
+ GstElement* pAudioOutput = gst_bin_new("audio-output-bin");
|
|
||||||
+ gst_bin_add_many(GST_BIN(pAudioOutput), mpVolumeControl, pAudioSink, nullptr);
|
|
||||||
+ gst_element_link(mpVolumeControl, pAudioSink);
|
|
||||||
+ GstPad *pPad = gst_element_get_static_pad(mpVolumeControl, "sink");
|
|
||||||
+ gst_element_add_pad(GST_ELEMENT(pAudioOutput), gst_ghost_pad_new("sink", pPad));
|
|
||||||
+ gst_object_unref(GST_OBJECT(pPad));
|
|
||||||
+ g_object_set(G_OBJECT(mpPlaybin), "audio-sink", pAudioOutput, nullptr);
|
|
||||||
+
|
|
||||||
if( pSink != nullptr ) // used for getting preferred size etc.
|
|
||||||
{
|
|
||||||
g_object_set( G_OBJECT( mpPlaybin ), "video-sink", pSink, nullptr );
|
|
||||||
@@ -796,7 +812,7 @@ void SAL_CALL Player::setMute( sal_Bool bSet )
|
|
||||||
nVolume = 0.0;
|
|
||||||
}
|
|
||||||
|
|
||||||
- g_object_set( G_OBJECT( mpPlaybin ), "volume", nVolume, nullptr );
|
|
||||||
+ g_object_set( G_OBJECT( mpVolumeControl ), "volume", nVolume, nullptr );
|
|
||||||
|
|
||||||
mbMuted = bSet;
|
|
||||||
}
|
|
||||||
@@ -824,10 +840,10 @@ void SAL_CALL Player::setVolumeDB( sal_Int16 nVolumeDB )
|
|
||||||
SAL_INFO( "avmedia.gstreamer", AVVERSION "set volume: " << nVolumeDB << " gst volume: " << mnUnmutedVolume );
|
|
||||||
|
|
||||||
// change volume
|
|
||||||
- if( !mbMuted && mpPlaybin )
|
|
||||||
- {
|
|
||||||
- g_object_set( G_OBJECT( mpPlaybin ), "volume", (gdouble) mnUnmutedVolume, nullptr );
|
|
||||||
- }
|
|
||||||
+ if( !mbMuted && mpPlaybin )
|
|
||||||
+ {
|
|
||||||
+ g_object_set( G_OBJECT( mpVolumeControl ), "volume", mnUnmutedVolume, nullptr );
|
|
||||||
+ }
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
@@ -842,7 +858,7 @@ sal_Int16 SAL_CALL Player::getVolumeDB()
|
|
||||||
if( mpPlaybin ) {
|
|
||||||
double nGstVolume = 0.0;
|
|
||||||
|
|
||||||
- g_object_get( G_OBJECT( mpPlaybin ), "volume", &nGstVolume, nullptr );
|
|
||||||
+ g_object_get( G_OBJECT( mpVolumeControl ), "volume", &nGstVolume, nullptr );
|
|
||||||
|
|
||||||
nVolumeDB = (sal_Int16) ( 20.0*log10 ( nGstVolume ) );
|
|
||||||
}
|
|
||||||
diff --git a/avmedia/source/gstreamer/gstplayer.hxx b/avmedia/source/gstreamer/gstplayer.hxx
|
|
||||||
index ffc5133..9c8b3e6 100644
|
|
||||||
--- a/avmedia/source/gstreamer/gstplayer.hxx
|
|
||||||
+++ b/avmedia/source/gstreamer/gstplayer.hxx
|
|
||||||
@@ -87,6 +87,7 @@ protected:
|
|
||||||
|
|
||||||
// Add elements and pipeline here
|
|
||||||
GstElement* mpPlaybin; // the playbin is also a pipeline
|
|
||||||
+ GstElement* mpVolumeControl; // the playbin is also a pipeline
|
|
||||||
#if defined(ENABLE_GTKSINK)
|
|
||||||
GtkWidget* mpGtkWidget;
|
|
||||||
#endif
|
|
||||||
--
|
|
||||||
2.7.1
|
|
||||||
|
|
@ -1,69 +0,0 @@
|
|||||||
From 1f40773ad663614deec8133eedb80c90834e9b35 Mon Sep 17 00:00:00 2001
|
|
||||||
From: =?UTF-8?q?Caol=C3=A1n=20McNamara?= <caolanm@redhat.com>
|
|
||||||
Date: Thu, 17 Mar 2016 20:48:23 +0000
|
|
||||||
Subject: [PATCH] Resolves: tdf#98726 sneaky transparent clearlooks-phenix
|
|
||||||
scrollbars
|
|
||||||
|
|
||||||
(cherry picked from commit e511f962c0b70e0ce0d19c42be1f198b6191fad1)
|
|
||||||
|
|
||||||
Change-Id: Idc05d7b6c2b42086eafa9ad8ab8e63116d6f676c
|
|
||||||
Reviewed-on: https://gerrit.libreoffice.org/23346
|
|
||||||
Tested-by: Jenkins <ci@libreoffice.org>
|
|
||||||
Reviewed-by: Lionel Elie Mamane <lionel@mamane.lu>
|
|
||||||
---
|
|
||||||
vcl/unx/gtk3/gtk3salnativewidgets-gtk.cxx | 25 ++++++++++++++-----------
|
|
||||||
1 file changed, 14 insertions(+), 11 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/vcl/unx/gtk3/gtk3salnativewidgets-gtk.cxx b/vcl/unx/gtk3/gtk3salnativewidgets-gtk.cxx
|
|
||||||
index ff76169..c1117fe 100644
|
|
||||||
--- a/vcl/unx/gtk3/gtk3salnativewidgets-gtk.cxx
|
|
||||||
+++ b/vcl/unx/gtk3/gtk3salnativewidgets-gtk.cxx
|
|
||||||
@@ -277,6 +277,17 @@ Rectangle GtkSalGraphics::NWGetScrollButtonRect( ControlPart nPart, Rectangle aA
|
|
||||||
return buttonRect;
|
|
||||||
}
|
|
||||||
|
|
||||||
+static GtkWidget* gCacheWindow;
|
|
||||||
+static GtkWidget* gDumbContainer;
|
|
||||||
+static GtkWidget* gSpinBox;
|
|
||||||
+static GtkWidget* gEntryBox;
|
|
||||||
+static GtkWidget* gComboBox;
|
|
||||||
+static GtkWidget* gListBox;
|
|
||||||
+static GtkWidget* gMenuBarWidget;
|
|
||||||
+static GtkWidget* gMenuItemMenuBarWidget;
|
|
||||||
+static GtkWidget* gCheckMenuItemWidget;
|
|
||||||
+static GtkWidget* gTreeViewWidget;
|
|
||||||
+
|
|
||||||
void GtkSalGraphics::PaintScrollbar(GtkStyleContext *context,
|
|
||||||
cairo_t *cr,
|
|
||||||
const Rectangle& rControlRectangle,
|
|
||||||
@@ -419,6 +430,9 @@ void GtkSalGraphics::PaintScrollbar(GtkStyleContext *context,
|
|
||||||
|
|
||||||
bool has_slider = ( thumbRect.GetWidth() > 0 && thumbRect.GetHeight() > 0 );
|
|
||||||
|
|
||||||
+ gtk_render_background(gtk_widget_get_style_context(gCacheWindow), cr, 0, 0,
|
|
||||||
+ scrollbarRect.GetWidth(), scrollbarRect.GetHeight() );
|
|
||||||
+
|
|
||||||
// ----------------- TROUGH
|
|
||||||
GtkStyleContext* pScrollbarTroughStyle = scrollbarOrientation == GTK_ORIENTATION_VERTICAL ?
|
|
||||||
mpVScrollbarTroughStyle : mpHScrollbarTroughStyle;
|
|
||||||
@@ -1142,17 +1156,6 @@ void GtkSalGraphics::PaintRadio(cairo_t *cr, GtkStyleContext *context,
|
|
||||||
PaintCheckOrRadio(cr, context, rControlRectangle, false, bInMenu);
|
|
||||||
}
|
|
||||||
|
|
||||||
-static GtkWidget* gCacheWindow;
|
|
||||||
-static GtkWidget* gDumbContainer;
|
|
||||||
-static GtkWidget* gSpinBox;
|
|
||||||
-static GtkWidget* gEntryBox;
|
|
||||||
-static GtkWidget* gComboBox;
|
|
||||||
-static GtkWidget* gListBox;
|
|
||||||
-static GtkWidget* gMenuBarWidget;
|
|
||||||
-static GtkWidget* gMenuItemMenuBarWidget;
|
|
||||||
-static GtkWidget* gCheckMenuItemWidget;
|
|
||||||
-static GtkWidget* gTreeViewWidget;
|
|
||||||
-
|
|
||||||
void parent_styles_context_set_state(GtkStyleContext* context, GtkStateFlags flags)
|
|
||||||
{
|
|
||||||
while ((context = gtk_style_context_get_parent(context)))
|
|
||||||
--
|
|
||||||
2.7.3
|
|
||||||
|
|
@ -1,52 +0,0 @@
|
|||||||
From 0f0cea28c75a6565c7803b54536d4a8720ead160 Mon Sep 17 00:00:00 2001
|
|
||||||
From: David Tardon <dtardon@redhat.com>
|
|
||||||
Date: Tue, 22 Mar 2016 09:03:56 +0100
|
|
||||||
Subject: [PATCH] delete hidden pages before deleting unused masters
|
|
||||||
|
|
||||||
Change-Id: I40b624c0e6e6cff2c88815f7d16e862f09d79d5c
|
|
||||||
---
|
|
||||||
sdext/source/minimizer/impoptimizer.cxx | 14 +++++++-------
|
|
||||||
1 file changed, 7 insertions(+), 7 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/sdext/source/minimizer/impoptimizer.cxx b/sdext/source/minimizer/impoptimizer.cxx
|
|
||||||
index 03ba917..53600ed 100644
|
|
||||||
--- a/sdext/source/minimizer/impoptimizer.cxx
|
|
||||||
+++ b/sdext/source/minimizer/impoptimizer.cxx
|
|
||||||
@@ -518,27 +518,27 @@ bool ImpOptimizer::Optimize()
|
|
||||||
if ( !maCustomShowName.isEmpty() )
|
|
||||||
ImpExtractCustomShow( mxModel, maCustomShowName );
|
|
||||||
|
|
||||||
- if ( mbDeleteUnusedMasterPages )
|
|
||||||
+ if ( mbDeleteHiddenSlides )
|
|
||||||
{
|
|
||||||
SetStatusValue( TK_Progress, Any( static_cast< sal_Int32 >( 40 ) ) );
|
|
||||||
SetStatusValue( TK_Status, Any( OUString("STR_DELETING_SLIDES") ) );
|
|
||||||
DispatchStatus();
|
|
||||||
- ImpDeleteUnusedMasterPages( mxModel );
|
|
||||||
+ ImpDeleteHiddenSlides( mxModel );
|
|
||||||
}
|
|
||||||
|
|
||||||
- if ( mbDeleteHiddenSlides )
|
|
||||||
+ if ( mbDeleteNotesPages )
|
|
||||||
{
|
|
||||||
- SetStatusValue( TK_Progress, Any( static_cast< sal_Int32 >( 40 ) ) );
|
|
||||||
SetStatusValue( TK_Status, Any( OUString("STR_DELETING_SLIDES") ) );
|
|
||||||
DispatchStatus();
|
|
||||||
- ImpDeleteHiddenSlides( mxModel );
|
|
||||||
+ ImpDeleteNotesPages( mxModel );
|
|
||||||
}
|
|
||||||
|
|
||||||
- if ( mbDeleteNotesPages )
|
|
||||||
+ if ( mbDeleteUnusedMasterPages )
|
|
||||||
{
|
|
||||||
+ SetStatusValue( TK_Progress, Any( static_cast< sal_Int32 >( 40 ) ) );
|
|
||||||
SetStatusValue( TK_Status, Any( OUString("STR_DELETING_SLIDES") ) );
|
|
||||||
DispatchStatus();
|
|
||||||
- ImpDeleteNotesPages( mxModel );
|
|
||||||
+ ImpDeleteUnusedMasterPages( mxModel );
|
|
||||||
}
|
|
||||||
|
|
||||||
if ( mbOLEOptimization )
|
|
||||||
--
|
|
||||||
2.5.0
|
|
||||||
|
|
@ -1,83 +0,0 @@
|
|||||||
From 32d348572be221c593d209253737ceb9e6b373d9 Mon Sep 17 00:00:00 2001
|
|
||||||
From: =?UTF-8?q?Caol=C3=A1n=20McNamara?= <caolanm@redhat.com>
|
|
||||||
Date: Thu, 7 Apr 2016 20:55:51 +0100
|
|
||||||
Subject: [PATCH] gtk3: the list/combo box hack to get internal buttons no
|
|
||||||
longer works
|
|
||||||
|
|
||||||
with gtk3-3.20.2
|
|
||||||
|
|
||||||
Change-Id: I608f3476a82233cb49e0b43c95f5a984d7c89c92
|
|
||||||
(cherry picked from commit 70cc48f17a61296021c035f351c3db68bc5e08ad)
|
|
||||||
---
|
|
||||||
vcl/unx/gtk3/gtk3salnativewidgets-gtk.cxx | 35 ++-----------------------------
|
|
||||||
1 file changed, 2 insertions(+), 33 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/vcl/unx/gtk3/gtk3salnativewidgets-gtk.cxx b/vcl/unx/gtk3/gtk3salnativewidgets-gtk.cxx
|
|
||||||
index 38080e8..31758c8 100644
|
|
||||||
--- a/vcl/unx/gtk3/gtk3salnativewidgets-gtk.cxx
|
|
||||||
+++ b/vcl/unx/gtk3/gtk3salnativewidgets-gtk.cxx
|
|
||||||
@@ -282,10 +282,7 @@ static GtkWidget* gDumbContainer;
|
|
||||||
static GtkWidget* gSpinBox;
|
|
||||||
static GtkWidget* gEntryBox;
|
|
||||||
static GtkWidget* gComboBox;
|
|
||||||
-static GtkWidget* gComboBoxButtonWidget;
|
|
||||||
-static GtkWidget* gComboBoxEntryWidget;
|
|
||||||
static GtkWidget* gListBox;
|
|
||||||
-static GtkWidget* gListBoxButtonWidget;
|
|
||||||
static GtkWidget* gMenuBarWidget;
|
|
||||||
static GtkWidget* gMenuItemMenuBarWidget;
|
|
||||||
static GtkWidget* gCheckMenuItemWidget;
|
|
||||||
@@ -2299,26 +2296,6 @@ void GtkData::deInitNWF()
|
|
||||||
gtk_widget_destroy(gCacheWindow);
|
|
||||||
}
|
|
||||||
|
|
||||||
-static void get_combo_box_entry_inner_widgets(GtkWidget *widget, gpointer)
|
|
||||||
-{
|
|
||||||
- if (GTK_IS_TOGGLE_BUTTON(widget))
|
|
||||||
- {
|
|
||||||
- gComboBoxButtonWidget = widget;
|
|
||||||
- }
|
|
||||||
- else if (GTK_IS_ENTRY(widget))
|
|
||||||
- {
|
|
||||||
- gComboBoxEntryWidget = widget;
|
|
||||||
- }
|
|
||||||
-}
|
|
||||||
-
|
|
||||||
-void get_combo_box_inner_button(GtkWidget *widget, gpointer)
|
|
||||||
-{
|
|
||||||
- if (GTK_IS_TOGGLE_BUTTON(widget))
|
|
||||||
- {
|
|
||||||
- gListBoxButtonWidget = widget;
|
|
||||||
- }
|
|
||||||
-}
|
|
||||||
-
|
|
||||||
GtkSalGraphics::GtkSalGraphics( GtkSalFrame *pFrame, GtkWidget *pWindow )
|
|
||||||
: SvpSalGraphics(),
|
|
||||||
mpFrame( pFrame ),
|
|
||||||
@@ -2423,21 +2400,13 @@ GtkSalGraphics::GtkSalGraphics( GtkSalFrame *pFrame, GtkWidget *pWindow )
|
|
||||||
/* Combobox */
|
|
||||||
gComboBox = gtk_combo_box_text_new_with_entry();
|
|
||||||
getStyleContext(&mpComboboxStyle, gComboBox);
|
|
||||||
- /* Get ComboBox Entry and Button */
|
|
||||||
- gtk_container_forall(GTK_CONTAINER(gComboBox),
|
|
||||||
- get_combo_box_entry_inner_widgets,
|
|
||||||
- nullptr);
|
|
||||||
- mpComboboxButtonStyle = gtk_widget_get_style_context(gComboBoxButtonWidget);
|
|
||||||
+ mpComboboxButtonStyle = createStyleContext(GtkControlPart::Button, mpComboboxStyle);
|
|
||||||
|
|
||||||
/* Listbox */
|
|
||||||
gListBox = gtk_combo_box_text_new();
|
|
||||||
gtk_combo_box_text_append_text(GTK_COMBO_BOX_TEXT(gListBox), "sample");
|
|
||||||
getStyleContext(&mpListboxStyle, gListBox);
|
|
||||||
- /* Get ComboBox Button */
|
|
||||||
- gtk_container_forall(GTK_CONTAINER(gListBox),
|
|
||||||
- get_combo_box_inner_button,
|
|
||||||
- nullptr);
|
|
||||||
- mpListboxButtonStyle = gtk_widget_get_style_context(gListBoxButtonWidget);
|
|
||||||
+ mpListboxButtonStyle = createStyleContext(GtkControlPart::Button, mpListboxStyle);
|
|
||||||
|
|
||||||
/* Frames */
|
|
||||||
mpFrameOutStyle = mpFrameInStyle = createStyleContext(GtkControlPart::FrameBorder);
|
|
||||||
--
|
|
||||||
2.7.3
|
|
||||||
|
|
@ -1,25 +0,0 @@
|
|||||||
From c8e26f0e26dd433cf6b745f71ab295847bdf6608 Mon Sep 17 00:00:00 2001
|
|
||||||
From: =?UTF-8?q?Caol=C3=A1n=20McNamara?= <caolanm@redhat.com>
|
|
||||||
Date: Mon, 18 Apr 2016 14:50:22 +0100
|
|
||||||
Subject: [PATCH] unused header file which is no longer in hunspell 4-0
|
|
||||||
|
|
||||||
Change-Id: Ia1deaca48d653518cf6f440a833752268c47aaf3
|
|
||||||
---
|
|
||||||
lingucomponent/source/spellcheck/spell/sspellimp.cxx | 1 -
|
|
||||||
1 file changed, 1 deletion(-)
|
|
||||||
|
|
||||||
diff --git a/lingucomponent/source/spellcheck/spell/sspellimp.cxx b/lingucomponent/source/spellcheck/spell/sspellimp.cxx
|
|
||||||
index 928b191..21d811b 100644
|
|
||||||
--- a/lingucomponent/source/spellcheck/spell/sspellimp.cxx
|
|
||||||
+++ b/lingucomponent/source/spellcheck/spell/sspellimp.cxx
|
|
||||||
@@ -29,7 +29,6 @@
|
|
||||||
|
|
||||||
#include <lingutil.hxx>
|
|
||||||
#include <hunspell.hxx>
|
|
||||||
-#include <dictmgr.hxx>
|
|
||||||
#include <sspellimp.hxx>
|
|
||||||
|
|
||||||
#include <linguistic/lngprops.hxx>
|
|
||||||
--
|
|
||||||
2.7.3
|
|
||||||
|
|
Loading…
Reference in new issue