Commit graph

22236 commits

Author SHA1 Message Date
poi
b5ab6c738e Translated using Weblate (Chinese (Simplified))
Currently translated at 93.8% (506 of 539 strings)

Co-authored-by: poi <erbaotao@outlook.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/zh_Hans/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ief1316fa94dca848e75c79076907d98743f891a7
2023-11-23 11:24:17 +01:00
TUCAOEVER5023416dba724da7
85be492f54 Translated using Weblate (Chinese (Simplified))
Currently translated at 93.8% (506 of 539 strings)

Co-authored-by: TUCAOEVER5023416dba724da7 <814697582@qq.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/zh_Hans/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I18b7c342a98ebed0a3c01697812c3bfc61ebf7ef
2023-11-23 11:24:17 +01:00
Adolfo Jayme Barrientos
f35daa8e85 Translated using Weblate (Spanish)
Currently translated at 100.0% (539 of 539 strings)

Co-authored-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/es/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I5810366702cbc76331f5c1d03c985ed88e2cc4f5
2023-11-23 11:24:17 +01:00
meshari alnaim
c13bdf8042 Translated using Weblate (Arabic)
Currently translated at 95.9% (517 of 539 strings)

Co-authored-by: meshari alnaim <malnaim@safedecision.com.sa>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ar/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I087488a76839bb345c3bec088d5308ea3c7bd0b3
2023-11-23 11:24:17 +01:00
Stanislav Horáček
dc61238a73 Translated using Weblate (Czech)
Currently translated at 100.0% (539 of 539 strings)

Co-authored-by: Stanislav Horáček <stanislav.horacek@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/cs/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I33526610a67b2ba6d158ae1c162bd8a0cc8b5150
2023-11-23 11:24:17 +01:00
Oğuz Ersen
395a0af638 Translated using Weblate (Turkish)
Currently translated at 100.0% (539 of 539 strings)

Co-authored-by: Oğuz Ersen <oguz@ersen.moe>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/tr/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ida10517c927eb1d450cd49f7521c18b43a2ac8d6
2023-11-23 11:24:17 +01:00
bittin1ddc447d824349b2
86a2067241 Translated using Weblate (Swedish)
Currently translated at 100.0% (539 of 539 strings)

Co-authored-by: bittin1ddc447d824349b2 <bittin@reimu.nl>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/sv/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I4d9352a99f93f5119e0521f505c61530e955682f
2023-11-23 11:24:17 +01:00
Martin Srebotnjak
2a10075cdd Translated using Weblate (Slovenian)
Currently translated at 100.0% (539 of 539 strings)

Co-authored-by: Martin Srebotnjak <miles@filmsi.net>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/sl/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I57f8540054f0e0283a47342c72aec3fc6390961f
2023-11-23 11:24:17 +01:00
Rob Pearson
656bd25b70 Translated using Weblate (English (South Africa))
Currently translated at 100.0% (467 of 467 strings)

Translated using Weblate (English (New Zealand))

Currently translated at 100.0% (467 of 467 strings)

Translated using Weblate (English (United Kingdom))

Currently translated at 100.0% (467 of 467 strings)

Translated using Weblate (English (Australia))

Currently translated at 100.0% (467 of 467 strings)

Translated using Weblate (English (South Africa))

Currently translated at 100.0% (539 of 539 strings)

Translated using Weblate (English (New Zealand))

Currently translated at 100.0% (539 of 539 strings)

Translated using Weblate (English (United Kingdom))

Currently translated at 100.0% (539 of 539 strings)

Translated using Weblate (English (Australia))

Currently translated at 100.0% (539 of 539 strings)

Co-authored-by: Rob Pearson <rob.dunedin@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/en_AU/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/en_GB/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/en_NZ/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/en_ZA/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/en_AU/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/en_GB/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/en_NZ/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/en_ZA/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I49b5d5a9c068554e5896eba1a42c9dad40786e45
2023-11-23 11:24:17 +01:00
Darshan-upadhyay1110
3f46c1db44 kit-in-process: pure re-factor to a run-time function to flag this.
Avoids a number of compile time conditionals and adds flexibility.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: Iff6b294b504526e70715e436ad33d47c8df4752c
2023-11-22 17:06:29 +00:00
Michael Meeks
e9f5f04dad config loading: avoid using the process name to find the config file.
This enables the kit-in-process re-factor.

