Resolves: rhbz#1931423 start update timer in IM events as well as keyevents

Change-Id: I5a72adebd34c3983e7a414110c3192d05b725e45
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/111490
Tested-by: Jenkins
Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
diff --git a/starmath/inc/edit.hxx b/starmath/inc/edit.hxx
index 300a414..60d0ad2 100644
--- a/starmath/inc/edit.hxx
+++ b/starmath/inc/edit.hxx
@@ -88,6 +88,7 @@ class SmEditWindow final : public vcl::Window, public DropTargetHelper
    void InitScrollBars();
    void InvalidateSlots();
    void UpdateStatus(bool bSetDocModified);
    void UserPossiblyChangedText();

public:
    explicit SmEditWindow(SmCmdBoxWindow& rMyCmdBoxWin);
diff --git a/starmath/source/edit.cxx b/starmath/source/edit.cxx
index 64d1fc3..99ce7c0 100644
--- a/starmath/source/edit.cxx
+++ b/starmath/source/edit.cxx
@@ -365,7 +365,10 @@ void SmEditWindow::Command(const CommandEvent& rCEvt)
    if (bForwardEvt)
    {
        if (pEditView)
            pEditView->Command( rCEvt );
        {
            pEditView->Command(rCEvt);
            UserPossiblyChangedText();
        }
        else
            Window::Command (rCEvt);
    }
@@ -476,13 +479,7 @@ void SmEditWindow::KeyInput(const KeyEvent& rKEvt)
        }
        else
        {
            // have doc-shell modified only for formula input/change and not
            // cursor travelling and such things...
            SmDocShell *pDocShell = GetDoc();
            EditEngine *pEditEngine = GetEditEngine();
            if (pDocShell && pEditEngine)
                pDocShell->SetModified(pEditEngine->IsModified());
            aModifyIdle.Start();
            UserPossiblyChangedText();
        }

        // get the current char of the key event
@@ -510,6 +507,17 @@ void SmEditWindow::KeyInput(const KeyEvent& rKEvt)
    }
}

void SmEditWindow::UserPossiblyChangedText()
{
    // have doc-shell modified only for formula input/change and not
    // cursor travelling and such things...
    SmDocShell *pDocShell = GetDoc();
    EditEngine *pEditEngine = GetEditEngine();
    if (pDocShell && pEditEngine)
        pDocShell->SetModified(pEditEngine->IsModified());
    aModifyIdle.Start();
}

void SmEditWindow::Paint(vcl::RenderContext& rRenderContext, const tools::Rectangle& rRect)
{
    if (!pEditView)