loolwsd/ChildSession.cpp | 14 +------------- loolwsd/ChildSession.hpp | 14 ++++---------- loolwsd/LibreOfficeKit.hpp | 8 ++++++-- 3 files changed, 11 insertions(+), 25 deletions(-)
New commits: commit 58468c76be771a7b1fc0b7372c2c5cb3c4b5b44a Author: Ashod Nakashian <ashod.nakash...@collabora.co.uk> Date: Sat Aug 13 12:14:44 2016 -0400 loolwsd: cleaned up ChildSession public members Change-Id: I4bfc008859edb979688ece89d99af227ea3d0416 Reviewed-on: https://gerrit.libreoffice.org/28123 Reviewed-by: Ashod Nakashian <ashnak...@gmail.com> Tested-by: Ashod Nakashian <ashnak...@gmail.com> diff --git a/loolwsd/ChildSession.cpp b/loolwsd/ChildSession.cpp index dbc1a5c..9a89b66 100644 --- a/loolwsd/ChildSession.cpp +++ b/loolwsd/ChildSession.cpp @@ -118,19 +118,7 @@ public: { case LOK_CALLBACK_INVALIDATE_TILES: { - const auto lokitDoc = _session.getLoKitDocument(); - if (lokitDoc == nullptr) - { - return; - } - - assert(lokitDoc->pClass); - assert(lokitDoc->pClass->getPart); - - // Text docs have a single coordinate system. - const auto curPart = (_session.getDocType() == "text") - ? 0 - : lokitDoc->pClass->getPart(lokitDoc); + const auto curPart = _session.getPart(); StringTokenizer tokens(rPayload, " ", StringTokenizer::TOK_IGNORE_EMPTY | StringTokenizer::TOK_TRIM); if (tokens.count() == 4) diff --git a/loolwsd/ChildSession.hpp b/loolwsd/ChildSession.hpp index 7045a04..1481a9f 100644 --- a/loolwsd/ChildSession.hpp +++ b/loolwsd/ChildSession.hpp @@ -42,21 +42,16 @@ public: bool getStatus(const char *buffer, int length); bool getPartPageRectangles(const char *buffer, int length); - virtual void disconnect() override; - unsigned getViewId() const { return _viewId; } + int getPart() const { return _loKitDocument->getPart(); } - const std::string& getDocType() const { return _docType; } - - LibreOfficeKitDocument *getLoKitDocument() const { return (_loKitDocument ? _loKitDocument->get() : nullptr); } + void setDocState(const int type, const std::string& payload) { _lastDocStates[type] = payload; } void loKitCallback(const int nType, const std::string& payload); static std::unique_lock<std::recursive_mutex> getLock() { return std::unique_lock<std::recursive_mutex>(Mutex); } - void setDocState(const int type, const std::string& payload) { _lastDocStates[type] = payload; } - - protected: +private: bool loadDocument(const char *buffer, int length, Poco::StringTokenizer& tokens); bool sendFontRendering(const char *buffer, int length, Poco::StringTokenizer& tokens); @@ -79,8 +74,7 @@ public: bool setClientPart(const char *buffer, int length, Poco::StringTokenizer& tokens); bool setPage(const char *buffer, int length, Poco::StringTokenizer& tokens); -private: - + virtual void disconnect() override; virtual bool _handleInput(const char *buffer, int length) override; private: diff --git a/loolwsd/LibreOfficeKit.hpp b/loolwsd/LibreOfficeKit.hpp index 326d996..4e2aab0 100644 --- a/loolwsd/LibreOfficeKit.hpp +++ b/loolwsd/LibreOfficeKit.hpp @@ -41,7 +41,9 @@ public: } /// This lock must be held while calling - /// one or more member of this class. + /// one or more members of this class if + /// the client is multi-threaded. + /// No member function takes this lock otherwise. std::unique_lock<std::mutex> getLock() { return std::unique_lock<std::mutex>(_mutex); @@ -110,9 +112,11 @@ public: } /// Get the current part of the document. + /// Note: For Writer documents this always returns 0 + /// since text docs have a single coordinate system. inline int getPart() { - return _pDoc->pClass->getPart(_pDoc); + return getDocumentType() == LOK_DOCTYPE_TEXT ? 0 : _pDoc->pClass->getPart(_pDoc); } /// Set the current part of the document. _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits