Commit graph

21173 commits

Author SHA1 Message Date
Ashod Nakashian
6f0199f07f wsd: test: refactor assertCheckFileInfoRequest into the handler
Change-Id: I089706147b12d75d8dce8ffb740ffe738f1354ec
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-06-20 03:55:19 -04:00
Ashod Nakashian
fc80fb66bf wsd: test: refactor assertGetFileRequest into the handler
Change-Id: I4a1a17bac9694f92ffab49d1c9143bab83f22835
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-06-20 03:55:19 -04:00
Ashod Nakashian
b6a8ca439b wsd: test: use sendAndShutdown
Instead of explicit send and shutdown calls.

Change-Id: Ia08ccc003b1fa6c224d2cc9bc2520c722bf5752c
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-06-20 03:55:19 -04:00
Ashod Nakashian
6179aac456 wsd: test: reduce manual http header creation
We have http::Response specifically for
this kind of thing.

Change-Id: I4cc24378741bb1da76967e9c01a33060d11cdc4b
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-06-20 03:55:19 -04:00
Ashod Nakashian
e93e7fd3b5 wsd: test: reuse getDefaultCheckFileInfoPayload
Change-Id: I7cc1aab6bac397d46c4b87e5f4f943f7a141c8e6
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-06-20 03:55:19 -04:00
Ashod Nakashian
901ea7969a wsd: test: refactor the default CheckFileInfo payload
Change-Id: I357e5733cba12b1826d13ca0cdc6d5de3da0afd0
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-06-20 03:55:19 -04:00
Ashod Nakashian
d0d09e3d51 wsd: test: testInactiveClient may get jsdsialog message
Change-Id: Ib5df91537e91e0a658fd7c47fa5fd07610f0c786
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-06-20 09:42:49 +02:00
Ashod Nakashian
214f212571 wsd: fallback from mknode to bind-mount for random devs
In some cases we may not have permission to create devices.
This happen on nodev systems and some containers. In
those cases, we gracefully fallback to bind-mounting.

Ideally, we would like to reduce the number of bind-mount
cases we do per document, which i why mknod is preferred.

Cleaning up works without modification because the
random devices are mounted in /tmp (in the chroot),
which itself is bind-mounted. So removing it is
sufficient.

Change-Id: If9a4f0a511273952ead95d6c6855ca2becaf757f
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-06-20 09:42:49 +02:00
Ashod Nakashian
67c5dbb5de mount: support mounting from character device
And improve error reporting.

Change-Id: I28b5c21e1bc4f20fccd6d7f1dfca0240b91e71fd
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-06-20 09:42:49 +02:00
Ashod Nakashian
95cf60ed5c killpoco: use own file stat helper
Change-Id: I668c2aab04083689a867e7d1f77e2b52c9351969
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-06-20 09:42:49 +02:00
Ashod Nakashian
7a634d0790 wsd: support providing CSP header in the config
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
(cherry picked from commit 25fe0b2dfb56494d59c3502f690265d46dbbc4ff)

Change-Id: I3e1f3085846ab31326a0a788e7332b5332c10c94
2023-06-19 07:45:02 -04:00
Ashod Nakashian
df898ae3a3 wsd: more CSP refactoring
Change-Id: Id7a31fbd2e804de758abb31ebb32e419a2955194
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
(cherry picked from commit c1b19c0ae6b5148dee1517dfce19de5cfa27b9d5)
2023-06-19 07:45:02 -04:00
Ashod Nakashian
cefc71b198 wsd: add ContentSecurityPolicy manager
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
(cherry picked from commit 995c24345eeedc7cbd9e81f9b6c151e79b695fdc)

Change-Id: I75d6da58019d218a121bdf7bc72e73dd0f320216
2023-06-19 07:45:02 -04:00
Ashod Nakashian
fa3887ad4a killpoco: replace URI::encode with our wrapper
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
(cherry picked from commit 3e8deb33c6459634a6ce111bfa1d01f21f04a30a)

