mirror of
https://github.com/Ardour/ardour.git
synced 2026-01-03 20:29:35 +01:00
make drop_paths() run in an idle handler on OS X to deal with the current DnD handling there. still need to fix drop_regions() to do the same
git-svn-id: svn://localhost/ardour2/branches/2.0-ongoing@4130 d708f5d6-7413-0410-9779-e7cbd77b26cf
This commit is contained in:
parent
1082218dfa
commit
95a59536a7
3 changed files with 37 additions and 9 deletions
|
|
@ -1162,6 +1162,20 @@ class Editor : public PublicEditor
|
|||
|
||||
void bring_in_external_audio (Editing::ImportMode mode, nframes64_t& pos);
|
||||
|
||||
bool idle_drop_paths (const Glib::RefPtr<Gdk::DragContext>& context,
|
||||
gint x,
|
||||
gint y,
|
||||
const Gtk::SelectionData& data,
|
||||
guint info,
|
||||
guint time);
|
||||
|
||||
void _drop_paths (const Glib::RefPtr<Gdk::DragContext>& context,
|
||||
gint x,
|
||||
gint y,
|
||||
const Gtk::SelectionData& data,
|
||||
guint info,
|
||||
guint time);
|
||||
|
||||
void _do_import (vector<Glib::ustring> paths, Editing::ImportDisposition, Editing::ImportMode mode, ARDOUR::SrcQuality, nframes64_t&);
|
||||
void do_import (vector<Glib::ustring> paths, Editing::ImportDisposition, Editing::ImportMode mode, ARDOUR::SrcQuality, nframes64_t&);
|
||||
bool idle_do_import (vector<Glib::ustring> paths, Editing::ImportDisposition, Editing::ImportMode mode, ARDOUR::SrcQuality, nframes64_t&);
|
||||
|
|
@ -1883,7 +1897,6 @@ public:
|
|||
guint info,
|
||||
guint time);
|
||||
|
||||
|
||||
void drop_paths (const Glib::RefPtr<Gdk::DragContext>& context,
|
||||
gint x,
|
||||
gint y,
|
||||
|
|
|
|||
|
|
@ -291,11 +291,7 @@ Editor::idle_do_import (vector<ustring> paths, ImportDisposition chns, ImportMod
|
|||
void
|
||||
Editor::do_import (vector<ustring> paths, ImportDisposition chns, ImportMode mode, SrcQuality quality, nframes64_t& pos)
|
||||
{
|
||||
#ifdef GTKOSX
|
||||
Glib::signal_idle().connect (bind (mem_fun (*this, &Editor::idle_do_import), paths, chns, mode, quality, pos));
|
||||
#else
|
||||
_do_import (paths, chns, mode, quality, pos);
|
||||
#endif
|
||||
}
|
||||
|
||||
void
|
||||
|
|
@ -424,11 +420,7 @@ Editor::idle_do_embed (vector<ustring> paths, ImportDisposition chns, ImportMode
|
|||
void
|
||||
Editor::do_embed (vector<ustring> paths, ImportDisposition chns, ImportMode mode, nframes64_t& pos)
|
||||
{
|
||||
#ifdef GTKOSX
|
||||
Glib::signal_idle().connect (bind (mem_fun (*this, &Editor::idle_do_embed), paths, chns, mode, pos));
|
||||
#else
|
||||
_do_embed (paths, chns, mode, pos);
|
||||
#endif
|
||||
}
|
||||
|
||||
void
|
||||
|
|
|
|||
|
|
@ -456,11 +456,34 @@ Editor::track_canvas_drag_data_received (const RefPtr<Gdk::DragContext>& context
|
|||
}
|
||||
}
|
||||
|
||||
bool
|
||||
Editor::idle_drop_paths (const RefPtr<Gdk::DragContext>& context,
|
||||
int x, int y,
|
||||
const SelectionData& data,
|
||||
guint info, guint time)
|
||||
{
|
||||
_drop_paths (context, x, y, data, info, time);
|
||||
return false;
|
||||
}
|
||||
|
||||
void
|
||||
Editor::drop_paths (const RefPtr<Gdk::DragContext>& context,
|
||||
int x, int y,
|
||||
const SelectionData& data,
|
||||
guint info, guint time)
|
||||
{
|
||||
#ifdef GTKOSX
|
||||
Glib::signal_idle().connect (bind (mem_fun (*this, &Editor::idle_drop_paths), context, x, y, data, info, time));
|
||||
#else
|
||||
_drop_paths (context, x, y, data, info, time);
|
||||
#endif
|
||||
}
|
||||
|
||||
void
|
||||
Editor::_drop_paths (const RefPtr<Gdk::DragContext>& context,
|
||||
int x, int y,
|
||||
const SelectionData& data,
|
||||
guint info, guint time)
|
||||
{
|
||||
TimeAxisView* tvp;
|
||||
AudioTimeAxisView* tv;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue