window delete/hide is managed by WMProxy (amend to cb6f16ac)

This commit is contained in:
Robin Gareus 2013-07-07 22:24:15 +02:00
parent 2b0fef5933
commit 07be5beee7
11 changed files with 13 additions and 25 deletions

View File

@ -84,7 +84,6 @@ ArdourWindow::on_unmap ()
bool
ArdourWindow::on_delete_event (GdkEventAny*)
{
hide ();
return false;
}

View File

@ -235,8 +235,7 @@ bool
IOSelectorWindow::wm_delete (GdkEventAny* /*event*/)
{
_selector.Finished (IOSelector::Accepted);
hide ();
return true;
return false;
}

View File

@ -1165,8 +1165,7 @@ LocationUIWindow::on_map ()
bool
LocationUIWindow::on_delete_event (GdkEventAny*)
{
hide ();
return true;
return false;
}
void

View File

@ -148,7 +148,6 @@ PluginUIWindow::PluginUIWindow (
set_name ("PluginEditor");
add_events (Gdk::KEY_PRESS_MASK|Gdk::KEY_RELEASE_MASK|Gdk::BUTTON_PRESS_MASK|Gdk::BUTTON_RELEASE_MASK);
signal_delete_event().connect (sigc::bind (sigc::ptr_fun (just_hide_it), reinterpret_cast<Window*> (this)), false);
insert->DropReferences.connect (death_connection, invalidator (*this), boost::bind (&PluginUIWindow::plugin_going_away, this), gui_context());
gint h = _pluginui->get_preferred_height ();

View File

@ -184,7 +184,7 @@ bool
PortInsertWindow::wm_delete (GdkEventAny* /*event*/)
{
accept ();
return true;
return false;
}
void

View File

@ -161,7 +161,6 @@ RegionEditor::RegionEditor (Session* s, boost::shared_ptr<Region> r)
set_name ("RegionEditorWindow");
add_events (Gdk::KEY_PRESS_MASK|Gdk::KEY_RELEASE_MASK);
signal_delete_event().connect (sigc::bind (sigc::ptr_fun (just_hide_it), static_cast<Window *> (this)));
signal_response().connect (sigc::mem_fun (*this, &RegionEditor::handle_response));
set_title (string_compose (_("Region '%1'"), _region->name()));

View File

@ -111,7 +111,6 @@ ReturnUIWindow::ReturnUIWindow (boost::shared_ptr<Return> r, ARDOUR::Session* s)
set_name ("ReturnUIWindow");
r->DropReferences.connect (going_away_connection, invalidator (*this), boost::bind (&ReturnUIWindow::return_going_away, this), gui_context());
signal_delete_event().connect (sigc::bind (sigc::ptr_fun (just_hide_it), reinterpret_cast<Window *> (this)));
}
ReturnUIWindow::~ReturnUIWindow ()

View File

@ -146,11 +146,6 @@ RouteParams_UI::RouteParams_UI ()
add_events (Gdk::KEY_PRESS_MASK|Gdk::KEY_RELEASE_MASK|Gdk::BUTTON_RELEASE_MASK);
_plugin_selector = new PluginSelector (PluginManager::instance());
_plugin_selector->signal_delete_event().connect (sigc::bind (ptr_fun (just_hide_it),
static_cast<Window *> (_plugin_selector)));
signal_delete_event().connect(sigc::bind(ptr_fun(just_hide_it), static_cast<Gtk::Window *>(this)));
}
RouteParams_UI::~RouteParams_UI ()

View File

@ -133,10 +133,6 @@ SendUIWindow::SendUIWindow (boost::shared_ptr<Send> s, Session* session)
hpacker.show ();
s->DropReferences.connect (going_away_connection, invalidator (*this), boost::bind (&SendUIWindow::send_going_away, this), gui_context());
signal_delete_event().connect (sigc::bind (
sigc::ptr_fun (just_hide_it),
reinterpret_cast<Window *> (this)));
}
SendUIWindow::~SendUIWindow ()

View File

@ -149,7 +149,7 @@ bool
StepEditor::step_editor_hidden (GdkEventAny*)
{
step_editor_hide ();
return true;
return true; // XXX remember position ?!
}
void

View File

@ -302,8 +302,10 @@ ProxyBase::get_state () const
/* we have a window, so use current state */
_visible = vistracker->partially_visible ();
_window->get_position (_x_off, _y_off);
_window->get_size (_width, _height);
if (_visible) {
_window->get_position (_x_off, _y_off);
_window->get_size (_width, _height);
}
}
node->add_property (X_("visible"), _visible? X_("yes") : X_("no"));
@ -410,15 +412,16 @@ ProxyBase::hide ()
bool
ProxyBase::handle_win_event (GdkEventAny *ev)
{
save_pos_and_size();
return 0;
hide();
return true;
}
void
ProxyBase::save_pos_and_size ()
{
_window->get_position (_x_off, _y_off);
_window->get_size (_width, _height);
Gtk::Window* win = get (false);
win->get_position (_x_off, _y_off);
win->get_size (_width, _height);
}
/*-----------------------*/