diff --git a/rtgui/editwindow.cc b/rtgui/editwindow.cc index 6a67e2b51..c03bdad5f 100644 --- a/rtgui/editwindow.cc +++ b/rtgui/editwindow.cc @@ -126,7 +126,8 @@ void EditWindow::addEditorPanel (EditorPanel* ep, const std::string &name) { // construct closeable tab for the image Gtk::HBox* hb = Gtk::manage (new Gtk::HBox ()); hb->pack_start (*Gtk::manage (new RTImage ("rtwindow.png"))); - hb->pack_start (*Gtk::manage (new Gtk::Label (name))); + hb->pack_start (*Gtk::manage (new Gtk::Label (Glib::path_get_basename (name)))); + hb->set_tooltip_markup (name); Gtk::Button* closeb = Gtk::manage (new Gtk::Button ()); closeb->set_image (*Gtk::manage(new RTImage ("gtk-close.png"))); closeb->set_relief (Gtk::RELIEF_NONE); @@ -153,8 +154,8 @@ void EditWindow::addEditorPanel (EditorPanel* ep, const std::string &name) { } void EditWindow::remEditorPanel (EditorPanel* ep) { - epanels.erase (ep->getShortName()); - filesEdited.erase (ep->getShortName ()); + epanels.erase (ep->getFileName()); + filesEdited.erase (ep->getFileName ()); parent->fpanel->refreshEditedState (filesEdited); mainNB->remove_page (*ep); diff --git a/rtgui/filecatalog.cc b/rtgui/filecatalog.cc index 37b2dfd73..52f14a337 100644 --- a/rtgui/filecatalog.cc +++ b/rtgui/filecatalog.cc @@ -702,12 +702,10 @@ void FileCatalog::_openImage (std::vector tmb) { if (enabled && listener!=NULL) { bool continueToLoad=true; for (size_t i=0; i< tmb.size() && continueToLoad; i++) { - if (editedFiles.find (tmb[i]->getFileName())==editedFiles.end()){ - // Open the image here, and stop if in Single Editor mode, or if an image couldn't - // be opened, would it be because the file doesn't exist or because of lack of RAM - if( !(listener->fileSelected (tmb[i])) && !options.tabbedUI ) - continueToLoad = false; - } + // Open the image here, and stop if in Single Editor mode, or if an image couldn't + // be opened, would it be because the file doesn't exist or because of lack of RAM + if( !(listener->fileSelected (tmb[i])) && !options.tabbedUI ) + continueToLoad = false; tmb[i]->decreaseRef (); } } diff --git a/rtgui/filepanel.cc b/rtgui/filepanel.cc index 68b70ee31..350883ec0 100644 --- a/rtgui/filepanel.cc +++ b/rtgui/filepanel.cc @@ -168,7 +168,7 @@ bool FilePanel::fileSelected (Thumbnail* thm) { return false; // Check if it's already open BEFORE loading the file - if (options.tabbedUI && parent->selectEditorPanel(Glib::path_get_basename (thm->getFileName()))) + if (options.tabbedUI && parent->selectEditorPanel(thm->getFileName())) return true; // try to open the file @@ -189,7 +189,7 @@ bool FilePanel::imageLoaded( Thumbnail* thm, ProgressConnectoraddEditorPanel (epanel,Glib::path_get_basename (thm->getFileName())); + parent->addEditorPanel (epanel,thm->getFileName()); } epanel->open(thm, pc->returnValue() ); } else { diff --git a/rtgui/rtwindow.cc b/rtgui/rtwindow.cc index 795a92a94..6f3e35bbc 100644 --- a/rtgui/rtwindow.cc +++ b/rtgui/rtwindow.cc @@ -390,7 +390,8 @@ void RTWindow::addEditorPanel (EditorPanel* ep, const std::string &name) { // construct closeable tab for the image Gtk::HBox* hb = Gtk::manage (new Gtk::HBox ()); hb->pack_start (*Gtk::manage (new RTImage ("rtwindow.png"))); - hb->pack_start (*Gtk::manage (new Gtk::Label (name))); + hb->pack_start (*Gtk::manage (new Gtk::Label (Glib::path_get_basename (name)))); + hb->set_tooltip_markup (name); Gtk::Button* closeb = Gtk::manage (new Gtk::Button ()); closeb->set_image (*Gtk::manage(new RTImage ("gtk-close.png"))); closeb->set_relief (Gtk::RELIEF_NONE); @@ -425,8 +426,8 @@ void RTWindow::remEditorPanel (EditorPanel* ep) { EditWindow * wndEdit = EditWindow::getInstance(this); wndEdit->remEditorPanel(ep); } else { - epanels.erase (ep->getShortName()); - filesEdited.erase (ep->getShortName ()); + epanels.erase (ep->getFileName()); + filesEdited.erase (ep->getFileName ()); fpanel->refreshEditedState (filesEdited); mainNB->remove_page (*ep);