Change-Id: I959e7943ec291f04c03237f9550ccaecf5a81aa7
2023-06-19 07:45:02 -04:00
Ashod Nakashian
d221ac276b wsd: simplify frame-ancestor handling
Change-Id: I1ae8443a8a09b485a89b69a2d25d2efc49c34a52
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
(cherry picked from commit c317090f4c9ba4fa1a5521bc5b31a48dfafd2516)
2023-06-19 07:45:02 -04:00
Ashod Nakashian
9e8238310c make: failing jail cleanup is not fatal
In some cases jail cleaning up may fail.
In such a case, we still want to be able
to build a fresh set of binaries, which
are used to run coolwsd --cleanup.

Since cleaning up the jails and the
systemplate are not strictly required
to building, we now only emmit a warning
and move on.

Change-Id: I4ebf7772cf767b579810247c427d86efa5a6d3ad
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-06-19 07:45:02 -04:00
Darshan-upadhyay1110
f59dd62f6f 23.05 - Android : tapping on cells flickers the keyboard
Added condition for focus on textarea so ot will handle the keyboard in mobile view to stop flicker.
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: I8cb6211a3605503f4144a3c48e059960cf461617
2023-06-19 12:48:18 +02:00
Pedro Pinto Silva
7bbdf7c530 Spelling dialog icon not found
addmb-menu corresponding to add to dictionary seems to be a dropdown
that is not enabled in online. And we do hide the main component by
making use of hidden class. Nevertheless, and even though that is
never visible, we keep getting the file not found in the console.
  - better to add an generic alias for that file so to avoid that error

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ic9ad2d9cb07fa1f496166d3653bbf81de3f310d0
2023-06-19 10:11:11 +02:00
Michael Meeks
1cf561d0ef Restore commit 80b4e6d4ae
Remove un-necessary gating of wakeup() on stop un-related to
callbacks or new sockets.

This reverts commit 25f2581a30.

Change-Id: I9f9f30fed34c973b86206677168071abb81afa6f
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2023-06-16 16:08:42 +01:00
codewithvk
3e287a5968 Fix: Annotations, comments on hover
Change-Id: I3a1e9473cabc9df2b33e3b99168f9698d1beb86c
Signed-off-by: codewithvk <vivekpatel7202@gmail.com>
2023-06-16 14:01:37 +02:00
Pranam Lashkari
1eb8b9c63f impress: arrange slide/hide show menu entries better
added slide hide/show option in presentation bar
rearranged icons to align them with core UI

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: Ic4b121ab5d9ab21d8f48e68bb07e51a31442586e
2023-06-16 10:48:54 +02:00
Caolán McNamara
d297bccb9a "throttled" move events can be processed after moveEnd
We throttle the "move" event, but in moveEnd we always call
a _move anyway, so if there are throttled moves still
pending by the time moveEnd is called then there is no point
processing them after _moveEnd because we are up to date
already when they arrive and to do would just duplicate tile
requests

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I15c6fe5f0f1b6171a299a4519138912000dd9b68
2023-06-16 09:29:58 +01:00
Andras Timar
4ac8c8ee28 configure option to disable building unit tests
rational: building for release takes a lot of time and we
neither package, nor run (most of) these unit tests when
we make packages.
CI runs all of these tests before merging PRs, so risk is low,
if we do not run the few build-time unit tests when we package.

make -j12
--enable-tests (default): 3m 18s
--disable-test: 1m 9s
3x faster...

Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I4edd98af55748432e30c65c4c910e72c0221272a
2023-06-16 09:12:21 +02:00
Gökay Şatır
a75fa06923 Use native handlers for click and doubleclick events.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: Ieab3c17f1772a2f47fc519b8cc031c1cf50dfa52
2023-06-16 08:25:23 +03:00
Henry Castro
6c5d8f287d browser: improve _preventNonNumericalInput function
Only Chrome browser validate number inputs if it is
defined the attribute <input type="number">.

Unfortunately, it is not possible to get the cursor p
osition to validate too.

Change-Id: I73ef692498caa348a5b8d376cbfcfca0c146816b
Signed-off-by: Henry Castro <hcastro@collabora.com>
2023-06-15 18:03:04 -04:00
Henry Castro
247fe3475f browser: use Intl built-in object to get number format
"The formatToParts method enables locale-aware formatting
of strings produced by NumberFormat"

Change-Id: I819b8c9de98ad89926216ce14b992c2ceda5deef
Signed-off-by: Henry Castro <hcastro@collabora.com>
2023-06-15 18:03:04 -04:00
Henry Castro
3b7026c0e9 browser: add 'lang' property to get the current ...
browser language locale

Change-Id: Ia23d9710a0af97b4838f189e97cc0169d2294045
Signed-off-by: Henry Castro <hcastro@collabora.com>
2023-06-15 18:03:04 -04:00
Marco Cecchetti
11767353b3 a11y: editable area: cypress tests for list editing
New tests:
- Check content
- Moving between entries
- Add entries
- Typing <backspace> at entry beginning
- Typing <delete> at entry end
- Selecting at entry beginning

Signed-off-by: Marco Cecchetti <marco.cecchetti@collabora.com>
Change-Id: Ib831bb9f44f9fe3828e8f77fcdaf7f12ef901644
2023-06-15 15:00:18 -04:00
Marco Cecchetti
def6ba9c21 A11yTextInput: empty selection at the beginning of a list entry
When there is an empty selection at the beginning of a list entry and
a <backspace> is typed, the <backspace> doesn't delete only the empty
selection as it occurs in a normal paragraph.
So we need to avoid to send 2 backspaces.
Since both a <backspace> and a <delete> removes the empty selection we
always send a <delete> followed by a <backspace> when a <backspace> is
typed and we need to remove an empty selection.
This solution works both for normal paragraph and for list entries.

Signed-off-by: Marco Cecchetti <marco.cecchetti@collabora.com>
Change-Id: Idae144b65ed04ac28c602ee2155d337369c534fe
2023-06-15 15:00:18 -04:00
Marco Cecchetti
809234805e refactored cypress tests for editable area
Helper functions has been moved to external file:
contenteditable_helper.js

Tests have been subdiveded in groups.

Spec file renamed from editing_spec to editable_area_spec

Signed-off-by: Marco Cecchetti <marco.cecchetti@collabora.com>
Change-Id: Ifdb18b0de4851a2fc927b3a8fb3b1472165f2b7f
2023-06-15 15:00:18 -04:00
Patrick Luby
e381b9194e Implement minor changes suggested during review
Signed-off-by: Patrick Luby <plubius@neooffice.org>
Change-Id: Id25c8a9deec35b9ae74ed1cc8a9dcf88dc5486cc
2023-06-15 19:01:42 +01:00
Patrick Luby
57a9db5664 Replace preprocessor directives with C++ conditional check
UnitBase::isUnitTesting() and UnitWSD::isUnitTesting() to avoid
calling methods that crash on mobile.

Signed-off-by: Patrick Luby <plubius@neooffice.org>
Change-Id: Ie6bc2d238ac9e475b02ceef5809c55acc129dd52
2023-06-15 19:01:42 +01:00
Patrick Luby
12213d7ec5 Fix iOS build breakages by adding http::Request to iOS build
Still needed to add a bunch of #if !MOBILAPP to disable all of the
Online server's unit testing classes so that the iOS app won't crash
when opening a document.

TODO: the iOS app will not accept text input at all. Is some code
unexpectedly consuming message data sent over the mobile fake socket?

Signed-off-by: Patrick Luby <plubius@neooffice.org>
Change-Id: Ie874ee8e452188a7b4cdf6d5f87708e5ed9b0235
2023-06-15 19:01:42 +01:00
Caolán McNamara
00705d4a32 use more string_view
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Iad56a97f9bef1f6f905f08002b1958072a209551
2023-06-15 13:29:04 +02:00
Marco Cecchetti
39be94e852 Force notebookbar ui when a11y is enabled
When accessibility is enabled in coolwsd.xml, overrides setting in
<user-interface> section by force to use the notebookbar UI.

