e4c4141
From a3f96fb4ddcc657f4448089eff07531735f23979 Mon Sep 17 00:00:00 2001
e4c4141
From: Michael Meeks <michael.meeks@suse.com>
e4c4141
Date: Mon, 30 Jul 2012 15:15:58 +0200
e4c4141
Subject: [PATCH 2/7] gstreamer: make gstreamer 1.0 and 0.10 dual compile
e4c4141
e4c4141
Add fallback activation of an _OLD media component to the core.
e4c4141
Compile both a 0.10 and 1.0 version of the gstreamer component
e4c4141
e4c4141
Conflicts:
e4c4141
	distro-configs/LibreOfficeAndroidX86.conf
e4c4141
	distro-configs/LibreOfficeLinux.conf
e4c4141
e4c4141
Change-Id: I91f65d05391cb2d7e02f9cff18f96178a128705O1
e4c4141
---
e4c4141
 Repository.mk                                      |  1 +
e4c4141
 avmedia/Library_avmediagst.mk                      |  8 +--
e4c4141
 avmedia/Module_avmedia.mk                          |  6 ++
e4c4141
 .../gstreamer/avmediagstreamer_0_10.component      |  6 ++
e4c4141
 avmedia/source/gstreamer/gst_0_10.cxx              | 15 +++++
e4c4141
 avmedia/source/gstreamer/gstplayer.cxx             | 69 ++++++++++++++--------
e4c4141
 avmedia/source/gstreamer/gstplayer.hxx             |  4 +-
e4c4141
 avmedia/source/gstreamer/gstuno.cxx                | 17 ++++--
e4c4141
 avmedia/source/inc/mediamisc.hxx                   | 11 +---
e4c4141
 avmedia/source/viewer/mediawindowbase_impl.cxx     | 21 ++++++-
e4c4141
 config_host.mk.in                                  |  3 +
e4c4141
 configure.in                                       | 41 +++++++++++--
e4c4141
 distro-configs/LibreOfficeAndroid.conf             |  1 +
e4c4141
 distro-configs/LibreOfficeLinux.conf               |  2 +-
e4c4141
 distro-configs/LibreOfficeOpenBSD.conf             |  2 +-
e4c4141
 distro-configs/LibreOfficeiOS.conf                 |  1 +
e4c4141
 distro-configs/OxygenOfficeLinux.conf              |  2 +-
e4c4141
 postprocess/packcomponents/makefile.mk             |  4 ++
e4c4141
 scp2/InstallModule_ooo.mk                          |  3 +
e4c4141
 scp2/source/ooo/file_library_ooo.scp               |  6 +-
e4c4141
 scp2/source/ooo/module_hidden_ooo.scp              | 19 +++---
e4c4141
 svx/source/sdr/contact/viewcontact.cxx             |  2 +-
e4c4141
 22 files changed, 174 insertions(+), 70 deletions(-)
e4c4141
 create mode 100644 avmedia/source/gstreamer/avmediagstreamer_0_10.component
e4c4141
 create mode 100644 avmedia/source/gstreamer/gst_0_10.cxx
e4c4141
e4c4141
diff --git a/Repository.mk b/Repository.mk
e4c4141
index 67ba527..881029e 100644
e4c4141
--- a/Repository.mk
e4c4141
+++ b/Repository.mk
e4c4141
@@ -417,6 +417,7 @@ endif
e4c4141
 
