From addf504efd94119f08ba227e39c04819925af608 Mon Sep 17 00:00:00 2001
From: Miklos Vajna <vmiklos@collabora.co.uk>
Date: Tue, 17 Nov 2015 20:57:49 +0100
Subject: [PATCH 342/398] gtktiledviewer: set author name when inserting a
comment
Change-Id: Iee66687ce813ff801f29e4568329ed2a39f905ba
(cherry picked from commit e0080a60ac2fb0a57cbf1ecbeda250e37d8b402e)
---
libreofficekit/qa/gtktiledviewer/gtktiledviewer.cxx | 17 ++++++++++++++++-
1 file changed, 16 insertions(+), 1 deletion(-)
diff --git a/libreofficekit/qa/gtktiledviewer/gtktiledviewer.cxx b/libreofficekit/qa/gtktiledviewer/gtktiledviewer.cxx
index 86fc9e539b39..7dcd52446344 100644
--- a/libreofficekit/qa/gtktiledviewer/gtktiledviewer.cxx
+++ b/libreofficekit/qa/gtktiledviewer/gtktiledviewer.cxx
@@ -10,6 +10,7 @@
#include <assert.h>
#include <stdio.h>
#include <string.h>
+#include <pwd.h>
#include <string>
#include <map>
#include <iostream>
@@ -118,6 +119,7 @@ public:
std::shared_ptr<TiledRowColumnBar> m_pRowBar;
std::shared_ptr<TiledRowColumnBar> m_pColumnBar;
std::shared_ptr<TiledCornerButton> m_pCornerButton;
+ std::string m_aAuthor;
TiledWindow()
: m_pDocView(nullptr),
@@ -148,6 +150,8 @@ public:
m_pFindbarLabel(nullptr),
m_bFindAll(false)
{
+ struct passwd* pPasswd = getpwuid(getuid());
+ m_aAuthor = std::string(pPasswd->pw_gecos);
}
};
@@ -799,7 +803,18 @@ static void toggleToolItem(GtkWidget* pWidget, gpointer /*pData*/)
// notify about the finished Save
gboolean bNotify = (rString == ".uno:Save");
- lok_doc_view_post_command(pLOKDocView, rString.c_str(), nullptr, bNotify);
+ std::string aArguments;
+ if (rString == ".uno:InsertAnnotation" && !rWindow.m_aAuthor.empty())
+ {
+ boost::property_tree::ptree aTree;
+ aTree.put(boost::property_tree::ptree::path_type("Author/type", '/'), "string");
+ aTree.put(boost::property_tree::ptree::path_type("Author/value", '/'), rWindow.m_aAuthor);
+ std::stringstream aStream;
+ boost::property_tree::write_json(aStream, aTree);
+ aArguments = aStream.str();
+ }
+
+ lok_doc_view_post_command(pLOKDocView, rString.c_str(), (aArguments.empty() ? nullptr : aArguments.c_str()), bNotify);
}
}
--
2.12.0