File tree 2 files changed +13
-16
lines changed
2 files changed +13
-16
lines changed Original file line number Diff line number Diff line change @@ -108,6 +108,7 @@ class FileBrowserTreeWidget : public QTreeWidget
108
108
void keyPressEvent ( QKeyEvent * ke ) override ;
109
109
void keyReleaseEvent ( QKeyEvent * ke ) override ;
110
110
void hideEvent ( QHideEvent * he ) override ;
111
+ void focusOutEvent ( QFocusEvent * fe ) override ;
111
112
112
113
113
114
private:
Original file line number Diff line number Diff line change @@ -433,6 +433,16 @@ void FileBrowserTreeWidget::hideEvent(QHideEvent* he)
433
433
434
434
435
435
436
+ void FileBrowserTreeWidget::focusOutEvent (QFocusEvent* fe)
437
+ {
438
+ // Cancel previews when the user clicks outside the browser
439
+ stopPreview ();
440
+ QTreeWidget::focusOutEvent (fe);
441
+ }
442
+
443
+
444
+
445
+
436
446
void FileBrowserTreeWidget::contextMenuEvent (QContextMenuEvent * e )
437
447
{
438
448
FileItem * file = dynamic_cast <FileItem *>( itemAt ( e->pos () ) );
@@ -674,22 +684,8 @@ void FileBrowserTreeWidget::mouseReleaseEvent(QMouseEvent * me )
674
684
675
685
QMutexLocker previewLocker (&m_pphMutex);
676
686
677
- if (m_previewPlayHandle != nullptr )
678
- {
679
- // If less than 3 seconds remain of the sample, we don't
680
- // stop them if the user releases mouse-button...
681
- if (m_previewPlayHandle->type () == PlayHandle::TypeSamplePlayHandle)
682
- {
683
- SamplePlayHandle* s = dynamic_cast <SamplePlayHandle*>(m_previewPlayHandle);
684
- auto second = static_cast <f_cnt_t >(Engine::mixer ()->processingSampleRate ());
685
- if (s && s->totalFrames () - s->framesDone () <= second * 3 )
686
- {
687
- s->setDoneMayReturnTrue (true );
688
- }
689
- else { stopPreview (); }
690
- }
691
- else { stopPreview (); }
692
- }
687
+ // TODO: User setting to allow samples to play until completion instead
688
+ if (m_previewPlayHandle != nullptr ) { stopPreview (); }
693
689
}
694
690
695
691
You can’t perform that action at this time.
0 commit comments