Change-Id: I93eb0a721945fb7b03e145b6c9d037ef3ce62589
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2023-11-22 17:06:29 +00:00
Skyler Grey
e817f03785 Unify touchscreen handling, remove L.Browser.touch
L.Browser.touch is sometimes nice, but it's ultimately a flawed concept
to use it for input events. Using L.Browser.touch for input handicaps
people with mice if it's too liberal in what it classes as touchscreens,
and handicaps people with touchscreens if it's too conservative. There's
also no sweet spot: it's impossible to choose correctly if someone is
using both a touchscreen and a pointer device, as there's no right
option!

Previously many of our event handlers and some of our UI was gated
behind L.Browser.touch. This commit adds a new "window.touch" property
which is used instead. It has functions to help with event detection,
allowing you to easily make event handlers that work for only the input
devices they are designed for, without gating them behind feature
detection. This has the added bonus that - as you register all the
events - switching between a touchscreen and pointer is now not only
possible but already implemented!

For cases which don't have reasonable events to tag onto (e.g. the
teardrop for cursor movement) this commit adds "hasPrimaryTouchscreen"
and "hasAnyTouchscreen" which use the CSS media queries to detect if
there's a touchscreen attached to your device (either as the primary
input mechanism or at all). This works a lot more similarly to
L.Browser.mode, but being dynamically updated allows you to effectively
swich between touchscreen and not at-will. This still has all of the
disadvantages that L.Browser.touch did when used to register event
handlers, so my advice would be to avoid using it with events.

Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
Change-Id: I9016fc15ad3ccb3664af348fdcdca006495b0778
2023-11-22 15:48:06 +01:00
Pranam Lashkari
ab064bacc7 annotation: make sure parent-child relation is established
problem:
some times we order comments before parent-child relation is established,
this caused reply count not being updated correctly for other users

steps to reproduce:
User A open ODT, let us say already with comment or add one, and keep Sidebar open so that comments are short.
user B opens the same ODT with full comments. adds reply
User A does not update ticket number, does not have +1

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: If3360c8dd938c6bd177764d3c1383d7f3f845990
2023-11-22 15:24:10 +05:30
Miklos Vajna
d73d716dea context menu: allow unfloat table for Writer text frames
This is safe to do as it's not interactive, so it happens synchronously.
The matching uno command was added on core.git co-23.05 in commit
1f5c20352725cd6133e68e80e8523d865006161f (sw floattable, delete UI: add
an uno command to unfloat frame from context menu, 2023-11-17).

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: I74736c7d589c2062a8e9255a42f81bf790b7d3e3
2023-11-22 09:39:45 +00:00
Henry Castro
8b89b5271a cypress: add popup dialog unit test
Change-Id: Ieab263deaca67c7e473e028b01d9eac1c4eaafcc
Signed-off-by: Henry Castro <hcastro@collabora.com>
2023-11-21 20:28:57 +01:00
Henry Castro
a55244c547 jsdialog: check if "map" var is not undefined
Change-Id: I7ae6b557ab035b9f66bcb65e1c85ac9da0b993e7
Signed-off-by: Henry Castro <hcastro@collabora.com>
2023-11-21 20:28:57 +01:00
Henry Castro
a23adac78c browser: fix undefined property 'isPopup'
The PopUp dialog is not closed, and side effects
are unresponsive key input

Change-Id: Id72ef0c6d081aa73acb39a07eb3e8b33d0e8dc85
Signed-off-by: Henry Castro <hcastro@collabora.com>
2023-11-21 20:28:57 +01:00
Rash419
34f3dd4a62 wsd: disable ctrl+s when HideSaveOption is true
Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I190a03abcf80176cc2da77fd32190c683852b9a7
2023-11-21 16:13:52 +05:30
Pranam Lashkari
3c1ac04b0e annotation: reset comment id if autosave is cancelled
problem:
User A writes Comment 1 and saves
User A replies to himself, write something, click away to autosave, Cancel
user A modifies Comment 1 and OK - comment disappears, although it is there, seen after reload, but without modification.

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I5d83936f26939b5a05a0ce3099c01923a55c9606
2023-11-21 10:20:24 +05:30
Michael Meeks
6a32adcfe8 delta: fix threading gotcha when working.
The ThreadPool::work function can get its condition signalled -very- late.

