]> git.lyx.org Git - lyx.git/blobdiff - src/insets/insetexternal.C
My patch from yesterday
[lyx.git] / src / insets / insetexternal.C
index 7f2ff23107f59098a0f6ffaa07dd4f7c5a695df8..fd5fe30017f1c40deb2e1380df6d4912eb95d9e1 100644 (file)
@@ -74,17 +74,21 @@ dispatch_result InsetExternal::localDispatch(FuncRequest const & cmd)
                        break;
 
                setFromParams(p);
-               cmd.view()->updateInset(this, true);
+               cmd.view()->updateInset(this);
                result = DISPATCHED;
        }
        break;
 
        case LFUN_INSET_DIALOG_UPDATE: {
                InsetExternalMailer mailer(*this);
-               mailer.updateDialog();
+               mailer.updateDialog(cmd.view());
        }
        break;
 
+       case LFUN_MOUSE_RELEASE:
+               edit(cmd.view(), cmd.x, cmd.y, cmd.button());
+               break;
+
        default:
                break;
        }
@@ -107,10 +111,10 @@ string const InsetExternal::editMessage() const
 }
 
 
-void InsetExternal::edit(BufferView *, int, int, mouse_button::state)
+void InsetExternal::edit(BufferView * bv, int, int, mouse_button::state)
 {
        InsetExternalMailer mailer(*this);
-       mailer.showDialog();
+       mailer.showDialog(bv);
 }
 
 
@@ -397,9 +401,11 @@ void InsetExternalMailer::string2params(string const & in,
                        return;
        }
 
-       InsetExternal inset;    
-       inset.read(0, lex);
-       params = inset.params();
+       if (lex.isOK()) {
+               InsetExternal inset;    
+               inset.read(0, lex);
+               params = inset.params();
+       }
 }