[vlc-commits] Qt: main_interface: fix showTab(oldwidget) for undocked playlist (fix #6794 )

2012-05-15 Thread Francois Cartegnie
vlc/vlc-2.0 | branch: master | Francois Cartegnie fcvlc...@free.fr | Sat May 
12 16:02:26 2012 +0200| [a8cc195912e60e5cc630762f8c7b2ed59a371215] | committer: 
Jean-Baptiste Kempf

Qt: main_interface: fix showTab(oldwidget) for undocked playlist (fix #6794)
(cherry picked from commit 0ef62578e5b6e06e67868e8a9e2ac11d4436b5da)

Signed-off-by: Jean-Baptiste Kempf j...@videolan.org

 http://git.videolan.org/gitweb.cgi/vlc/vlc-2.0.git/?a=commit;h=a8cc195912e60e5cc630762f8c7b2ed59a371215
---

 modules/gui/qt4/main_interface.cpp |5 +
 1 files changed, 5 insertions(+), 0 deletions(-)

diff --git a/modules/gui/qt4/main_interface.cpp 
b/modules/gui/qt4/main_interface.cpp
index 8ea980d..b3633e1 100644
--- a/modules/gui/qt4/main_interface.cpp
+++ b/modules/gui/qt4/main_interface.cpp
@@ -528,6 +528,11 @@ inline void MainInterface::showTab( QWidget *widget )
 #ifdef DEBUG_INTF
 msg_Warn( p_intf, Old stackCentralOldWidget %i, stackCentralW-indexOf( 
stackCentralOldWidget ) );
 #endif
+/* fixing when the playlist has been undocked after been hidden.
+   restoreStackOldWidget() is called when video stops but
+   stackCentralOldWidget would still be pointing to playlist */
+if ( widget == playlistWidget  !isPlDocked() )
+widget = bgWidget;
 
 stackCentralOldWidget = stackCentralW-currentWidget();
 stackWidgetsSizes[stackCentralOldWidget] = stackCentralW-size();

___
vlc-commits mailing list
vlc-commits@videolan.org
http://mailman.videolan.org/listinfo/vlc-commits


[vlc-commits] Fix Stack off-by-one overflow in vc1 packetizer

2012-05-15 Thread Jean-Baptiste Kempf
vlc/vlc-2.0 | branch: master | Jean-Baptiste Kempf j...@videolan.org | Sat 
May 12 02:10:58 2012 +0200| [f2a1e6ffe3080cdc69a99332040de89bc691bd4f] | 
committer: Jean-Baptiste Kempf

Fix Stack off-by-one overflow in vc1 packetizer

Pointed-By: Clément Lecigne
(cherry picked from commit 08879e4e4284cd5359578731701195e5d19c2f20)

Signed-off-by: Jean-Baptiste Kempf j...@videolan.org

 http://git.videolan.org/gitweb.cgi/vlc/vlc-2.0.git/?a=commit;h=f2a1e6ffe3080cdc69a99332040de89bc691bd4f
---

 modules/packetizer/vc1.c |2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/modules/packetizer/vc1.c b/modules/packetizer/vc1.c
index e3c7daa..0859f68 100644
--- a/modules/packetizer/vc1.c
+++ b/modules/packetizer/vc1.c
@@ -285,7 +285,7 @@ static void DecodeRIDU( uint8_t *p_ret, int *pi_ret, 
uint8_t *src, int i_src )
 while( src  end  dst  dst_end )
 {
 if( src  end - 3  src[0] == 0x00  src[1] == 0x00 
-src[2] == 0x03 )
+src[2] == 0x03  dst  dst_end - 1 )
 {
 *dst++ = 0x00;
 *dst++ = 0x00;

___
vlc-commits mailing list
vlc-commits@videolan.org
http://mailman.videolan.org/listinfo/vlc-commits


[vlc-commits] Qt: hide update check preference when !UPDATE_CHECK

2012-05-15 Thread Jean-Baptiste Kempf
vlc | branch: master | Jean-Baptiste Kempf j...@videolan.org | Tue May 15 
15:21:02 2012 +0200| [88a69655ae94b045d84fd9d45daf155e1728a65a] | committer: 
Jean-Baptiste Kempf

Qt: hide update check preference when !UPDATE_CHECK

Close #6813

 http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=88a69655ae94b045d84fd9d45daf155e1728a65a
---

 modules/gui/qt4/components/simple_preferences.cpp |3 +-
 modules/gui/qt4/ui/sprefs_interface.ui|  115 ++---
 2 files changed, 55 insertions(+), 63 deletions(-)

diff --git a/modules/gui/qt4/components/simple_preferences.cpp 
b/modules/gui/qt4/components/simple_preferences.cpp
index c2e44ce..c3bf298 100644
--- a/modules/gui/qt4/components/simple_preferences.cpp
+++ b/modules/gui/qt4/components/simple_preferences.cpp
@@ -613,7 +613,8 @@ SPrefsPanel::SPrefsPanel( intf_thread_t *_p_intf, QWidget 
*_parent,
 CONNECT( ui.updatesBox, toggled( bool ),
  ui.updatesDays, setEnabled( bool ) );
 #else
-ui.updateNotifierZone-hide();
+ui.updatesBox-hide();
+ui.updatesDays-hide();
 #endif
 /* ONE INSTANCE options */
 #if defined( WIN32 ) || defined( HAVE_DBUS ) || defined(__APPLE__)
diff --git a/modules/gui/qt4/ui/sprefs_interface.ui 
b/modules/gui/qt4/ui/sprefs_interface.ui
index 903df95..c0fcb91 100644
--- a/modules/gui/qt4/ui/sprefs_interface.ui
+++ b/modules/gui/qt4/ui/sprefs_interface.ui
@@ -71,39 +71,45 @@
   stringPrivacy / Network Interaction/string
  /property
  layout class=QGridLayout name=gridLayout_5
-  item row=0 column=0
-   widget class=QLabel name=artFetchLabel
-property name=minimumSize
+  item row=2 column=1
+   spacer name=horizontalSpacer_2
+property name=orientation
+ enumQt::Horizontal/enum
+/property
+property name=sizeType
+ enumQSizePolicy::Preferred/enum
+/property
+property name=sizeHint stdset=0
  size
-  width220/width
-  height0/height
+  width40/width
+  height20/height
  /size
 /property
-property name=text
- stringAlbum art download policy:/string
+   /spacer
+  /item
+  item row=1 column=3
+   widget class=QSpinBox name=updatesDays
+property name=sizePolicy
+ sizepolicy hsizetype=MinimumExpanding vsizetype=Fixed
+  horstretch0/horstretch
+  verstretch0/verstretch
+ /sizepolicy
 /property
-property name=buddy
- cstringartFetcher/cstring
+property name=alignment
+ setQt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter/set
+/property
+property name=suffix
+ string days/string
+/property
+property name=prefix
+ stringEvery /string
 /property
/widget
   /item
   item row=0 column=3 colspan=2
widget class=QComboBox name=artFetcher/
   /item
-  item row=3 column=0
-   widget class=QCheckBox name=saveRecentlyPlayed
-property name=minimumSize
- size
-  width220/width
-  height0/height
- /size
-/property
-property name=text
- stringSave recently played items/string
-/property
-   /widget
-  /item
-  item row=3 column=2
+  item row=2 column=2
widget class=QLabel name=filterLabel
 property name=text
  stringFilter:/string
@@ -119,7 +125,7 @@
 /property
/widget
   /item
-  item row=3 column=3 colspan=2
+  item row=2 column=3 colspan=2
widget class=QLineEdit name=recentlyPlayedFilters
 property name=sizePolicy
  sizepolicy hsizetype=MinimumExpanding vsizetype=Fixed
@@ -132,17 +138,8 @@
 /property
/widget
   /item
-  item row=2 column=0 colspan=5
-   widget class=QWidget name=updateNotifierZone native=true
-layout class=QHBoxLayout name=horizontalLayout_2
- property name=margin
-  number0/number
- /property
-/layout
-   /widget
-  /item
-  item row=1 column=0
-   widget class=QCheckBox name=updatesBox
+  item row=2 column=0
+   widget class=QCheckBox name=saveRecentlyPlayed
 property name=minimumSize
  size
   width220/width
@@ -150,44 +147,38 @@
  /size
 /property
 property name=text
- stringActivate updates notifier/string
+ stringSave recently played items/string
 /property
/widget
   /item
-  item row=1 column=3
-   widget class=QSpinBox name=updatesDays
-property name=sizePolicy
- sizepolicy hsizetype=MinimumExpanding vsizetype=Fixed
-  horstretch0/horstretch
-  verstretch0/verstretch
- /sizepolicy
-/property
-property name=alignment
- setQt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter/set
+  

[vlc-commits] Qt: main_interface: fix playlist widgets instances. (fix #6795)

2012-05-15 Thread Francois Cartegnie
vlc | branch: master | Francois Cartegnie fcvlc...@free.fr | Sun May 13 
14:55:53 2012 +0200| [0df9e699370faf5e41652dc162190589943f0fdf] | committer: 
Francois Cartegnie

Qt: main_interface: fix playlist widgets instances. (fix #6795)

PlaylistDialog::getInstance was duplicating the playlist widget
instanciated in main interface. This explains the empty playlist
bug of the popup dialogs replacing the current playlist by
parenting their menu using getInstance().
To avoid further mistakes, PlaylistWiget's constructor is now only
available to playlistdialog, which also manages the widget
through the different configurations (embedded or floating).
Dialog also now saves and restores geometry, which only happened
when the widget was on its side.

 http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=0df9e699370faf5e41652dc162190589943f0fdf
---

 modules/gui/qt4/components/playlist/playlist.hpp |4 +-
 modules/gui/qt4/dialogs/playlist.cpp |   36 --
 modules/gui/qt4/dialogs/playlist.hpp |   15 -
 modules/gui/qt4/main_interface.cpp   |   81 +
 modules/gui/qt4/main_interface.hpp   |1 +
 5 files changed, 81 insertions(+), 56 deletions(-)

diff --git a/modules/gui/qt4/components/playlist/playlist.hpp 
b/modules/gui/qt4/components/playlist/playlist.hpp
index 7d10eb6..122c73f 100644
--- a/modules/gui/qt4/components/playlist/playlist.hpp
+++ b/modules/gui/qt4/components/playlist/playlist.hpp
@@ -52,7 +52,6 @@ class PlaylistWidget : public QWidget
 {
 Q_OBJECT
 public:
-PlaylistWidget( intf_thread_t *_p_i, QWidget * );
 virtual ~PlaylistWidget();
 
 void forceHide();
@@ -72,12 +71,15 @@ private:
 intf_thread_t *p_intf;
 
 protected:
+PlaylistWidget( intf_thread_t *_p_i, QWidget * );
 virtual void dropEvent( QDropEvent *);
 virtual void dragEnterEvent( QDragEnterEvent * );
 virtual void closeEvent( QCloseEvent * );
 private slots:
 void changeView( const QModelIndex index );
 void clearPlaylist();
+
+friend class PlaylistDialog;
 };
 
 #ifdef Q_WS_MAC
diff --git a/modules/gui/qt4/dialogs/playlist.cpp 
b/modules/gui/qt4/dialogs/playlist.cpp
index 26c28d2..646fd53 100644
--- a/modules/gui/qt4/dialogs/playlist.cpp
+++ b/modules/gui/qt4/dialogs/playlist.cpp
@@ -40,21 +40,43 @@ PlaylistDialog::PlaylistDialog( intf_thread_t *_p_intf )
 setWindowRole( vlc-playlist );
 setWindowOpacity( var_InheritFloat( p_intf, qt-opacity ) );
 
-getSettings()-beginGroup(playlistdialog);
-
 playlistWidget = new PlaylistWidget( p_intf, this );
 setCentralWidget( playlistWidget );
 
-readSettings( getSettings(), QSize( 600,700 ) );
+readSettings( playlistdialog, QSize( 600,700 ) );
+}
 
-getSettings()-endGroup();
+PlaylistWidget *PlaylistDialog::exportPlaylistWidget()
+{
+Q_ASSERT( playlistWidget );
+PlaylistWidget *widget = playlistWidget;
+layout()-removeWidget( playlistWidget );
+playlistWidget = NULL;
+return widget;
+}
+
+void PlaylistDialog::importPlaylistWidget( PlaylistWidget *widget )
+{
+Q_ASSERT( !playlistWidget );
+playlistWidget = widget;
+setCentralWidget( playlistWidget );
+playlistWidget-show();
+}
+
+bool PlaylistDialog::hasPlaylistWidget()
+{
+return ( !! playlistWidget );
+}
+
+void PlaylistDialog::hideEvent( QHideEvent * event )
+{
+QWidget::hideEvent( event );
+emit visibilityChanged( false );
 }
 
 PlaylistDialog::~PlaylistDialog()
 {
-getSettings()-beginGroup(playlistdialog);
-writeSettings( getSettings() );
-getSettings()-endGroup();
+writeSettings( playlistdialog );
 }
 
 void PlaylistDialog::dropEvent( QDropEvent *event )
diff --git a/modules/gui/qt4/dialogs/playlist.hpp 
b/modules/gui/qt4/dialogs/playlist.hpp
index e3215df..f7a2e49 100644
--- a/modules/gui/qt4/dialogs/playlist.hpp
+++ b/modules/gui/qt4/dialogs/playlist.hpp
@@ -34,14 +34,22 @@ class QSignalMapper;
 class PLSelector;
 class PLPanel;
 class QSettings;
+class QHideEvent;
 
 class PlaylistDialog : public QVLCMW, public SingletonPlaylistDialog
 {
 Q_OBJECT
-private:
-PlaylistWidget *playlistWidget;
+
+public:
+PlaylistWidget *exportPlaylistWidget( );
+void importPlaylistWidget( PlaylistWidget * );
+bool hasPlaylistWidget();
+
+protected:
+virtual void hideEvent( QHideEvent * );
 
 private:
+PlaylistWidget *playlistWidget;
 PlaylistDialog( intf_thread_t * );
 virtual ~PlaylistDialog();
 
@@ -51,6 +59,9 @@ private:
 void dragLeaveEvent( QDragLeaveEvent * );
 
 friend classSingletonPlaylistDialog;
+
+signals:
+void visibilityChanged( bool );
 };
 
 
diff --git a/modules/gui/qt4/main_interface.cpp 
b/modules/gui/qt4/main_interface.cpp
index 377347f..f1d5ac6 100644
--- a/modules/gui/qt4/main_interface.cpp
+++ b/modules/gui/qt4/main_interface.cpp
@@ -41,6 +41,7 @@
 #include components/controller.hpp// controllers
 #include components/playlist/playlist.hpp // plWidget
 

[vlc-commits] Qt: correctly handle mousewheel in selector

2012-05-15 Thread Jean-Baptiste Kempf
vlc | branch: master | Jean-Baptiste Kempf j...@videolan.org | Tue May 15 
16:15:16 2012 +0200| [16c1b2916cf36a8e9c218ab856a62f289f6d2d80] | committer: 
Jean-Baptiste Kempf

Qt: correctly handle mousewheel in selector

Close #6812

 http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=16c1b2916cf36a8e9c218ab856a62f289f6d2d80
---

 modules/gui/qt4/components/playlist/selector.cpp |8 
 1 files changed, 8 insertions(+), 0 deletions(-)

diff --git a/modules/gui/qt4/components/playlist/selector.cpp 
b/modules/gui/qt4/components/playlist/selector.cpp
index 114cc37..3bce22c 100644
--- a/modules/gui/qt4/components/playlist/selector.cpp
+++ b/modules/gui/qt4/components/playlist/selector.cpp
@@ -31,6 +31,7 @@
 #include playlist_model.hpp/* plMimeData */
 #include input_manager.hpp /* MainInputManager, for podcast 
*/
 
+#include QApplication
 #include QInputDialog
 #include QMessageBox
 #include QMimeData
@@ -39,6 +40,7 @@
 #include QHBoxLayout
 #include QPainter
 #include QPalette
+#include QScrollBar
 
 #include vlc_playlist.h
 #include vlc_services_discovery.h
@@ -550,6 +552,12 @@ int PLSelector::getCurrentItemCategory()
 
 void PLSelector::wheelEvent( QWheelEvent *e )
 {
+if( verticalScrollBar()-isVisible()  (
+(verticalScrollBar()-value() != verticalScrollBar()-minimum()  
e-delta() = 0 ) ||
+(verticalScrollBar()-value() != verticalScrollBar()-maximum()  
e-delta()  0 )
+) )
+QApplication::sendEvent(verticalScrollBar(), e);
+
 // Accept this event in order to prevent unwanted volume up/down changes
 e-accept();
 }

___
vlc-commits mailing list
vlc-commits@videolan.org
http://mailman.videolan.org/listinfo/vlc-commits


[vlc-commits] Qt: correctly handle mousewheel in selector

2012-05-15 Thread Jean-Baptiste Kempf
vlc/vlc-2.0 | branch: master | Jean-Baptiste Kempf j...@videolan.org | Tue 
May 15 16:15:16 2012 +0200| [e881d32041b4e51d6015af01ab45537e6398801d] | 
committer: Jean-Baptiste Kempf

Qt: correctly handle mousewheel in selector

Close #6812
(cherry picked from commit 16c1b2916cf36a8e9c218ab856a62f289f6d2d80)

Signed-off-by: Jean-Baptiste Kempf j...@videolan.org

 http://git.videolan.org/gitweb.cgi/vlc/vlc-2.0.git/?a=commit;h=e881d32041b4e51d6015af01ab45537e6398801d
---

 modules/gui/qt4/components/playlist/selector.cpp |8 
 1 files changed, 8 insertions(+), 0 deletions(-)

diff --git a/modules/gui/qt4/components/playlist/selector.cpp 
b/modules/gui/qt4/components/playlist/selector.cpp
index 114cc37..3bce22c 100644
--- a/modules/gui/qt4/components/playlist/selector.cpp
+++ b/modules/gui/qt4/components/playlist/selector.cpp
@@ -31,6 +31,7 @@
 #include playlist_model.hpp/* plMimeData */
 #include input_manager.hpp /* MainInputManager, for podcast 
*/
 
+#include QApplication
 #include QInputDialog
 #include QMessageBox
 #include QMimeData
@@ -39,6 +40,7 @@
 #include QHBoxLayout
 #include QPainter
 #include QPalette
+#include QScrollBar
 
 #include vlc_playlist.h
 #include vlc_services_discovery.h
@@ -550,6 +552,12 @@ int PLSelector::getCurrentItemCategory()
 
 void PLSelector::wheelEvent( QWheelEvent *e )
 {
+if( verticalScrollBar()-isVisible()  (
+(verticalScrollBar()-value() != verticalScrollBar()-minimum()  
e-delta() = 0 ) ||
+(verticalScrollBar()-value() != verticalScrollBar()-maximum()  
e-delta()  0 )
+) )
+QApplication::sendEvent(verticalScrollBar(), e);
+
 // Accept this event in order to prevent unwanted volume up/down changes
 e-accept();
 }

___
vlc-commits mailing list
vlc-commits@videolan.org
http://mailman.videolan.org/listinfo/vlc-commits


[vlc-commits] Leave minimal interface if Esc key was pressed

2012-05-15 Thread Tobias Güntner
vlc/vlc-2.0 | branch: master | Tobias Güntner fatb...@web.de | Wed Feb  1 
23:46:59 2012 +0100| [632b91a9ac91501d35d8aa590d02f5f1c24d45d6] | committer: 
Jean-Baptiste Kempf

Leave minimal interface if Esc key was pressed

Close #5898

Signed-off-by: Jean-Baptiste Kempf j...@videolan.org
(cherry picked from commit 6e3489732966f4b124b4d68a53988b593c08777b)

Signed-off-by: Jean-Baptiste Kempf j...@videolan.org

 http://git.videolan.org/gitweb.cgi/vlc/vlc-2.0.git/?a=commit;h=632b91a9ac91501d35d8aa590d02f5f1c24d45d6
---

 modules/gui/qt4/main_interface.cpp |3 ++-
 1 files changed, 2 insertions(+), 1 deletions(-)

diff --git a/modules/gui/qt4/main_interface.cpp 
b/modules/gui/qt4/main_interface.cpp
index b3633e1..6285502 100644
--- a/modules/gui/qt4/main_interface.cpp
+++ b/modules/gui/qt4/main_interface.cpp
@@ -1302,7 +1302,8 @@ void MainInterface::keyPressEvent( QKeyEvent *e )
 
 void MainInterface::handleKeyPress( QKeyEvent *e )
 {
-if( ( e-modifiers()   Qt::ControlModifier )  ( e-key() == Qt::Key_H ) 
)
+if( ( ( e-modifiers()  Qt::ControlModifier )  ( e-key() == Qt::Key_H 
) ) ||
+( b_minimalView  !b_videoFullScreen  e-key() == Qt::Key_Escape ) )
 {
 toggleMinimalView( !b_minimalView );
 e-accept();

___
vlc-commits mailing list
vlc-commits@videolan.org
http://mailman.videolan.org/listinfo/vlc-commits


[vlc-commits] Windows 7 taskbar buttons got lost after video on top

2012-05-15 Thread Jean-Baptiste Kempf
vlc | branch: master | Jean-Baptiste Kempf j...@videolan.org | Tue May 15 
17:22:13 2012 +0200| [1fc1506a8ff78d0ef8c5f8d2d77634ba6e8b4b12] | committer: 
Jean-Baptiste Kempf

Windows 7 taskbar buttons got lost after video on top

This is not fully fixed, but it works after a state change

Patch from anonymous VlcVelope

 http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=1fc1506a8ff78d0ef8c5f8d2d77634ba6e8b4b12
---

 modules/gui/qt4/main_interface_win32.cpp |1 -
 1 files changed, 0 insertions(+), 1 deletions(-)

diff --git a/modules/gui/qt4/main_interface_win32.cpp 
b/modules/gui/qt4/main_interface_win32.cpp
index fdf5d69..fe169b0 100644
--- a/modules/gui/qt4/main_interface_win32.cpp
+++ b/modules/gui/qt4/main_interface_win32.cpp
@@ -71,7 +71,6 @@
 
 void MainInterface::createTaskBarButtons()
 {
-taskbar_wmsg = WM_NULL;
 /*Here is the code for the taskbar thumb buttons
 FIXME:We need pretty buttons in 16x16 px that are handled correctly by 
masks in Qt
 FIXME:the play button's picture doesn't changed to pause when clicked

___
vlc-commits mailing list
vlc-commits@videolan.org
http://mailman.videolan.org/listinfo/vlc-commits


[vlc-commits] On Windows playing items like dvd:// or screen:// causes strange shortcuts in the user recently used folder.

2012-05-15 Thread Jean-Baptiste Kempf
vlc | branch: master | Jean-Baptiste Kempf j...@videolan.org | Tue May 15 
17:24:33 2012 +0200| [391bb3272583cbe41c5dfec60141b76e9fd61d0e] | committer: 
Jean-Baptiste Kempf

On Windows playing items like dvd:// or screen:// causes strange shortcuts in 
the user recently used folder.

See 
http://social.technet.microsoft.com/Forums/nb-NO/w7itprogeneral/thread/02a71215-e308-408c-94a6-81f5a8e564a6
for some information. The solution calls SHAddToRecentDocs only if make_path
returns a valid path.

Patch by anonymous VlcVelope

Signed-off-by: Jean-Baptiste Kempf j...@videolan.org

 http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=391bb3272583cbe41c5dfec60141b76e9fd61d0e
---

 modules/gui/qt4/recents.cpp |4 +++-
 1 files changed, 3 insertions(+), 1 deletions(-)

diff --git a/modules/gui/qt4/recents.cpp b/modules/gui/qt4/recents.cpp
old mode 100644
new mode 100755
index b07e796..5f97374
--- a/modules/gui/qt4/recents.cpp
+++ b/modules/gui/qt4/recents.cpp
@@ -88,7 +88,9 @@ void RecentsMRL::addRecent( const QString mrl )
 
 #ifdef WIN32
 /* Add to the Windows 7 default list in taskbar */
-SHAddToRecentDocs( SHARD_PATHW, qtu( mrl ) );
+char* path = make_path( qtu( mrl ) );
+if( path )
+SHAddToRecentDocs( SHARD_PATHW, path );
 #endif
 
 int i_index = stack-indexOf( mrl );

___
vlc-commits mailing list
vlc-commits@videolan.org
http://mailman.videolan.org/listinfo/vlc-commits


[vlc-commits] Reenable the Qt4-PictureFlow

2012-05-15 Thread Jean-Baptiste Kempf
vlc | branch: master | Jean-Baptiste Kempf j...@videolan.org | Tue May 15 
17:27:41 2012 +0200| [8d3db54d819cda8376452852cc9bf2a57264173c] | committer: 
Jean-Baptiste Kempf

Reenable the Qt4-PictureFlow

These patches now should integrate better into the StandardPanel etc.
Parts had to be rearranged to be able to merge some code from libqxt into the 
source.
Fix bugs due to PL/ML change

Patch by VlcVelope

Signed-off-by: Jean-Baptiste Kempf j...@videolan.org

 http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=8d3db54d819cda8376452852cc9bf2a57264173c
---

 modules/gui/qt4/components/playlist/views.cpp |8 +-
 modules/gui/qt4/components/playlist/views.hpp |1 +
 modules/gui/qt4/util/pictureflow.cpp  |  634 -
 modules/gui/qt4/util/pictureflow.hpp  |  216 +-
 4 files changed, 626 insertions(+), 233 deletions(-)

Diff:   
http://git.videolan.org/gitweb.cgi/vlc.git/?a=commitdiff;h=8d3db54d819cda8376452852cc9bf2a57264173c
___
vlc-commits mailing list
vlc-commits@videolan.org
http://mailman.videolan.org/listinfo/vlc-commits


[vlc-commits] Ship run_vlc.sh

2012-05-15 Thread Rémi Denis-Courmont
vlc | branch: master | Rémi Denis-Courmont r...@remlab.net | Tue May 15 
18:44:14 2012 +0300| [680622a820075f90cef06b7f0c1653ad4bf9c2cd] | committer: 
Rémi Denis-Courmont

Ship run_vlc.sh

 http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=680622a820075f90cef06b7f0c1653ad4bf9c2cd
---

 Makefile.am |1 +
 1 files changed, 1 insertions(+), 0 deletions(-)

diff --git a/Makefile.am b/Makefile.am
index e79bdae..ca5a2b9 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -478,6 +478,7 @@ vlc$(EXEEXT):
$(AM_V_GEN)$(LN_S) -f bin/vlc-static$(EXEEXT) vlc$(EXEEXT)
 
 TESTS = test/run_vlc.sh
+dist_noinst_SCRIPTS += test/run_vlc.sh
 
 ###
 # Installing plugins cache

___
vlc-commits mailing list
vlc-commits@videolan.org
http://mailman.videolan.org/listinfo/vlc-commits


[vlc-commits] Fix test failure detection

2012-05-15 Thread Rémi Denis-Courmont
vlc | branch: master | Rémi Denis-Courmont r...@remlab.net | Tue May 15 
18:49:00 2012 +0300| [b750826cca896b78c81a0d66cd1f6b2cae3960c5] | committer: 
Rémi Denis-Courmont

Fix test failure detection

 http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=b750826cca896b78c81a0d66cd1f6b2cae3960c5
---

 test/run_vlc.sh |4 +++-
 1 files changed, 3 insertions(+), 1 deletions(-)

diff --git a/test/run_vlc.sh b/test/run_vlc.sh
index df249ba..ec1d123 100755
--- a/test/run_vlc.sh
+++ b/test/run_vlc.sh
@@ -1,6 +1,8 @@
 #! /bin/sh
 
-VLC=./vlc --ignore-config --no-one-instance-when-started-from-file
+set -e
+
+VLC=./vlc --ignore-config
 
 $VLC -vv vlc://quit
 $VLC -vv --play-and-exit vlc://nop

___
vlc-commits mailing list
vlc-commits@videolan.org
http://mailman.videolan.org/listinfo/vlc-commits


[vlc-commits] Qt: fix leak introduced in previous commit

2012-05-15 Thread Jean-Baptiste Kempf
vlc | branch: master | Jean-Baptiste Kempf j...@videolan.org | Tue May 15 
17:54:18 2012 +0200| [06ceac25f5d7a30ee585cb0f1c0b925f31234d74] | committer: 
Jean-Baptiste Kempf

Qt: fix leak introduced in previous commit

 http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=06ceac25f5d7a30ee585cb0f1c0b925f31234d74
---

 modules/gui/qt4/recents.cpp |3 +++
 1 files changed, 3 insertions(+), 0 deletions(-)

diff --git a/modules/gui/qt4/recents.cpp b/modules/gui/qt4/recents.cpp
index 5f97374..a1b0fc4 100755
--- a/modules/gui/qt4/recents.cpp
+++ b/modules/gui/qt4/recents.cpp
@@ -90,7 +90,10 @@ void RecentsMRL::addRecent( const QString mrl )
 /* Add to the Windows 7 default list in taskbar */
 char* path = make_path( qtu( mrl ) );
 if( path )
+{
 SHAddToRecentDocs( SHARD_PATHW, path );
+free( path );
+}
 #endif
 
 int i_index = stack-indexOf( mrl );

___
vlc-commits mailing list
vlc-commits@videolan.org
http://mailman.videolan.org/listinfo/vlc-commits


[vlc-commits] Qt: fix selection of dropdown-menu of playlist view mode

2012-05-15 Thread Jean-Baptiste Kempf
vlc | branch: master | Jean-Baptiste Kempf j...@videolan.org | Tue May 15 
17:58:52 2012 +0200| [366a8885e5c592195853f6cf9682c2c8fe29fec7] | committer: 
Jean-Baptiste Kempf

Qt: fix selection of dropdown-menu of playlist view mode

Patch by VlcVelope

 http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=366a8885e5c592195853f6cf9682c2c8fe29fec7
---

 modules/gui/qt4/components/playlist/playlist.cpp |1 +
 1 files changed, 1 insertions(+), 0 deletions(-)

diff --git a/modules/gui/qt4/components/playlist/playlist.cpp 
b/modules/gui/qt4/components/playlist/playlist.cpp
index e6ba9e6..de1c683 100644
--- a/modules/gui/qt4/components/playlist/playlist.cpp
+++ b/modules/gui/qt4/components/playlist/playlist.cpp
@@ -249,6 +249,7 @@ void PlaylistWidget::changeView( const QModelIndex index )
 {
 searchEdit-clear();
 locationBar-setIndex( index );
+viewActions[mainView-currentViewIndex()]-setChecked( true );
 }
 
 void PlaylistWidget::clearPlaylist()

___
vlc-commits mailing list
vlc-commits@videolan.org
http://mailman.videolan.org/listinfo/vlc-commits


[vlc-commits] Qt: correctly behave when customizing from minimal view

2012-05-15 Thread Jean-Baptiste Kempf
vlc | branch: master | Jean-Baptiste Kempf j...@videolan.org | Tue May 15 
18:03:40 2012 +0200| [1d8fd45bfad1a91ce2a623c2a301b8115e14f05c] | committer: 
Jean-Baptiste Kempf

Qt: correctly behave when customizing from minimal view

 http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=1d8fd45bfad1a91ce2a623c2a301b8115e14f05c
---

 modules/gui/qt4/main_interface.cpp |2 ++
 1 files changed, 2 insertions(+), 0 deletions(-)

diff --git a/modules/gui/qt4/main_interface.cpp 
b/modules/gui/qt4/main_interface.cpp
index f1d5ac6..c02aca5 100644
--- a/modules/gui/qt4/main_interface.cpp
+++ b/modules/gui/qt4/main_interface.cpp
@@ -345,6 +345,8 @@ void MainInterface::recreateToolbars()
  this, handleKeyPress( QKeyEvent * ) );
 THEMIM-requestVoutUpdate();
 }
+
+setMinimalView( b_minimalView );
 }
 
 void MainInterface::reloadPrefs()

___
vlc-commits mailing list
vlc-commits@videolan.org
http://mailman.videolan.org/listinfo/vlc-commits


[vlc-commits] macosx: Growl notification plugin: use the Cocoa-based API

2012-05-15 Thread Karlheinz Wohlmuth
vlc | branch: master | Karlheinz Wohlmuth kw...@myopera.com | Sun Apr 22 
20:10:31 2012 +0200| [999170bd706b7d56d50a40a032522be7a379746b] | committer: 
Felix Paul Kühne

macosx: Growl notification plugin: use the Cocoa-based API

Support for the NSDistributedNotificationCenter based methods
was removed in Growl 1.3.

Signed-off-by: Felix Paul Kühne fkue...@videolan.org

 http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=999170bd706b7d56d50a40a032522be7a379746b
---

 configure.ac   |2 +-
 modules/notify/growl.m |  185 +---
 2 files changed, 82 insertions(+), 105 deletions(-)

Diff:   
http://git.videolan.org/gitweb.cgi/vlc.git/?a=commitdiff;h=999170bd706b7d56d50a40a032522be7a379746b
___
vlc-commits mailing list
vlc-commits@videolan.org
http://mailman.videolan.org/listinfo/vlc-commits


[vlc-commits] configure: slightly updated growl header detection

2012-05-15 Thread Felix Paul Kühne
vlc | branch: master | Felix Paul Kühne fkue...@videolan.org | Tue May 15 
19:34:40 2012 +0200| [890ea0765894d32df2604f0d6d9b9e66eb2f8a37] | committer: 
Felix Paul Kühne

configure: slightly updated growl header detection

 http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=890ea0765894d32df2604f0d6d9b9e66eb2f8a37
---

 configure.ac |2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/configure.ac b/configure.ac
index d03726f..92d598c 100644
--- a/configure.ac
+++ b/configure.ac
@@ -4013,7 +4013,7 @@ AC_ARG_ENABLE(growl,
   [  --enable-growl  growl notification plugin (default disabled)],,
   [enable_growl=no])
 AS_IF([test ${enable_growl} != no], [
-
AC_CHECK_HEADERS(${CONTRIB_DIR}/Growl.framework/Versions/A/Headers/GrowlDefines.h,
 [
+
AC_CHECK_HEADERS(${CONTRIB_DIR}/Growl.framework/Versions/A/Headers/Growl.h, [
   VLC_ADD_PLUGIN([growl])
   VLC_ADD_LIBS([growl], [-F${CONTRIB_DIR} 
-Wl,-framework,Growl,-framework,Foundation])
   VLC_ADD_OBJCFLAGS([growl], [-F${CONTRIB_DIR}])

___
vlc-commits mailing list
vlc-commits@videolan.org
http://mailman.videolan.org/listinfo/vlc-commits


[vlc-commits] wasapi: fix Flush()

2012-05-15 Thread Rémi Denis-Courmont
vlc | branch: master | Rémi Denis-Courmont r...@remlab.net | Tue May 15 
20:19:44 2012 +0300| [1ed466faa409aa6c9f95e29aa05261a180d1fedb] | committer: 
Rémi Denis-Courmont

wasapi: fix Flush()

The stream must be stopped before it can be flushed (reset).

 http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=1ed466faa409aa6c9f95e29aa05261a180d1fedb
---

 modules/audio_output/wasapi.c |3 ++-
 1 files changed, 2 insertions(+), 1 deletions(-)

diff --git a/modules/audio_output/wasapi.c b/modules/audio_output/wasapi.c
index 9c175a7..e5b3c72 100644
--- a/modules/audio_output/wasapi.c
+++ b/modules/audio_output/wasapi.c
@@ -123,8 +123,9 @@ static void Flush(audio_output_t *aout, bool wait)
 HRESULT hr;
 
 if (wait)
-return;
+return; /* Not drain implemented */
 
+IAudioClient_Stop(sys-client);
 hr = IAudioClient_Reset(sys-client);
 if (FAILED(hr))
 msg_Warn(aout, cannot reset stream (error 0x%lx), hr);

___
vlc-commits mailing list
vlc-commits@videolan.org
http://mailman.videolan.org/listinfo/vlc-commits


[vlc-commits] macosx: fix another case where the user would see double negative time values

2012-05-15 Thread David Fuhrmann
vlc | branch: master | David Fuhrmann david.fuhrm...@googlemail.com | Tue May 
15 22:19:34 2012 +0200| [cb98770db2ead84cb01568553ecc26839d9d85e5] | committer: 
David Fuhrmann

macosx: fix another case where the user would see double negative time values

Time can be greater than duration, when you scroll right to much.
Furthermore, this commit moves the duplicated code into a own method.

 http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=cb98770db2ead84cb01568553ecc26839d9d85e5
---

 modules/gui/macosx/MainWindow.m |   45 ---
 1 files changed, 23 insertions(+), 22 deletions(-)

diff --git a/modules/gui/macosx/MainWindow.m b/modules/gui/macosx/MainWindow.m
index a284396..60e38a2 100644
--- a/modules/gui/macosx/MainWindow.m
+++ b/modules/gui/macosx/MainWindow.m
@@ -864,25 +864,14 @@ static VLCMainWindow *_o_sharedInstance = nil;
 p_input = pl_CurrentInput( VLCIntf );
 if( p_input != NULL )
 {
-vlc_value_t time;
 vlc_value_t pos;
 NSString * o_time;
-char psz_time[MSTRTIME_MAX_SIZE];
 
 pos.f_float = f_updated / 1.;
 var_Set( p_input, position, pos );
 [o_time_sld setFloatValue: f_updated];
 
-var_Get( p_input, time, time );
-
-mtime_t dur = input_item_GetDuration( input_GetItem( p_input ) );
-if( [o_time_fld timeRemaining]  dur != -1 )
-{
-o_time = [NSString stringWithFormat: @-%s, secstotimestr( 
psz_time, ((dur - time.i_time) / 100) )];
-}
-else
-o_time = [NSString stringWithUTF8String: secstotimestr( psz_time, 
(time.i_time / 100) )];
-
+o_time = [self getCurrentTimeAsString: p_input];
 [o_time_fld setStringValue: o_time];
 [o_fspanel setStreamPos: f_updated andTime: o_time];
 vlc_object_release( p_input );
@@ -1205,32 +1194,44 @@ static VLCMainWindow *_o_sharedInstance = nil;
 b_splitview_removed = NO;
 }
 
+- (NSString *)getCurrentTimeAsString:(input_thread_t *)p_input
+{
+assert( p_input != nil );
+
+vlc_value_t time;
+char psz_time[MSTRTIME_MAX_SIZE];
+
+var_Get( p_input, time, time );
+
+mtime_t dur = input_item_GetDuration( input_GetItem( p_input ) );
+if( [o_time_fld timeRemaining]  dur  0 )
+{
+mtime_t remaining = 0;
+if( dur  time.i_time )
+remaining = dur - time.i_time;
+return [NSString stringWithFormat: @-%s, secstotimestr( psz_time, ( 
remaining / 100 ) )];
+}
+else
+return [NSString stringWithUTF8String: secstotimestr( psz_time, ( 
time.i_time / 100 ) )];
+}
+
 - (void)updateTimeSlider
 {
 input_thread_t * p_input;
 p_input = pl_CurrentInput( VLCIntf );
 if( p_input )
 {
-vlc_value_t time;
 NSString * o_time;
 vlc_value_t pos;
-char psz_time[MSTRTIME_MAX_SIZE];
 float f_updated;
 
 var_Get( p_input, position, pos );
 f_updated = 1. * pos.f_float;
 [o_time_sld setFloatValue: f_updated];
 
-var_Get( p_input, time, time );
+o_time = [self getCurrentTimeAsString: p_input];
 
 mtime_t dur = input_item_GetDuration( input_GetItem( p_input ) );
-if( [o_time_fld timeRemaining]  dur  0 )
-{
-o_time = [NSString stringWithFormat: @-%s, secstotimestr( 
psz_time, ((dur - time.i_time) / 100))];
-}
-else
-o_time = [NSString stringWithUTF8String: secstotimestr( psz_time, 
(time.i_time / 100) )];
-
 if (dur == -1) {
 [o_time_sld setEnabled: NO];
 [o_time_sld setHidden: YES];

___
vlc-commits mailing list
vlc-commits@videolan.org
http://mailman.videolan.org/listinfo/vlc-commits


[vlc-commits] wasapi: build system integration

2012-05-15 Thread Rémi Denis-Courmont
vlc | branch: master | Rémi Denis-Courmont r...@remlab.net | Tue May 15 
23:55:19 2012 +0300| [13ea0ab33bdd6401dc097c0584eabf490bab8d45] | committer: 
Rémi Denis-Courmont

wasapi: build system integration

 http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=13ea0ab33bdd6401dc097c0584eabf490bab8d45
---

 configure.ac|   19 +++
 modules/audio_output/Modules.am |4 +++-
 2 files changed, 22 insertions(+), 1 deletions(-)

diff --git a/configure.ac b/configure.ac
index 92d598c..7ae9362 100644
--- a/configure.ac
+++ b/configure.ac
@@ -3497,6 +3497,25 @@ AS_IF([test $enable_sndio != no], [
 AM_CONDITIONAL([HAVE_SNDIO], [test ${have_sndio} = yes])
 
 dnl
+dnl  Windows Audio Session plugin
+dnl
+AC_ARG_ENABLE([wasapi],
+  [AS_HELP_STRING([--enable-wasapi],
+[use the Windows Audio Session API (default auto)])
+])
+have_wasapi=no
+AS_IF([test $enable_wasapi != no], [
+  AC_CHECK_HEADER([audioclient.h], [
+have_wasapi=yes
+  ], [
+AS_IF([test x${enable_wasapi} != x], [
+  AC_MSG_ERROR([Windows Audio Session API not found.])
+])
+  ])
+])
+AM_CONDITIONAL([HAVE_WASAPI], [test ${have_wasapi} = yes])
+
+dnl
 dnl  win32 waveOut plugin
 dnl
 AC_ARG_ENABLE(waveout,
diff --git a/modules/audio_output/Modules.am b/modules/audio_output/Modules.am
index f6a1dac..ea30d4d 100644
--- a/modules/audio_output/Modules.am
+++ b/modules/audio_output/Modules.am
@@ -49,7 +49,9 @@ libwasapi_plugin_la_SOURCES = wasapi.c
 libwasapi_plugin_la_CFLAGS = $(AM_CFLAGS)
 libwasapi_plugin_la_LIBADD = $(AM_LIBADD) -lole32 -lksuser
 libwasapi_plugin_la_DEPENDENCIES =
-EXTRA_LTLIBRARIES += libwasapi_plugin.la
+if HAVE_WASAPI
+libvlc_LTLIBRARIES += libwasapi_plugin.la
+endif
 
 libkai_plugin_la_SOURCES = kai.c packet.c
 libkai_plugin_la_CFLAGS = $(AM_CFLAGS)

___
vlc-commits mailing list
vlc-commits@videolan.org
http://mailman.videolan.org/listinfo/vlc-commits


[vlc-commits] wasapi: clock synchronization

2012-05-15 Thread Rémi Denis-Courmont
vlc | branch: master | Rémi Denis-Courmont r...@remlab.net | Tue May 15 
23:45:29 2012 +0300| [ab14ae3615648bd8f7058b814e9f33831ded4844] | committer: 
Rémi Denis-Courmont

wasapi: clock synchronization

This currently assumes that VLC uses QueryPerformanceTimer() in its
implementation of mdate(). This is currently true but... ?

 http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=ab14ae3615648bd8f7058b814e9f33831ded4844
---

 modules/audio_output/wasapi.c |   42 
 1 files changed, 33 insertions(+), 9 deletions(-)

diff --git a/modules/audio_output/wasapi.c b/modules/audio_output/wasapi.c
index 80bcff6..9865f99 100644
--- a/modules/audio_output/wasapi.c
+++ b/modules/audio_output/wasapi.c
@@ -50,6 +50,7 @@ struct aout_sys_t
 {
 IAudioClient *client;
 IAudioRenderClient *render;
+IAudioClock *clock;
 UINT32 frames; /** Total buffer size (frames) */
 HANDLE done; /** Semaphore for MTA thread */
 };
@@ -60,8 +61,17 @@ static void Play(audio_output_t *aout, block_t *block)
 HRESULT hr;
 
 CoInitializeEx(NULL, COINIT_MULTITHREADED);
+if (likely(sys-clock != NULL))
+{
+UINT64 pos, qpcpos;
+
+IAudioClock_GetPosition(sys-clock, pos, qpcpos);
+qpcpos = (qpcpos + 5) / 10; /* 100ns - 1µs */
+/* NOTE: this assumes mdate() uses QPC() (which it currently does). */
+aout_TimeReport(aout, qpcpos);
+}
 
-while (block-i_nb_samples  0)
+for (;;)
 {
 UINT32 frames;
 hr = IAudioClient_GetCurrentPadding(sys-client, frames);
@@ -93,14 +103,17 @@ static void Play(audio_output_t *aout, block_t *block)
 msg_Err(aout, cannot release buffer (error 0x%lx), hr);
 break;
 }
+IAudioClient_Start(sys-client);
 
 block-p_buffer += copy;
 block-i_buffer -= copy;
 block-i_nb_samples -= frames;
+if (block-i_nb_samples == 0)
+break; /* done */
 
-/* FIXME: implement synchro */
-IAudioClient_Start(sys-client);
-Sleep(AOUT_MIN_PREPARE_TIME / 1000);
+/* Out of buffer space, sleep */
+msleep(AOUT_MIN_PREPARE_TIME
+ + block-i_nb_samples * CLOCK_FREQ / aout-format.i_rate);
 }
 
 CoUninitialize();
@@ -112,13 +125,14 @@ static void Pause(audio_output_t *aout, bool paused, 
mtime_t date)
 aout_sys_t *sys = aout-sys;
 HRESULT hr;
 
-if (!paused)
-return;
-
 CoInitializeEx(NULL, COINIT_MULTITHREADED);
-hr = IAudioClient_Stop(sys-client);
+if (paused)
+hr = IAudioClient_Stop(sys-client);
+else
+hr = IAudioClient_Start(sys-client);
 if (FAILED(hr))
-msg_Warn(aout, cannot stop stream (error 0x%lx), hr);
+msg_Warn(aout, cannot %s stream (error 0x%lx),
+ paused ? stop : start, hr);
 CoUninitialize();
 (void) date;
 }
@@ -243,6 +257,7 @@ static int Open(vlc_object_t *obj)
 return VLC_ENOMEM;
 sys-client = NULL;
 sys-render = NULL;
+sys-clock = NULL;
 sys-done = NULL;
 
 hr = CoInitializeEx(NULL, COINIT_MULTITHREADED);
@@ -343,6 +358,11 @@ static int Open(vlc_object_t *obj)
 goto error;
 }
 
+hr = IAudioClient_GetService(sys-client, IID_IAudioClock,
+ (void **)sys-clock);
+if (FAILED(hr))
+msg_Warn(aout, cannot get audio clock (error 0x%lx), hr);
+
 sys-done = CreateSemaphore(NULL, 0, 1, NULL);
 if (unlikely(sys-done == NULL))
 goto error;
@@ -361,6 +381,8 @@ static int Open(vlc_object_t *obj)
 error:
 if (sys-done != NULL)
 CloseHandle(sys-done);
+if (sys-clock != NULL)
+IAudioClock_Release(sys-clock);
 if (sys-render != NULL)
 IAudioRenderClient_Release(sys-render);
 if (sys-client != NULL)
@@ -376,6 +398,8 @@ static void Close (vlc_object_t *obj)
 aout_sys_t *sys = aout-sys;
 
 CoInitializeEx(NULL, COINIT_MULTITHREADED);
+IAudioClient_Stop(sys-client); /* should not be needed */
+IAudioClock_Release(sys-clock);
 IAudioRenderClient_Release(sys-render);
 IAudioClient_Release(sys-client);
 CoUninitialize();

___
vlc-commits mailing list
vlc-commits@videolan.org
http://mailman.videolan.org/listinfo/vlc-commits


[vlc-commits] wasapi: enlist the plugin

2012-05-15 Thread Rémi Denis-Courmont
vlc | branch: master | Rémi Denis-Courmont r...@remlab.net | Wed May 16 
00:01:20 2012 +0300| [df7a798d19353b762dadafe28a010acc5a3afb5d] | committer: 
Rémi Denis-Courmont

wasapi: enlist the plugin

 http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=df7a798d19353b762dadafe28a010acc5a3afb5d
---

 NEWS   |1 +
 modules/LIST   |1 +
 po/POTFILES.in |1 +
 3 files changed, 3 insertions(+), 0 deletions(-)

diff --git a/NEWS b/NEWS
index 416a034..3917d68 100644
--- a/NEWS
+++ b/NEWS
@@ -5,6 +5,7 @@ Changes between 2.0.x and 2.1.0-git:
  * /extras/contrib has been replaced by a better system in /contrib
 
 Audio output:
+ * Windows Audio Session API audio output support
  * OpenBSD sndio audio output support
 
 Encoders:
diff --git a/modules/LIST b/modules/LIST
index 807d3f0..85f93a4 100644
--- a/modules/LIST
+++ b/modules/LIST
@@ -369,6 +369,7 @@ $Id$
  * vout_sdl: video output module using the SDL library
  * vsxu: audio visualization using Vovoid VSXu
  * wall: image wall filter
+ * wasapi: Windows Audio Session API audio output
  * wav: Wav demuxer
  * wave: Wave video effect
  * waveout: simple audio output module for Windows
diff --git a/po/POTFILES.in b/po/POTFILES.in
index 2dd46d5..f8f7050 100644
--- a/po/POTFILES.in
+++ b/po/POTFILES.in
@@ -340,6 +340,7 @@ modules/audio_output/opensles_android.c
 modules/audio_output/oss.c
 modules/audio_output/pulse.c
 modules/audio_output/sndio.c
+modules/audio_output/wasapi.c
 modules/audio_output/waveout.c
 modules/audio_output/windows_audio_common.h
 modules/codec/a52.c

___
vlc-commits mailing list
vlc-commits@videolan.org
http://mailman.videolan.org/listinfo/vlc-commits


[vlc-commits] Add SLDV fourCC

2012-05-15 Thread Jean-Baptiste Kempf
vlc | branch: master | Jean-Baptiste Kempf j...@videolan.org | Tue May 15 
21:21:39 2012 +0200| [1f98a5f8de53493c5e21dda64f30a8c3525d98dc] | committer: 
Jean-Baptiste Kempf

Add SLDV fourCC

 http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=1f98a5f8de53493c5e21dda64f30a8c3525d98dc
---

 src/misc/fourcc.c |1 +
 1 file changed, 1 insertion(+)

diff --git a/src/misc/fourcc.c b/src/misc/fourcc.c
index d7e6644..40d4fce 100644
--- a/src/misc/fourcc.c
+++ b/src/misc/fourcc.c
@@ -411,6 +411,7 @@ static const entry_t p_list_video[] = {
 E(CDVH, Canopus DV Video),
 E(cdvh, Canopus DV Video),
 E(CDV5, Canopus DV Video),
+E(SLDV, SoftLab DVCAM codec),
 
 /* Windows Media Video */
 B(VLC_CODEC_WMV1, Windows Media Video 7),

___
vlc-commits mailing list
vlc-commits@videolan.org
http://mailman.videolan.org/listinfo/vlc-commits


[vlc-commits] Windows 7 taskbar buttons got lost after video on top

2012-05-15 Thread Jean-Baptiste Kempf
vlc/vlc-2.0 | branch: master | Jean-Baptiste Kempf j...@videolan.org | Tue 
May 15 17:22:13 2012 +0200| [2e4fc3291adefaf15a46d751b759a8832bf92f10] | 
committer: Jean-Baptiste Kempf

Windows 7 taskbar buttons got lost after video on top

This is not fully fixed, but it works after a state change

Patch from anonymous VlcVelope
(cherry picked from commit 1fc1506a8ff78d0ef8c5f8d2d77634ba6e8b4b12)

Signed-off-by: Jean-Baptiste Kempf j...@videolan.org

 http://git.videolan.org/gitweb.cgi/vlc/vlc-2.0.git/?a=commit;h=2e4fc3291adefaf15a46d751b759a8832bf92f10
---

 modules/gui/qt4/main_interface_win32.cpp |1 -
 1 file changed, 1 deletion(-)

diff --git a/modules/gui/qt4/main_interface_win32.cpp 
b/modules/gui/qt4/main_interface_win32.cpp
index 35a797a..61aeb9d 100644
--- a/modules/gui/qt4/main_interface_win32.cpp
+++ b/modules/gui/qt4/main_interface_win32.cpp
@@ -71,7 +71,6 @@
 
 void MainInterface::createTaskBarButtons()
 {
-taskbar_wmsg = WM_NULL;
 /*Here is the code for the taskbar thumb buttons
 FIXME:We need pretty buttons in 16x16 px that are handled correctly by 
masks in Qt
 FIXME:the play button's picture doesn't changed to pause when clicked

___
vlc-commits mailing list
vlc-commits@videolan.org
http://mailman.videolan.org/listinfo/vlc-commits


[vlc-commits] Qt: correctly behave when customizing from minimal view

2012-05-15 Thread Jean-Baptiste Kempf
vlc/vlc-2.0 | branch: master | Jean-Baptiste Kempf j...@videolan.org | Tue 
May 15 18:03:40 2012 +0200| [e14d808ef8b6468f936f0dc9416eda620459064a] | 
committer: Jean-Baptiste Kempf

Qt: correctly behave when customizing from minimal view
(cherry picked from commit 1d8fd45bfad1a91ce2a623c2a301b8115e14f05c)

Signed-off-by: Jean-Baptiste Kempf j...@videolan.org

 http://git.videolan.org/gitweb.cgi/vlc/vlc-2.0.git/?a=commit;h=e14d808ef8b6468f936f0dc9416eda620459064a
---

 modules/gui/qt4/main_interface.cpp |2 ++
 1 file changed, 2 insertions(+)

diff --git a/modules/gui/qt4/main_interface.cpp 
b/modules/gui/qt4/main_interface.cpp
index 6285502..9a44a07 100644
--- a/modules/gui/qt4/main_interface.cpp
+++ b/modules/gui/qt4/main_interface.cpp
@@ -350,6 +350,8 @@ void MainInterface::recreateToolbars()
  this, handleKeyPress( QKeyEvent * ) );
 THEMIM-requestVoutUpdate();
 }
+
+setMinimalView( b_minimalView );
 }
 
 void MainInterface::reloadPrefs()

___
vlc-commits mailing list
vlc-commits@videolan.org
http://mailman.videolan.org/listinfo/vlc-commits


[vlc-commits] upnp: fetch all media items correctly.

2012-05-15 Thread Naohiro KORIYAMA
vlc/vlc-2.0 | branch: master | Naohiro KORIYAMA nkoriy...@gmail.com | Mon Apr 
30 17:57:19 2012 +0900| [3cabdc21d79e61947800d7d7f6f729d9bdec647b] | committer: 
Jean-Baptiste Kempf

upnp: fetch all media items correctly.

Close #6716

Signed-off-by: Jean-Baptiste Kempf j...@videolan.org
(cherry picked from commit 83a9c8442f393e4ada4c0cdccfebb41b67a17851)

Signed-off-by: Jean-Baptiste Kempf j...@videolan.org

 http://git.videolan.org/gitweb.cgi/vlc/vlc-2.0.git/?a=commit;h=3cabdc21d79e61947800d7d7f6f729d9bdec647b
---

 modules/services_discovery/upnp.cpp |   87 +++
 modules/services_discovery/upnp.hpp |2 +-
 2 files changed, 78 insertions(+), 11 deletions(-)

diff --git a/modules/services_discovery/upnp.cpp 
b/modules/services_discovery/upnp.cpp
index 666eaf2..4795486 100644
--- a/modules/services_discovery/upnp.cpp
+++ b/modules/services_discovery/upnp.cpp
@@ -89,8 +89,14 @@ const char* xml_getChildElementAttributeValue( IXML_Element* 
p_parent,
 const char* psz_tag_name_,
 const char* psz_attribute_ );
 
+const char* xml_getChildElementValue( IXML_Document* p_doc,
+  const char*psz_tag_name );
+
 IXML_Document* parseBrowseResult( IXML_Document* p_doc );
 
+int parseBrowseNumberValue( IXML_Document* p_doc,
+const char*psz_tag_name );
+
 /*
  * Initializes UPNP instance.
  */
@@ -214,16 +220,16 @@ const char* xml_getChildElementAttributeValue( 
IXML_Element* p_parent,
 }
 
 /*
- * Extracts the result document from a SOAP response
+ * Returns the value of a child element, or NULL on error
  */
-IXML_Document* parseBrowseResult( IXML_Document* p_doc )
+const char* xml_getChildElementValue( IXML_Document*  p_doc,
+  const char* psz_tag_name_ )
 {
-ixmlRelaxParser( 1 );
-
 if ( !p_doc ) return 0;
+if ( !psz_tag_name_ ) return 0;
 
 IXML_NodeList* p_result_list = ixmlDocument_getElementsByTagName( p_doc,
-   Result );
+   
psz_tag_name_ );
 
 if ( !p_result_list ) return 0;
 
@@ -236,13 +242,47 @@ IXML_Document* parseBrowseResult( IXML_Document* p_doc )
 IXML_Node* p_text_node = ixmlNode_getFirstChild( p_result_node );
 if ( !p_text_node ) return 0;
 
-const char* psz_result_string = ixmlNode_getNodeValue( p_text_node );
+return ixmlNode_getNodeValue( p_text_node );
+}
+
+/*
+ * Extracts the result document from a SOAP response
+ */
+IXML_Document* parseBrowseResult( IXML_Document* p_doc )
+{
+ixmlRelaxParser( 1 );
+
+const char* psz_result_string = xml_getChildElementValue( p_doc, Result 
);
+if( !psz_result_string ) return 0;
 
 IXML_Document* p_browse_doc = ixmlParseBuffer( psz_result_string );
 
 return p_browse_doc;
 }
 
+/*
+ * Get the number value from a SOAP response
+ */
+int parseBrowseNumberValue( IXML_Document* p_doc,
+const char* psz_tag_name_ )
+{
+ixmlRelaxParser( 1 );
+
+const char* psz_number_string = xml_getChildElementValue( p_doc,
+  psz_tag_name_ );
+if( !psz_number_string ) return 0;
+
+char *psz_end;
+long l = strtol( psz_number_string, psz_end, 10 );
+if( *psz_end || l  0 || l  INT_MAX )
+{
+return 0;
+}
+else
+{
+return (int)l;
+}
+}
 
 /*
  * Handles all UPnP events
@@ -709,7 +749,7 @@ void MediaServer::fetchContents()
 
 Container* root = new Container( 0, 0, getFriendlyName() );
 
-_fetchContents( root );
+_fetchContents( root, 0 );
 
 _p_contents = root;
 _p_contents-setInputItem( _p_input_item );
@@ -720,7 +760,7 @@ void MediaServer::fetchContents()
 /*
  * Fetches and parses the UPNP response
  */
-bool MediaServer::_fetchContents( Container* p_parent )
+bool MediaServer::_fetchContents( Container* p_parent, int i_starting_index )
 {
 if (!p_parent)
 {
@@ -728,9 +768,21 @@ bool MediaServer::_fetchContents( Container* p_parent )
 return false;
 }
 
+char* psz_starting_index;
+if( asprintf( psz_starting_index, %d, i_starting_index )  0 )
+{
+msg_Err( _p_sd, asprintf error:%d, i_starting_index );
+return false;
+}
+
 IXML_Document* p_response = _browseAction( p_parent-getObjectID(),
   BrowseDirectChildren,
-  *, 0, 0,  );
+  *, /* Filter */
+  psz_starting_index, /* StartingIndex */
+  0, /* RequestedCount */
+   /* SortCriteria */
+  );
+free( psz_starting_index );
 if ( !p_response )
 {