X-Git-Url: http://git.cinelerra-gg.org/git/?a=blobdiff_plain;f=cinelerra-5.1%2Fcinelerra%2Fawindowgui.C;h=e3271ccdbd456c8a65b8ecc8d4ac0f46457fb628;hb=219e9cae947fc9454f65c210d600800158d798fb;hp=2d7191e82015d511e26241d6f905ce285e3f4b8d;hpb=5ac2037d8e5ab71a1915389cd08b458cfb60d64f;p=goodguy%2Fhistory.git diff --git a/cinelerra-5.1/cinelerra/awindowgui.C b/cinelerra-5.1/cinelerra/awindowgui.C index 2d7191e8..e3271ccd 100644 --- a/cinelerra-5.1/cinelerra/awindowgui.C +++ b/cinelerra-5.1/cinelerra/awindowgui.C @@ -1699,8 +1699,12 @@ EDL *AWindowGUI::collect_proxy(Indexable *indexable) proxy_edl->session->audio_tracks = unproxy_asset->channels; proxy_edl->create_default_tracks(); double length = proxy_asset->frame_rate > 0 ? - (double)proxy_asset->video_length / proxy_asset->frame_rate : - 1.0 / mwindow->edl->session->frame_rate; + ( proxy_asset->video_length >= 0 ? + ( proxy_asset->video_length / proxy_asset->frame_rate ) : + ( proxy_edl->session->si_useduration ? + proxy_edl->session->si_duration : + 1.0 / proxy_asset->frame_rate ) ) : + 1.0 / proxy_edl->session->frame_rate; Track *current = proxy_edl->tracks->first; for( int vtrack=0; current; current=NEXT ) { if( current->data_type != TRACK_VIDEO ) continue; @@ -2088,7 +2092,7 @@ int AWindowFolders::drag_stop() ArrayList *drags = folder->is_clips ? ((ArrayList *)mwindow->session->drag_clips) : ((ArrayList *)mwindow->session->drag_assets); - if( folder && drags && !folder->add_patterns(drags) ) + if( folder && drags && !folder->add_patterns(drags, shift_down()) ) flicker(1,30); mwindow->session->current_operation = ::NO_OPERATION; result = 1; @@ -2243,7 +2247,6 @@ int AWindowAssets::selection_changed() VIcon *vicon = 0; if( !gui->vicon_thread->vicon ) { vicon = item->vicon; - deactivate_selection(); } gui->vicon_thread->set_view_popup(vicon); }