Signed-off-by: Marco Cecchetti <marco.cecchetti@collabora.com>
Change-Id: I98f4b288439b21110214ca2a67df639b397184c9
2023-06-15 08:54:51 +01:00
Marco Cecchetti
ac6ca0c59f When Calc starts with the notebook ui, sheet tabs are missing
This patch fix a regression started from
17b50868ea
"impress: introduce slide hiding/showing in presentation"

Signed-off-by: Marco Cecchetti <marco.cecchetti@collabora.com>
Change-Id: I55263b07088d16fe07171e004b5d505eb3b70500
2023-06-14 23:28:54 +02:00
Ashod Nakashian
874e4f4b29 wsd: signal handlers must preserve errno
Change-Id: I13ee808f73d739c9a30724799532d04b0b8b577a
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-06-14 07:04:26 -04:00
Ashod Nakashian
c9542a44cd wsd: thread-safe kit pid
Change-Id: Id8dc3b894d18606e80806950f8bad65cf657a565
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-06-14 07:04:26 -04:00
Ashod Nakashian
40a915ab4d wsd: thread-safe socket shutdown flag
Change-Id: I1f0b5be698b0e4a1cb55edf65eb706f181cd8516
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-06-14 07:04:26 -04:00
Ashod Nakashian
e5f274c65c wsd: test: better test timeout thread management
Change-Id: I156d3563c13bd303e628d5a76fc2a48e6141bcf2
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-06-14 07:04:26 -04:00
Ashod Nakashian
a729d37af2 wsd: signal handler cannot log
Logging allocates and calls signal-unsafe
functions.

Also, we flush cerr now.

Change-Id: I80f371c1d32b0c650f0d5e132d30af9991b1e24e
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-06-14 07:04:26 -04:00
Andreas-Kainz
9383f46994 Dark Icons add missing ones
Signed-off-by: Andreas-Kainz <andreas_k@abwesend.de>
Change-Id: Iccd593de8fa4a420bf70beb59c59ea64285e32db
2023-06-14 11:41:09 +02:00
Caolán McNamara
24d55168ac cid#318916 Uninitialized scalar field
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I5272fa72fb9edc32a1e1f93f17dafff907278672
2023-06-14 10:10:46 +02:00
Caolán McNamara
2f9c9396d3 cid#318856 Uninitialized scalar field
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I2a6c3e9d021884b898f9efdc51c528428321d6f0
2023-06-14 10:10:46 +02:00
Caolán McNamara
2e38ab907c cid#318943 Uninitialized scalar variable
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I4b5afe9f26f90c11aec6009c55a9438263cff4e4
2023-06-14 10:10:46 +02:00
Caolán McNamara
1063fdbcba cid#318963 Uninitialized scalar field
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I459f70a41e5c1bab2e575c8d9ee699e213f2456e
2023-06-14 10:10:46 +02:00
Caolán McNamara
fb9fe79d3d cid#318951 Uninitialized scalar field
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I20dc0f87f000a68e1c6a6304292e792953959099
2023-06-14 10:10:46 +02:00
Caolán McNamara
88df33d467 cid#318915 Uninitialized scalar field
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Ia93efc031d6072e97f90136f93dcaff03af934cc
2023-06-14 10:10:46 +02:00
Caolán McNamara
c8c49c5b53 cid#318908 Uninitialized scalar field
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I24f1ec683651439761fda48d2db68fee19afcc62
2023-06-14 10:10:46 +02:00
Caolán McNamara
572135c076 cid#318822 Uninitialized scalar field
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I9f3e7d440b0fadf2f73ca3f955ab34b0d1cc11dc
2023-06-14 10:10:46 +02:00