[vlc-commits] [Git][videolan/vlc][master] 7 commits: qml: fix binding loop in BannerSources

2021-06-04 Thread Pierre Lamot


Pierre Lamot pushed to branch master at VideoLAN / VLC


Commits:
b2b2cfa8 by Prince Gupta at 2021-06-04T16:03:53+00:00
qml: fix binding loop in BannerSources

- - - - -
2e1d7e29 by Prince Gupta at 2021-06-04T16:03:53+00:00
qml: fix invalid property access in BannerSources

- - - - -
4d35747a by Prince Gupta at 2021-06-04T16:03:53+00:00
qml: fix invalid property access in ExpandGridView

- - - - -
6e65b0e3 by Prince Gupta at 2021-06-04T16:03:53+00:00
qml: fix invalid connection in MusicArtist

parentId property was removed in cd89555e27a3803fa6b485e0796d01f77ce2

- - - - -
6713884f by Prince Gupta at 2021-06-04T16:03:53+00:00
qml/Helpers: add get function

- - - - -
9f724ba5 by Prince Gupta at 2021-06-04T16:03:53+00:00
qml/AlbumExpandDelegate: fix invalid property accesses

- - - - -
73f0f9f1 by Prince Gupta at 2021-06-04T16:03:53+00:00
qml/VideoExpandDelegate: fix invalid object reference

- - - - -


6 changed files:

- modules/gui/qt/maininterface/qml/BannerSources.qml
- modules/gui/qt/medialibrary/qml/MusicAlbumsGridExpandDelegate.qml
- modules/gui/qt/medialibrary/qml/MusicArtist.qml
- modules/gui/qt/medialibrary/qml/VideoInfoExpandPanel.qml
- modules/gui/qt/util/qml/Helpers.js
- modules/gui/qt/widgets/qml/ExpandGridView.qml


Changes:

=
modules/gui/qt/maininterface/qml/BannerSources.qml
=
@@ -299,7 +299,7 @@ Widgets.NavigableFocusScope {
   - 
(VLCStyle.applicationHorizontalMargin * 2)
   - 
(VLCStyle.margin_xsmall * 2)
   - 
(VLCStyle.margin_xxsmall * 2)
-readonly property bool _alignHCenter: ((localToolbar.width 
- width) / 2) + width < playlistGroup.x
+readonly property bool _alignHCenter: ((localToolbar.width 
- contentWidth) / 2) + contentWidth < playlistGroup.x
 
 width: Math.min(contentWidth, availableWidth)
 height: VLCStyle.localToolbar_height
@@ -324,7 +324,7 @@ Widgets.NavigableFocusScope {
 focus: !!item && item.focus && item.visible
 visible: !!item
 enabled: status === Loader.Ready
-y: (VLCStyle.localToolbar_height - item.height) / 2
+y: status === Loader.Ready ? 
(VLCStyle.localToolbar_height - item.height) / 2 : 0
 width: !!item
? Helpers.clamp(localMenuView.availableWidth,

localMenuGroup.item.minimumWidth || localMenuGroup.item.implicitWidth,


=
modules/gui/qt/medialibrary/qml/MusicAlbumsGridExpandDelegate.qml
=
@@ -110,7 +110,7 @@ Widgets.NavigableFocusScope {
 height: VLCStyle.expandCover_music_height
 width: VLCStyle.expandCover_music_width
 radius: VLCStyle.expandCover_music_radius
-source: model.cover || VLCStyle.noArtAlbum
+source: Helpers.get(model, "cover", 
VLCStyle.noArtAlbum)
 }
 
 Widgets.ListCoverShadow {
@@ -207,7 +207,7 @@ Widgets.NavigableFocusScope {
 Widgets.SubtitleLabel {
 id: expand_infos_title_id
 
-text: model.title || i18n.qtr("Unknown title")
+text: Helpers.get(model, "title", i18n.qtr("Unknown 
title"))
 
 Layout.fillWidth: true
 }
@@ -229,9 +229,9 @@ Widgets.NavigableFocusScope {
 
 width: parent.width
 text: i18n.qtr("%1 - %2 - %3")
-.arg(model.main_artist || i18n.qtr("Unknown artist"))
-.arg(model.release_year || "")
-.arg(Helpers.msToString(model.duration) || "")
+.arg(Helpers.get(model, "main_artist", 
i18n.qtr("Unknown artist")))
+.arg(Helpers.get(model, "release_year", ""))
+.arg(Helpers.msToString(Helpers.get(model, "duration", 
0)))
 }
 }
 
@@ -244,7 +244,7 @@ Widgets.NavigableFocusScope {
 rowHeight: VLCStyle.tableRow_height
 headerColor: VLCStyle.colors.bgAlt
 
-parentId: root.model.id
+parentId: Helpers.get(root.model, "id")
 onParentIdChanged: {
 currentIndex = 0
 }


=
modules/gui/qt/medialibrary/qml/MusicArtist.qml
=
@@ -288,7 +288,7 @@ Widgets.NavigableFocusScope {
 model: albumModel
 
 Connections {
-target: root
+

[vlc-commits] [Git][videolan/vlc][master] 7 commits: qt: alias intf_thread_t as qt_intf_t

2021-06-04 Thread Pierre Lamot


Pierre Lamot pushed to branch master at VideoLAN / VLC


Commits:
4044fe3b by Pierre Lamot at 2021-06-04T17:00:25+02:00
qt: alias intf_thread_t as qt_intf_t

  This is a preparatory commit

- - - - -
537d41a4 by Pierre Lamot at 2021-06-04T17:00:25+02:00
qt: load Qt in a detached structure from the interface module.

  this will allow to unload the interface module without unloading Qt in a
  further patch.

  the new structure is still a vlc object as we use it notably for logging
  capacity and to interact with vlc variables

- - - - -
5897ca4d by Pierre Lamot at 2021-06-04T17:00:25+02:00
qt: move dialog file path variable from module to maininterface

  the variable was no longer initialized properly as it was stored
  in a C structure and there was no reason to store this variable in
  the module

- - - - -
ec1a1670 by Pierre Lamot at 2021-06-04T17:00:25+02:00
qt: allow passing a global vout close callback to the compositor

- - - - -
2f53abd0 by Pierre Lamot at 2021-06-04T17:00:25+02:00
qt: remove unnecessary dependency upon MainInterface from VideoWindowHandler

- - - - -
b60ad66f by Pierre Lamot at 2021-06-04T17:00:25+02:00
qt: allow to partially unload the interface

  this allows to unload the GUI part of the interface without destroying the
  windows that may still be used by the vout window part.

- - - - -
7a00ed44 by Pierre Lamot at 2021-06-04T17:00:25+02:00
qt: refcount qt interface usage across modules

  both the intf and the vout window reference the qt interface structure
  it will only be released once not used by both modules, this way the windows
  continues to exists if the interface is closed before.

  When the interface module is released before the vout window, the qml view and
  the associated resources are unloaded from the compositor.

  fix: #25600

- - - - -


30 changed files:

- modules/gui/qt/dialogs/bookmarks/bookmarks.cpp
- modules/gui/qt/dialogs/bookmarks/bookmarks.hpp
- modules/gui/qt/dialogs/dialogs/dialogmodel.cpp
- modules/gui/qt/dialogs/dialogs/dialogmodel.hpp
- modules/gui/qt/dialogs/dialogs_provider.cpp
- modules/gui/qt/dialogs/dialogs_provider.hpp
- modules/gui/qt/dialogs/epg/epg.cpp
- modules/gui/qt/dialogs/epg/epg.hpp
- modules/gui/qt/dialogs/errors/errors.cpp
- modules/gui/qt/dialogs/errors/errors.hpp
- modules/gui/qt/dialogs/extended/extended.cpp
- modules/gui/qt/dialogs/extended/extended.hpp
- modules/gui/qt/dialogs/extended/extended_panels.cpp
- modules/gui/qt/dialogs/extended/extended_panels.hpp
- modules/gui/qt/dialogs/extensions/extensions.cpp
- modules/gui/qt/dialogs/extensions/extensions.hpp
- modules/gui/qt/dialogs/extensions/extensions_manager.cpp
- modules/gui/qt/dialogs/extensions/extensions_manager.hpp
- modules/gui/qt/dialogs/fingerprint/chromaprint.cpp
- modules/gui/qt/dialogs/fingerprint/chromaprint.hpp
- modules/gui/qt/dialogs/fingerprint/fingerprintdialog.cpp
- modules/gui/qt/dialogs/fingerprint/fingerprintdialog.hpp
- modules/gui/qt/dialogs/firstrun/firstrun.cpp
- modules/gui/qt/dialogs/firstrun/firstrun.hpp
- modules/gui/qt/dialogs/gototime/gototime.cpp
- modules/gui/qt/dialogs/gototime/gototime.hpp
- modules/gui/qt/dialogs/help/help.cpp
- modules/gui/qt/dialogs/help/help.hpp
- modules/gui/qt/dialogs/mediainfo/info_panels.cpp
- modules/gui/qt/dialogs/mediainfo/info_panels.hpp


The diff was not included because it is too large.


View it on GitLab: 
https://code.videolan.org/videolan/vlc/-/compare/3b833f09b54d463335734e571ea95692914a7b8a...7a00ed44fbe19c92778f6beb2ebfc5b5172bde16

-- 
View it on GitLab: 
https://code.videolan.org/videolan/vlc/-/compare/3b833f09b54d463335734e571ea95692914a7b8a...7a00ed44fbe19c92778f6beb2ebfc5b5172bde16
You're receiving this email because of your account on code.videolan.org.


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

[vlc-commits] [Git][videolan/vlc][master] 4 commits: libvlc-module: Remove trailing whitespace

2021-06-04 Thread Hugo Beauzée-Luyssen


Hugo Beauzée-Luyssen pushed to branch master at VideoLAN / VLC


Commits:
48e6a427 by Hugo Beauzée-Luyssen at 2021-06-04T13:44:01+00:00
libvlc-module: Remove trailing whitespace

- - - - -
a170af4a by Hugo Beauzée-Luyssen at 2021-06-04T13:44:01+00:00
libvlc-module: Clarify restore-playback-pos option

- - - - -
4df0bd1d by Hugo Beauzée-Luyssen at 2021-06-04T13:44:01+00:00
qt: prefs: Expose restore-playback-pos instead of qt-continue

- - - - -
3b833f09 by Hugo Beauzée-Luyssen at 2021-06-04T13:44:01+00:00
qt: Deprecate qt-continue option

- - - - -


3 changed files:

- modules/gui/qt/dialogs/preferences/simple_preferences.cpp
- modules/gui/qt/qt.cpp
- src/libvlc-module.c


Changes:

=
modules/gui/qt/dialogs/preferences/simple_preferences.cpp
=
@@ -928,7 +928,7 @@ SPrefsPanel::SPrefsPanel( intf_thread_t *_p_intf, QWidget 
*_parent,
  ui.recentlyPlayedFilters, setEnabled( bool ) );
 ui.recentlyPlayedFilters->setEnabled( false );
 CONFIG_BOOL( "qt-recentplay", saveRecentlyPlayed );
-CONFIG_GENERIC( "qt-continue", IntegerList, 
ui.continuePlaybackLabel, continuePlaybackComboBox );
+CONFIG_GENERIC( "restore-playback-pos", IntegerList, 
ui.continuePlaybackLabel, continuePlaybackComboBox );
 CONFIG_GENERIC( "qt-recentplay-filter", String, ui.filterLabel,
 recentlyPlayedFilters );
 CONFIG_GENERIC( "qt-auto-raise", IntegerList, ui.autoRaiseLabel, 
autoRaiseComboBox );


=
modules/gui/qt/qt.cpp
=
@@ -241,20 +241,12 @@ static void ShowDialog   ( intf_thread_t *, int, int, 
intf_dialog_args_t * );
 
 #define FULLSCREEN_CONTROL_PIXELS N_( "Fullscreen controller mouse 
sensitivity" )
 
-#define CONTINUE_PLAYBACK_TEXT N_("Continue playback?")
-
 static const int i_notification_list[] =
 { NOTIFICATION_NEVER, NOTIFICATION_MINIMIZED, NOTIFICATION_ALWAYS };
 
 static const char *const psz_notification_list_text[] =
 { N_("Never"), N_("When minimized"), N_("Always") };
 
-static const int i_continue_list[] =
-{ 0, 1, 2 };
-
-static const char *const psz_continue_list_text[] =
-{ N_("Never"), N_("Ask"), N_("Always") };
-
 static const int i_raise_list[] =
 { MainInterface::RAISE_NEVER, MainInterface::RAISE_VIDEO, \
   MainInterface::RAISE_AUDIO, MainInterface::RAISE_AUDIOVIDEO,  };
@@ -310,8 +302,7 @@ vlc_module_begin ()
   nullptr, false )
 add_string( "qt-recentplay-filter", "",
 RECENTPLAY_FILTER_TEXT, RECENTPLAY_FILTER_LONGTEXT, false )
-add_integer( "qt-continue", 1, CONTINUE_PLAYBACK_TEXT, nullptr, false )
-change_integer_list(i_continue_list, psz_continue_list_text )
+add_obsolete_integer( "qt-continue" )
 
 #ifdef UPDATE_CHECK
 add_bool( "qt-updates-notif", true, UPDATER_TEXT,


=
src/libvlc-module.c
=
@@ -199,7 +199,7 @@ static const char *const ppsz_stereo_mode_texts[] = { 
N_("Unset"),
 };
 
 #define MIX_MODE_TEXT N_("Audio mix mode")
-static const int pi_mix_mode_values[] = { 
+static const int pi_mix_mode_values[] = {
 AOUT_MIX_MODE_UNSET, AOUT_MIX_MODE_STEREO, AOUT_MIX_MODE_BINAURAL,
 AOUT_MIX_MODE_4_0, AOUT_MIX_MODE_5_1, AOUT_MIX_MODE_7_1,
 };
@@ -706,7 +706,20 @@ static const char *const ppsz_prefres[] = {
 "the form \"{name=bookmark-name,time=optional-time-offset," \
 "bytes=optional-byte-offset},{...}\"")
 
-#define RESTORE_PLAYBACK_POS_TEXT N_("Continue playback?")
+#define RESTORE_PLAYBACK_POS_TEXT N_("Continue playback")
+#define RESTORE_PLAYBACK_POS_LONGTEXT N_("Should the playback resume where " \
+"it was left off?")
+
+static const int pi_restore_playback_values[] = {
+VLC_PLAYER_RESTORE_PLAYBACK_POS_NEVER,
+VLC_PLAYER_RESTORE_PLAYBACK_POS_ASK,
+VLC_PLAYER_RESTORE_PLAYBACK_POS_ALWAYS
+};
+static const char* const ppsz_restore_playback_desc[] = {
+N_( "Never resume playback where it was left off" ),
+N_( "Ask when the playback starts" ),
+N_( "Always resume playback where it was left off" ),
+};
 
 #define RESTORE_PLAYBACK_STATE_TEXT N_("Resume last playback states")
 #define RESTORE_PLAYBACK_STATE_LONGTEXT N_("This will resume the last playback 
" \
@@ -1851,7 +1864,9 @@ vlc_module_begin ()
 change_safe ()
 
 add_integer( "restore-playback-pos", VLC_PLAYER_RESTORE_PLAYBACK_POS_ASK,
- RESTORE_PLAYBACK_POS_TEXT, NULL, false )
+ RESTORE_PLAYBACK_POS_TEXT, RESTORE_PLAYBACK_POS_LONGTEXT, 
false )
+change_integer_list( pi_restore_playback_values, 
ppsz_restore_playback_desc );
+
 add_bool( "restore-playback-states", false,
  RESTORE_PLAYBACK_STATE_TEXT, RESTORE_PLAYBACK_STATE_LONGTEXT, 
false )
 



View it on GitLab: 

[vlc-commits] [Git][videolan/vlc][master] 10 commits: libplacebo: add new color primaries enum members

2021-06-04 Thread Alexandre Janniaux


Alexandre Janniaux pushed to branch master at VideoLAN / VLC


Commits:
ccad653c by Niklas Haas at 2021-06-04T10:37:08+00:00
libplacebo: add new color primaries enum members

Not really that important or useful, but theyre supported upstream so
theres also no real reason not to expose them.

- - - - -
ca206a51 by Niklas Haas at 2021-06-04T10:37:08+00:00
libplacebo: add support for BT.2390 EETF

This has already been the default in most libplacebo versions, in that
`pl_color_map_default_params.tone_mapping_algo` was equal to this value.
Despite this, it was never exposed in the UI, meaning users could not
actually manually select it.

Update the string to make it clear that this is the intended/recommended
default.

- - - - -
31351641 by Niklas Haas at 2021-06-04T10:37:08+00:00
libplacebo: add colorimetric gamut clipping option

New upstream feature. Simply needs to be exposed in the UI.

- - - - -
231ea4de by Niklas Haas at 2021-06-04T10:37:08+00:00
libplacebo: remove unneeded counter field

This field was left-over from an early API design, and never used for
anything in libplacebo. Recent versions have since deprecated it.

- - - - -
fe6ec4ce by Niklas Haas at 2021-06-04T10:37:08+00:00
libplacebo: rewrite picture placement logic

Recent versions of libplacebo use `pl_frame.crop` instead of
`pl_render_target.dst_rect`, for which the latter is now merely a
fallback.

Unfortunately, `pl_render_target_from_swapchain` ends up setting the
former field to values based on the swapchain dimensions, so the values
we set in `dst_rect` accidentally ended up ignored. In retrospect, this
was caused by the upstream decision to make the new field override the
old field if both are present, and having that logic the other way
around would also have avoided this bug. Bite the bullet and make it
conditional on the PL_API_VER.

All that said - merely fixing this bug, however, exposed serious
shortcomings in the video placement logic, in particular the lack of
proper flipping support for OpenGL. Fix it by rewriting the video
placement logic completely, based on the observation that
`vout_display_PlacePicture` is a relatively cheap function to call.
Theres no need to awkwardly cache it inside `sys`.

- - - - -
e4a584e3 by Niklas Haas at 2021-06-04T10:37:08+00:00
libplacebo: fix use-after-free on uninit

`pl-ops-close` destroys the GPU instance, after which the swapchain is
undefined. Fix it by moving the swapchain destruction to `ops-close`
itself, where it can be done in the correct order.

(This also fixes a bug where, technically, the opengl instance attempted
destroying the swapchain while the context was not current on the
thread)

- - - - -
fb4e794c by Niklas Haas at 2021-06-04T10:37:08+00:00
opengl: drop redundant code path

This is redundant with the minimum version requirement being 1.7.

I sure cant wait until the next bump up to 1.29.0. All these ifdefs
keep reminding me of my failure to design a good API on my first try.

- - - - -
71a72062 by Niklas Haas at 2021-06-04T10:37:08+00:00
libplacebo: remove trailing \

Cosmetic. Side note: I really, *really* hope this commit title breaks
something, somewhere.

- - - - -
7de45dac by Niklas Haas at 2021-06-04T10:37:08+00:00
libplacebo: add support for custom LUTs

Unfortunately the UI for loading these is a bit clunky as theyre hidden
behind so many layers of menu and advanced options, plus the fact that
the new LUTs still only get applied on vout reinit.

But its still a feature that a lot of users have requested heavily, so
supporting them at all is a good thing. The implementation is rather
straightforward even though the amount of #ifdefs are really getting on
my nerves.

Can somebody just time travel me into a future universe in which I can
make libplacebo v4 the minimum dependency?

- - - - -
db6f8b7c by Niklas Haas at 2021-06-04T10:37:08+00:00
libplacebo: add support for custom shaders

Its finally time to use RAVU/FSRCNN(X)/NNEDI3/Anime4K in VLC.

Currently limited to only one shader, which isnt a huge limitation
seeing as you can just `cat` together as many shaders as you want to use
into one big file. But patches welcome(tm).

- - - - -


6 changed files:

- modules/video_output/libplacebo/display.c
- modules/video_output/libplacebo/instance.c
- modules/video_output/libplacebo/instance_opengl.c
- modules/video_output/libplacebo/instance_vulkan.c
- modules/video_output/libplacebo/utils.h
- modules/video_output/opengl/sampler.c


Changes:

=
modules/video_output/libplacebo/display.c
=
@@ -30,6 +30,7 @@
 #include 
 #include 
 #include 
+#include 
 
 #include "utils.h"
 #include "instance.h"
@@ -38,6 +39,10 @@
 #include 
 #include 
 
+#if PL_API_VER >= 113
+# include 
+#endif
+
 struct vout_display_sys_t
 {
 vlc_placebo_t *pl;
@@ -49,10 +54,6 @@ struct vout_display_sys_t
 const struct pl_tex **overlay_tex;
 int num_overlays;
 
-// Dynamic during rendering
-

[vlc-commits] [Git][videolan/vlc][master] qml:previous button related fixes

2021-06-04 Thread Hugo Beauzée-Luyssen


Hugo Beauzée-Luyssen pushed to branch master at VideoLAN / VLC


Commits:
851d7f33 by Huang Jie at 2021-06-04T09:48:06+00:00
qml:previous button related fixes

fixes #25780

- - - - -


1 changed file:

- modules/gui/qt/maininterface/qml/MainInterface.qml


Changes:

=
modules/gui/qt/maininterface/qml/MainInterface.qml
=
@@ -93,15 +93,14 @@ Rectangle {
 
 function setInitialView() {
 //set the initial view
-if (!mainPlaylistController.empty)
-history.push(["player"])
+var loadPlayer = !mainPlaylistController.empty;
+if (medialib)
+history.push(["mc", "video"], loadPlayer ? History.Stay : 
History.Go)
 else
-{
-if (medialib)
-history.push(["mc", "video"])
-else
-history.push(["mc", "home"])
-}
+history.push(["mc", "home"], loadPlayer ? History.Stay : 
History.Go)
+
+if (loadPlayer)
+history.push(["player"])
 }
 
 



View it on GitLab: 
https://code.videolan.org/videolan/vlc/-/commit/851d7f33234385a6879cb5d45b6c57d6a34a0cda

-- 
View it on GitLab: 
https://code.videolan.org/videolan/vlc/-/commit/851d7f33234385a6879cb5d45b6c57d6a34a0cda
You're receiving this email because of your account on code.videolan.org.


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

[vlc-commits] [Git][videolan/vlc][master] ftp: Fix typo: connexion => connection

2021-06-04 Thread Hugo Beauzée-Luyssen


Hugo Beauzée-Luyssen pushed to branch master at VideoLAN / VLC


Commits:
215f04e9 by Yaron Shahrabani at 2021-06-04T09:46:49+00:00
ftp: Fix typo: connexion = connection

- - - - -


2 changed files:

- modules/access/ftp.c
- modules/access/sftp.c


Changes:

=
modules/access/ftp.c
=
@@ -77,7 +77,7 @@ static void OutClose( vlc_object_t * );
 
 #define LOGIN_DIALOG_TITLE _("FTP authentication")
 #define LOGIN_DIALOG_TEXT _("Please enter a valid login and password for " \
-"the ftp connexion to %s")
+"the FTP connection to %s")
 
 vlc_module_begin ()
 set_shortname( "FTP" )


=
modules/access/sftp.c
=
@@ -420,7 +420,7 @@ static int Open( vlc_object_t* p_this )
 } while( vlc_credential_get( , p_access, "sftp-user", 
"sftp-pwd",
 _("SFTP authentication"),
 _("Please enter a valid login and password for 
"
-"the sftp connexion to %s"), url.psz_host ) );
+"the SFTP connection to %s"), url.psz_host ) );
 
 /* Create the sftp session */
 p_sys->sftp_session = libssh2_sftp_init( p_sys->ssh_session );



View it on GitLab: 
https://code.videolan.org/videolan/vlc/-/commit/215f04e9edcc87cdc51bb693172e1dd7cb99f24e

-- 
View it on GitLab: 
https://code.videolan.org/videolan/vlc/-/commit/215f04e9edcc87cdc51bb693172e1dd7cb99f24e
You're receiving this email because of your account on code.videolan.org.


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

[vlc-commits] [Git][videolan/vlc][master] qml: reset to last subcategory of the views

2021-06-04 Thread Hugo Beauzée-Luyssen


Hugo Beauzée-Luyssen pushed to branch master at VideoLAN / VLC


Commits:
9181dc49 by Prince Gupta at 2021-06-04T08:38:27+00:00
qml: reset to last subcategory of the views

closes #25581

- - - - -


1 changed file:

- modules/gui/qt/maininterface/qml/MainDisplay.qml


Changes:

=
modules/gui/qt/maininterface/qml/MainDisplay.qml
=
@@ -39,9 +39,10 @@ Widgets.NavigableFocusScope {
 property alias g_mainDisplay: root
 property bool _inhibitMiniPlayer: false
 property bool _showMiniPlayer: false
+property var _defaultPages: ({}) // saves last page of view
 
 onViewChanged: {
-viewProperties = ({})
+viewProperties = _defaultPages[root.view] !== undefined ? 
({"defaultPage": _defaultPages[root.view]}) : ({})
 loadView()
 }
 onViewPropertiesChanged: loadView()
@@ -54,6 +55,8 @@ Widgets.NavigableFocusScope {
 
 function loadView() {
 var found = stackView.loadView(root.pageModel, root.view, 
root.viewProperties)
+if (stackView.currentItem.view !== undefined)
+_defaultPages[root.view] = stackView.currentItem.view
 
 stackView.currentItem.navigationParent = medialibId
 stackView.currentItem.navigationUpItem = sourcesBanner



View it on GitLab: 
https://code.videolan.org/videolan/vlc/-/commit/9181dc49ad7ad9a182a777ef431b5e8c5c936f96

-- 
View it on GitLab: 
https://code.videolan.org/videolan/vlc/-/commit/9181dc49ad7ad9a182a777ef431b5e8c5c936f96
You're receiving this email because of your account on code.videolan.org.


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

[vlc-commits] [Git][videolan/vlc][master] qml: fix segmentation fault on component destruction

2021-06-04 Thread Hugo Beauzée-Luyssen


Hugo Beauzée-Luyssen pushed to branch master at VideoLAN / VLC


Commits:
f3e0752f by Fatih Uzunoglu at 2021-06-04T08:05:30+00:00
qml: fix segmentation fault on component destruction

intends to be a temporary solution for #25599, #25776.

- - - - -


1 changed file:

- modules/gui/qt/widgets/qml/KeyNavigableTableView.qml


Changes:

=
modules/gui/qt/widgets/qml/KeyNavigableTableView.qml
=
@@ -95,6 +95,35 @@ NavigableFocusScope {
 
 Accessible.role: Accessible.Table
 
+function _qtAvoidSectionUpdate() {
+// Qt SEG. FAULT WORKAROUND
+
+// There exists a Qt bug that tries to access null
+// pointer while updating sections. Qt does not
+// check if 
`QQmlEngine::contextForObject(sectionItem)->parentContext()`
+// is null and when it's null which might be the case for
+// views during destruction it causes segmentation fault.
+
+// As a workaround, when section delegate is set to null
+// during destruction, Qt does not proceed with updating
+// the sections so null pointer access is avoided. Updating
+// sections during destruction should not make sense anyway.
+
+// Setting section delegate to null seems to has no
+// negative impact and safely could be used as a fix.
+// However, the problem lying beneath prevails and
+// should be taken care of sooner than later.
+
+// Affected Qt versions are 5.11.3, and 5.15.2 (not
+// limited).
+
+section.delegate = null
+}
+
+Component.onDestruction: {
+_qtAvoidSectionUpdate()
+}
+
 function positionViewAtIndex(index, mode) {
 view.positionViewAtIndex(index, mode)
 }



View it on GitLab: 
https://code.videolan.org/videolan/vlc/-/commit/f3e0752f50652e3af7b40ed35978b9a4d457c2f5

-- 
View it on GitLab: 
https://code.videolan.org/videolan/vlc/-/commit/f3e0752f50652e3af7b40ed35978b9a4d457c2f5
You're receiving this email because of your account on code.videolan.org.


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

[vlc-commits] [Git][videolan/vlc][master] demux: hls: don't add empty attributes

2021-06-04 Thread François Cartegnie


François Cartegnie pushed to branch master at VideoLAN / VLC


Commits:
a8f165a0 by Francois Cartegnie at 2021-06-04T07:29:45+00:00
demux: hls: dont add empty attributes

- - - - -


1 changed file:

- modules/demux/hls/playlist/Tags.cpp


Changes:

=
modules/demux/hls/playlist/Tags.cpp
=
@@ -261,9 +261,12 @@ void AttributesTag::parseAttributes(const std::string 
)
 std::string attrvalue = oss.str();
 oss.str("");
 
-Attribute *attribute = new (std::nothrow) Attribute(attrname, 
attrvalue);
-if(attribute)
-attributes.push_back(attribute);
+if(!attrname.empty())
+{
+Attribute *attribute = new (std::nothrow) Attribute(attrname, 
attrvalue);
+if(attribute)
+attributes.push_back(attribute);
+}
 }
 }
 



View it on GitLab: 
https://code.videolan.org/videolan/vlc/-/commit/a8f165a0cbf75405e0b802cf2d73d5dc4642688d

-- 
View it on GitLab: 
https://code.videolan.org/videolan/vlc/-/commit/a8f165a0cbf75405e0b802cf2d73d5dc4642688d
You're receiving this email because of your account on code.videolan.org.


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

[vlc-commits] [Git][videolan/vlc][master] configure: remove redundant PIE flags for sanitizers

2021-06-04 Thread Hugo Beauzée-Luyssen


Hugo Beauzée-Luyssen pushed to branch master at VideoLAN / VLC


Commits:
8d47e5a8 by Marvin Scholz at 2021-06-04T07:12:50+00:00
configure: remove redundant PIE flags for sanitizers

As per the Clang documentation, some sanitizers
only work with position independent executables,
so it is implied already by the sanitizer flag:

 Non-position-independent executables are not supported.
 Therefore, the fsanitize=thread flag will cause Clang
 to act as though the -fPIE flag had been supplied if
 compiling without -fPIC, and as though the -pie flag
 had been supplied if linking an executable.

https://clang.llvm.org/docs/ThreadSanitizer.html#limitations

- - - - -


1 changed file:

- configure.ac


Changes:

=
configure.ac
=
@@ -1183,14 +1183,6 @@ AS_VAR_IF(with_sanitizer, no, [], [
AX_APPEND_COMPILE_FLAGS([-fsanitize-address-use-after-scope 
-fno-omit-frame-pointer -fsanitize=pointer-compare -fsanitize=pointer-subtract])
AX_APPEND_COMPILE_FLAGS([-fsanitize-address-use-after-scope 
-fno-omit-frame-pointer -fsanitize=pointer-compare 
-fsanitize=pointer-subtract], [CXXFLAGS])
 ])
-AS_IF([test -z "${with_sanitizer##*memory*}" ], [
-AX_APPEND_COMPILE_FLAGS([-fPIE -pie])
-AX_APPEND_COMPILE_FLAGS([-fPIE -pie], [CXXFLAGS])
-])
-AS_IF([test -z "${with_sanitizer##*thread*}" ], [
-AX_APPEND_COMPILE_FLAGS([-fPIE -pie])
-AX_APPEND_COMPILE_FLAGS([-fPIE -pie], [CXXFLAGS])
-])
 ])
 
 dnl



View it on GitLab: 
https://code.videolan.org/videolan/vlc/-/commit/8d47e5a8bad83ba567668f9f2c37a16b05e19faf

-- 
View it on GitLab: 
https://code.videolan.org/videolan/vlc/-/commit/8d47e5a8bad83ba567668f9f2c37a16b05e19faf
You're receiving this email because of your account on code.videolan.org.


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