Commit graph

314 commits

Author SHA1 Message Date
Tor Lillqvist
7cb553841c Build 1.0.2 tarball and bump version to 1.0.3 2015-05-15 13:39:10 +03:00
Tor Lillqvist
f4eccc714a Include also headers in the tarball 2015-05-15 13:39:10 +03:00
Tor Lillqvist
5c6cb156f9 Delete those bundled LOKit headers we don't actually use 2015-05-15 13:39:10 +03:00
Mihai Varga
fe40e3d592 Less space between the toolbar and the document 2015-05-15 13:07:05 +03:00
Mihai Varga
a3cc8784fb Text mouse cursor (editing cursor) 2015-05-15 13:06:43 +03:00
Mihai Varga
ab86440cb2 Prevent img drawing on mozilla 2015-05-15 12:46:01 +03:00
Mihai Varga
c057a42063 Working text selection by mouse dragging 2015-05-15 12:12:11 +03:00
Mihai Varga
c2c379ac69 Removed unnecessary variables 2015-05-15 12:12:11 +03:00
Tor Lillqvist
d1b7bfeaae Bump loolwsd version to 1.0.1
I have made a pseudo-release tarball (for internal testing purposed) with the
version 1.0.0.

Use the following policy for versioning: When doing a release tarball, bump
the version in configure.ac so that the third (micro) version number is
even. Don't commit that to git, but do run make dist. After you have the
tarball, bump the micro version number again to an odd number. Commit. This
way, anything from git will always have an odd micro version number.
2015-05-15 10:18:48 +03:00
Tor Lillqvist
4bff5fef73 Include LibreOfficeKit headers from today for optional use
Useful when building loolwsd on a system that doesn't have new enough
LibreOfficeKit headers available. (It makes sense to use them only if the
resulting loolwsd will then be run on a system with a new enough LibreOffice
installation anyway.)

Pass the --with-lokit-path=bundled/include configure option to use them.
2015-05-15 10:12:50 +03:00
Mihai Varga
7122e97382 Fixed an unused result compiler error 2015-05-15 09:23:21 +03:00
Tor Lillqvist
e2dc523b11 Bin one pointless line of debugging output 2015-05-13 17:52:20 +03:00
Tor Lillqvist
6d5fb333ee It's url=, not uri= 2015-05-13 17:52:20 +03:00
Tor Lillqvist
1e17966bb9 Drop super-user privileges if using sudo by necessity when debugging
It doesn't work to debug a program that has file capabilities set, it seems,
so to debug the loolwsd master process, one in practice needs to run sudo gdb
on it. But it is not necessarily a good idea to run all of the code as
root. When configured for debugging (--enable-debug), reset real and effective
uid to a non-root one, either one given with an --uid option (typically that
of the developer), or "nobody".
2015-05-13 17:52:20 +03:00
Tor Lillqvist
efd750d2ee Add ENABLE_DEBUG to the config.h 2015-05-13 17:52:20 +03:00
Tor Lillqvist
60801cd014 Be less verbose: don't log messages received 2015-05-13 17:52:20 +03:00
Tor Lillqvist
72304b1593 Send the part number, too (always 0 for now) 2015-05-13 17:52:20 +03:00
Tor Lillqvist
5ea8efe602 Loop through tiles in x direction, too 2015-05-13 17:52:20 +03:00
Mihai Varga
1f073e6219 Fixed unused result compile error 2015-05-13 13:00:33 +03:00
Mihai Varga
906e9e28fc Search scrolls to result if it's out of the viewing area 2015-05-13 12:39:57 +03:00
Mihai Varga
5e4225c860 In fact, it is better not to prefix the url 2015-05-13 12:05:13 +03:00
Mihai Varga
04d2b531a1 Check if file:// is added in the url 2015-05-13 12:01:10 +03:00
Mihai Varga
0a7e20e851 Encode spaces in the URL 2015-05-13 11:54:12 +03:00
Mihai Varga
124de292d1 Updated the text selection handler
And also removed an unnecessary method
2015-05-13 11:17:34 +03:00
Mihai Varga
e4b1624d2b Updated the search bar to send the correct command to the server 2015-05-13 11:17:34 +03:00
Mihai Varga
bc23033537 Fixed tiwps->latlng and backwards conversion 2015-05-13 11:17:33 +03:00
Tor Lillqvist
b6c36e23f3 Improve error handling for documents that can't be opened
Catch IOException when trying to copy the document and send error message.
Otherwise, the exception will just propagate up to handleRequest() and the
connection will be silently closed. Closing the connection is fine as such, I
think, but we need to send an error message first.
2015-05-12 12:44:19 +03:00
Mihai Varga
d78642806a Removed URL tiles specific methods 2015-05-11 17:55:38 +03:00
Mihai Varga
47e301cc92 Parts command from the server is parsed but not yet interpreted 2015-05-11 17:05:03 +03:00
Mihai Varga
4c6d87231c Parts control for switching between parts 2015-05-11 17:05:03 +03:00
Mihai Varga
90b3b32bbc Renamed method to _parseServerCmd 2015-05-11 17:05:03 +03:00
Mihai Varga
13582c7f04 Fixed typo 2015-05-11 17:05:03 +03:00
Tor Lillqvist
c91d77c684 Check that the POCO version used is the one we want
Currently we require the current version, 1.6.0, and as soon as 1.6.1 is out,
I will start requiring that, because I want to use a feature I submitted to
it.

