[vlc-commits] Qt: main_interface: fix showTab(oldwidget) for undocked playlist (fix #6794 )
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
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
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)
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
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
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
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
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.
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
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
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
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
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
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
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
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
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()
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
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
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
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
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
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
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
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.
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 ) {