e4c4141
 $(eval $(call gb_Helper_register_libraries,PLAINLIBS_OOO, \
e4c4141
     avmediagst \
e4c4141
+    avmediagst_0_10 \
e4c4141
     avmediawin \
e4c4141
     cached1 \
e4c4141
     collator_data \
e4c4141
diff --git a/avmedia/Library_avmediagst.mk b/avmedia/Library_avmediagst.mk
e4c4141
index b6323bb..b7eeacd 100644
e4c4141
--- a/avmedia/Library_avmediagst.mk
e4c4141
+++ b/avmedia/Library_avmediagst.mk
e4c4141
@@ -33,8 +33,9 @@ $(eval $(call gb_Library_set_componentfile,avmediagst,avmedia/source/gstreamer/a
e4c4141
 $(eval $(call gb_Library_set_include,avmediagst,\
e4c4141
 	$$(INCLUDE) \
e4c4141
 	-I$(SRCDIR)/avmedia/source/inc \
e4c4141
-	$(shell pkg-config --cflags gstreamer-0.10, gstreamer-plugins-base-0.10) \
e4c4141
+	$(GSTREAMER_CFLAGS) \
e4c4141
 ))
e4c4141
+$(eval $(call gb_Library_add_libs,avmediagst,$(GSTREAMER_LIBS)))
e4c4141
 
e4c4141
 $(eval $(call gb_Library_use_api,avmediagst,\
e4c4141
 	udkapi \
e4c4141
@@ -57,11 +58,6 @@ $(eval $(call gb_Library_use_libraries,avmediagst,\
e4c4141
 	$(gb_STDLIBS) \
e4c4141
 ))
e4c4141
 
e4c4141
-$(eval $(call gb_Library_add_libs,avmediagst,\
e4c4141
-	$(shell pkg-config --libs gstreamer-0.10, gstreamer-plugins-base-0.10) \
e4c4141
-	-lgstinterfaces-0.10 \
e4c4141
-))
e4c4141
-
e4c4141
 $(eval $(call gb_Library_add_exception_objects,avmediagst,\
e4c4141
 	avmedia/source/gstreamer/gstmanager \
e4c4141
 	avmedia/source/gstreamer/gstplayer \
e4c4141
diff --git a/avmedia/Module_avmedia.mk b/avmedia/Module_avmedia.mk
e4c4141
index 729c24f..ef50457 100644
e4c4141
--- a/avmedia/Module_avmedia.mk
e4c4141
+++ b/avmedia/Module_avmedia.mk
e4c4141
@@ -40,6 +40,12 @@ $(eval $(call gb_Module_add_targets,avmedia,\
e4c4141
 ))
e4c4141
 endif
e4c4141
 
e4c4141
+ifeq ($(ENABLE_GSTREAMER_0_10),TRUE)
e4c4141
+$(eval $(call gb_Module_add_targets,avmedia,\
e4c4141
+	Library_avmediagst_0_10 \
e4c4141
+))
e4c4141
+endif
e4c4141
+
e4c4141
 ifeq ($(GUIBASE),aqua)
e4c4141
 $(eval $(call gb_Module_add_targets,avmedia,\
e4c4141
 	Library_avmediaQuickTime \
e4c4141
diff --git a/avmedia/source/gstreamer/avmediagstreamer_0_10.component b/avmedia/source/gstreamer/avmediagstreamer_0_10.component
e4c4141
new file mode 100644
e4c4141
index 0000000..3fc61d7
e4c4141
--- /dev/null
e4c4141
+++ b/avmedia/source/gstreamer/avmediagstreamer_0_10.component
e4c4141
@@ -0,0 +1,6 @@
e4c4141
+
e4c4141
+<component loader="com.sun.star.loader.SharedLibrary" xmlns="http://openoffice.org/2010/uno-components">
e4c4141
+  <implementation name="com.sun.star.comp.media.Manager_GStreamer_0_10">
e4c4141
+    <service name="com.sun.star.comp.avmedia.Manager_GStreamer_0_10"/>
e4c4141
+  </implementation>
e4c4141
+</component>
e4c4141
diff --git a/avmedia/source/gstreamer/gst_0_10.cxx b/avmedia/source/gstreamer/gst_0_10.cxx
e4c4141
new file mode 100644
e4c4141
index 0000000..a0624c4
e4c4141
--- /dev/null
e4c4141
+++ b/avmedia/source/gstreamer/gst_0_10.cxx
e4c4141
@@ -0,0 +1,15 @@
e4c4141
+#define AVMEDIA_GST_0_10
e4c4141
+
e4c4141
+// forward compatibility goodness
e4c4141
+#include <gst/interfaces/xoverlay.h>
e4c4141
+#define gst_video_overlay_expose(a) gst_x_overlay_expose(GST_X_OVERLAY (a))
e4c4141
+#define gst_video_overlay_set_window_handle(a,b) gst_x_overlay_set_xwindow_id( \
e4c4141
+                                                    reinterpret_cast<GstXOverlay *>(a), (b) )
e4c4141
+#define GST_VIDEO_OVERLAY(a) reinterpret_cast<GstVideoOverlay *>(a)
e4c4141
+
e4c4141
+// #define GstVideoOverlay GstXOverlay
e4c4141
+
e4c4141
+#include "gstmanager.cxx"
e4c4141
+#include "gstplayer.cxx"
e4c4141
+#include "gstuno.cxx"
e4c4141
+#include "gstwindow.cxx"
e4c4141
diff --git a/avmedia/source/gstreamer/gstplayer.cxx b/avmedia/source/gstreamer/gstplayer.cxx
e4c4141
index d95342a..28e5d34 100644
e4c4141
--- a/avmedia/source/gstreamer/gstplayer.cxx
e4c4141
+++ b/avmedia/source/gstreamer/gstplayer.cxx
e4c4141
@@ -33,7 +33,6 @@
e4c4141
 #include <vcl/syschild.hxx>
e4c4141
 #include <vcl/sysdata.hxx>
e4c4141
 
e4c4141
-
e4c4141
 #include "gstplayer.hxx"
e4c4141
 #include "gstframegrabber.hxx"
e4c4141
 #include "gstwindow.hxx"
e4c4141
@@ -45,8 +44,14 @@
e4c4141
 #define AVMEDIA_GST_PLAYER_IMPLEMENTATIONNAME "com.sun.star.comp.avmedia.Player_GStreamer"
e4c4141
 #define AVMEDIA_GST_PLAYER_SERVICENAME "com.sun.star.media.Player_GStreamer"
e4c4141
 
e4c4141
-#if OSL_DEBUG_LEVEL > 2
e4c4141
-#define DBG OSL_TRACE
e4c4141
+#ifdef AVMEDIA_GST_0_10
e4c4141
+#  define AVVERSION "gst 0.10: "
e4c4141
+#else
e4c4141
+#  define AVVERSION "gst 1.0: "
e4c4141
+#endif
e4c4141
+
e4c4141
+#if 1 //OSL_DEBUG_LEVEL > 2
e4c4141
+#define DBG(...) do { fprintf (stderr, "%s", AVVERSION); fprintf (stderr, __VA_ARGS__); fprintf (stderr, "\n"); } while (0);
e4c4141
 #else
e4c4141
 #define DBG(...)
e4c4141
 #endif
e4c4141
@@ -83,15 +88,22 @@ Player::Player( const uno::Reference< lang::XMultiServiceFactory >& rxMgr ) :
e4c4141
 
e4c4141
     mbInitialized = gst_init_check( &argc, &argv, &pError );
e4c4141
 
e4c4141
+    DBG( "%p Player::Player", this );
e4c4141
+
e4c4141
     if (pError != NULL)
e4c4141
+    {
e4c4141
         // TODO: thow an exception?
e4c4141
+        DBG( "%p Player::Player error '%s'", this, pError->message );
e4c4141
         g_error_free (pError);
e4c4141
+    }
e4c4141
 }
e4c4141
 
e4c4141
 // ------------------------------------------------------------------------------
e4c4141
 
e4c4141
 Player::~Player()
e4c4141
 {
e4c4141
+    DBG( "%p Player::~Player", this );
e4c4141
+
e4c4141
     // Release the elements and pipeline
e4c4141
     if( mbInitialized )
e4c4141
     {
e4c4141
@@ -160,7 +172,7 @@ static gboolean wrap_element_query_position (GstElement *element, GstFormat form
e4c4141
 {
e4c4141
 #ifdef AVMEDIA_GST_0_10
e4c4141
     GstFormat my_format = format;
e4c4141
-    return gst_element_query_position( mpPlaybin, &my_format, cur) && my_format == format && *cur > 0L;
e4c4141
+    return gst_element_query_position( element, &my_format, cur) && my_format == format && *cur > 0L;
e4c4141
 #else
e4c4141
     return gst_element_query_position( element, format, cur );
e4c4141
 #endif
e4c4141
@@ -170,7 +182,7 @@ static gboolean wrap_element_query_duration (GstElement *element, GstFormat form
e4c4141
 {
e4c4141
 #ifdef AVMEDIA_GST_0_10
e4c4141
     GstFormat my_format = format;
e4c4141
-    return gst_element_query_duration( mpPlaybin, &my_format, duration) && my_format == format && *duration > 0L;
e4c4141
+    return gst_element_query_duration( element, &my_format, duration) && my_format == format && *duration > 0L;
e4c4141
 #else
e4c4141
     return gst_element_query_duration( element, format, duration );
e4c4141
 #endif
e4c4141
@@ -178,21 +190,27 @@ static gboolean wrap_element_query_duration (GstElement *element, GstFormat form
e4c4141
 
e4c4141
 GstBusSyncReply Player::processSyncMessage( GstMessage *message )
e4c4141
 {
e4c4141
-    DBG( "%p processSyncMessage: %s", this, GST_MESSAGE_TYPE_NAME( message ) );
e4c4141
+//    DBG( "%p processSyncMessage has handle: %s", this, GST_MESSAGE_TYPE_NAME( message ) );
e4c4141
 
e4c4141
-#if OSL_DEBUG_LEVEL > 0
e4c4141
+#if 1 // OSL_DEBUG_LEVEL > 0
e4c4141
     if ( GST_MESSAGE_TYPE( message ) == GST_MESSAGE_ERROR )
e4c4141
     {
e4c4141
         GError* error;
e4c4141
         gchar* error_debug;
e4c4141
 
e4c4141
         gst_message_parse_error( message, &error, &error_debug );
e4c4141
-        OSL_TRACE("gstreamer error: '%s' debug: '%s'", error->message, error_debug);
e4c4141
+        fprintf(stderr, "gstreamer error: '%s' debug: '%s'", error->message, error_debug);
e4c4141
     }
e4c4141
 #endif
e4c4141
 
e4c4141
-    if (gst_message_has_name (message, "prepare-xwindow-id") && mnWindowID != 0 )
e4c4141
+#ifdef AVMEDIA_GST_0_10
e4c4141
+    if (message->structure &&
e4c4141
+        !strcmp( gst_structure_get_name( message->structure ), "prepare-xwindow-id" ) && mnWindowID != 0 )
e4c4141
+#else
e4c4141
+    if (gst_message_has_name (message, "prepare-window-handle") && mnWindowID != 0 )
e4c4141
+#endif
e4c4141
     {
e4c4141
+        DBG( "%p processSyncMessage has handle: %s", this, GST_MESSAGE_TYPE_NAME( message ) );
e4c4141
         if( mpXOverlay )
e4c4141
             g_object_unref( G_OBJECT ( mpXOverlay ) );
e4c4141
         mpXOverlay = GST_VIDEO_OVERLAY( GST_MESSAGE_SRC( message ) );
e4c4141
@@ -208,7 +226,8 @@ GstBusSyncReply Player::processSyncMessage( GstMessage *message )
e4c4141
 
e4c4141
             gst_message_parse_state_changed (message, NULL, &newstate, &pendingstate);
e4c4141
 
e4c4141
-            DBG( "%p state change received, new state %d", this, newstate );
e4c4141
+            DBG( "%p state change received, new state %d pending %d", this,
e4c4141
+                 (int)newstate, (int)pendingstate );
e4c4141
             if( newstate == GST_STATE_PAUSED &&
e4c4141
                 pendingstate == GST_STATE_VOID_PENDING ) {
e4c4141
 
e4c4141
@@ -280,7 +299,7 @@ GstBusSyncReply Player::processSyncMessage( GstMessage *message )
e4c4141
                     mnWidth = w;
e4c4141
                     mnHeight = h;
e4c4141
 
e4c4141
-                    DBG( "queried size: %d x %d", mnWidth, mnHeight );
e4c4141
+                    fprintf (stderr, "queried size: %d x %d", mnWidth, mnHeight );
e4c4141
 
e4c4141
                     maSizeCondition.set();
e4c4141
                 }
e4c4141
@@ -289,6 +308,7 @@ GstBusSyncReply Player::processSyncMessage( GstMessage *message )
e4c4141
         }
e4c4141
 #endif
e4c4141
     } else if( GST_MESSAGE_TYPE( message ) == GST_MESSAGE_ERROR ) {
e4c4141
+        fprintf (stderr, "Error !\n");
e4c4141
         if( mnWidth == 0 ) {
e4c4141
             // an error occurred, set condition so that OOo thread doesn't wait for us
e4c4141
             maSizeCondition.set();
e4c4141
@@ -353,7 +373,7 @@ bool Player::create( const ::rtl::OUString& rURL )
e4c4141
 
e4c4141
 // ------------------------------------------------------------------------------
e4c4141
 
e4c4141
-void SAL_CALL Player::start(  )
e4c4141
+void SAL_CALL Player::start()
e4c4141
     throw (uno::RuntimeException)
e4c4141
 {
e4c4141
     // set the pipeline state to READY and run the loop
e4c4141
@@ -366,7 +386,7 @@ void SAL_CALL Player::start(  )
e4c4141
 
e4c4141
 // ------------------------------------------------------------------------------
e4c4141
 
e4c4141
-void SAL_CALL Player::stop(  )
e4c4141
+void SAL_CALL Player::stop()
e4c4141
     throw (uno::RuntimeException)
e4c4141
 {
e4c4141
     // set the pipeline in PAUSED STATE
e4c4141
@@ -397,7 +417,7 @@ sal_Bool SAL_CALL Player::isPlaying()
e4c4141
 
e4c4141
 // ------------------------------------------------------------------------------
e4c4141
 
e4c4141
-double SAL_CALL Player::getDuration(  )
e4c4141
+double SAL_CALL Player::getDuration()
e4c4141
     throw (uno::RuntimeException)
e4c4141
 {
e4c4141
     // slideshow checks for non-zero duration, so cheat here
e4c4141
@@ -432,14 +452,13 @@ void SAL_CALL Player::setMediaTime( double fTime )
e4c4141
 
e4c4141
 // ------------------------------------------------------------------------------
e4c4141
 
e4c4141
-double SAL_CALL Player::getMediaTime(  )
e4c4141
+double SAL_CALL Player::getMediaTime()
e4c4141
     throw (uno::RuntimeException)
e4c4141
 {
e4c4141
     double position = 0.0;
e4c4141
 
e4c4141
     if( mpPlaybin ) {
e4c4141
         // get current position in the stream
e4c4141
-        GstFormat format = GST_FORMAT_TIME;
e4c4141
         gint64 gst_position;
e4c4141
         if( wrap_element_query_position( mpPlaybin, GST_FORMAT_TIME, &gst_position ) )
e4c4141
             position = gst_position / 1E9;
e4c4141
@@ -450,7 +469,7 @@ double SAL_CALL Player::getMediaTime(  )
e4c4141
 
e4c4141
 // ------------------------------------------------------------------------------
e4c4141
 
e4c4141
-double SAL_CALL Player::getRate(  )
e4c4141
+double SAL_CALL Player::getRate()
e4c4141
     throw (uno::RuntimeException)
e4c4141
 {
e4c4141
     double rate = 0.0;
e4c4141
@@ -475,7 +494,7 @@ void SAL_CALL Player::setPlaybackLoop( sal_Bool bSet )
e4c4141
 
e4c4141
 // ------------------------------------------------------------------------------
e4c4141
 
e4c4141
-sal_Bool SAL_CALL Player::isPlaybackLoop(  )
e4c4141
+sal_Bool SAL_CALL Player::isPlaybackLoop()
e4c4141
     throw (uno::RuntimeException)
e4c4141
 {
e4c4141
     // TODO check how to do with GST
e4c4141
@@ -506,7 +525,7 @@ void SAL_CALL Player::setMute( sal_Bool bSet )
e4c4141
 
e4c4141
 // ------------------------------------------------------------------------------
e4c4141
 
e4c4141
-sal_Bool SAL_CALL Player::isMute(  )
e4c4141
+sal_Bool SAL_CALL Player::isMute()
e4c4141
     throw (uno::RuntimeException)
e4c4141
 {
e4c4141
     return mbMuted;
e4c4141
@@ -530,7 +549,7 @@ void SAL_CALL Player::setVolumeDB( sal_Int16 nVolumeDB )
e4c4141
 
e4c4141
 // ------------------------------------------------------------------------------
e4c4141
 
e4c4141
-sal_Int16 SAL_CALL Player::getVolumeDB(  )
e4c4141
+sal_Int16 SAL_CALL Player::getVolumeDB()
e4c4141
     throw (uno::RuntimeException)
e4c4141
 {
e4c4141
     sal_Int16 nVolumeDB(0);
e4c4141
@@ -548,7 +567,7 @@ sal_Int16 SAL_CALL Player::getVolumeDB(  )
e4c4141
 
e4c4141
 // ------------------------------------------------------------------------------
e4c4141
 
e4c4141
-awt::Size SAL_CALL Player::getPreferredPlayerWindowSize(  )
e4c4141
+awt::Size SAL_CALL Player::getPreferredPlayerWindowSize()
e4c4141
     throw (uno::RuntimeException)
e4c4141
 {
e4c4141
     awt::Size aSize( 0, 0 );
e4c4141
@@ -556,7 +575,7 @@ awt::Size SAL_CALL Player::getPreferredPlayerWindowSize(  )
e4c4141
     DBG( "%p Player::getPreferredPlayerWindowSize, member %d x %d", this, mnWidth, mnHeight );
e4c4141
 
e4c4141
     TimeValue aTimeout = { 10, 0 };
e4c4141
-#if OSL_DEBUG_LEVEL > 2
e4c4141
+#if 1 // OSL_DEBUG_LEVEL > 2
e4c4141
     osl::Condition::Result aResult =
e4c4141
 #endif
e4c4141
                                  maSizeCondition.wait( &aTimeout );
e4c4141
@@ -612,7 +631,7 @@ uno::Reference< ::media::XPlayerWindow > SAL_CALL Player::createPlayerWindow( co
e4c4141
 
e4c4141
 // ------------------------------------------------------------------------------
e4c4141
 
e4c4141
-uno::Reference< media::XFrameGrabber > SAL_CALL Player::createFrameGrabber(  )
e4c4141
+uno::Reference< media::XFrameGrabber > SAL_CALL Player::createFrameGrabber()
e4c4141
     throw (uno::RuntimeException)
e4c4141
 {
e4c4141
     uno::Reference< media::XFrameGrabber > xRet;
e4c4141
@@ -622,7 +641,7 @@ uno::Reference< media::XFrameGrabber > SAL_CALL Player::createFrameGrabber(  )
e4c4141
 
e4c4141
 // ------------------------------------------------------------------------------
e4c4141
 
e4c4141
-::rtl::OUString SAL_CALL Player::getImplementationName(  )
e4c4141
+::rtl::OUString SAL_CALL Player::getImplementationName()
e4c4141
     throw (uno::RuntimeException)
e4c4141
 {
e4c4141
     return ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( AVMEDIA_GST_PLAYER_IMPLEMENTATIONNAME ) );
e4c4141
@@ -638,7 +657,7 @@ sal_Bool SAL_CALL Player::supportsService( const ::rtl::OUString& ServiceName )
e4c4141
 
e4c4141
 // ------------------------------------------------------------------------------
e4c4141
 
e4c4141
-uno::Sequence< ::rtl::OUString > SAL_CALL Player::getSupportedServiceNames(  )
e4c4141
+uno::Sequence< ::rtl::OUString > SAL_CALL Player::getSupportedServiceNames()
e4c4141
     throw (uno::RuntimeException)
e4c4141
 {
e4c4141
     uno::Sequence< ::rtl::OUString > aRet(1);
e4c4141
diff --git a/avmedia/source/gstreamer/gstplayer.hxx b/avmedia/source/gstreamer/gstplayer.hxx
e4c4141
index b5d7d83..65c3e46 100644
e4c4141
--- a/avmedia/source/gstreamer/gstplayer.hxx
e4c4141
+++ b/avmedia/source/gstreamer/gstplayer.hxx
e4c4141
@@ -34,7 +34,7 @@
e4c4141
 
e4c4141
 #include "com/sun/star/media/XPlayer.hdl"
e4c4141
 
e4c4141
-typedef struct _GstXOverlay GstXOverlay;
e4c4141
+typedef struct _GstVideoOverlay GstVideoOverlay;
e4c4141
 
e4c4141
 namespace avmedia { namespace gstreamer {
e4c4141
 
e4c4141
@@ -95,7 +95,7 @@ private:
e4c4141
     sal_Bool                mbInitialized;
e4c4141
 
e4c4141
     long                    mnWindowID;
e4c4141
-    GstXOverlay*            mpXOverlay;
e4c4141
+    GstVideoOverlay*        mpXOverlay;
e4c4141
     gint64                  mnDuration;
e4c4141
     int                     mnWidth;
e4c4141
     int                     mnHeight;
e4c4141
diff --git a/avmedia/source/gstreamer/gstuno.cxx b/avmedia/source/gstreamer/gstuno.cxx
e4c4141
index 8095353..affb8eb2 100644
e4c4141
--- a/avmedia/source/gstreamer/gstuno.cxx
e4c4141
+++ b/avmedia/source/gstreamer/gstuno.cxx
e4c4141
@@ -26,6 +26,7 @@
e4c4141
  *
e4c4141
  ************************************************************************/
e4c4141
 
e4c4141
+#include "mediamisc.hxx"
e4c4141
 #include "gstmanager.hxx"
e4c4141
 
e4c4141
 using namespace ::com::sun::star;
e4c4141
@@ -34,6 +35,14 @@ using namespace ::com::sun::star;
e4c4141
 // - factory methods -
e4c4141
 // -------------------
e4c4141
 
e4c4141
+#ifdef AVMEDIA_GST_0_10
e4c4141
+#  define IMPL_NAME    "com.sun.star.comp.media.Manager_GStreamer_0_10"
e4c4141
+#  define SERVICE_NAME AVMEDIA_MANAGER_SERVICE_NAME_OLD // "com.sun.star.comp.avmedia.Manager_GStreamer_0_10"
e4c4141
+#else
e4c4141
+#  define IMPL_NAME    "com.sun.star.comp.media.Manager_GStreamer"
e4c4141
+#  define SERVICE_NAME AVMEDIA_MANAGER_SERVICE_NAME // "com.sun.star.comp.avmedia.Manager_GStreamer"
e4c4141
+#endif
e4c4141
+
e4c4141
 static uno::Reference< uno::XInterface > SAL_CALL create_MediaPlayer( const uno::Reference< lang::XMultiServiceFactory >& rxFact )
e4c4141
 {
e4c4141
     return uno::Reference< uno::XInterface >( *new ::avmedia::gstreamer::Manager( rxFact ) );
e4c4141
@@ -44,14 +53,12 @@ extern "C" SAL_DLLPUBLIC_EXPORT void* SAL_CALL component_getFactory( const sal_C
e4c4141
     uno::Reference< lang::XSingleServiceFactory > xFactory;
e4c4141
     void*                                   pRet = 0;
e4c4141
 
e4c4141
-    if( rtl_str_compare( pImplName, "com.sun.star.comp.media.Manager_GStreamer" ) == 0 )
e4c4141
+    if( rtl_str_compare( pImplName, IMPL_NAME ) == 0 )
e4c4141
     {
e4c4141
-        const ::rtl::OUString aServiceName( ::rtl::OUString("com.sun.star.media.Manager_GStreamer" ) );
e4c4141
-
e4c4141
+        const ::rtl::OUString aServiceName( SERVICE_NAME );
e4c4141
         xFactory = uno::Reference< lang::XSingleServiceFactory >( ::cppu::createSingleFactory(
e4c4141
                         reinterpret_cast< lang::XMultiServiceFactory* >( pServiceManager ),
e4c4141
-                        ::rtl::OUString("com.sun.star.comp.media.Manager_GStreamer" ),
e4c4141
-                        create_MediaPlayer, uno::Sequence< ::rtl::OUString >( &aServiceName, 1 ) ) );
e4c4141
+                        IMPL_NAME, create_MediaPlayer, uno::Sequence< ::rtl::OUString >( &aServiceName, 1 ) ) );
e4c4141
     }
e4c4141
 
e4c4141
     if( xFactory.is() )
e4c4141
diff --git a/avmedia/source/inc/mediamisc.hxx b/avmedia/source/inc/mediamisc.hxx
e4c4141
index 8f129bb..f042629 100644
e4c4141
--- a/avmedia/source/inc/mediamisc.hxx
e4c4141
+++ b/avmedia/source/inc/mediamisc.hxx
e4c4141
@@ -30,23 +30,14 @@ class ResMgr;
e4c4141
 
e4c4141
 #define AVMEDIA_RESID( nId ) ResId( nId, * ::avmedia::GetResMgr() )
e4c4141
 
e4c4141
-#ifdef GSTREAMER
e4c4141
-#define AVMEDIA_MANAGER_SERVICE_NAME "com.sun.star.comp.avmedia.Manager_GStreamer"
e4c4141
-#else
e4c4141
 #ifdef WNT
e4c4141
-
e4c4141
 #define AVMEDIA_MANAGER_SERVICE_NAME "com.sun.star.comp.avmedia.Manager_DirectX"
e4c4141
-
e4c4141
 #else
e4c4141
 #ifdef QUARTZ
e4c4141
-
e4c4141
 #define AVMEDIA_MANAGER_SERVICE_NAME "com.sun.star.comp.avmedia.Manager_QuickTime"
e4c4141
-
e4c4141
 #else
e4c4141
-
e4c4141
+#define AVMEDIA_MANAGER_SERVICE_NAME_OLD "com.sun.star.comp.avmedia.Manager_GStreamer_0_10"
e4c4141
 #define AVMEDIA_MANAGER_SERVICE_NAME "com.sun.star.comp.avmedia.Manager_GStreamer"
e4c4141
-
e4c4141
-#endif
e4c4141
 #endif
e4c4141
 #endif
e4c4141
 
e4c4141
diff --git a/avmedia/source/viewer/mediawindowbase_impl.cxx b/avmedia/source/viewer/mediawindowbase_impl.cxx
e4c4141
index 79e0bdf..fd2ffba 100644
e4c4141
--- a/avmedia/source/viewer/mediawindowbase_impl.cxx
e4c4141
+++ b/avmedia/source/viewer/mediawindowbase_impl.cxx
e4c4141
@@ -72,10 +72,25 @@ uno::Reference< media::XPlayer > MediaWindowBaseImpl::createPlayer( const ::rtl:
e4c4141
     {
e4c4141
         try
e4c4141
         {
e4c4141
+            uno::Reference< ::com::sun::star::media::XManager > xManager;
e4c4141
 
e4c4141
-            uno::Reference< ::com::sun::star::media::XManager > xManager(
e4c4141
-                xFactory->createInstance( ::rtl::OUString( AVMEDIA_MANAGER_SERVICE_NAME ) ),
e4c4141
-                uno::UNO_QUERY );
e4c4141
+            try {
e4c4141
+                xManager = uno::Reference< ::com::sun::star::media::XManager >(
e4c4141
+                        xFactory->createInstance( AVMEDIA_MANAGER_SERVICE_NAME ),
e4c4141
+                        uno::UNO_QUERY );
e4c4141
+            } catch ( const uno::Exception &e ) {
e4c4141
+            }
e4c4141
+
e4c4141
+// a fallback path just for gstreamer which has
e4c4141
+// two significant versions deployed at once ...
e4c4141
+#ifdef AVMEDIA_MANAGER_SERVICE_NAME_OLD
e4c4141
+            if( !xManager.is() )
e4c4141
+            {
e4c4141
+                xManager = uno::Reference< ::com::sun::star::media::XManager >(
e4c4141
+                        xFactory->createInstance( AVMEDIA_MANAGER_SERVICE_NAME_OLD ),
e4c4141
+                        uno::UNO_QUERY );
e4c4141
+            }
e4c4141
+#endif
e4c4141
 
e4c4141
             if( xManager.is() )
e4c4141
             {
e4c4141
diff --git a/config_host.mk.in b/config_host.mk.in
e4c4141
index 4fb80d1..42355cc 100644
e4c4141
--- a/config_host.mk.in
e4c4141
+++ b/config_host.mk.in
e4c4141
@@ -112,6 +112,7 @@ export ENABLE_GIO=@ENABLE_GIO@
e4c4141
 export ENABLE_GNOMEVFS=@ENABLE_GNOMEVFS@
e4c4141
 export ENABLE_GRAPHITE=@ENABLE_GRAPHITE@
e4c4141
 export ENABLE_GSTREAMER=@ENABLE_GSTREAMER@
e4c4141
+export ENABLE_GSTREAMER_0_10=@ENABLE_GSTREAMER_0_10@
e4c4141
 export ENABLE_GTK3=@ENABLE_GTK3@
e4c4141
 export ENABLE_GTK=@ENABLE_GTK@
e4c4141
 export ENABLE_GTK_PRINT=@ENABLE_GTK_PRINT@
e4c4141
@@ -182,6 +183,8 @@ export GRAPHITE_LIBS=@GRAPHITE_LIBS@
e4c4141
 @x_Cygwin@ export GREP=@WIN_GREP@
e4c4141
 export GSTREAMER_CFLAGS=@GSTREAMER_CFLAGS@
e4c4141
 export GSTREAMER_LIBS=@GSTREAMER_LIBS@
e4c4141
+export GSTREAMER_0_10_CFLAGS=@GSTREAMER_0_10_CFLAGS@
e4c4141
+export GSTREAMER_0_10_LIBS=@GSTREAMER_0_10_LIBS@
e4c4141
 export GTHREAD_CFLAGS=@GTHREAD_CFLAGS@
e4c4141
 export GTHREAD_LIBS=@GTHREAD_LIBS@
e4c4141
 export GTK3_CFLAGS=@GTK3_CFLAGS@
e4c4141
diff --git a/configure.in b/configure.in
e4c4141
index 651963a..46b9892 100644
e4c4141
--- a/configure.in
e4c4141
+++ b/configure.in
e4c4141
@@ -171,6 +171,7 @@ case "$host_os" in
e4c4141
 solaris*)
e4c4141
     test_gtk=yes
e4c4141
     build_gstreamer=yes
e4c4141
+    build_gstreamer_0_10=yes
e4c4141
     test_tde=yes
e4c4141
     test_kde=yes
e4c4141
     test_freetype=yes
e4c4141
@@ -200,6 +201,7 @@ solaris*)
e4c4141
 linux-gnu*|k*bsd*-gnu*)
e4c4141
     test_gtk=yes
e4c4141
     build_gstreamer=yes
e4c4141
+    build_gstreamer_0_10=yes
e4c4141
     test_tde=yes
e4c4141
     test_kde=yes
e4c4141
     test_kde4=yes
e4c4141
@@ -287,6 +289,7 @@ darwin*) # Mac OS X or iOS
e4c4141
 freebsd*)
e4c4141
     test_gtk=yes
e4c4141
     build_gstreamer=yes
e4c4141
+    build_gstreamer_0_10=yes
e4c4141
     test_tde=yes
e4c4141
     test_kde=yes
e4c4141
     test_kde4=yes
e4c4141
@@ -316,6 +319,7 @@ freebsd*)
e4c4141
 *netbsd*)
e4c4141
     test_gtk=yes
e4c4141
     build_gstreamer=yes
e4c4141
+    build_gstreamer_0_10=yes
e4c4141
     test_tde=no
e4c4141
     test_kde=no
e4c4141
     test_kde4=yes
e4c4141
@@ -344,6 +348,7 @@ openbsd*)
e4c4141
 dragonfly*)
e4c4141
     test_gtk=yes
e4c4141
     build_gstreamer=yes
e4c4141
+    build_gstreamer_0_10=yes
e4c4141
     test_tde=yes
e4c4141
     test_kde=yes
e4c4141
     test_kde4=yes
e4c4141
@@ -354,6 +359,7 @@ dragonfly*)
e4c4141
 
e4c4141
 linux-androideabi*)
e4c4141
     build_gstreamer=no
e4c4141
+    build_gstreamer_0_10=no
e4c4141
     test_cups=no
e4c4141
     test_fontconfig=no
e4c4141
     test_freetype=no
e4c4141
@@ -855,9 +861,14 @@ AC_ARG_ENABLE(randr-link,
e4c4141
 ,enable_randr_link=yes)
e4c4141
 
e4c4141
 AC_ARG_ENABLE(gstreamer,
e4c4141
-    AS_HELP_STRING([--disable-gstreamer],
e4c4141
+    AS_HELP_STRING([--enable-gstreamer],
e4c4141
+        [Enable building with the new gstreamer 1.0 avmedia backend.]),
e4c4141
+,enable_gstreamer=no)
e4c4141
+
e4c4141
+AC_ARG_ENABLE(gstreamer-0-10,
e4c4141
+    AS_HELP_STRING([--disable-gstreamer-0-10],
e4c4141
         [Disable building the gstreamer avmedia backend.]),
e4c4141
-,enable_gstreamer=yes)
e4c4141
+,enable_gstreamer_0_10=yes)
e4c4141
 
e4c4141
 AC_ARG_ENABLE(neon,
e4c4141
     AS_HELP_STRING([--disable-neon],
e4c4141
@@ -3703,6 +3714,7 @@ if test "$enable_headless" = "yes"; then
e4c4141
     test_fontconfig=yes
e4c4141
     test_gtk=no
e4c4141
     build_gstreamer=no
e4c4141
+    build_gstreamer_0_10=no
e4c4141
     test_tde=no
e4c4141
     test_kde=no
e4c4141
     test_kde4=no
e4c4141
@@ -8936,20 +8948,39 @@ dnl ===================================================================
e4c4141
 
e4c4141
 ENABLE_GSTREAMER=""
e4c4141
 
e4c4141
-if test  "$build_gstreamer" = "yes"; then
e4c4141
+if test "$build_gstreamer" = "yes"; then
e4c4141
 
e4c4141
     AC_MSG_CHECKING([whether to enable the GStreamer avmedia backend])
e4c4141
     if test "x$enable_gstreamer" != "xno"; then
e4c4141
         ENABLE_GSTREAMER="TRUE"
e4c4141
         AC_MSG_RESULT([yes])
e4c4141
-        PKG_CHECK_MODULES( GSTREAMER, gstreamer-0.10 gstreamer-plugins-base-0.10 )
e4c4141
+        PKG_CHECK_MODULES( GSTREAMER, gstreamer-1.0 gstreamer-plugins-base-1.0 gstreamer-video-1.0 )
e4c4141
     else
e4c4141
         AC_MSG_RESULT([no])
e4c4141
     fi
e4c4141
 fi
e4c4141
-
e4c4141
+AC_SUBST(GSTREAMER_CFLAGS)
e4c4141
+AC_SUBST(GSTREAMER_LIBS)
e4c4141
 AC_SUBST(ENABLE_GSTREAMER)
e4c4141
 
e4c4141
+
e4c4141
+ENABLE_GSTREAMER_0_10=""
e4c4141
+if test "$build_gstreamer_0_10" = "yes"; then
e4c4141
+
e4c4141
+    AC_MSG_CHECKING([whether to enable the GStreamer avmedia backend])
e4c4141
+    if test "x$enable_gstreamer_0_10" != "xno"; then
e4c4141
+        ENABLE_GSTREAMER_0_10="TRUE"
e4c4141
+        AC_MSG_RESULT([yes])
e4c4141
+        PKG_CHECK_MODULES( GSTREAMER_0_10, gstreamer-0.10 gstreamer-plugins-base-0.10 )
e4c4141
+    else
e4c4141
+        AC_MSG_RESULT([no])
e4c4141
+    fi
e4c4141
+fi
e4c4141
+
e4c4141
+AC_SUBST(GSTREAMER_0_10_CFLAGS)
e4c4141
+AC_SUBST(GSTREAMER_0_10_LIBS)
e4c4141
+AC_SUBST(ENABLE_GSTREAMER_0_10)
e4c4141
+
e4c4141
 dnl ===================================================================
e4c4141
 dnl Check whether the OpenGL libraries are available
e4c4141
 dnl ===================================================================
e4c4141
diff --git a/distro-configs/LibreOfficeAndroid.conf b/distro-configs/LibreOfficeAndroid.conf
e4c4141
index d789052..8acf153 100644
e4c4141
--- a/distro-configs/LibreOfficeAndroid.conf
e4c4141
+++ b/distro-configs/LibreOfficeAndroid.conf
e4c4141
@@ -6,6 +6,7 @@
e4c4141
 --disable-ext-report-builder
e4c4141
 --disable-gconf
e4c4141
 --disable-gnome-vfs
e4c4141
+--disable-gstreamer-0-10
e4c4141
 --disable-gstreamer
e4c4141
 --disable-lockdown
e4c4141
 --disable-mozilla
e4c4141
diff --git a/distro-configs/LibreOfficeLinux.conf b/distro-configs/LibreOfficeLinux.conf
e4c4141
index 21342e4..8e0ff3e 100644
e4c4141
--- a/distro-configs/LibreOfficeLinux.conf
e4c4141
+++ b/distro-configs/LibreOfficeLinux.conf
e4c4141
@@ -26,7 +26,7 @@
e4c4141
 --enable-odk
e4c4141
 --enable-lockdown
e4c4141
 --enable-kde
e4c4141
---enable-gstreamer
e4c4141
+--enable-gstreamer-0-10
e4c4141
 --enable-evolution2
e4c4141
 --enable-gnome-vfs
e4c4141
 --enable-ext-wiki-publisher
e4c4141
diff --git a/distro-configs/LibreOfficeOpenBSD.conf b/distro-configs/LibreOfficeOpenBSD.conf
e4c4141
index f55550a..b03a03f 100644
e4c4141
--- a/distro-configs/LibreOfficeOpenBSD.conf
e4c4141
+++ b/distro-configs/LibreOfficeOpenBSD.conf
e4c4141
@@ -11,7 +11,7 @@
e4c4141
 --disable-randr-link
e4c4141
 --disable-unix-qstart-libpng
e4c4141
 --enable-binfilter
e4c4141
---enable-gstreamer
e4c4141
+--enable-gstreamer-0-10
e4c4141
 --enable-lockdown
e4c4141
 --enable-ext-presenter-minimizer
e4c4141
 --enable-ext-pdfimport
e4c4141
diff --git a/distro-configs/LibreOfficeiOS.conf b/distro-configs/LibreOfficeiOS.conf
e4c4141
index 705cb63..67afb67 100644
e4c4141
--- a/distro-configs/LibreOfficeiOS.conf
e4c4141
+++ b/distro-configs/LibreOfficeiOS.conf
e4c4141
@@ -7,6 +7,7 @@
e4c4141
 --disable-extension-integration
e4c4141
 --disable-gconf
e4c4141
 --disable-gnome-vfs
e4c4141
+--disable-gstreamer-0-10
e4c4141
 --disable-gstreamer
e4c4141
 --disable-librsvg
e4c4141
 --disable-lockdown
e4c4141
diff --git a/distro-configs/OxygenOfficeLinux.conf b/distro-configs/OxygenOfficeLinux.conf
e4c4141
index a9203f2..62cd1d6 100644
e4c4141
--- a/distro-configs/OxygenOfficeLinux.conf
e4c4141
+++ b/distro-configs/OxygenOfficeLinux.conf
e4c4141
@@ -73,7 +73,7 @@
e4c4141
 --without-junit
e4c4141
 --with-helppack-integration
e4c4141
 --enable-odk
e4c4141
---enable-gstreamer
e4c4141
+--enable-gstreamer-0-10
e4c4141
 --enable-graphite
e4c4141
 --enable-dependency-tracking
e4c4141
 --enable-python=internal
e4c4141
diff --git a/postprocess/packcomponents/makefile.mk b/postprocess/packcomponents/makefile.mk
e4c4141
index 09e296b..572d9c2 100644
e4c4141
--- a/postprocess/packcomponents/makefile.mk
e4c4141
+++ b/postprocess/packcomponents/makefile.mk
e4c4141
@@ -403,6 +403,10 @@ my_components += component/connectivity/source/drivers/evoab2/evoab
e4c4141
 my_components += component/avmedia/source/gstreamer/avmediagstreamer
e4c4141
 .END
e4c4141
 
e4c4141
+.IF "$(OS)" != "WNT" && "$(ENABLE_GSTREAMER_0_10)" != ""
e4c4141
+my_components += component/avmedia/source/gstreamer/avmediagstreamer_0_10
e4c4141
+.END
e4c4141
+
e4c4141
 .INCLUDE: target.mk
e4c4141
 
e4c4141
 ALLTAR : $(MISC)/services.rdb
e4c4141
diff --git a/scp2/InstallModule_ooo.mk b/scp2/InstallModule_ooo.mk
e4c4141
index 0c49414..b6b2a0e 100644
e4c4141
--- a/scp2/InstallModule_ooo.mk
e4c4141
+++ b/scp2/InstallModule_ooo.mk
e4c4141
@@ -152,6 +152,9 @@ $(eval $(call gb_InstallModule_add_defs,scp2/ooo,\
e4c4141
 	$(if $(filter TRUE,$(ENABLE_GSTREAMER)),\
e4c4141
 		-DGSTREAMER \
e4c4141
 	) \
e4c4141
+	$(if $(filter TRUE,$(ENABLE_GSTREAMER_0_10)),\
e4c4141
+		-DGSTREAMER_0_10 \
e4c4141
+	) \
e4c4141
 	$(if $(WINDOWS_SDK_HOME),\
e4c4141
 		-DHAVE_WINDOWS_SDK \
e4c4141
 	) \
e4c4141
diff --git a/scp2/source/ooo/file_library_ooo.scp b/scp2/source/ooo/file_library_ooo.scp
e4c4141
index 66c50e2..40466b3 100644
e4c4141
--- a/scp2/source/ooo/file_library_ooo.scp
e4c4141
+++ b/scp2/source/ooo/file_library_ooo.scp
e4c4141
@@ -1415,7 +1415,11 @@ STD_LIB_FILE( gid_File_Lib_AVMedia, avmedia )
e4c4141
 
e4c4141
 #ifdef GSTREAMER
e4c4141
 SPECIAL_LIB_FILE_PATCH( gid_File_Lib_AVMediaGStreamer, avmediagst )
e4c4141
-#elif defined WNT
e4c4141
+#endif
e4c4141
+#ifdef GSTREAMER_0_10
e4c4141
+SPECIAL_LIB_FILE_PATCH( gid_File_Lib_AVMediaGStreamer_0_10, avmediagst_0_10 )
e4c4141
+#endif
e4c4141
+#if defined WNT
e4c4141
 #ifdef ENABLE_DIRECTX
e4c4141
 SPECIAL_LIB_FILE( gid_File_Lib_AVMediaWin, avmediawin )
e4c4141
 #endif
e4c4141
diff --git a/scp2/source/ooo/module_hidden_ooo.scp b/scp2/source/ooo/module_hidden_ooo.scp
e4c4141
index 76e062b..ef4c59b 100644
e4c4141
--- a/scp2/source/ooo/module_hidden_ooo.scp
e4c4141
+++ b/scp2/source/ooo/module_hidden_ooo.scp
e4c4141
@@ -203,15 +203,15 @@ Module gid_Module_Root_Files_4
e4c4141
 	gid_File_Lib_Charttools,
e4c4141
 	gid_File_Lib_Ctl,
e4c4141
 	gid_File_Lib_Cui,
e4c4141
-    gid_File_Lib_Sdbt,
e4c4141
-    gid_File_Lib_Dbmm,
e4c4141
+	gid_File_Lib_Sdbt,
e4c4141
+	gid_File_Lib_Dbmm,
e4c4141
 	gid_File_Lib_Dba,
e4c4141
 	gid_File_Lib_Dbase2,
e4c4141
 	gid_File_Lib_Dbaxml,
e4c4141
 	gid_File_Lib_Dbt,
e4c4141
 	gid_File_Lib_Dbfile,
e4c4141
 	gid_File_Lib_Drawinglayer,
e4c4141
-        gid_File_Lib_Editeng,
e4c4141
+	gid_File_Lib_Editeng,
e4c4141
 	gid_File_Lib_Flat,
e4c4141
 	gid_File_Lib_For,
e4c4141
 	gid_File_Lib_Forui,
e4c4141
@@ -250,15 +250,16 @@ Module gid_Module_Root_Files_4
e4c4141
 	gid_File_Lib_Svx,
e4c4141
 	gid_File_Lib_AVMedia,
e4c4141
 	gid_File_Lib_AVMediaWin,
e4c4141
-    gid_File_Lib_AVMediaGStreamer,
e4c4141
+	gid_File_Lib_AVMediaGStreamer,
e4c4141
+	gid_File_Lib_AVMediaGStreamer_0_10,
e4c4141
 	gid_File_Lib_BaseGfx,
e4c4141
-    gid_File_Lib_Merged,
e4c4141
+	gid_File_Lib_Merged,
e4c4141
 	gid_File_Lib_Sysdtrans,
e4c4141
 	gid_File_Lib_Sw,
e4c4141
 	gid_File_Lib_TextConversionDlgs,
e4c4141
 	gid_File_Lib_Tk,
e4c4141
-    gid_File_Lib_Acc,
e4c4141
-    gid_File_Lib_BaseBmp,
e4c4141
+	gid_File_Lib_Acc,
e4c4141
+	gid_File_Lib_BaseBmp,
e4c4141
 	gid_File_Lib_Tools,
e4c4141
 	gid_File_Lib_Utl,
e4c4141
 	gid_File_Lib_Uui,
e4c4141
@@ -284,8 +285,8 @@ Module gid_Module_Root_Files_4
e4c4141
 	gid_File_Lib_Fwm,
e4c4141
 	gid_File_Lib_Lprx2,
e4c4141
 	gid_File_Lib_Lprxw,
e4c4141
-    gid_File_Lib_Libtextcat,
e4c4141
-    gid_File_Lib_Guesslang,
e4c4141
+	gid_File_Lib_Libtextcat,
e4c4141
+	gid_File_Lib_Guesslang,
e4c4141
 	gid_File_Lib_Tfu);
e4c4141
 End
e4c4141
 
e4c4141
diff --git a/svx/source/sdr/contact/viewcontact.cxx b/svx/source/sdr/contact/viewcontact.cxx
e4c4141
index 3f1f986..b4dec00 100644
e4c4141
--- a/svx/source/sdr/contact/viewcontact.cxx
e4c4141
+++ b/svx/source/sdr/contact/viewcontact.cxx
e4c4141
@@ -269,7 +269,7 @@ namespace sdr
e4c4141
 
e4c4141
         drawinglayer::primitive2d::Primitive2DSequence ViewContact::createViewIndependentPrimitive2DSequence() const
e4c4141
         {
e4c4141
-            // This is the default impelemtation and should never be called (see header). If this is called,
e4c4141
+            // This is the default implementation and should never be called (see header). If this is called,
e4c4141
             // someone implemented a ViewContact (VC) visualisation object without defining the visualisation by
e4c4141
             // providing a seqence of primitives -> which cannot be correct.
e4c4141
             // Since we have no access to any known model data here, the default implementation creates a yellow placeholder
e4c4141
-- 
e4c4141
1.7.11.4
e4c4141