Surround most of configure.ac with AC_LANG_PUSH([C++]) while at it, as this is
all C++ code anyway.
2015-05-11 11:24:27 +03:00
Tor Lillqvist
6393cbfd7d Improve help for --port a bit
It must bit be the port number used for listening for the child processes
contacting the master process.
2015-05-08 21:30:32 +03:00
Tor Lillqvist
3e9c4d4bf3 Use a separate HTTPServer listening for child processes connnecting
Otherwise, if we use the same port number and same HTTPServer, if enough
clients try to contact us and, we won't be able to accept child processes
having been spawned.

Also add some temporary debugging output here and there to debug lifecycle
management issues.
2015-05-08 21:30:32 +03:00
Tor Lillqvist
5b1233bdb4 Be sure avoid global object dtors when exiting a child process
The LO ones have a tendency to crash anyway on Solar Mutex assertions (in a
build where assertions are active, obviously).
2015-05-08 21:30:32 +03:00
Tor Lillqvist
3a23186217 If we run out of pre-spawned children, spawn one more
Just a stopgap measure so far. Clearly will need some logic to get rid of too
many children if they are just hanging around with no clients incoming. Also,
we need some sanity check not to spawn an unlimited number of children.
2015-05-08 21:30:17 +03:00
Tor Lillqvist
aa40335328 Include also the childId in this (temporary) log output 2015-05-08 21:29:45 +03:00
Mihai Varga
febaaa1900 Mouse event handlers for selection 2015-05-08 15:24:47 +03:00
Mihai Varga
1858147801 Twips to latlng and reverse methods 2015-05-08 15:24:26 +03:00
Mihai Varga
affdbc6ff1 Added search command (from the server) handler 2015-05-08 13:58:13 +03:00
Mihai Varga
5dabc12660 Search bar buttons are updated based on the current search index 2015-05-08 13:56:28 +03:00
Mihai Varga
c622852514 Removed the Draw plugin interface
We don't actually need this plugin because the server
dictates how the selection will work.
Will remove the whole plugin when I'm sure this won't have other
applications
2015-05-08 11:44:37 +03:00
Mihai Varga
5bde4775f6 Added cancel search button + search bar sends propper events 2015-05-08 11:10:48 +03:00
Tor Lillqvist
e22e1da038 Must use thread-local storage for the variables used by the nftw callback
Otherwise two or more linkOrCopy() functions running simultaneously will lead
to a mess.

Actually nftw() is not guaranteed to be thread-safe, I think, so we should
really use something that is, like Poco's SimpleRecursiveDirectoryIterator.
2015-05-07 20:24:14 +03:00
Tor Lillqvist
c69fc09a1b Use just one RNG for the MasterProcessSession objects
It probably is not a good idea to keep depleting the entropy source needlessly
by having a separate RNG in the preSpawn(). Use just one shared RNG and
protect access to it with a mutex.
2015-05-07 20:24:06 +03:00
Tor Lillqvist
de52608a35 Drop setuid-root on Linux too, if we for some reason have it 2015-05-07 18:31:59 +03:00
Tor Lillqvist
caea0f9986 Try to make the server more stable when heavily loaded by connections
Use an explicit backlog parameter to the ServerSocket, and an explicit max number
of threads to use for the HTTPServer's thread pool.
2015-05-07 18:26:03 +03:00
Tor Lillqvist
0ca7f3129b Add code to wait for a child session to become available
Not sure it is completely correct. Lots of testing needed.
2015-05-07 16:29:36 +03:00
Tor Lillqvist
d3acdbb225 String::startsWith is Firefox-only it seems 2015-05-06 18:41:09 +03:00