With bad timing, this can occur after all the work is done, and when the
next batch of work is being fed into the pool.

This can mean that it takes work from the queue, and subverts the:

        bool useThreads = _threads.size() > 1 && _work.size() > 1;

check in ThreadPool::run - which can believe we are in a single
threaded, single tile mode - and not wait for this thread to complete.

That's not good [!] so ensure that threads are only runnable during
ThreadPool::run.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: Ifebb0f15cbb4c22ef33ffba06e7c6c87493818be
2023-11-20 19:24:13 +00:00
Michael Meeks
b45f4b8f93 spdx: improve machine and human readability of headers.
Change-Id: I71f1421debf31b8c6cd0fd75c0cb45e2563b8a5a
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2023-11-20 14:30:02 +00:00
genofire
7c7e667f5a fix(helm): bump version where doc_info exists (next release)
Signed-off-by: genofire <geno+dev@fireorbit.de>
Change-Id: Ic70706dee56ca1a13e36b3007a5ea4fca01e1dab
2023-11-20 12:40:30 +05:30
genofire
765433fcc8 chore(ci): update to official released helm-release version
Signed-off-by: genofire <geno+dev@fireorbit.de>
Change-Id: Ic7cfcaaf6888bc64763d0e44c3ad32a203bc3a7f
Signed-off-by: genofire <geno+dev@fireorbit.de>
2023-11-20 12:40:30 +05:30
genofire
cc8a0c7ea3 fix: improve prometheus-rules
Signed-off-by: genofire <geno+dev@fireorbit.de>
Change-Id: I5076c74c3beeada0978d5b29dcc4e531cfce9241
2023-11-20 12:40:30 +05:30
genofire
2c63cf62d8 fix: rename metric from doc_pid to doc_info
Change-Id: d03c077629b343e9b4cefd5914e74f89
Signed-off-by: genofire <geno+dev@fireorbit.de>
2023-11-18 14:12:53 +00:00
genofire
e4ac11756a fix: metrics doc_pid use pid as label
so it would be use on the other metrics for lookup with promql group_left

Change-Id: eaba5e26f99b4cb0843c16f6f5b840c6
Signed-off-by: genofire <geno+dev@fireorbit.de>
2023-11-18 14:12:53 +00:00
Caolán McNamara
e8e3a2ccdb _debugLoadUpdate isn't set, _debugUpdates isn't read
in:

commit 24f0819337
Date:   Wed Jul 12 10:09:10 2023 +0100

    tile debug: render updates as well as deltas in the tile.

one is typo for the other

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I9cb27d7912aa86373b8ef399fca442f85cfd69fb
2023-11-17 18:03:54 +00:00
Darshan-upadhyay1110
77d52f53f2 Remove property menu item from Files menu item
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: I18cb5c1ff001fbdd5dc91706d73488c7ad408441
2023-11-17 13:12:08 +05:30
Darshan-upadhyay1110
dacc36928f Fix mobile-ui-tabs Misaligned Headings
- will fix Misaligned ui-tabs in mobile wizard
- also added scrollable property that will handle more fields in tabs if it does not fit into screen
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: Ib982a59c141d937c7f92eb9684b91fc7f2548df5
2023-11-17 13:12:08 +05:30
Michael Meeks
dd29ca294b Logging - dump our log history to the console when asked.
Remove unused co-ordinates parameter, and unhelpful L.Log call
locations, ensure that all protocol messages are logged.

Increase the buffer to record startup and replay it for easier
debugging after startup.

Now when enabling "Protocol Logging" in the first minute from
document load, we get:

INCOMING[!fullyLoadedAndReady].statusindicator: find
INCOMING[!fullyLoadedAndReady].statusindicator: connect
INCOMING[!fullyLoadedAndReady].statusindicator: ready
INCOMING[!fullyLoadedAndReady].perm: edit
INCOMING[!fullyLoadedAndReady].filemode:{"readOnly": false, "editComment": true}
etc.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I5d2a8639e8038dbcc31d6e8fd1b8f8ebf2fff7bc
2023-11-16 19:33:22 +00:00
Michael Meeks
2b3088ee52 wasm: don't try to package obsolete and/or renamed online.data
presumably a regression from 158fe2f93:

    Trying to init LOKit cause mysterious runtime error...

Change-Id: I28603a98a7c9015afc76d46a302a23ccf4ece261
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2023-11-16 19:30:48 +00:00
Pedro Pinto Silva
1c03bb9ee2 Readme: remove temporally the IRC in favor of matrix
For now please use Matrix ( https://app.element.io/#/room/#cool-dev:libera.chat ) or Telegram ( https://web.telegram.org/k/#@CollaboraOnline) to chat. Matrix bridge was shutdown and thus, the IRC channel is isolated: https://libera.chat/news/matrix-bridge-disabled-retrospective.   For now matrix was chosen since it allows easy image upload and it's still bridged with telegram

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ifbf4ddb958d7cb06b6820723f3cb58ce652f92f0
2023-11-16 17:42:19 +01:00
Pedro Pinto Silva
7ce23eb825 Readme: Gitpod guide: Move everything to build instructions page
https://collaboraonline.github.io/post/build-code/#build-code-on-gitpod

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I18f65e97e4a1b1944d7a90d779e09108b15f4cbd
2023-11-16 17:42:19 +01:00
Andras Timar
2d74142ba2 docker: added a few labels
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I6ffcc2a4eaf6d8c56eea65914eb758ab8cf59e86
2023-11-16 11:13:57 +01:00
Skyler Grey
02d64f19d9 Prevent hiding the menu bar in tabbed mode
Tabbed mode doesn't have a menu bar, instead it has tabs. These can't be
hidden. Unfortunately, the post messages to hide the menu bar have the
side effect of hiding the tabs. This commit prevents the tabs being
hidden when in tabbed mode, and shows the tabs again when switching from
compact mode into tabbed mode.

When switching back from tabbed into compact mode, the state that you
would like the menu bar to be in (hidden/shown) will be remembered and
restored. This includes any postmessages that were not acted on while in
tabbed mode.

Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
Change-Id: I1177903fe965e354538e6e7bbc3c83af3177938e
2023-11-16 09:20:28 +00:00
Skyler Grey
3185307c7a Stop hiding both menu and notebookbar softlocking
Previously, when using the Collapse_Notebookbar postmessage or
equivalent ui_defaults (SpreadsheetToolbar=false, etc.), particularly in
compact mode, it was possible to additionally hide the menu bar. As the
button to show the menu bar is on the notebookbar, this meant that you
couldn't reactivate either notebookbar or menubar until you refreshed
the page. This is particularly annoying in integrators that may not
provide an easy way to reload the page

This commit makes it so that hiding the menu bar automatically
uncollapses the notebookbar and won't let it be collapsed again. Whether
the notebook bar should be collapsed (the last thing done to it was a
collapse) is remembered and restored after the menu bar is shown again,
so if you send a postmessage that will affect the state of the
notebookbar after the menu is shown (even though it will not affect the
notebookbar's state immediately)

Caveats:
- If you are hiding the notebookbar to limit the control the user has,
  that's broken by this commit as it makes it impossible to hide both
  the menu and notebook bars at the same time.
- The notebook bar will be hidden again when re-showing the menu bar,
  however there still isn't a way to hide the notebook bar in normal
  use (i.e. without using either postmessage or ui_defaults) while in
  compact mode (although there is a workaround to show it- switching
  into tabbed mode and then back!). It might be nice to have one.

Other considered solutions:
- We could add a new button that allowed you to reopen the menu if both
  menu and notebookbar were hidden
  - Not sure there's much benefit to this over just doing what we're
    doing here, and it's harder to implement
- We could disable the button to hide the menu bar when the notebookbar
  is collapsed
  - As far as I know, there's no button in the UI to show the notebook
    bar. This would make it impossible to hide the menu bar if the
    notebookbar was hidden via postmessage or ui_defaults

Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
Change-Id: Ieab6d72a6be181aba88e9a5b21dda16a369b9e54
2023-11-16 09:20:28 +00:00
Pedro Pinto Silva
c31030302c Gitpod: update defaults in coolwsd-gitpod.xml
Add missing defaults and update user_interface defaults

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Icbb3a40e507bbb409d208a434920e36c62eb1f03
2023-11-15 15:28:48 +01:00
Timur Gadžo
db31a486df Update bug_report.md with Collabora
When creating NEW bug in GITHUB, there is template text, it includes OS, Browser, Version, but missing is COLLABORA Version.
I am seeing reports with all fillied, but missing that which is most important.
In addiiton, I set Browser with Versoin to be single line with e.g. Chrome 114.

Signed-off-by: Timur Gadžo <timur.gadzo@collabora.com>
Change-Id: I2d88a635474580189eb82a25ff6c55284b36692c
2023-11-15 12:21:41 +01:00
Rash419
6b06f1d8fe browser:disable ctrl+s when HideSaveOption is true
Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I0a5e3b1061b6ccff8ce98d60cddd906fcb337003
2023-11-15 12:57:58 +05:30
Michael Meeks
1a4dafa3e5 Fetch available memory and limits from our control group not the system.
To test:

sudo mkdir /sys/fs/cgroup/memory/0
echo "900M" | sudo tee /sys/fs/cgroup/memory/0/memory.limit_in_bytes
echo $$ | sudo tee /sys/fs/cgroup/memory/0/tasks
make run # and check the log.

Change-Id: I81cf5f6212418d1f900a56cdfe476e1594f4fe77
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2023-11-14 19:36:31 +00:00
Michael Meeks
7183a3d3de spdx: improve machine and human readability of headers.
Change-Id: Ice934380029bf27054e830fffc07a5d037d1430f
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2023-11-14 19:36:31 +00:00
Michael Meeks
2238a40cca Log thread count and memory usage on startup.
Helpful for diagnosing resource constrained systems.

Change-Id: I9e31298d6fa1f5243175350ba48699c0772d486c
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2023-11-14 19:36:31 +00:00
Caolán McNamara
164159ab26 add regression tests via cypress for unwanted no-change invalidations
multi-user scenarios

d) Rejoin triggers invalidations: fails with core:
https://cgit.freedesktop.org/libreoffice/core/commit/?id=f1633dc0e06b046a9ca0f2fa53e7858be1584ffb
reverted

e) Rejoin after save triggers constant invalidations: fails with core:
https://cgit.freedesktop.org/libreoffice/core/commit/?id=770df258bc0a66ee7551a59807d79cebcdcbb85e
reverted

