2017-08-16 1 views
1

Ich füge automatisch eine Signatur ein, wenn eine neue Mail erstellt wird, und dann möchte ich den Fokus setzen/cursor zum Anfang des Mailkörpers, dazu benutze ich prependAsync() siehe Codeschnipsel unten.Outlook für mac - Office.context.mailbox.item.body.prependAsync() legt den Fokus nicht auf den Anfang des Objektkörpers fest

  • oben Ansatz funktioniert gut (Sätze am Anfang konzentrieren) mit Outlook für Windows
  • aber der gleiche Code nicht, dies zu tun, auf Outlook für Mac

-Code verwendet snipped:

factory.insertSign(function() { // does a Office.context.mailbox.item.body.setAsync() 
     $log.log(">> sign proccessed"); 
     factory.PrependData("##prepended##", function() { //does a Office.context.mailbox.item.body.prependAsync 
      deferred.resolve(); 
     }); 
    }); 

Ergebnis auf Outlook für Mac

enter image description here

Platform Details:

  • Outlook für Mac-Version 15,38 (170809)
  • MacOS Sierra 10.12.6

Fehle ich hier etwas aus. Bitte führe mich voran.

Antwort

0

Wie "automatisch" Sie die Signatur einfügen? Der Benutzer muss immer noch auf das Add-In klicken, richtig?

Das erwartete Verhalten für PrependAsync() ist, dass es den Text voranstellen sollte, ohne den Cursor zu verschieben. Dies ist das Verhalten, das wir in OWA und win32 Desktop Outlook beobachten. Wir bestätigen das Verhalten in Mac Outlook, aber es wird erwartet, dass es dasselbe ist.

Wir werden die API-Dokumentation aktualisieren, um das erwartete Cursorverhalten für diese API explizit aufzurufen.

+0

Ja, durch "auto insert" meine ich Signatur (html) wird eingefügt, sobald ich das Add-In manuell öffne. Für uns sind wir sicher, dass 'prependAsync()' den Cursor an der Position für die win32-Desktop-Perspektive bewegt. –

+0

Tut mir leid, ich habe gerade bemerkt, dass Sie eine setAsync und dann eine prependAsync gemacht haben. Für SetAsync -> Der Cursor ist nach dem Aufruf nicht garantiert an der gleichen Position über verschiedene Clients hinweg. prependAsync -> Der Cursor sollte sich nach dem Aufruf nicht bewegen. –

+0

Wie gesagt, wir sehen, dass die Cursorposition geändert wird, und das ist tatsächlich unser gewünschtes Verhalten von der API. Wenn dies nicht der Fall ist, sollte 'prependAsync()' verwendet werden, bitte geben Sie eine alternative Lösung an. –

Verwandte Themen