[vlc-commits] [Git][videolan/vlc][master] Qt: Prevent buffering display when seeking by adding timeout
    Steve Lhomme (@robUx4) 
    gitlab at videolan.org
       
    Fri Mar 14 12:20:30 UTC 2025
    
    
  
Steve Lhomme pushed to branch master at VideoLAN / VLC
Commits:
c30670ce by Ujjawal Kumar at 2025-03-14T11:58:47+00:00
Qt: Prevent buffering display when seeking by adding timeout
- - - - -
1 changed file:
- modules/gui/qt/player/qml/SliderBar.qml
Changes:
=====================================
modules/gui/qt/player/qml/SliderBar.qml
=====================================
@@ -394,12 +394,36 @@ T.ProgressBar {
             property int bufferAnimPosition: 0
             property int bufferFrames: 1000
             property alias animateLoading: loadingAnim.running
+            property bool display: false
+            property bool buffering: Player.buffering > 0 && Player.buffering < 1
 
             height: control.barHeight
             opacity: 0.4
             color: theme.fg.neutral //FIXME buffer color ?
             radius: control.barHeight
 
+            Timer {
+                id: bufferingTimer
+                interval: VLCStyle.humanMoment
+                repeat: false
+                running: false
+                onTriggered: {
+                    bufferRect.display = true
+                }
+            }
+
+            onBufferingChanged: {
+                if(buffering)
+                {
+                    bufferingTimer.start()
+                }
+                else
+                {
+                    bufferingTimer.stop()
+                    bufferRect.display = false
+                }
+            }
+
             states: [
                 State {
                     name: "hidden"
@@ -425,7 +449,7 @@ T.ProgressBar {
                 },
                 State {
                     name: "time to start playing known"
-                    when: control.visible && Player.buffering < 1
+                    when: control.visible && bufferRect.display
                     PropertyChanges {
                         target: bufferRect
                         width: Player.buffering * parent.width
@@ -436,7 +460,7 @@ T.ProgressBar {
                 },
                 State {
                     name: "playing from buffer"
-                    when: control.visible && Player.buffering === 1
+                    when: control.visible && !bufferRect.display
                     PropertyChanges {
                         target: bufferRect
                         width: Player.buffering * parent.width
View it on GitLab: https://code.videolan.org/videolan/vlc/-/commit/c30670ce0a7ce8f2c3900ac72251e173b59afeae
-- 
View it on GitLab: https://code.videolan.org/videolan/vlc/-/commit/c30670ce0a7ce8f2c3900ac72251e173b59afeae
You're receiving this email because of your account on code.videolan.org.
VideoLAN code repository instance
    
    
More information about the vlc-commits
mailing list