https://github.com/CollaboraOnline/online/issues/7167

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I27795027a1bd186953c71807c5cfc35685af0e70
2023-11-14 19:12:26 +00:00
Caolán McNamara
7229eed150 add regression tests via cypress for unwanted no-change invalidations
single user scenarios

a) Click Empty Header: fails with core:
https://cgit.freedesktop.org/libreoffice/core/commit/?id=f425c0aab6e33b8029bf7e87ac9b10b4b4489ac9
reverted

b) Enter Numbering Portion: fails with core:
https://cgit.freedesktop.org/libreoffice/core/commit/?id=643c6b9a96020d5498d981c7ab081226415ab016
reverted

c) Click Existing Header: fails with core:
https://cgit.freedesktop.org/libreoffice/core/commit/?id=ce948053b1fa9a2843886dce4642cc36c94dd0e0
reverted

https://github.com/CollaboraOnline/online/issues/7167

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I7d7283cabe6803d9258a09a858beb29083634738
2023-11-14 19:12:26 +00:00
Rash419
4ba4c61aad browser: fix duplicate comment reply on autosave
- before this patch used send uno:ReplyComment on every autosave which was duplicating the comments

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I82b41783d97f5651c486011ac105750acf9589aa
2023-11-15 00:05:16 +05:30
Caolán McNamara
35fd4bb744 copy CA certificates to jail
for curl >= 8.3.0 which removed the nss backend, requiring the
certs with the OpenSSL backend.

DeepL access doesn't work otherwise.

Use the same list and order as used in core:

see: similar to https://gerrit.libreoffice.org/c/core/+/158915
and: https://www.happyassassin.net/posts/2015/01/12/a-note-about-ssltls-trusted-certificate-stores-and-platforms/
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Ic9de1e926977f63592146ac17df42704c8d86ccd
2023-11-14 17:01:49 +00:00
Marco Cecchetti
4dfe164f3f Make wsd aware of LOK_CALLBACK_CORE_LOG callback
Signed-off-by: Marco Cecchetti <marco.cecchetti@collabora.com>
Change-Id: Ief478ba97ac33f386d7b09aa551168e2c05259de
2023-11-14 13:16:30 +01:00
Caolán McNamara
ed8f95c1bc empty updates seen on first view of document
this is visible even with hello-world.odt in the debugging overlay where
I have 9 cols and 7 rows visible.

Load hello-world.odt and from the 4th row, 8th col onwards each tile has
a "upd: 1" of an additional empty delta update to the original tile

browser-side:
a) we have one OUTGOING: tilecombine request which which requests an
   initial 72 tiles (9 cols, 8 rows)
b) we then receive 72 tiles as requested
c) and browser sends back tileprocessed for each
d) but we then get a series of (38) delta: requests after that which are
   unexplained

server-side:
a) on the initial tilecombine, DocumentBroker::handleTileCombinedRequest
   sends the 72 requested tiles for rendering and registers to send each when
   ready.

    for (auto& tile : tileCombined.getTiles())
    {
        ...
        tilesNeedsRendering.push_back(tile);
        ...
        tileCache().subscribeToTileRendering(tile, session, now);
    }

    // Send rendering request, prerender before we actually send the tiles
    if (!tilesNeedsRendering.empty())
        sendTileCombine(TileCombined::create(tilesNeedsRendering));

    and stores what tiles it want to send in session->getRequestedTiles()

    before calling sendRequestedTiles(session);

b) at this sendRequestedTiles (also later when tileprocessed is seen from
   each tile response from the browser which also calls sendRequestedTiles), then:

c) DocumentBroker::sendRequestedTiles loops over existing requests and drops
   from session->getRequestedTiles() both the tiles that it can send immediately,
   and those that are queued to get rendered.

d) But it only does this for a max amount of tiles, based on beingRendered, up to
   a tilesOnFlyUpperLimit. beingRendered is bumped for each tile not ready yet,
   on the assumption that it needs to be rendered.

e) But we already have some getting rendered, and bump beingRendered anyway,
   so tilesOnFlyUpperLimit can easily get exceeded on a first page, typically this
   first sendRequestedTiles loop stops early, and stops dropping tiles from the
   request queue that are already queued to be rendered.

f) at some point we get a tileprocessed and sendRequestedTiles is called again,
   the request queue wasn't emptied, and by now it is likely the tile cache has
   results for them (which were already sent) and sendTileNow is used to send those,
   resulting in additional empty deltas sent for fulfilled queries.

logs will show "Redundant request to subscribe on tile" warnings in this case

Here as a conservative improvement only increase beingRendered if the sendRequestedTiles
subscribeToTileRendering actually does anything.

There is a mismatch in what handleTileCombinedRequest does vs what
sendRequestedTiles does. Maybe handleTileCombinedRequest should leave it
to sendRequestedTiles to do the sendTileCombine, or maybe
handleTileCombinedRequest shouldn't add those tiles to the session
requestedTiles.

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I3044f4b3e47f00c680aa5b87dd7bdad2f27e8c73
2023-11-13 14:27:53 +00:00
Gabriel Masei
524e70eb47 fix language issue in datepicker control
It seems that datepicker control expects only a language input
in regional property (e.g. fr) instead of language-country (e.g. fr-FR).

Signed-off-by: Gabriel Masei <gabriel.masei@1and1.ro>
Change-Id: I7d5ac40cfa4a72cdc7862a8b4c4d14bdecad6c3b
2023-11-13 19:57:12 +05:30
Caolán McNamara
73a5b97b99 make this other test more robust if partial page 1 is still visible
when cursor is on page 2

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Iae8d28ad54401fbbe78a2f2429f1a6912f1ea967
2023-11-13 13:39:23 +00:00