Compare commits

...

6340 Commits

Author SHA1 Message Date
Szymon Kłos 0a9b7b6b82 jsdialog: move About dialog to separate file
- converted to TS
- will be later extended with additional functionality

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I883da61018808d79d616d7346e86dadf9fa7079e
2024-06-01 07:48:48 +02:00
Gökay Şatır f846e66c4b Text selections handles should be active when there is a text selection.
That condition shouldn't be checked before scrolling to selection position.

This fixes "doesn't scroll to searched text" issue.

Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I9f901ba2fa15ade5416ad68f62e356e34163c641
2024-06-01 07:48:25 +02:00
Pedro Pinto Silva 2da77405ad Formula bar: buttons: make grid on equably sized columns and fix btn
- Toolbox: Remove height min-content as it's prone to problems and different
outcomes depending on the context. Plus we don't need it if we enforce
it via grid
- Center all elements
  - Including unotoolbutton

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Iadc55f0d253dd4a06c11ad8cd062c02863b1d12f
2024-05-31 14:30:19 +01:00
Szymon Kłos 2e918f5484 formulabar: fix css for accept / cancel formula
When editing formula buttons were misaligned

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I1208656751d9d3238d5a980503fd07bb868fd374
2024-05-31 14:30:19 +01:00
Pedro Pinto Silva cc8febf7fa Toolitem: Set Clear direct formatting btns with the same css class
Before this commit:
- Impress on tabbed and compact view didn't have the common (and in
used in the other apps) 'unoResetAttributes' css class

Set all with the same CSS class so integrators with customizations
are not force to single out special cases.

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I82deb98a628b527470fcd2e54f1374df21380bfa
2024-05-31 11:56:48 +01:00
Szymon Kłos 11682f1fc8 Calc: fix following editor on different sheet
If we follow user who does editing on other part - we need to
switch to it first. Whitout that we failed with error in the
browser console due to missing marker on the screen.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I3d4150f5c8f70240d3a386a8d5a7fdbc4e8d37d9
2024-05-30 19:56:48 +02:00
Szymon Kłos bf32a3f5dc Move following state to the app docstate
- avoid using fields manually, use helper functions
  to keep correct state transitions

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Iad466ab00b256c86eebf9da2609edc68513e988c
2024-05-30 19:56:48 +02:00
Caolán McNamara d96a5a0421 dynamically change slurp timeout
as if the pending one was launched with the new delay priority
initially

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Ie5553492c52baaedbd84dc1450328ce8c3b623bb
2024-05-30 17:30:48 +02:00
Caolán McNamara 0beeaafb46 don't warn about the self trigger of invaldatetiles: EMPTY
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Ia3232aa18605a2b5ba4a957b961b21eb0d13b00d
2024-05-30 17:30:48 +02:00
Caolán McNamara 4d86fede5c fix up a little
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I7cc1bb2c941878420ecffcdb177c0701ba99e244
2024-05-30 17:30:48 +02:00
Michael Meeks 7ae880289d project how many tiles we are waiting for while slurping.
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I464843eefaa2422ab5119e07ee4a9cb7418062f2
2024-05-30 17:30:48 +02:00
ArshErgon 79b667a331 formatted and add missing .md
Signed-off-by: ArshErgon <arshergon@gmail.com>
Change-Id: I69e51b19822417a6861ec23d96755622f2cdf01b
2024-05-30 13:50:47 +01:00
Pedro Pinto Silva faa64da0ca Text droplet (Teardrop): hide it when on non-touch desktop
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I6544845526c2e70bee7d6e3b193e9fb4931422c6
2024-05-30 14:18:51 +02:00
Andras Timar 0c74a8190b
Update SECURITY.md (24.04) 2024-05-30 12:42:49 +02:00
Gülşah Köse 8cd1245efa Implement Invert background color button
Button invokes the uno:InvertBackground command than user can
see the inverted document color even app is dark mode.

Signed-off-by: Gülşah Köse <gulsah.kose@collabora.com>
Change-Id: Ie273ec4b3d26ffbc38384dc39943b8656e4364d4
2024-05-30 11:20:26 +01:00
Gülşah Köse 963ed8ce01 Revert "Hide Invert Background button until implementation"
This reverts commit a73991b7f3.

Signed-off-by: Gülşah Köse <gulsah.kose@collabora.com>
Change-Id: Ib4bc64ab71f6a6f57dc1f1c1faf359455e58b529
2024-05-30 11:20:26 +01:00
Hubert Figuière 7b9b62b7a3 draw/impress: Added the convert curve command
It is .uno:ChangeBezier
See https://github.com/CollaboraOnline/online/issues/9174

Requires https://gerrit.libreoffice.org/c/core/+/168170

Signed-off-by: Hubert Figuière <hub@collabora.com>
Change-Id: I96b8e04ac41a803446e11ae44fb6d19a2b2b0bf1
2024-05-30 05:59:22 -04:00
Bayram Çiçek 6318f53112 Formula Wizard: better alignment of label that under the Structure tab
- the label between Structure tab and TreeView was misaligned. This is corrected with this commit.
- label "Structure:" changed to "Functions in use and their validity:" with https://gerrit.libreoffice.org/c/core/+/168161 (6c15d246afa1774298e1438f2117b593a065bfe4)

Signed-off-by: Bayram Çiçek <bayram.cicek@collabora.com>
Change-Id: I197fb84154226709395f4f2789fc288367c00f05
2024-05-30 09:59:48 +01:00
Pedro Pinto Silva 689b799498 Update Matrix room name and url
The matrix saga seems to be solved now

- There were 3 rooms. I needed to remove both local and published
address from there (the old matrix.org room)
- Skyler helped by setting the local address of the active room to the
matrix.org
- Then we could set the published and the main address as #cool-dev:matrix.org

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I7e73e0750dd94744eb0706230da40ab51bbad7f7
2024-05-30 08:49:31 +01:00
Sebastiaan Veld 6636199c19 Translated using Weblate (Dutch)
Currently translated at 100.0% (588 of 588 strings)

Co-authored-by: Sebastiaan Veld <sebastiaan.veld@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/nl/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I55e6bcc2f5599c163dde5c5d82cac7908598b829
2024-05-30 07:49:56 +02:00
Henry Castro 2ac4797305 browser: fix removing new comment
1) User1 start resizing row/column
2) User2 create a new annotation
3) User1 finish resizing row/column
4) Server update comment position
5) User2 new annotation is hidden

if comment is new, do not hide when updating new comment data.

Change-Id: I593dff167f75cc3dc451467a7d76a09f94a3a556
Signed-off-by: Henry Castro <hcastro@collabora.com>
2024-05-29 08:55:01 -04:00
Miklos Vajna 2c82f0a712 fuzzer: fix default log level
Recent a failed jenkins job had a lot of output, the tail of the log
starts with: "Skipping 3,970,746 KB".

I guessed that the problem is that the fuzzer figured out what is the
protocol to change log levels, but it isn't there yet.

What seems to happen is that fuzzer/Common.cpp defines the log level to
be "none", but this is not handled at GenericLogger::mapToLevel(), so we
managed to enable trace level for known-broken input where we're not
interested in the errors/warnings.

The fix can be tested by adding assert(false); to Log::log(), previously
the fuzzer failed with an assertion failure for a simple input like "12"
(unknown command) and now it just exits silently.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: Ib5f4bedca706d7a0310a2eb9f661053a3095822d
2024-05-29 09:10:44 +02:00
Parth Raiyani 7f0c21410e Toolbar: fix hyperlink protocol preservation
Signed-off-by: Parth Raiyani <pmr642001@gmail.com>
Change-Id: I0fdabc20a5f5f0f0db3f47b935968aa46bdcebeb
2024-05-28 20:09:34 +02:00
Parth Raiyani 6186c6d536 Toolbar: Fix broken urls and auto-focus on modal open
Signed-off-by: Parth Raiyani <pmr642001@gmail.com>
Change-Id: Ife153056b3dccb64b66a614c37532c59690bd792
2024-05-28 20:09:34 +02:00
Pranam Lashkari ba7917cd95 jsdailog:css: increase width to fit content in manage changes dialog
increased jsdialog width to fit content when necessary.

removed margin from icon to make it look even spaced in listview (i.e: manage changes, zotero add citation)

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I225b5b5d42d573cb4afcdb428e2eb3b81aa99073
2024-05-28 19:00:27 +03:00
Méven Car b784919bb2 UiManager: default to notebookbar by default
In case of misconfiguration (missing userInterfaceMode), deprecated "classic" or "default" userInterfaceMode, which is the default, use notebookbar.

Users can still use "compact" as documented to use the compact style
(formerly called classic).

Signed-off-by: Méven Car <meven.car@collabora.com>
Change-Id: I00ee65edb21fcf80724bc83f947341dfdc5c8ed6
2024-05-28 15:45:44 +01:00
Skyler Grey e5070e7718 fix(desktop): Prevent zoom view jump
Previously, zooming using the +/- zoom buttons caused your view to jump
such that alternating in/out zooms would move you to the top left of the
document

Additionally, the zoom did not zoom around the correct position, so a
cursor in the frame would not correctly zoom around the cursor

This is now fixed

Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
Change-Id: I6d468795abbb972174774cf1620cb4a0959142f2
2024-05-28 13:57:41 +00:00
Bayram Çiçek 42c044dbdf add AutoFill contextmenu items
- remove Control.AutoFillOptions.ts & cleanup
- added AutoFill contextmenu items
  - Copy Cells
  - Fill Series
- add 'AutoFill':{spreadsheet:{menu:_('Auto Fill'),},}
- remove LOK_CALLBACK_CELL_ACTIONS

Signed-off-by: Bayram Çiçek <bayram.cicek@collabora.com>
Change-Id: Ib64f6078ec50c994da3ed188910cba258adfe3fa
2024-05-28 14:07:09 +02:00
Bayram Çiçek 84802577d3 remove isAutoFillFromOnMouseUp and add LOK callback
- we don't depend on OnMouseUp event of AutoFillMarkerSection.ts anymore
which makes the popup more stable in terms of open and close.
- requires: added LOK_CALLBACK_CELL_ACTIONS with
  https://gerrit.libreoffice.org/c/core/+/168086 - 1cf2a23c7cb0a149562635432b003164059617b5

Signed-off-by: Bayram Çiçek <bayram.cicek@collabora.com>
Change-Id: I2294f6aa091231c2ddf1a448776f51a3a892b646
2024-05-28 14:07:09 +02:00
Bayram Çiçek 56ae33dd34 make instance.isAutofilter false for autoFillPopup
- create instance.isAutoFillPopup
- change closeAutoFilterDialogsOnTabChange() to closePopupsOnTabChange()

Signed-off-by: Bayram Çiçek <bayram.cicek@collabora.com>
Change-Id: I32c5d26f8567a156ff0e94bc6ff1ff5bdf7be8b3
2024-05-28 14:07:09 +02:00
Bayram Çiçek 03bee87129 remove undo call and refactoring
- undo uno calls are removed: no need
- unified the popup operations with _handleKeyDownForPopup()
- make popup entries translatable
- add explanation for AutoFill

Signed-off-by: Bayram Çiçek <bayram.cicek@collabora.com>
Change-Id: I69935150597c90851c3d731b42b1adf072ae29cd
2024-05-28 14:07:09 +02:00
Bayram Çiçek b7da4e5a9d close AutoFill popup on contextmenu operations
- remove unnecessary "this._map.fire('closeautofillpopup')" calls
- refactoring
- close AutoFill popup on some contextmenu entries from sheet tabs
  - insert sheet before/after
  - delete / hide / show sheet

Signed-off-by: Bayram Çiçek <bayram.cicek@collabora.com>
Change-Id: Ie5d28addd00985f7b0335a66457da2451250e057
(cherry picked from commit 63827dcd32)
2024-05-28 14:07:09 +02:00
Bayram Çiçek b8c55589b4 add Esc and ArrowDown key support
- Esc key to close AutoFillPopup
- ArrowDown to focus elements inside AutoFillPopup
- ArrowDown/Up to cycle inside the popup

- also remove "this._map.fire('closeautofillpopup')" from
"Ctrl + Alt + PageUp/Down" since we don't need to close
AutoFill popup anymore here as we close the popup immediately
after pressing "Ctrl" key

Signed-off-by: Bayram Çiçek <bayram.cicek@collabora.com>
Change-Id: Iac4bbd1104f3140bd47842daaae2eb3bfa87daef
(cherry picked from commit 6ab88d7bf3)
2024-05-28 14:07:09 +02:00
Bayram Çiçek 0d87c761fc make AutoFill work with .uno:AutoFill
requires: https://gerrit.libreoffice.org/c/core/+/167726
5ab9b63e6624947a6076a01f9bab0d7a925e0e40

Copy cells
- this.map.sendUnoCommand('.uno:AutoFill?Copy:bool=true');

Fill series
- this.map.sendUnoCommand('.uno:AutoFill?Copy:bool=false');

Signed-off-by: Bayram Çiçek <bayram.cicek@collabora.com>
Change-Id: I40551e4323997c8de6997483b0cff239cb8d2ec4
(cherry picked from commit fad20b12a6)
2024-05-28 14:07:09 +02:00
Bayram Çiçek 378c27b998 add functionality for AutoFill Options
Added functionalities for "Copy cells" and "Fill series".

- Copy cells
this.map.sendUnoCommand('.uno:FillSeries?FillStep:string=0')

- Fill series
this.map.sendUnoCommand('.uno:FillSeries?FillStep:string=1')

Signed-off-by: Bayram Çiçek <bayram.cicek@collabora.com>
Change-Id: I77a3512627e35f2a176b147d3f54f08c7f5f7b08
(cherry picked from commit 77c1764fb3)
2024-05-28 14:07:09 +02:00
Bayram Çiçek 2e4caadd05 close AutoFill popup on tab change
close AutoFill popup when
- sheet tab is clicked
- new sheet is inserted
- sheet tab is switched using Ctrl+Alt+PageUp/PageDown
keyboard shortcuts

Signed-off-by: Bayram Çiçek <bayram.cicek@collabora.com>
Change-Id: I03711d202b47813d101bd066db1a3e8e106430e3
(cherry picked from commit 8529063378)
2024-05-28 14:07:09 +02:00
Bayram Çiçek 5b7f27f1e4 add auto fill popup UI
AutoFill popup has two options:
- Copy cells
- Fill series

Signed-off-by: Bayram Çiçek <bayram.cicek@collabora.com>
Change-Id: I08ad88afad1bb6bd2d746a9a8964f1b4446ae7c7
(cherry picked from commit 91f080976f)
2024-05-28 14:07:09 +02:00
Miklos Vajna 454bcc42e5 common: avoid adding too large ints in the Rectangle ctor
Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: I17b5793c6a0d8a285f41af3846e7aacfc84f3c8c
2024-05-28 13:41:14 +02:00
Darshan-upadhyay1110 74f0979880 Add cypress test to verify input element state after update message
- this test will check input element getting set to it's right state after update on jsDialog
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: Ib22dd0c5d6c6ab95650617480c137b306b8a6e80
2024-05-28 13:28:18 +02:00
Darshan-upadhyay1110 3591fba03e Fix state update of input element
- Input elements in jsDialog does not change state after CORE update message
- this is because in previous commits we changed input element structure.
- we should Synchronize the child elements with parent.
- this patch will Synchronize disable state of parent with it's child elements

Change-Id: Ice94de732dc7392f3c79100e6a2d60480294eb0e
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
2024-05-28 13:28:18 +02:00
Darshan-upadhyay1110 bb15a1d05a Close mobile icon should be hidden in desktop
- if we switch to compact mode & server get reconnected some icons are visible in desktop which should be only visible in mobile view.
- in control.toolbar.js we call updateItem method for icon in mobile
    - `toolbar.updateItem({id: 'closemobile', type: 'customtoolitem', w2icon: 'editmode'});`
- after this updateItem call we should also check all condition about that item like
        - item should be visible in mobile or not
        - item should be available in tablet or not etc etc
- this patch will do that checks
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>

Change-Id: I11adc3d94cacd4afe85e177d050ccc73f3112872
2024-05-28 13:19:49 +02:00
Szymon Kłos f8a64d5407 cypress: quick fix for rounding error
unblock CI from:
cy:command ✘  assert	expected **<tspan.TextPosition>** to have attribute **y** with the value **'3286'**, but the value was **'3285'**

error

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I0ccb209c12e15a829f99f8323bf7b1ee8ca39aa0
2024-05-28 12:17:42 +02:00
Pedro Pinto Silva 449b35b64c Color pickers: Fix image size and alignment
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ib4391a2dce205928309c94b86ad7c8e759eaffa1
2024-05-27 15:01:10 +01:00
Pedro Pinto Silva 429070a224 Notebookbar: Home: Remove unnecessary CSS and fix fontnamecombobox
- Remove all the rules that are not longer active (better solutions
were implemented)
- Remove also #fontnamecombobox.notebookbar declaration. Not only top
and padding were not applicable but we were setting the width which in
turn was creating a different gap (bigger than the grid gap) and
moving icons out of place

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ibf608f41d25beb3120b5b6d9f032673697f018b8
2024-05-27 15:01:10 +01:00
Pedro Pinto Silva da051e2178 CharBackColor: Remove legacy CSS rule, no need for extra margin
- This has no effect anymore since the id has changed
- Furthermore, the fix is not needed anymore since meanwhile impress
and draw has seen new button additions (shadow, fontwork) that renders
this obsolete.

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Id1990e9c6e227cf2f2567b18e7826fee81865a69
2024-05-27 15:01:10 +01:00
Szymon Kłos 0dd2c55adc jsdialog: add queue for snackbars
Snackbars will appear one after other now.
Add forgotten SnackbarController to Makefile.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Iaf5ed98f8384c2688adc9653948137f23fb0ce3e
2024-05-27 13:45:08 +02:00
Poe Mon 97ec41c0f2 Translated using Weblate (Japanese)
Currently translated at 100.0% (588 of 588 strings)

Co-authored-by: Poe Mon <p.poemon.awitd@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ja/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I558b81c08e65f2a58eaf8d8581813f3c237fc81a
2024-05-27 10:04:39 +02:00
Sabri Ünal e2b238aba9 Translated using Weblate (Turkish)
Currently translated at 100.0% (588 of 588 strings)

Co-authored-by: Sabri Ünal <yakushabb@gmail.com>
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: Id4337eac79282f315de7ced849ae686d906a5778
2024-05-27 10:04:39 +02:00
Yaron Shahrabani 7962411b5f Translated using Weblate (Hebrew)
Currently translated at 70.2% (336 of 478 strings)

Translated using Weblate (Hebrew)

Currently translated at 100.0% (588 of 588 strings)

Co-authored-by: Yaron Shahrabani <sh.yaron@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/he/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/he/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Icc48a9c6f488090a1a03e3704053ff26a41f3cd4
2024-05-27 10:04:39 +02:00
bittin1ddc447d824349b2 f322995c59 Translated using Weblate (Swedish)
Currently translated at 100.0% (588 of 588 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: I5a6fa8532f559069b07e7fb4cb4802e21c9220c4
2024-05-27 10:04:39 +02:00
Ali fe1de9cbf7 Translated using Weblate (Arabic)
Currently translated at 100.0% (478 of 478 strings)

Translated using Weblate (Arabic)

Currently translated at 100.0% (110 of 110 strings)

Co-authored-by: Ali <alimahwer@yahoo.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/android-app/ar/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/ar/
Translation: Collabora Online/Android app
Translation: Collabora Online/Help
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I7a63416359b15bd99dde457b06a1912e6d434b75
2024-05-27 10:04:39 +02:00
Caolán McNamara f8a79af294 cid#318827 COPY_INSTEAD_OF_MOVE
and

cid#318828 COPY_INSTEAD_OF_MOVE
cid#318832 COPY_INSTEAD_OF_MOVE
cid#318861 COPY_INSTEAD_OF_MOVE
cid#318888 COPY_INSTEAD_OF_MOVE
cid#318889 COPY_INSTEAD_OF_MOVE
cid#318898 COPY_INSTEAD_OF_MOVE

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I1022fcb7437ebf7ef4c9d6f49e1c6b9a73ea6837
2024-05-27 08:36:18 +02:00
Caolán McNamara 6638f4a059 cid#368709 Improper use of negative value
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Ic13d6cb836deb9612990ab40e0b5ad6b27b5d7a8
2024-05-27 08:36:18 +02:00
Caolán McNamara c2aaf2edd1 cid#368707 Unchecked return value from library
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Ifb47d264a91a55d8bd565b1251a95973ddb8f5ec
2024-05-27 08:36:18 +02:00
Michael Meeks a6678b554a Cleanup and shorten tilecombine descriptor lists.
If we have all default values of imgSize, wid, old-wid then we
should simply not serialize these out to save space and improve
readability.

Unfortunately, this means that we need to catch the mutation of
the TileCombined's content in two places; now just one. Building
the queue of rendered tiles to send back is now moved and
wrapped into a TileCombinedBuilder class - this also lets us
stop serialize taking a random vectors of TileDescs. However
the DocumentBroker::handleTileCombinedRequest method needs to
set the force-keyframe oldWid=0 flag on individual tiles and
then update the TileCombined.

Ideally we would have a nice visitor API and drop the non-const
getTiles() method that returns a reference to our internal vector.

Update tests, to not have redundant attributes, and add more tests
to ensure redundant attributes are removed.

Change-Id: Id76d3ae14d459d73bbae8112d840dea27f66588b
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2024-05-26 19:28:30 +01:00
Andras Timar 90a72c6baa Update Helm Chart with new release 24.04.3.1
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I5cd3cf80874a99dd84f62ae6877ee202d8a43163
2024-05-26 15:48:01 +02:00
Darshan-upadhyay1110 5c7ee9e0c3 Replace ruler height hard coded value with css-variable
- Replacing the height value with the CSS variable will help maintain better consistency.
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: I0627778919885c8ee0a989f0b47b976304892585
2024-05-24 21:10:52 +05:30
Szymon Kłos 34850e7bbd jsdialog: create separate controller for snackbar
Reduce size of UIManager and also it will make it possible
to add queue of snackbars to show.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I221049f48f471d85795ede7922a668eef4c7f0df
2024-05-24 16:20:39 +02:00
Szymon Kłos 500997fdd9 jsdialog: move types into single file
To deduplicate definitions

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I3c542e192f31ece69cff08cae5dd61e32b478420
2024-05-24 16:20:39 +02:00
Aron Budea 8846578d38 Move hello-world.odg to hello.odg
So it behaves similar to other hello/hello-world documents.

Signed-off-by: Aron Budea <aron.budea@collabora.com>
Change-Id: I529b5bec81c1bf5085300f8c52311db023c6b09a
2024-05-24 14:26:09 +02:00
Darshan-upadhyay1110 0a9968a074 Handle case for items only available in dark mode
- we have now some uno item present only in dark mode.
- so there is no resone to check image exist or not for light mode.
- we will set dummy url for those image elements.
- this patch will consider those items and will not throw error if icons are not present light mode
- Example: please see `invertbackground` item in view tab after change to dark mode
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>

Change-Id: I6aa2fc9d7bdd356617a808f17d14f77bc8453496
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
2024-05-24 11:48:27 +01:00
Darshan-upadhyay1110 8396afa1af Statusbar: Set image to false for zoom menubutton
- `zoom` menubutton is not a image to represent so we will make `image: false`
- this pathc will fix image not found error for `lc_zoom.svg`
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: I39c2d68f4b0afc7b3831c2082be2ae1a315b2d8e
2024-05-24 11:48:27 +01:00
Darshan-upadhyay1110 6dfeffd53a Add missing dark mode icons for 24.04
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: Ibf42fc04f953769790e9bc4145d8fe4f6e994298
2024-05-24 11:48:27 +01:00
Pedro Pinto Silva 9c766bb9ee Comment: Add missing icon alias and remove unnecessary duplicates
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ie1ea6e5be762ee5d1650cf8ccb0a408ce6340c08
2024-05-24 11:48:27 +01:00
Rashesh Padia b9ef48310e mobile: add save progress bar on top toolbar
Signed-off-by: Rashesh Padia <rashesh.padia@collabora.com>
Change-Id: I14c8a715e922d00b2cfd8f67afd7fc2df2dd9d38
2024-05-24 09:16:39 +01:00
Pedro Pinto Silva 7fad9a6a44 Formula Wizard: list view: use smaller icons
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I84076a6a3b85fe3d61e849946bd8f9f8e7638985
2024-05-24 08:44:41 +01:00
Pedro Pinto Silva 1340fdcdcb Formula Wizard: Fix search input field width
Before this commit the search field wouldn't fill the available space.

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: If079942b1e594a0461835e52ad65827a639c6173
2024-05-24 08:44:41 +01:00
Pedro Pinto Silva 701422de3e Formula Wizard: Tabs: Make tree view transparent
Make those transparent since color would just look odd within tab
background and more importantly because they offer no interactivity.

----

Currently the treeview accepts clicks (not just the expanding and
collapsing) but also children accept clicks but do nothing. Probably
we should fix this.

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ifc53d0099a19103b15895dc8b76127034b05f3c1
2024-05-24 08:44:41 +01:00
Pedro Pinto Silva dba0e711b5 Formula Wizard: Tabs content should extend all the available space
- Use all the available space on both tabs' content
- Fix Structure tab's content
  - make the tree view extent the available space (1fr)

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ib1c9e852a3a292f795675365040318c1d5602f35
2024-05-24 08:44:41 +01:00
Pedro Pinto Silva 567f6def33 Formula Wizard: Tabs: make it clear that this is tab group
Before this commit the tabs in this dialog were being rendered as top
level dialog navigational tabs. However, this is not the case. Add
background and border to clear separate one and the other.

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I158ee1e1d4d163417f5055459adfeac47b6ab437
2024-05-24 08:44:41 +01:00
Darshan-upadhyay1110 b9bef83487 Change vertical ruler code to typscript
- remove use of Leaflet's
- change working js code to ts
- please check above commit messages for understanding of implementation.
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: Iee222bbdb343730014260c1785a90e68c6dedfd1
2024-05-24 08:56:03 +02:00
Darshan-upadhyay1110 c25e8d78cc Reset Top/Bottom values of page margin if view section changes
- we are string previous response values of top/bottom margin
- resone is because we need that values to pass after dragEnd.
- but if we change section foucs from Header to Footer or Text area to Shape then we need to reset that old values with the incoming response
- this patch will do that.
- for `table` we will hide the marker as we do not need that. table already have there marker to resize.

- added some edge cases like if start marker goes beyond end marker
- start and end marker should not cross limit beyond page top/bottom

Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>

Change-Id: Iffd3cbf08806666b858d9c3da7ca6362085223dd
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
2024-05-24 08:56:03 +02:00
Darshan-upadhyay1110 c3c7caaf0b Set upper and lower margin after drag in vertical ruler
- Send Upeer and Lower space value for header and footer according to drag
- we need to send both values in core.
- even if we drag either upper or lower we will send values accordingly but both values should be updated

Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: I4ef3287c5afe6e1eef5aac225d3c06ca9d1fd9e5
2024-05-24 08:56:03 +02:00
Darshan-upadhyay1110 4a13987fdd Add markers to vertical ruler.
- As we do for horizontal ruler we need marker that will change margin of Header and Footer of the document
- current patch will have design where user can see markers in vertical ruler
- you can drag and change potition of marker.

Improvments that still need to do:
- user can drag but it will not change size/margin of header/Footer
- next we will pass info to CORE according to corrdinates we got from drag
- it will update text potition on document

Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>

Change-Id: I9663a75d5c84eace784266c76be12abd762434bb
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
2024-05-24 08:56:03 +02:00
Darshan-upadhyay1110 d41d73382d Add pageoffset calculation for vertical ruler
- Before this commit vertical ruler stays only in first page
- if we jum to page 2,3 so and so ruler won't change it's possition
- but i have added some calculation based data we recevice from CORE
- calculation:
    - we need to consider pageoffset for vertical ruler
    - check if cursor moves to other page
    - then add total Height of previous pages.
    - for Ex: if we are at page 3 then ruler.marginInlineStart should additionally have total height ( page1Height + page2Height)
    - this will place ruler to exact possition where we want
- next : add Top and Bottom margin drag
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>

Change-Id: Ie2a2d4e5f0cfd627bcafd81230ad33b7aec280a2
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
2024-05-24 08:56:03 +02:00
Darshan-upadhyay1110 d3d7f48225 Add vertical ruler for writer
- add new LOK callback for vertical & horizontal ruler update

Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: I3c0e26f22072de4612e128d58ac41b629be82807

Add vertical ruler and implement margin calculation

- Added new vertical ruler file to separate it from horizontal ruler calculation
- For vertical ruler we do not need tab stops so removed it.
- next stpe will be to implement add top and bottom margin by drag

Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: I8186c874ff59571db7a75ec4c31f81fc655ef301
2024-05-24 08:56:03 +02:00
Michael Meeks 69c6739e47 cool#9145 - KitQueue: re-work _tileQueue to use TileDesc.
This stops a huge amount of parsing, re-parsing and conversion
from strings and back, making our few N^2 loops over the tiles
much more efficient.

Retain queue tests with the same strings via using a helper
to convert back to something expected.

Replace TileDesc::getId() with isPreview().

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: If40fc45f1fb474d37371e4b949da5fdfc594fdc8
2024-05-23 19:50:09 +01:00
Michael Meeks 9eae552049 Split tile requests from the main incoming message stream.
Leave them as strings for now; this should be a pure re-factor.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: Ibad2bc343afe3fe32ea729623f6b03575c7b0121
2024-05-23 19:50:09 +01:00
Michael Meeks bdc2041797 Remove un-necessary distinction between pop and get.
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I2870a646f1e16cc138978dd84251bec1939aba13
2024-05-23 19:50:09 +01:00
Caolán McNamara 8640baba46 "Invalid tilecombine descriptor" seen without explanation
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I0635ce3897866953aec9fbbee35cd04f896e845a
2024-05-23 17:12:26 +02:00
k-dasari e3f488a09c Updating error message for node check while building cool for iOS.
Signed-off-by: k-dasari <150323657+k-dasari@users.noreply.github.com>
Change-Id: I91162f59e6ebab2e0e111904a16eb60d65d9382f
2024-05-23 16:51:29 +02:00
Caolán McNamara cf903242a2 fix resquest -> request in coolwsd.xml comment
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Ie804baec41b59fe7418bb7057f8110cd04b64b9a
2024-05-23 14:24:37 +01:00
Darshan-upadhyay1110 9bfc60b8fe Improve color contrast in application canvas
- improved color contrast between text area and edge.
- changed --color-canvas for contrast between text and edge area.
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: I8dd8296901da6ee5ce59704f7e27d8c37d29e8b1
2024-05-23 14:14:45 +01:00
Andras Timar 9c15cb6931 docker: use 24.04 repos
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: If21db1acb5b8bb254b5c2e1360b732bba1194cc4
2024-05-23 14:17:39 +02:00
Michael Meeks 030895c754 cool#9120 - use a simple hash to avoid most tile: comparisons.
Parsing a string to a TileDesc and then comparing is inefficient
enough, without doing that in an N^2 loop for the SenderQueue.

Still N^2 - and of dubious value in the world of deltas; but in
almost all cases a simple string + integer compare.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: Ibe8230679e27b98cfa95567fea700e2f7d5ac09c
2024-05-22 19:58:28 +01:00
Hubert Figuière 7a2bcddeb9 readme: Added blurb about the SDK
Signed-off-by: Hubert Figuière <hub@collabora.com>
Change-Id: I7814643089e83da2e45ff7bc83df73244cf2d1d4
2024-05-22 12:10:05 -04:00
Gökay Şatır b4bc0a71c4 Problem:
* On Calc, when user starts editing a cell and uses zoom, core side sends "cursorvisible: false" message.
* This hides the cursor.
* We also hide the cursor while user is zooming in / out.
* But the core side zoom doesn't set the opacity back.

This commit fixes the input handler's visibility issue.
But the core side will continue sending the cursorvisibility message.

Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: Ibf679c132f96dc3504de17d00958133bd45244fb
2024-05-22 11:53:17 +03:00
Gökay Şatır e5256c265d User app.file.textCursor.visible instead of _isCursorVisible.
Duplicate functionality removed.

Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: Id0bc972d20e6974dc2671696830a55dcb35ade7a
2024-05-22 11:53:17 +03:00
Andras Timar 594b605ab7 Bump version to 24.04.3.1
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: If310d2fd7b7da7d1e62639344717e0344ee592af
2024-05-21 16:41:02 +02:00
Caolán McNamara b85452b35b multiple "EMPTY" invalidations for different parts dropped as dups
since:

commit 6f49f9398e
Date:   Thu May 9 09:19:44 2024 +0100

    Split outbound callback processing from incoming message queueing.

an out by one adjustment

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Ie5c2133dd7239aa62c017306c962c26ea6e526bb
2024-05-21 15:18:37 +01:00
Hubert Figuière 2643992f95 Translated using Weblate (French)
Currently translated at 100.0% (588 of 588 strings)

Co-authored-by: Hubert Figuière <hub@figuiere.net>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/fr/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Icc016591763db192e7b4fc9b01700b02593d2426
2024-05-21 16:13:24 +02:00
Pedro Pinto Silva 8eba634231 Translated using Weblate (Portuguese)
Currently translated at 100.0% (588 of 588 strings)

Translated using Weblate (Portuguese (Brazil))

Currently translated at 100.0% (588 of 588 strings)

Co-authored-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Co-authored-by: Pedro Silva <pedro.silva@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pt/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pt_BR/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I9c45a233e479ea10c9de092265afee238a793b75
2024-05-21 16:13:24 +02:00
Ali e3cb73d1fc Translated using Weblate (Arabic)
Currently translated at 100.0% (110 of 110 strings)

Translated using Weblate (Arabic)

Currently translated at 100.0% (588 of 588 strings)

Co-authored-by: Ali <alimahwer@yahoo.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/android-app/ar/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ar/
Translation: Collabora Online/Android app
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I8f8cc2a8f27e50d3a60b6a8ba3f8adc9e8dbd6d9
2024-05-21 16:13:24 +02:00
gallegonovato 89cfe8463e Translated using Weblate (Spanish)
Currently translated at 100.0% (588 of 588 strings)

Co-authored-by: gallegonovato <fran-carro@hotmail.es>
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: I0ed063594644f5d26c7ad71d7c3c80365adbb690
2024-05-21 16:13:24 +02:00
Matthaiks f458df9463 Translated using Weblate (Polish)
Currently translated at 100.0% (588 of 588 strings)

Co-authored-by: Matthaiks <kitynska@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pl/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I632037308291800d990d37ff689add6d37769f6d
2024-05-21 16:13:24 +02:00
Darshan Upadhyay 3a3518b454 Translated using Weblate (Hindi)
Currently translated at 26.5% (156 of 588 strings)

Translated using Weblate (Hindi)

Currently translated at 20.0% (1 of 5 strings)

Co-authored-by: Darshan Upadhyay <darshan.upadhyay1188@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ios-app/hi/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/hi/
Translation: Collabora Online/UI
Translation: Collabora Online/iOS app
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I5cb618bd36c160658d61cf70cb6f6b51d7be628c
2024-05-21 16:13:24 +02:00
Andras Timar c9cca42137 Translated using Weblate (Hungarian)
Currently translated at 100.0% (588 of 588 strings)

Translated using Weblate (German)

Currently translated at 100.0% (588 of 588 strings)

Co-authored-by: Andras Timar <andras.timar@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/de/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/hu/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I4a6fe12f0bda8dc1c3aa2c8761f11b8e7adb0d0e
2024-05-21 16:13:24 +02:00
Lily Logua e2dba9956a Translated using Weblate (German)
Currently translated at 100.0% (588 of 588 strings)

Co-authored-by: Lily Logua <lily.logua@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/de/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I2a4d903f72fefdd474f5daa824b14a0e9ec8ee5c
2024-05-21 16:13:24 +02:00
Pedro Pinto Silva 0ad09fda60 Impress: fix slide preview animation and color
Replace svgs introduced in 3efbfaeccd
- Animation and smiley svg: Use gray
- Don't use a smiley face, use instead something more semantic such as
a checkmark

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I38e341ae393c59e785adff9207f8111d68c341ef
2024-05-21 15:06:45 +01:00
Gülşah Köse a73991b7f3 Hide Invert Background button until implementation
Signed-off-by: Gülşah Köse <gulsah.kose@collabora.com>
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I061901d748641ffbb40f60e2fa03fcc31df2cd7e
2024-05-21 13:44:25 +01:00
Gökay Şatır 85b93bfb9d Fix coordinate calculation error of cell selection area.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I5f130924455cd29018baf6fbc14c1ceffd29cf46
2024-05-21 14:10:13 +03:00
Gülşah Köse 2acc5a94c9 Introduce new formula auto complete feature
When we start to type a formula in a cell eg: =S
We will see the possible function names in a popup.
If we move with "ArrowDown and ArrowUp" and enter, or direcly select a
function with mouse, function name will be automatically inserted into
cell. Then we will see the usage details of the selected function in
another dialog.

Signed-off-by: Gülşah Köse <gulsah.kose@collabora.com>
Change-Id: Ic06ca0d904770e95bb85ccdf9a73f60b7d5c5eb0
2024-05-21 12:09:20 +01:00
Rashesh Padia a6cf4eb118 zotero: fix: can't select language or store as option in citation style
- problem: in combobox widget we were always passing the
`_defaultCallback` which will send `dialogevent` to server but in
zotero's case the callback is different
- also fixes some `undefined type` errors

Signed-off-by: Rashesh Padia <rashesh.padia@collabora.com>
Change-Id: I7bd7aff6a1a3a9715123c1335ea83ab13fd7b22a
2024-05-21 16:06:27 +05:30
Rashesh Padia 93e9259aaf css: decrease max-width at which filename is hidden
Signed-off-by: Rashesh Padia <rashesh.padia@collabora.com>
Change-Id: Ibbd2aed0739af6627d982db954487ad98159500e
2024-05-21 12:34:29 +02:00
Caolán McNamara 166f12b545 shutdown AsyncDNS before WebServerPoll shutdown
and start it after WebServerPoll start.

AsyncDNS depends on COOLWSD::getWebServerPoll()
existing.

/lib/x86_64-linux-gnu/libc.so.6
	__GI_abort
		/build/glibc-bkR840/glibc-2.27/stdlib/abort.c:81
/lib/x86_64-linux-gnu/libpthread.so.0
	__restore_rt
		??:?
/lib/x86_64-linux-gnu/libpthread.so.0
	__GI___pthread_mutex_lock
		/build/glibc-bkR840/glibc-2.27/nptl/../nptl/pthread_mutex_lock.c:67
/usr/bin/coolwsd
	ConvertToAddressResolver::dispatchNextLookup()::{lambda(std::string const&, std::string const&)#1}::operator()(std::string const&, std::string const&) const
		??:?
/usr/bin/coolwsd
	net::AsyncDNS::resolveDNS()
		??:?
/lib/x86_64-linux-gnu/libpthread.so.0
	start_thread
		/build/glibc-bkR840/glibc-2.27/nptl/pthread_create.c:463

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I372802b872bc899874404e7317ecd9ecb1d0757a
2024-05-21 12:12:55 +02:00
Gökay Şatır f480e10d75 Fix cursor visibility issue.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I5ba8a44b51592b52ed9bfc378d4461b8fc7dccd6
2024-05-21 12:45:40 +03:00
Ashod Nakashian f1001cddcc wsd: remove unused (Is)ViewWithCommentsFileExtension(s)
Change-Id: I25158862746ce6a3e4ee16ff9d661ec96810ce24
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-05-21 04:52:12 -04:00
Ashod Nakashian 8acded5b25 wsd: fileserver: better compression failure handling
We now always cache the uncompressed file data even
when compressing fails. If no compressed data exists,
we return the uncompressed version.

Change-Id: I885275dac526f4d47ea74d6badcb609390e7c139
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-05-21 04:52:12 -04:00
Ashod Nakashian 8a808591ca wsd: simplify file-server caching
This removes explicit file-reading logic
with the existing utility function that
is more robust and avoid the C++ streaming
abstractions altogether.

Change-Id: I170b8497a4f9185f1b29e632da27a3520ca0347a
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-05-21 04:52:12 -04:00
Ashod Nakashian c153d88c65 wsd: generic readFile
Change-Id: I7b4328785399a2601193d71b5d6f5d1c9f933bfb
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-05-21 04:52:12 -04:00
Ashod Nakashian e292041078 wsd: refactored readFile to take buffer
Change-Id: I31a76e25cff150bcf33d503e6ed9b7fae0e0ed42
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-05-21 04:52:12 -04:00
Ashod Nakashian e4f30f38e3 wsd: FileServer cleanup
Change-Id: I4ebdbee733922be312a7a5b9b59bcb6c6329a06b
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-05-21 04:52:12 -04:00
Miklos Vajna a161ee30f4 cool#9072 browser: better error handling when navigator.clipboard.write is advertised but fails
In case an integration doesn't allow clipboard interaction via
<https://sdk.collaboraonline.com/docs/advanced_integration.html#allow-the-clipboard-permission-query>,
we end up in a situation where navigator.clipboard.write is not
undefined, but is broken.

By the time navigator.clipboard.write() fails, it's too late to fall
back to the old copy code, as the security context is already gone.

Fix the problem by improving the failure handling: show the popup to try
again copying, remember that navigator.clipboard.write() failed and
prefetch the text selection, so next time a copy is tried (via the
keyboard), the selection doesn't need re-creating. (Normally the
selection change would trigger the prefetch, so select->copy->copy-again
would still fail.)

Note that paste doesn't have a similar problem, since there we always
try the old paste code first, and only use the new paste code if the old
one fails.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: I12ea4810395970421000d213744d1838213c7a07
2024-05-21 09:47:54 +01:00
Michael Meeks 216b14ee39 Send Content-Length and Connection: close to help browsers.
Possibly the combination of "gzip" and us being unhelpful about
lengths could lead to browser hangs; who can say.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I632dfc46afde3883544292d687bdff023bccc8ac
2024-05-21 10:28:25 +02:00
Caolán McNamara c3a8683f69 use new startThread
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I4cf56d0b2aae394a3e2c4f40cf64f0de4de9f418
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2024-05-21 09:22:43 +01:00
Pedro Pinto Silva 3760e64c6b Toolbar-down: Fix Search input field and other elements alignment
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ib1e1b1247dc42e721921c6bf1b68726cf0c916e5
2024-05-21 08:06:50 +01:00
Pedro Pinto Silva 3a749bf0ff Writer: Accessibility Check: Add missing CSS class
Now that accessibility checker has change its command it's best to add
back in the CSS class that was being added automatically (based on the
uno command) for various reasons:
- Main one: the ".unoSidebarDeck.A11yCheckDeck" is less than ideal
class name (it includes a dot in the middle)
- Integrators might have customizations targeting the previous known
css class

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I7685d000a2110872cdbe83323136b7a6be604ca3
2024-05-21 06:38:57 +01:00
Andras Timar 890e5c6d06 Update l10n files for Weblate
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I95c712ad7c923a4dc941252d58f17771079b7544
2024-05-21 07:28:42 +02:00
Software In Interlingua e94798c02b Translated using Weblate (Interlingua)
Currently translated at 4.5% (1 of 22 strings)

Translated using Weblate (Interlingua)

Currently translated at 15.4% (17 of 110 strings)

Co-authored-by: Software In Interlingua <softinterlingua@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/android-app/ia/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/android-lib/ia/
Translation: Collabora Online/Android app
Translation: Collabora Online/Android lib
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I1a7fd795b02c7e1632d239789ba0569a0ec59e52
2024-05-21 07:27:15 +02:00
bittin1ddc447d824349b2 623a228502 Translated using Weblate (Swedish)
Currently translated at 100.0% (587 of 587 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: I21de4133a990885939ae2a145680159f781ca2f1
2024-05-21 07:27:15 +02:00
Ali a1e5880cd7 Translated using Weblate (Arabic)
Currently translated at 82.8% (396 of 478 strings)

Translated using Weblate (Arabic)

Currently translated at 82.8% (396 of 478 strings)

Translated using Weblate (Arabic)

Currently translated at 100.0% (587 of 587 strings)

Co-authored-by: Ali <alimahwer@yahoo.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/ar/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ar/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I357c4d4b539b0331d074d9d3608f0e63c6269527
2024-05-21 07:27:15 +02:00
Neil Guertin 1b586a5a41 Do not return null character from TraceFileRecord toString
Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: I0458ca2cb4214cc6d235a1f1322282e7b271e3f1
2024-05-20 21:29:50 +02:00
Caolán McNamara a8a2a95b0e cid#318933 Big parameter passed by value
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I90bb07726656e8066387ea6615045b8dbf813358
2024-05-20 21:28:19 +02:00
Caolán McNamara b4490dcb68 return early on error case for clarity
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I0cf892b5772d12b3ca914186c000b18dba912429
2024-05-20 21:28:19 +02:00
Caolán McNamara 5075b59955 cid#318857 COPY_INSTEAD_OF_MOVE
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Iaa1058edc3e8189af93bdb0dd8c227c1a3640a98
2024-05-20 21:28:19 +02:00
Caolán McNamara 853b257302 cid#368510 COPY_INSTEAD_OF_MOVE
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Iee1524be2f956aa049ad603a7245e022daecbcd4
2024-05-20 21:28:19 +02:00
Caolán McNamara 7e02a1ebd5 cid#368509 COPY_INSTEAD_OF_MOVE
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I3305f8b993a67d22849800ac6cc65f4b64506c35
2024-05-20 21:28:19 +02:00
Caolán McNamara 15f7d56b2d cid#368508 COPY_INSTEAD_OF_MOVE
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Icd74082ef6c32c9c0e266dc876a67675d95e7edf
2024-05-20 21:28:19 +02:00
Pedro Pinto Silva c623afe97e Tablet: Tabbed view: tabs container too wide
Tab buttons and their background (gray) looks odd, extending the full
width even if there is no more tabs to show.

This sub container cannot be allow to extend (flex-grow). Otherwise,
we end up with tabs background extending all the available area.
We can safely turn this off because the parent element
".notebookbar-tabs-container" already sits in place and extends the
whole area.

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I6ec3fa6f40d4138420569e9acf60c906a7c43035
2024-05-20 16:38:32 +01:00
Pedro Pinto Silva 716015b9cc Remove erroneous css selector and its rule
It seems when updating CSS we introduced the  "w2ui-toolbar"
with missing dot: 826592458c

But it seems the problem is inherited from long ago with
"#toolbar-up-more,w2ui-toolbar" (comma instead of dot) introduced in
6901ad9251

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ia7023581979f0644b90437a6d65aaae8288360f2
2024-05-20 16:38:23 +01:00
Pedro Pinto Silva f843b77e9c Desktop: compact mode: Fix hidden button with undefined img
1. Load with notebookbar mode
2. Switch to compact mode via UI
3. Inspect -> see the existence of "#closemobile-button"
  - a div (unotoolbutton) with id closemobile that is hidden, has a
  button (unobutton) with id "closemobile-button" that is generated
  with an undefined img "lc_closemobile.svg" -> we don't have that

Add an alias. I don't think we ever use this. It seems to be a
temporary state that never gets to be shown to the user (is also
hidden) and when the UI is updated the HTML structure
changes. Nevertheless best to reference an image that exists

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I500737d0e9a7c321f9f92e55c9348ca7064a6625
2024-05-20 16:38:23 +01:00
Pedro Pinto Silva 9d8c7cca55 Remove unused close icon and its legacy w2ui css rules
Mobile:
- This is not used anymore and the respective element is now being
  targeted as `toolbar-mobile-back`
- closedoc.svg: .editmode-off .mobile-wizard-back .sub-menu-arrow

Desktop:
- close_toolbar.svg is not used anymore. We re-use the same
closedoc svg and it's been targeted as #closebutton

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ia02378811886824c77fa525911a2bf8901887037
2024-05-20 16:38:23 +01:00
Pedro Pinto Silva 6a98d42f9e Dark mode: Add missing invert background icon
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Icd11c0e7138e68cf9f185496ebeacf45f4fcf42f
2024-05-20 16:09:28 +01:00
Rashesh Padia 44551037fd css: fix progress bar overflowing in compact mode
Signed-off-by: Rashesh Padia <rashesh.padia@collabora.com>
Change-Id: I8f60eadf53f173f26d47d3959589a233673703ee
2024-05-20 14:44:46 +01:00
Gülşah Köse 5313acd1f9 Add Invert Background Color buttons
We have the that button for Writer, Calc, Draw, Impress
menubar and notebookbar

Signed-off-by: Gülşah Köse <gulsah.kose@collabora.com>
Change-Id: I745c010749b8c5b88c0d181418f2a47921a94620
2024-05-20 12:38:20 +01:00
Neil Guertin 6bb1054c52 Upgrade to cypress-tags 1.2.2
cypress-tags has fixed their npm publishing
Upgrade to take advantage of dependency updates
Reverts commit 873485f479

Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: Ib4128dd4224a70777eaace0bf1e4bc14974a5189
2024-05-20 06:44:54 -04:00
Méven Car f6e824d324 UI: slightly make the font size combo larger
So even '88.5 pt' fits in without getting cut.

Signed-off-by: Méven Car <meven.car@collabora.com>
Change-Id: I950b99b2bed7b1e038e1847586b517807f3aa9b0
2024-05-20 12:37:50 +02:00
Michael Meeks 1ff01c484e bgsave: unit test for a Kit crash during save disabling bgsave.
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I8702776b73b5af8bb87aafe3551800d268b9f9c4
2024-05-20 10:28:42 +01:00
Pedro Pinto Silva 5ec388e8b0 Toolbar-down (status bar): Don't over style disable status
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Id2907f25f63c05b9b59deca19f1d883e27e9ebeb
2024-05-20 08:42:04 +01:00
Pedro Pinto Silva f2cfd9a8b9 Toolbar-down (status bar): Fix hover status
For all status bar buttons
- Fix missing pointer
- Also, at leat for now, don't add border and don't add different
background. This is a status bar and adding those contributes to the
overall bulkiness. In the future we could perhaps remove the vertical
padding of the status bar and introduce back the background on
over (and remove the border radius). This would make the status bar
slimmer and slicker (so maybe we can turn its visibility on by default)

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I2b01d1d6c35ff2b3f487de0417170398d587a565
2024-05-20 08:42:04 +01:00
Michael Meeks 91863875a7 perf-test: update for latest substitutions in cool.html.
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I220d30074c412fe849f746bc7722d5f896544b1c
2024-05-20 09:27:33 +02:00
Aron Budea 7ed490700b Add empty handler for LOK_CALLBACK_VERTICAL_RULER_UPDATE
To silence errors until feature arrives. Occurs after
following core commit:
11b936629dd4ef9308d63b312900b8b7c8ff19b4

Signed-off-by: Aron Budea <aron.budea@collabora.com>
Change-Id: I6d9b01b265e3f07db2bc4ac7da46cbfcd0e17da5
2024-05-19 00:53:35 +02:00
Michael Meeks 24e0196471 bgsave: detect crashed bgsave process, and/or early termination.
Warn, flag save as failed, and disable bgsave in these cases,
perhaps we will not crash  main kit process next time around.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: Ia4f3d079a5503739efc11e408ed431c3b652860b
2024-05-18 18:57:54 +01:00
Michael Meeks 766b919c55 bsave: attempt to catch and avoid jsdialogs during save.
No known test vector for this, but it may happen and we don't
want to hang saving with non-interactive interactive UI coming
from the bigsave process, that can't get events back.

If this happens - something is very odd, and we should disable
background save; so do that and try to clean-up in time.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: Ifde2fe9ac8719321e38695725981b1f8b2b554f5
2024-05-18 18:57:54 +01:00
Michael Meeks 81e837cba4 bgsave: disable bgsave if we get an error:
Core patch to simulate:

Change-Id: Ifc221a0600956aea1ca67cb690e45b271142845d

--- a/sfx2/source/doc/objstor.cxx
+++ b/sfx2/source/doc/objstor.cxx
@@ -2755,7 +2755,7 @@ bool SfxObjectShell::DoSave_Impl( const SfxItemSet* pArgs )
         pMediumTmp->DisableFileSync(true);

     bool bSaved = false;
-    if( !GetErrorIgnoreWarning() && SaveTo_Impl( *pMediumTmp, pArgs ) )
+    if(false) // !GetErrorIgnoreWarning() && SaveTo_Impl( *pMediumTmp, pArgs ) )
     {
         bSaved = true;

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2024-05-18 18:57:54 +01:00
Michael Meeks 00237a3552 bgsave: restore modified status overlay in classic toolbar mode.
Apparently a transient victim of the transition to JSDialog.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I93c55db28d8ab2cc6b43dbce558d60dfa523fa76
2024-05-18 17:45:02 +02:00
Michael Meeks 08af75d52d bgsave: add a 'finalWrite' parameter, to keep various saves sync.
Avoid complexity and wasteful creation of new processes in many cases.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: If7713f80b390a8e0e53b7253244b838b325b745c
2024-05-18 17:45:02 +02:00
Rashesh Padia 35bcf56791 wsd: added config option for background manualsave
Signed-off-by: Rashesh Padia <rashesh.padia@collabora.com>
Change-Id: I76de35fe9b4135b74a96436f0c9a3245f4e00bd9
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2024-05-18 17:45:02 +02:00
SC e0bb38bbc6 Translated using Weblate (Portuguese)
Currently translated at 100.0% (587 of 587 strings)

Co-authored-by: SC <lalocas@protonmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pt/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Iee6d0ae39b15b029aef7b653c5f73eedb3590af6
2024-05-18 15:09:32 +02:00
lsy223622 43855e1fdc Translated using Weblate (Chinese (Simplified))
Currently translated at 97.6% (573 of 587 strings)

Co-authored-by: lsy223622 <lsy223622@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: Icd388f62c64b09e8e567a211b15986637b1b6495
2024-05-18 15:09:32 +02:00
Oğuz Ersen e4a62cf83b Translated using Weblate (Turkish)
Currently translated at 100.0% (587 of 587 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: I3d8a97ab687d39d45786c86cb1f44977e73efae6
2024-05-18 15:09:32 +02:00
Ali a44d193712 Translated using Weblate (Arabic)
Currently translated at 74.8% (358 of 478 strings)

Translated using Weblate (Arabic)

Currently translated at 95.7% (562 of 587 strings)

Translated using Weblate (Arabic)

Currently translated at 61.8% (68 of 110 strings)

Co-authored-by: Ali <alimahwer@yahoo.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/android-app/ar/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/ar/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ar/
Translation: Collabora Online/Android app
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I11c192cf79e807554edcfdd03f7a45240569528b
2024-05-18 15:09:32 +02:00
Francisco Gabriel Chardin c7442b7a7b Translated using Weblate (Spanish)
Currently translated at 100.0% (587 of 587 strings)

Co-authored-by: Francisco Gabriel Chardin <fran@camba.coop>
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: I46f645bb20e021e4237b0153c4da2e321be9431d
2024-05-18 15:09:32 +02:00
Matthaiks f6799c32c6 Translated using Weblate (Polish)
Currently translated at 100.0% (587 of 587 strings)

Co-authored-by: Matthaiks <kitynska@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pl/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I04718dff5b2d798b00306fe9f43cfff0059ad86f
2024-05-18 15:09:32 +02:00
Andras Timar 66ccc3722b Translated using Weblate (Hungarian)
Currently translated at 100.0% (587 of 587 strings)

Co-authored-by: Andras Timar <andras.timar@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/hu/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I5cd3bb159b5e90864bc3d1e31441db1044a87b77
2024-05-18 15:09:32 +02:00
Gökay Şatır 85812ddd9b Don't hide cell cursor when clearing the selections.
Scroll to cell cursor after a part change. Relax the conditions.

Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I8c1aad11a00145b67e11afc2d11f9ebca0aa6feb
2024-05-18 13:55:18 +02:00
Gökay Şatır 8848ad8385 Remove unused variables.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I9c8e12a876c203ea9adc0605bcf4ffe92930ec92
2024-05-18 13:55:18 +02:00
Neil Guertin 36a58aa7ef Reenable screenshots on cypress failure
Also remove SCREENSHOT_FOLDER environment variable, this
information is available from Cypress.config(), and if it needs
to change it should be set there.

Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: Idbfb627fa818a6864da355a990dbac2589f8df37
2024-05-18 12:30:31 +02:00
Michael Meeks a4e84db5b7 WaE: make older C++ compilers happy.
Change-Id: Ibf28f91ae735ab05e8f641d0d06602c1abe4be56
2024-05-18 11:23:01 +01:00
Hubert Figuière ae7c579910 Remove cool-api.html
It is obsolete

Signed-off-by: Hubert Figuière <hub@collabora.com>
Change-Id: I788e62d13dc009031bf77932149555c1078d2e71
2024-05-18 11:02:50 +02:00
Caolán McNamara 41dc5a6cb4 add dumping start of current and queued async dns lookups
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Ib40a6d1e3d6e983da674c5a7051ac5e7a565d0d1
2024-05-17 19:47:09 +01:00
Caolán McNamara 3699a0109e unlock mutex to allow entries to queue up while resolving
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: If8ee89ef0e7436675c596461243d82a2e0412358
2024-05-17 19:47:09 +01:00
Caolán McNamara c98b1c4c2b don't need to copy queue
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I1e2d818c0f5b678f3de179b6fb7ce747f9e76ac3
2024-05-17 19:47:09 +01:00
Caolán McNamara 694f0488ad allow capabilities to be sent when addresses resolved async
queue addresses that need resolution, use async dns to resolve them
and when final result known dispatch the capabilities to be sent

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I13b6d0c4d47e6e8ecd06f7a449c8f808a41e5e7a
2024-05-17 19:47:09 +01:00
Caolán McNamara fc41cf7694 rearrange capabilities response to depend on allowConvertTo result
as a separate stage

getCapabilitiesJson turns out to not be called in the MOBILEAPP case
so put inside !MOBILEAPP ifdef and remove unused branch

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Ie144e4612aa36be88169e44d7eda7825b49a03c8
2024-05-17 19:47:09 +01:00
Caolán McNamara 594b2308f7 split out the parts that depend on dns resolution to a separate step
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I2d8ab8f3c7e42d6b2f80d68861e54dca9fc4adf2
2024-05-17 19:47:09 +01:00
Caolán McNamara ff02af21d3 add Async DNS implementation
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I577af4280ac5a0a4389bb11ac6c531d846a196d1
2024-05-17 19:47:09 +01:00
Caolán McNamara 4318b0d619 wrap Poco DNS lookup and cache as a DNSResolver class
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Ie211fe596629af50eec01dd8512d2a12929545ea
2024-05-17 19:47:09 +01:00
Michael Meeks aefd4606f5 Fix excessive logging when a session hard quits very early on.
Enable Caolan's unit test, pass the proper 'disconnect' message
to the Kit so it can close the underlying window / resource for
the view.

Potentially this also removes 'phantom' users in the user-list
which might be another symptom of this issue.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: Ib0d0c5cefa7033fff5827d0a825a932cc12f8323
2024-05-17 17:36:17 +01:00
Ashod Nakashian e14b84c542 browser: display unauthorized error message
It seems there are two handler for this message.
Since we moved the authentication logic ahead
of the web-socket upgrade, the handler for
the unauthorized error doesn't display the
message. This fixes the it so now we correctly
display the unauthorized message.

Change-Id: Ic62476c74ce1583a2d7f33e1233e6fafd43d3bc4
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-05-17 08:47:46 -04:00
Rashesh Padia f7892edd86 js: show progress bar during background save
Signed-off-by: Rashesh Padia <rashesh.padia@collabora.com>
Change-Id: I3608bf597ab8d2c7660a1f884cf2c763c7652415
2024-05-17 13:18:37 +02:00
Pedro Pinto Silva ab04084cd9 Status bar: Fix MenuButtons being generated always with image
Before this commit menu buttons were always generated with img even if
it's not applicable. Example, the StateTableCellMenu (located in Calc
status bar that allows setting a state according to the function
chosen in the submenu): This text-only menu was generated with img
and thus throwing a 404 error in the console.

- Allow any unoToolButton to be set without image via option
- Add image: false option when setting StateTableCellMenu in the
statusbar

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I3fc3b5954f80229835526819b9b80d2a650bd922
2024-05-17 12:06:16 +01:00
Michael Meeks e5cee19919 callback logging fix mis-placed brace.
Causing excessive logging in error; we would find the right session
next time around the loop; from:

    commit 6f49f9398e
    Author: Michael Meeks <michael.meeks@collabora.com>
    Date:   Thu May 9 09:19:44 2024 +0100

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I33f696e4fae899a896d94cbeb70d5d9306f3b414
2024-05-17 12:05:45 +01:00
Michael Meeks 2414408576 logging: truncate long payloads before logging them.
Change-Id: I0caa3300961cd3d9d919691eab77663b5c663bfc
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2024-05-16 20:45:20 +02:00
Hubert Figuière b027c099cc postmessage: Fix show hide / button / command in Notebookbar
This is a regression from commit 9923e69595
This is because jQuery .child() is only for the direct descendants.
Use .find() instead which will search down the DOM tree.

This restore postmessage Hide_Command / Hide_Button and Show.

Signed-off-by: Hubert Figuière <hub@collabora.com>
Change-Id: Ibe84c520c9786c6c0026d3507a27a8d3580b38a0
2024-05-16 13:05:09 -04:00
Neil Guertin 873485f479 Lock cypress-tags to 1.1.2
cypress-tags published an update today with some missing files.
This keeps us on the old version until they can fix their release.

Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: Ie7b2ec506cae4bc244a70b4502a85d3a7530954b
2024-05-16 17:06:26 +01:00
Jaume Pujantell 3853d9b7bc browser: fix print menu for Calc
Changed the menu entries to conform to the new format used by
JSDialog menu since 07da50a.

Signed-off-by: Jaume Pujantell <jaume.pujantell@collabora.com>
Change-Id: I69109675ec69d66eb25ae128a6bb102e4628c705
2024-05-16 16:05:41 +03:00
Neil Guertin 1ea58908be Fix failing tests [desktop|mobile]/impress/apply_paragraph_props_text_spec.js
Another test failing because of shape selection.
Select text directly and remove calls to shape selection helpers.
Unskip a testpoint.
Merge horizontal alignment testpoints (also vertical alignment testpoints).

Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: I729870d6cd43457d2297005f4c815fe29de39f42
2024-05-16 12:23:37 +01:00
Gökay Şatır cd9875ec4f Fix to my silly mistake :)
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I3d368e683747f249a5f44171023bd7f5293aca63
2024-05-15 20:14:03 +03:00
Andras Timar acb7e90c13 Update l10n files for Weblate
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I1d482ad2c1077b15d8086c02da275963555882c0
2024-05-15 14:14:18 +02:00
Poe Mon 2e54c2a424 Translated using Weblate (Japanese)
Currently translated at 100.0% (478 of 478 strings)

Translation: Collabora Online/Help
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/ja/
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I12cd6d8095160f8e14555292db40b4b965f06b74
2024-05-15 14:12:50 +02:00
Poe Mon 23851dc7c9 Translated using Weblate (Japanese)
Currently translated at 100.0% (22 of 22 strings)

Translation: Collabora Online/Android lib
Translate-URL: https://hosted.weblate.org/projects/collabora-online/android-lib/ja/
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I624ff39244f77ee639640f5656b592c3bb35fcf7
2024-05-15 14:12:50 +02:00
Poe Mon da54f08b6e Translated using Weblate (Japanese)
Currently translated at 91.4% (437 of 478 strings)

Translation: Collabora Online/Help
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/ja/
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I6101112d3010febd8b304016a32d40276b8f39da
2024-05-15 14:12:50 +02:00
Poe Mon e4312f9396 Translated using Weblate (Japanese)
Currently translated at 79.4% (380 of 478 strings)

Translation: Collabora Online/Help
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/ja/
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I5db98d53a864ac7f35df8060e7c72c1ba23155c2
2024-05-15 14:12:50 +02:00
Poe Mon 1a0b4e2300 Translated using Weblate (Japanese)
Currently translated at 79.2% (379 of 478 strings)

Translation: Collabora Online/Help
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/ja/
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ia2e1fc79d5d94824c2c2920d1b1f09810750ad8d
2024-05-15 14:12:50 +02:00
Poe Mon 7026255f4f Translated using Weblate (Japanese)
Currently translated at 79.0% (378 of 478 strings)

Translation: Collabora Online/Help
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/ja/
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I281056ba9d5876f1c4160e6576ee56bc264169e7
2024-05-15 14:12:50 +02:00
Poe Mon 2b720cdb60 Translated using Weblate (Japanese)
Currently translated at 78.8% (377 of 478 strings)

Translation: Collabora Online/Help
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/ja/
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I6e12e744cecba35c57adfd34efbd28da20593f51
2024-05-15 14:12:50 +02:00
Poe Mon cc22892700 Translated using Weblate (Japanese)
Currently translated at 77.8% (372 of 478 strings)

Translation: Collabora Online/Help
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/ja/
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I71d4f6907890c8cc81ecb0fdf7a4d09ad0ef5047
2024-05-15 14:12:50 +02:00
Poe Mon 34a05e0db7 Translated using Weblate (Japanese)
Currently translated at 77.6% (371 of 478 strings)

Translation: Collabora Online/Help
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/ja/
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I5024e9590c9c16f5fc24e13b1ee894e8a174d64f
2024-05-15 14:12:50 +02:00
Poe Mon 57204c1229 Translated using Weblate (Japanese)
Currently translated at 77.4% (370 of 478 strings)

Translation: Collabora Online/Help
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/ja/
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I9fb4602e25228f38407b11169acefe47116b6e4c
2024-05-15 14:12:50 +02:00
Poe Mon 80ed6d9309 Translated using Weblate (Japanese)
Currently translated at 77.1% (369 of 478 strings)

Translation: Collabora Online/Help
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/ja/
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ib5971b94aa46eb9e1d74a486332f14a9c6627e83
2024-05-15 14:12:50 +02:00
bittin1ddc447d824349b2 9ec4366a45 Translated using Weblate (Swedish)
Currently translated at 100.0% (585 of 585 strings)

Translation: Collabora Online/UI
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/sv/
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Iceaa2eef77542854ca2fb9f770c25108462ae1c5
2024-05-15 14:12:50 +02:00
Poe Mon 00dde7a2ae Translated using Weblate (Japanese)
Currently translated at 70.2% (336 of 478 strings)

Translation: Collabora Online/Help
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/ja/
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: If15d4f76a60b547d674691e8b00513f06ad8a850
2024-05-15 14:12:50 +02:00
Poe Mon be902bd736 Translated using Weblate (Japanese)
Currently translated at 100.0% (110 of 110 strings)

Translation: Collabora Online/Android app
Translate-URL: https://hosted.weblate.org/projects/collabora-online/android-app/ja/
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I122793c57793c98f4d21f030c4784ac2ff7e8bd0
2024-05-15 14:12:50 +02:00
Rob Pearson 08c9b9a2f9 Translated using Weblate (English (South Africa))
Currently translated at 100.0% (585 of 585 strings)

Translation: Collabora Online/UI
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/en_ZA/
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Id4654296efb61c47131a538f8ead82ed3f647f94
2024-05-15 14:12:50 +02:00
Rob Pearson a633b7f627 Translated using Weblate (English (New Zealand))
Currently translated at 100.0% (585 of 585 strings)

Translation: Collabora Online/UI
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/en_NZ/
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I8bbd9a7e9f757a66a8f81557235443d37939297c
2024-05-15 14:12:50 +02:00
Rob Pearson 55c8c0d058 Translated using Weblate (English (United Kingdom))
Currently translated at 100.0% (585 of 585 strings)

Translation: Collabora Online/UI
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/en_GB/
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I0a8912f34f96cd6a70d5d41f171cce41f5a6168c
2024-05-15 14:12:49 +02:00
Rob Pearson 9db198849a Translated using Weblate (English (Australia))
Currently translated at 100.0% (585 of 585 strings)

Translation: Collabora Online/UI
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/en_AU/
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I15218d4f1e8a6334d70c1d96b58b338bfef94fce
2024-05-15 14:12:49 +02:00
Poe Mon 35c14d6fb0 Translated using Weblate (Japanese)
Currently translated at 65.6% (314 of 478 strings)

Translation: Collabora Online/Help
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/ja/
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ie689e357df29b9e0a02e34ce708d2ebc523ec5ed
2024-05-15 14:12:49 +02:00
Poe Mon 2a37ef7862 Translated using Weblate (Japanese)
Currently translated at 63.3% (303 of 478 strings)

Translation: Collabora Online/Help
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/ja/
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I238a6f1ae68686c8ff3e5a0886e3ae3877ca4c5e
2024-05-15 14:12:49 +02:00
Shavazo f0a7f87a27 Translated using Weblate (Japanese)
Currently translated at 63.3% (303 of 478 strings)

Translation: Collabora Online/Help
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/ja/
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I238a6f1ae68686c8ff3e5a0886e3ae3877ca4c5e
2024-05-15 14:12:49 +02:00
Poe Mon 0c58cf5512 Translated using Weblate (Japanese)
Currently translated at 62.1% (297 of 478 strings)

Translation: Collabora Online/Help
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/ja/
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: If4c7da24e2bcbc03f1b0ec26dd2a59d6c98ec76d
2024-05-15 14:12:49 +02:00
Shavazo 11f82d7894 Translated using Weblate (Japanese)
Currently translated at 62.1% (297 of 478 strings)

Translation: Collabora Online/Help
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/ja/
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: If4c7da24e2bcbc03f1b0ec26dd2a59d6c98ec76d
2024-05-15 14:12:49 +02:00
Alexander Gabilondo c4e8380c04 Translated using Weblate (Basque)
Currently translated at 98.8% (578 of 585 strings)

Co-authored-by: Alexander Gabilondo <alexgabi@openmailbox.org>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/eu/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I12cb7e29d9be8c39523f3d93973d96b55868e423
2024-05-15 14:12:49 +02:00
Poe Mon 43cd2cf467 Translated using Weblate (Japanese)
Currently translated at 60.2% (288 of 478 strings)

Translated using Weblate (Japanese)

Currently translated at 55.4% (265 of 478 strings)

Translated using Weblate (Japanese)

Currently translated at 55.2% (264 of 478 strings)

Translated using Weblate (Japanese)

Currently translated at 55.0% (263 of 478 strings)

Translated using Weblate (Japanese)

Currently translated at 53.7% (257 of 478 strings)

Translated using Weblate (Japanese)

Currently translated at 100.0% (585 of 585 strings)

Translated using Weblate (Japanese)

Currently translated at 88.0% (515 of 585 strings)

Translated using Weblate (Japanese)

Currently translated at 88.0% (515 of 585 strings)

Translated using Weblate (Japanese)

Currently translated at 100.0% (22 of 22 strings)

Translated using Weblate (Japanese)

Currently translated at 68.1% (75 of 110 strings)

Translated using Weblate (Japanese)

Currently translated at 86.3% (19 of 22 strings)

Co-authored-by: Poe Mon <p.poemon.awitd@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/android-app/ja/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/android-lib/ja/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/ja/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ja/
Translation: Collabora Online/Android app
Translation: Collabora Online/Android lib
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I6155250baf0d3f7ff2e54330cc9622a163ed177b
2024-05-15 14:12:49 +02:00
Sebastiaan Veld cfb61a3d30 Translated using Weblate (Dutch)
Currently translated at 100.0% (585 of 585 strings)

Translated using Weblate (Dutch)

Currently translated at 100.0% (585 of 585 strings)

Co-authored-by: Sebastiaan Veld <sebastiaan.veld@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/nl/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I26404dbeefe0d28b080eb4dd9c480ef1a60ab9ff
2024-05-15 14:12:49 +02:00
Shavazo 376cf3086f Translated using Weblate (Japanese)
Currently translated at 60.2% (288 of 478 strings)

Translated using Weblate (Japanese)

Currently translated at 55.2% (264 of 478 strings)

Translated using Weblate (Japanese)

Currently translated at 55.0% (263 of 478 strings)

Translated using Weblate (Japanese)

Currently translated at 53.7% (257 of 478 strings)

Translated using Weblate (Japanese)

Currently translated at 82.7% (484 of 585 strings)

Translated using Weblate (Japanese)

Currently translated at 38.0% (182 of 478 strings)

Translated using Weblate (Japanese)

Currently translated at 82.0% (480 of 585 strings)

Translated using Weblate (Japanese)

Currently translated at 78.9% (462 of 585 strings)

Co-authored-by: Shavazo <pleasure.7010@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/ja/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ja/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I652016630fe632cb4815ce045596aabc4126b343
2024-05-15 14:12:49 +02:00
Milo Ivir 275a3e7445 Translated using Weblate (Croatian)
Currently translated at 100.0% (478 of 478 strings)

Translated using Weblate (Croatian)

Currently translated at 99.1% (580 of 585 strings)

Co-authored-by: Milo Ivir <mail@milotype.de>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/hr/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/hr/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I91353f8cc83de2410f757ce2365e87471e14173b
2024-05-15 14:12:49 +02:00
SC 00e7d6c095 Translated using Weblate (Portuguese (Brazil))
Currently translated at 100.0% (478 of 478 strings)

Translated using Weblate (Portuguese)

Currently translated at 100.0% (478 of 478 strings)

Translated using Weblate (Portuguese)

Currently translated at 100.0% (585 of 585 strings)

Translated using Weblate (Portuguese)

Currently translated at 100.0% (22 of 22 strings)

Co-authored-by: SC <lalocas@protonmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/android-lib/pt/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/pt/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/pt_BR/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pt/
Translation: Collabora Online/Android lib
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ic6d8df7646c9854d5f7ba7bfffc6d691889b920c
2024-05-15 14:12:49 +02:00
Henry Castro a4d316f2ff browser: preview: fix invalidate all parts
It is called when changes dark/light mode,
reset the fetch property to false.

Change-Id: Id8de5245d56405624ebe72b5655d37b52892f654
Signed-off-by: Henry Castro <hcastro@collabora.com>
2024-05-15 10:13:30 +01:00
Henry Castro aa9ee925f8 browser: preview: fire 'beforerequestpreview' on request preview
Change visual indicator before request a preview.

Change-Id: I3a050ebc2aa2216af9508e01f56a5bf46756f5e1
Signed-off-by: Henry Castro <hcastro@collabora.com>
2024-05-15 10:13:30 +01:00
Henry Castro 3efbfaeccd browser: preview: add initial preview smile
Change-Id: Iad438677637850f8e410e7ba652a30673bea234a
Signed-off-by: Henry Castro <hcastro@collabora.com>
2024-05-15 10:13:30 +01:00
Henry Castro 43f56b89f6 browser: preview: remove remaining unused code
Change-Id: I36efb34ea813fc110fdad3b1165c37f7f2b9d683
Signed-off-by: Henry Castro <hcastro@collabora.com>
2024-05-15 10:13:30 +01:00
Skyler Grey a8af953b9f Make headers move on pinch-zoom
While zooming, things like the cursor move along with the zoom. The
headers instead stayed fixed until the zoom is complete. This is
inconsistent with panning, and worsens your experience when zooming

Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
Change-Id: I100de8f1fd62b831c285c9acab456260dbb77ead
2024-05-15 09:08:30 +00:00
Miklos Vajna 39e4644822 net: fix clang-15 build in resolveDNS()
net/NetUtil.cpp:65:23: error: no matching constructor for initialization of 'net::DNSCacheEntry'
    queries.push_back(DNSCacheEntry(addressToCheck, hostEntry, now));
                      ^             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Went wrong in commit 5be3ccc871 (cache DNS
results for 20 seconds, 2024-05-14), the rest of the code builds with
this toolchain.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: Idc8ed4d88a7f955cf2cdc1e10ac9931823950126
2024-05-15 10:36:53 +02:00
Skyler Grey d9168d447f fix(pan): Make screen edge offset document
Similarly to I1a2060d44d3b75935bf138056330a52d56a028ae, I have made
panning past the document edge create an offset too. This provides
similar benefits to the fluidity of scrolling at document edges.

Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
Change-Id: I2eedf2449620c5c8fec9ebf71dbe23d5a643ad5c
2024-05-15 10:07:05 +02:00
Skyler Grey 9a73b20731 fix(zoom): Make screen edge offset document
Zooming always leads to same backwards and forwards, even when you have
hit the screen edge. At the edge of the screen, you can move no further,
which causes the illusion of it being "sticky" on the return journey.

By adding an offset when we reach the edge, we can avoid the stickiness.

Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
Change-Id: I1a2060d44d3b75935bf138056330a52d56a028ae
2024-05-15 10:07:05 +02:00
Michael Meeks dbe905de8c bgsave: enable by default again.
Seems we have closed a number of the various races and problems
seen, and this can now be used.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: Ie3b0a1de847b9e77820d1135b4a8facdb7934707
2024-05-14 21:28:18 +01:00
Michael Meeks c4b4af5959 bgsave: filter statechanged messages from the bgsave process.
We don't want to send these to coolwsd, they have confusingly
different Modified state from the bgsave process - which is now
unmodified after save.

Really we should filter out almost all messages from the
bgsave process and not forward them.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: Ifaea028f080e31705256a2d72cf4ab03dfd94187
2024-05-14 21:28:18 +01:00
Michael Meeks 8f49f23a03 bgsave: update test for faster and more reliable modified status.
Requires core change: https://gerrit.libreoffice.org/c/core/+/167635

Change-Id: I7a7cf969e5018e8a7b70797450571d4c39b977d8
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2024-05-14 21:28:18 +01:00
Caolán McNamara 30e064907d explain the relationship of global and bundle 'onopen' handlers
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I5cba504273d4fd035a918839001ccb91976ccb16
2024-05-14 22:16:14 +02:00
Gökay Şatır 96e6eec12f Remove some unused lines.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I24686166eadfff8622e10bddaa4893ed821191eb
2024-05-14 22:12:57 +02:00
Gökay Şatır 571a066eca Convert cellSelectionArea into simpleRectangle.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: Ib3289dca84d02b7171db2e41f33dd18ba87c0cbf
2024-05-14 22:11:55 +02:00
Gökay Şatır d80689e551 Improve section definitions.
Remove createSection from CanvasSectionContainer.
Use extended classes.
Move some of the sections to their own files.

Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: If80e86f55920f80d9fb1fddef49ac451ed744b7c
2024-05-14 22:11:01 +02:00
Caolán McNamara ef64f815af reuse dns caching for resolveHostAddress too
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I8df71340f2c80a1dd19fd422b20f350b2755e22c
2024-05-14 22:09:49 +02:00
Caolán McNamara 5be3ccc871 cache DNS results for 20 seconds
querying capibilities happens frequently:

ClientRequestDispatcher: :allowConvertTo
ClientRequestDispatcher: :getCapabilitiesJson
ClientRequestDispatcher: :handleCapabilitiesRequest
ClientRequestDispatcher: :handleIncomingMessage
StreamSocket: :handlePoll
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I6feb535a91f4ccc647b172da27284f26f55c3e27
2024-05-14 22:09:49 +02:00
Caolán McNamara d42798abc6 initial dark mode not always set
typically can be seen on a fast connection to a NextCloud instance

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Ie3431d58cb2499464e1bfac95dcf3b981536a7a2
2024-05-14 20:27:44 +01:00
Michael Meeks 0c7cb448ca cypress and C++ tests: enable full trace logging to keep timing the same.
It appears that both cypress and the C++ WOPI tests are extremely
timing sensitive, and fixing this should not hold up merging the
logging improvements. So for now don't disable logging in these modes.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I43e8397263e6960b668a29e7ad67f45394c52b52
2024-05-14 18:37:52 +02:00
Michael Meeks b95e4d8424 Logging: annotate WebSocket, Admin and cleanup Forkit.
Significantly calmer and less frenzied logging output.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I0f1782c0b8f10ac3427bac479ded2862f2b40b7a
2024-05-14 18:37:52 +02:00
Michael Meeks 3746a51479 Logging: calm down the most prolific Socket logging sites.
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: Ia2ba1f114397cf8f61a4e42bdf55bdf4c0ac969a
2024-05-14 18:37:52 +02:00
Michael Meeks 9b6ab4c601 Logging: add Area parameter and new LOGA_ macros to annotate areas.
Add logging.disabled_areas setting to coolwsd.xml with some sensible
things to ignore unless they are warnings/errors.

Kit code duplication around logging is grim; but not fixed in this
commit.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I36bebb2b3c8d64a814d7b10c167d582de0baf4e5
2024-05-14 18:37:52 +02:00
Henry Castro 3cc17d6583 browser: fix doclayer de-reference
Change-Id: Ibea3a7dc30f8e948044cb513ff4f54166a50d162
Signed-off-by: Henry Castro <hcastro@collabora.com>
2024-05-14 16:44:40 +01:00
Michael Meeks ff8dbe7fde cool#9045 - close clipboard race by waiting for completion.
To avoid the HTTP[S] request racing the websocket and sometimes
loosing we need to:

* get a notification from the Kit when the copy / cut is complete
* wait on a Promise for this, to allow the HTTP fetch to start
* re-work to do a single, rather than two fetches by sharing
  the download promise.

Change-Id: Ic23f7f817cc855ff08f25a2afefcd73d6fc3472b
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2024-05-14 13:19:52 +02:00
Miklos Vajna 0ef5e740a4 fuzzer, clientsession: fix build
Probably went wrong in commit de985834e2
(wsd: simplify DocumentBroker construction, 2024-04-03).

Also init logging to avoid:

common/Log.cpp:664:16: runtime error: downcast of address 0x6070000005d0 which does not point to an object of type 'GenericLogger'
0x6070000005d0: note: object is of type 'Poco::Logger'

similar to how COOLWSD::innerInitialize() does it.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: Ic16bb2f070e1f0e12204bcc2fc70303d8c1250c8
2024-05-13 08:29:07 +01:00
Caolán McNamara 60598961cd cid#318908 Uninitialized scalar field
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I70e1a5cdec637fc92cab294953599afe667a55cd
2024-05-13 08:44:03 +02:00
Caolán McNamara 95fcde9ddd cid#365245 Uninitialized pointer field
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I1fedbde5715f2adb0218bf61ae7014797fb43990
2024-05-13 08:44:03 +02:00
Caolán McNamara c46df319ec cid#366099 Uninitialized pointer field
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I30949ae9a944a1c254c24a49519b22cf6202a14f
2024-05-13 08:44:03 +02:00
Neil Guertin 6bc7e3a356 Fix mobile/impress/apply_font_text_spec.js
Stabilize test by removing lots of extra shape selection
Stabilize "Apply highlight on selected text" by waiting before
color picker.

Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: I60e5e571be181bd6f43db1727854973aca446b99
2024-05-12 11:47:22 -04:00
Michael Meeks 1c4d71a974 cool#8747 - disable un-necessary fsync'ing.
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I4d1a041f94ead329d9973aaacd85f40001417cf2
2024-05-11 19:31:33 +01:00
Ashod Nakashian 7d90faf2e4 wsd: serve all files through sts
Change-Id: I16b4d2a93ab5ec6f2a277b1b2e6be61c3515c2c8
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-05-11 14:37:00 +02:00
Ashod Nakashian e546a5c602 wsd: refactor hsts header
Change-Id: I153e148bcbf9c0675d24a0b65314c6ffe4c74313
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-05-11 14:37:00 +02:00
Gökay Şatır e06bc471ef Remove unused code and CSS rules.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: Ie5ba30b4080770e51c37e1266e1613c169e58cfa
2024-05-10 22:11:29 +03:00
Gökay Şatır 717e837211 Use simpleRectangle for docLayer._graphicSelection.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: Ibc84782abf8e7668d31360e106fc73522fcd4494
2024-05-10 22:11:09 +03:00
Michael Meeks 3feb7fe58c bgsave: don't process left-over tile messages from the KitQueue.
If we had a tilecombine processed in the same queue and before
a save - the 'render tiles at the end' state would be inherited by
the background save process and result in excess work, and also
binary messages where only text messages are expected returning.

The rest of the queue is cleared post fork.

Add unit test - plus hook to hold queue processing.

Change-Id: Iee937897000bc3ac149599844f1eab005affb131
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2024-05-10 16:30:37 +01:00
Michael Meeks fff63bec45 Forkit needs to wakeup to waitpid processes.
This should cleanup jails more quickly.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I2f7c7753614f0845a4d81d69334834047d661e41
2024-05-10 16:30:37 +01:00
Michael Meeks 8b7549b8f7 bgsave: lower priority of background thread.
Free CPU cycles for interactive processes.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I9d8cfe5f3541c9424d51c69380e1c72920154ff4
2024-05-10 16:30:37 +01:00
Caolán McNamara 34b75306c3 AddressSanitizer: memcmp issue
/usr/bin/coolforkit
	memcmp
		asan/../sanitizer_common/sanitizer_common_interceptors.inc:875 (discriminator 9)
/usr/bin/coolforkit
	(anonymous namespace)::textItem(std::vector<char, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool&)
		online/kit/KitQueue.cpp:52
/usr/bin/coolforkit
	KitQueue::put(std::vector<char, std::allocator<char> > const&)
		online/kit/KitQueue.cpp:94

since:

commit f8a0d6c086
Date:   Thu May 9 15:29:49 2024 +0100

    Callbacks: minor efficiency wins, avoid tokenizing where we can.

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Ie5d0f86bb33c810b6a5f177421485c977b7fc79a
2024-05-10 16:16:49 +02:00
Henry Castro 15338e91c3 browser: preview: replace meta preview place holder
It is required to initial preview place holder,
otherwise, there are some cases that the server takes
time to serve preview_placeholder.svg and it may cause
an ugly effect.

Change-Id: I70ac46c8c464b64a09f091cdf5f8644d208a79d4
Signed-off-by: Henry Castro <hcastro@collabora.com>
2024-05-10 14:58:19 +01:00
Henry Castro 95e8ea0a95 browser: preview: remove unused code
Change-Id: I1ebf8611b898f52209fd6d4a6f20a749cbb05e07
Signed-off-by: Henry Castro <hcastro@collabora.com>
2024-05-10 14:58:19 +01:00
Henry Castro 511bd3b7c6 browser: preview: simplify _onScroll function
Change-Id: I4bf06c92299af5375f01a5be63bb95268257be1c
Signed-off-by: Henry Castro <hcastro@collabora.com>
2024-05-10 14:58:19 +01:00
Michael Meeks d4d4731136 Cleanup condition check for a quick poll.
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: Ica75605d3a12e7eae86cc0e4cbebb722aef92919
2024-05-09 17:47:15 +01:00
Michael Meeks f8a0d6c086 Callbacks: minor efficiency wins, avoid tokenizing where we can.
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I2ef647fd0af7bc83b7b40fd3ce7a49dc799f4339
2024-05-09 17:47:15 +01:00
Michael Meeks 6f49f9398e Split outbound callback processing from incoming message queueing.
Now we always send callbacks as soon as possible back to wsd from the
kit. This has several implications:

1. even when InputProcessing is disabled we will send outbound
   progress updates.
2. we should send callbacks much more quickly without waiting for
   other queue events to be processed eg. tilecombine:

We also drastically simplify storage of callbacks, avoiding lots of
re-parsing of the same strings, and allow much more efficient
comparison and merging at a small space cost in queue size.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: Ia1ede5406767f895616a52775316ee6ab1c5db09
2024-05-09 17:47:15 +01:00
Michael Meeks 320606c225 KitQueue - remove more un-necessary code, and helper use.
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: Ic11db8ac1391bd22b4adcae40c99fa4ca99790f1
2024-05-09 17:47:15 +01:00
Gökay Şatır 70ff910f20 Fix variable type error in "setDesktopCalcViewOnZoom" function.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: Idcd7040271e26bad4d04921bcb19dfb0ed45169b
2024-05-09 18:24:47 +03:00
Ashod Nakashian 6f725087a1 mount: remove test-mount directory
Change-Id: Iff128a22ac7d0fa3e6514e62e1f4ea92a60f052b
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-05-09 15:32:26 +02:00
Ashod Nakashian b33f822871 wsd: mount: safeRemoveDir will not error when unmount fails
safeRemoveDir is tries to unmount blindly, so there
is little point in erroring when the directory
in question isn't a mount-point at all.

Change-Id: I6db0fd9406493060ce52a69f7d935b0958e2d2be
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-05-09 15:32:26 +02:00
Ashod Nakashian dac5c0341f mount: avoid hard-coding
Change-Id: I6857510a9d0442cc357886b453d369f1e4b8f53f
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-05-09 15:32:26 +02:00
Ashod Nakashian 4d8d1119a2 mount: reduce failure noise
Change-Id: I2709a4a220f6d1db42e5259e0a883d4c74066bef
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-05-09 15:32:26 +02:00
Neil Guertin 5a9c6a0e37 Cypress: Add cypress-terminal-report printLogsToConsole option
This is already the default behavior. Writing it here just
makes it easier to change.

Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: Iebde47f5b64ae1509e7f37b884ad71fdc067b164
2024-05-09 08:27:42 -04:00
Neil Guertin 982f865cc7 Skip failing test desktop/writer/invalidations_spec.js
Test is failing because of an extra empty invalidation
when clicking between the body and the header

Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: I887c9bc028f2b831d205bba2944c734cafb1743d
2024-05-09 08:27:37 -04:00
Gökay Şatır 62239215da Update the test for now - it omits visibility check.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I9c55379afa9175360e16e036e7620b83168ce9f8
2024-05-09 13:28:54 +03:00
Gökay Şatır e0e5a6a418 Cypress updates.
Change the cell selection circle color in dark mode.

Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I23826bdf0a09fa7e8b1c25132842f98e37997034
2024-05-09 13:28:54 +03:00
Gökay Şatır 9b3038c70f Initialize CanvasSectionContainer as soon as the canvas HTML element is initialized.
Move section definitions under canvas initialization.
Use app.sectionContainer instead of painter_sectionContainer.

Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: Ie10bfa36fca30bd1dda42adab2bbf2a16c418717
2024-05-09 13:28:54 +03:00
Gökay Şatır f64521caa1 Fix indentation.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I9b5334ee7b8178503eef7c4790acb8a5ac1f8340
2024-05-09 13:28:54 +03:00
Gökay Şatır 5a28490394 Remove unused CSS class targets.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: Ibf93bf3f28b6ae06374bc992cc733f9ad9b0a419
2024-05-09 13:28:54 +03:00
Gökay Şatır 975385f0d2 Move canvas sections and section container into canvas folder.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I952e1770b5708381cef5cfbf1f02e6ec4b0502ad
2024-05-09 13:28:54 +03:00
Gökay Şatır a15e4e25e0 Use CellSelectionHandle sections on mobile view.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I4409981e8de2fca6211236590f3096b765456ed6
2024-05-09 13:28:54 +03:00
Gökay Şatır ecdcc369d6 Replace _textSelectionStart and _textSelectionEnd with SimpleRectangle(s).
Also move them into their sections.

Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I677a100c859ac8986f5609d9caa5187ef81818dd
2024-05-09 13:28:54 +03:00
Gökay Şatır b9e7d071a2 Add functions for sections' shown status.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: Ia480364c76b149177643971a0a29a2410c32475e
2024-05-09 13:28:54 +03:00
Gökay Şatır 932b99cf12 Finalize text selection handles.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I3d7a9a01903455c2b4c9303a27dd37702650cbb3
2024-05-09 13:28:54 +03:00
Gökay Şatır 8a0843764b Move DropDownSection into its own file.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I4cab2546f6828ab3c76ba8a4e06601904a06502e
2024-05-09 13:28:54 +03:00
Gökay Şatır 551b9cb104 Replace textselection markers with textselection handlers.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I2de0c4720250022d5547f3f657e277949721ba92
2024-05-09 13:28:54 +03:00
Méven Car 6fc6f07572 UI: improve combobox appearence
Since f7491e1f62 all combobox started
having a with and min-width of 100px, this wasn't meant to be.
Restrict this width setting to .jsDialog.

Add 5 px left padding to combobox, this looks better.

Set the font combobox width to 5em instead of 50px.

Signed-off-by: Méven Car <meven.car@collabora.com>
Change-Id: I0f0247471376e4633f3bbffab89285e16f78cde9
2024-05-09 11:24:44 +01:00
Bayram Çiçek 6300853c4d fix prettier error
Signed-off-by: Bayram Çiçek <bayram.cicek@collabora.com>
Change-Id: I666337388d570898720b1055145d7dfe3b4b80cf
2024-05-09 12:19:01 +02:00
Szymon Kłos fcbd08f98c Mention: share more code
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ic9fd29a05cbc2e62abb9f3651cdb771ab1d9adf0
2024-05-09 12:19:01 +02:00
Bayram Çiçek e92d048926 add AutoCompletePopup.ts base class
Signed-off-by: Bayram Çiçek <bayram.cicek@collabora.com>
Change-Id: I60e69fcc7eda3c76cf6e3309cdbc6ab777a90292
2024-05-09 12:19:01 +02:00
Szymon Kłos 81722df0ab Add missing types in Mention.ts
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ia3909dd8a1e55a4872e38d5b3d0e8493401d475b
2024-05-09 12:19:01 +02:00
Bayram Çiçek 368c2218ec more conversion of Control.Mention.js to ts
Signed-off-by: Bayram Çiçek <bayram.cicek@collabora.com>
Change-Id: Ida4be8f63b05aad9db80acd6eba7e8e403587ac7
2024-05-09 12:19:01 +02:00
Gülşah Köse a46147588f Convert Control.Mention.js to Control.Mention.ts
Signed-off-by: Gülşah Köse <gulsah.kose@collabora.com>
Change-Id: I575d9e14562b1a77f30d355024a2106d7955fe6a
2024-05-09 12:19:01 +02:00
Méven Car dab5afac90 postMessage test page: Add messages from editor view
Add CloseSession button.
Also improve spacing of elements.

Signed-off-by: Méven Car <meven.car@collabora.com>
Change-Id: I9999654f9d53d44016eeb0ea587cf3f61b000471
2024-05-09 12:08:43 +02:00
Hubert Figuière dbd3bc1482 calc: Properly handle the disable state
Doesn't hide the grid when the Function wizard is open anymore
when disabling the ToggleSheetGrid button.

Depends on https://gerrit.libreoffice.org/c/core/+/167370

This is a follow up for issue #8066.

Signed-off-by: Hubert Figuière <hub@collabora.com>
Change-Id: I79ba99716eb1103e7239fe5cc302c64827c9ef53
2024-05-09 05:46:49 -04:00
Michael Meeks f4265ce8a7 KitQueue - move methods from header to source and simplify.
also rename and dissolve the previously virtual _impl methods.

Change-Id: Id77a5c3ce79b27406301ef336ac1c9a40ead15bf
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2024-05-09 09:50:08 +01:00
Michael Meeks ebb4eda3df Move common/MessageQueue.cpp -> kit/KitQueue.cpp.
This is not common code, it's used only in the Kit.

Rename TileQueue -> KitQueue as well as unhelpful member variable naming.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: If158597f99f302cbc27e8eab139972f57a2fc3bb
2024-05-09 09:50:08 +01:00
Michael Meeks aacc957f23 MessageQueue: squash into TileQueue.
Avoids unhelpful virtual methods which are not used anywhere, simplifies
several code-paths, improves readability, and perhaps performance.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I7528fab77698546545bf81d7ccacdda9a0002833
2024-05-09 09:50:08 +01:00
Michael Meeks 466c31d59a MessageQueue cleanup, and avoid accidental use in tests.
The MessageQueue is not a generic message queue, it has much more
un-anticipated functionality; so don't use it where we don't need to.

In particular unexpected re-writing and merging of messages
during tests is probably not a great idea.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I657738307e611be18f5f83e11c055bf8a88826da
2024-05-09 09:50:08 +01:00
Caolán McNamara c1724983f7 cool#8744 ensureCanvas on preloading tiles
So we front load at time of request as much work as possible when we are
basically idle rather than do it when the tiles arrive.

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

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Ief643f1e98cf4a853d56a68d82b48ff092e5a963
2024-05-09 10:36:48 +02:00
Caolán McNamara cfae2097b1 ensureCanvas takes two arguments, the 2nd the lastRendered time
make the current uses that just pass the 1st argument explictly
set null for the 2nd arg and retain the orig lastRendered time
in that case.

This lastRendered gets overwritten by _tileReady after calling
_applyDelta.

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I237d34e8d1fde94c95eb778c054e4ac5985c2a50
2024-05-09 10:36:48 +02:00
Skyler 3dd2087bae Stop page scrolling
Sometimes an input we are focusing on is considered out of the viewport
by the browser. This is not always the case, and, even when it is, it's
not trivial to move it back in.

Instead, this change detects scrolling and re-scrolls the view to 0, 0.

Doing so is not without consequence, as there is a slight jitter before
we can scroll back, however this is substantially better than having the
controls off-the-page.

Signed-off-by: Skyler <skyler.grey@collabora.com>
Change-Id: Ie5003f9244ce1c0e8a183de5fdbcf3a880b13a13
2024-05-09 10:06:56 +02:00
Szymon Kłos fcfb95638f jsdialog: css: use available aspace for ui-txtarea
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I824dd5addaa93a1ae779b0070de9d8971f7797ea
2024-05-09 08:47:39 +02:00
NickWingate 1bc78e8059 Expose object name and description dialogs
It can be used to apply name to an object so it will
be presented in the navigator as something unique

Signed-off-by: NickWingate <nick.wingate@collabora.com>
Change-Id: Ica06259dc3007d638a4998ccc2cce03ad1a5ca05
2024-05-09 08:47:39 +02:00
Caolán McNamara 70a89a4d43 allow a test to start without sidebar
instead of starting with sidebar and then removing it

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: If2ea433cd3d5fc18ad549bd3df095de15c126ad0
2024-05-08 21:04:48 +01:00
Caolán McNamara 399afd123f tile.canvas is always true after a successful _ensureContext(tile)
_applyDelta returns early if the initial "ensureContext" of the tile
fails.

i.e.

  var ctx = this._ensureContext(tile);
  if (!ctx) // out of canvas / texture memory.
    return;

and ensureContext already calls ensureCanvas, so tile.canvas is
always true in the remainder of this function.

The "defer constructing the image & applying these deltas until the tile
is rendered via ensureCanvas." implied a sort of deliberate optimization
to wait until render time to apply the delta which doesn't actually
exist.

Also move the stray "// 'Uint8Array' delta" comment back to where it
originally came from as documentation of the type of the param, as in

commit 4140bf8741
Date:   Sat Nov 6 11:11:13 2021 +0000

    Bring back the delta application JS from the 6.4 branch.

...

 _applyDelta: function(tile, delta) {
         // 'Uint8Array' delta

...

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: If15a897c3251f28639c9f1112687e543421e457d
2024-05-08 20:47:10 +01:00
Caolán McNamara e40bcccc4f update impress/apply_font_shape_spec.js to pass
probably since merge of

commit 5140abd2c94b96f2a32f0f7416ae79239a2af187
Date:   Fri May 3 14:14:26 2024 +0500

    tdf#152906: use correct Y offset

or similar of that topic

change 3285 to 3286

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I4bd3509313c7a5801d5284eebc3882bf3550eed9
2024-05-08 18:53:46 +02:00
Michael Meeks 5357b0e81f bgsave: update unit tests to exercise races in modified state.
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I60d861f78b592fc39b88c23c0dece771ec8260a3
2024-05-08 16:42:29 +01:00
Michael Meeks c66940cf9a bgsave: close race of typing while a background save completes.
We need to mark core unmodified so we can track modifications
to the core that date from after the background save process is
forked.

We avoid telling WSD about our new modification status until
we are sure the background save completed successfully, and only
in the case that we have not been subsequently modified.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I2c9fbce942ff0af2bb727c3685f4ec479e18fa27
2024-05-08 16:42:29 +01:00
Michael Meeks 7f6b59b180 bgsave: improve unit tests.
Force background saving in the config for this test.

Use stamp files to force sequencing between Unit test and Kit.

Change-Id: Ia2c60c3dcfdad87c9c9754e8f20a3c36dbcf74d5
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2024-05-08 16:42:29 +01:00
Aron Budea 80a6f97518 Bump version to 24.04.2.1
Signed-off-by: Aron Budea <aron.budea@collabora.com>
Change-Id: I56c4be6de327c7b678cc9a534b90f7fe2a916190
2024-05-08 17:13:49 +02:00
Gökay Şatır 396d835f53 Container is rendered on the server side.
It should always be visible when the function is called.
Rename the function to _setPreviewContainerTop for readability.

Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: Ib90da34574b0a5a44c9a2e7a2b2d64cdd2d59938
2024-05-08 16:00:23 +03:00
Pedro Pinto Silva 45c51c42de Slide sorter: presentation toolbar: Remove ui break
There is no need to add a visual break/divider between "Fullscreen
presentation" and the "Insert Slide" buttons:
1. They are visually very well distinctive so there seems to be not a
need for a division
2. There is not so much white space so the more we can reduce visually
the better

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I27b84782e5af987d9aec3734f7557c746a03667c
2024-05-08 13:18:23 +01:00
Neil Guertin c54683f349 Fix failing test mobile/writer/table_properties_spec.js
Was failing in moveCursor after slowdown introduced by
https://git.libreoffice.org/core/+/ca31493a
Rewrote test to use the same select helper as all the other
tests in the file

Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: I5197a095d47e727526636b232df1f3be45e5bb52
2024-05-08 10:58:17 +02:00
Caolán McNamara 9b68218ffa _canonicalIdInitialized is a member of CanvasTileLayer not TilesPreFetcher
a problem since:

commit 04ac02b033
Date:   Sun Sep 3 17:37:49 2023 +0300

    Do not request tiles until we are sure a canonical id is set

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: If285a53c51b17a812a7387150f99f0f43486b9e3
2024-05-08 10:50:00 +02:00
Neil Guertin ec83c14f3d Fix failing test desktop/writer/top_toolbar_spec.js
Follow up of be235b1386

Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: Idab5a5bac4ac15aa0e13a2d660271a305fad945a
2024-05-08 08:06:51 +02:00
Caolán McNamara 3e937ef83f check for _docLayer existence before deref of _docLayer
order is since:

commit 06e4722cc9
Date:   Fri Aug 7 18:37:11 2020 +0530

    loleaflet: rewrite tile-prefetcher for L.CanvasTileLayer...

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I69b7dd8974d2333cecbc38f94d4851bb0c5f44fc
2024-05-08 07:43:16 +02:00
Neil Guertin be235b1386 Fix failing test desktop/writer/top_toolbar_spec.js
Remove scrolling to get to toolbar buttons
Add test specifically for scrolling

Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: I885d3ec33c8d570dfad45893c5d267b7fe8cc0b9
2024-05-07 16:00:44 -04:00
Henry Castro 913f684e30 browser: preview: simplify 'isPreviewVisible'
.

Change-Id: Iee73f2eb77d1fc20aa266f66fda314770bc666d0
Signed-off-by: Henry Castro <hcastro@collabora.com>
2024-05-07 14:09:54 -04:00
Henry Castro 94b25bce1f browser: preview: fix time out resize event
Change-Id: I5e3b49909fdbd46134aee359e8aa015f4672892d
Signed-off-by: Henry Castro <hcastro@collabora.com>
2024-05-07 14:09:54 -04:00
Rashesh Padia 7572af7486 fix: don't wait for migrate msg if indirection server closes the connection because deployment gets deleted
- if deployment gets deleted than there is no where to migrate the
documents in such cases indirection will close the monitor connection
but we need to set the _migrateMsgReceived flag so that docBroker don't
wait for the message and continue to cleanup the document

Signed-off-by: Rashesh Padia <rashesh.padia@collabora.com>
Change-Id: Ia2732740927ea16e368f91bea7421576a3cf2beb
2024-05-07 20:26:46 +05:30
Rashesh Padia c1f0fcf946 indirection_server: migrate document on shutdown
- when COOLWSD get SIGTERM admin sends a "shutdown_received" message to
indirection server
- indirection server sends back migration messages for each document to
migrate it other available COOL server
- there is timeout associated with migration message if COOLWSD doesn't
get message we move on and close the document
- added a new option in coolwsd.xml to change the migration timeout
default is 180s

Signed-off-by: Rashesh Padia <rashesh.padia@collabora.com>
Change-Id: Id7d5eea94d1b03ea5905ca67a9dd8f6ca15952f3
2024-05-07 20:26:46 +05:30
Rashesh Padia 438985ab31 admin: fix gaps between cards when server/card gets removed
Signed-off-by: Rashesh Padia <rashesh.padia@collabora.com>
Change-Id: If72d27b0b32a00e0105dce08292afa4c792d6cb5
2024-05-07 20:26:15 +05:30
Caolán McNamara b440a86f73 get coolwsd log on failure
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I88545054c4a79dd0152d13699f80e7f1b235d267
2024-05-07 15:12:55 +01:00
Caolán McNamara ca2ca25d07 try rm -f coolwsd instead of rm coolwsd
Making check in .
make[1]: Entering directory '/home/collabora/jenkins/workspace/github_online_master_debug_vs_co-24.04'
fatal: ref HEAD is not a symbolic ref
Cleaning up...
/bin/sh: ./coolwsd: No such file or directory
rm: cannot remove './coolwsd': No such file or directory
make[1]: *** [Makefile:7155: /home/collabora/jenkins/workspace/github_online_master_debug_vs_co-24.04/jails] Error 1
make[1]: *** Waiting for unfinished jobs....

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I31748354bb55f26a8a5b8475a4daa74b3ba5d729
2024-05-07 15:12:55 +01:00
Caolán McNamara 8a6b40200f cid#365219 silence Explicit null dereferenced
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I534f49e2ebe34e4518e7456ba200af9d76535832
2024-05-07 15:59:55 +02:00
Caolán McNamara 1385b0d086 cid#365222 COPY_INSTEAD_OF_MOVE
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Idf287528f5e17670bef3a7524e8cefc91ae23ffc
2024-05-07 15:59:55 +02:00
Caolán McNamara ec8cc5aea8 cid#365225 COPY_INSTEAD_OF_MOVE
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I9c7e1b105d6cb10ef312b7a824de8cc922a83929
2024-05-07 15:59:55 +02:00
Caolán McNamara cf01a0687b cid#365236 Dereference null return value
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I325404441747611985266bf51c53bf14423491fc
2024-05-07 15:59:55 +02:00
Hubert Figuière 22e789a420 impress: restrict presentation in readonly mode
When export is disabled or watermarks are enabled, presentation in readonly mode
is disabled.
This is checked in the frontend by the WOPI property `DisablePresentation`
that is synthesized in the wsd. Also check when calling the presentation
command.
WOPIFileInfo::getWatermarkText() is stubbed on mobile.

Signed-off-by: Hubert Figuière <hub@collabora.com>
Change-Id: I4f7aff9f670f7523dfcf396f6009a272df9d5af8
2024-05-07 13:21:04 +01:00
Michael Meeks 72bbc375be Add more comment warnings around security critical code.
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I1ca4a54d076a8f95850f329168c941806bc56b16
2024-05-07 13:11:30 +01:00
Michael Meeks 9d67fe24d2 comments: remove obsolete thread related comments.
Change-Id: I9d31e2614c7ea6edf47b92f25edd60748dd17493
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2024-05-07 13:11:30 +01:00
Michael Meeks bd524201d3 bgsave: use document name progress bar instead for saving.
Avoid the popup overlay and associated annoyance.

Also use a progress bar for loading in the normal overlay.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: Icafdcc958d92f42cba44e3b213d6a0202566251a
2024-05-06 20:28:08 +01:00
Michael Meeks 90f387cdc5 bgsave: change statusindicator protocol message to 'progress' + JSON.
We need to get more helpful structure into this message, and add a
type=bg flag to handle background progress messages.

Add unit test for merging progress: setvalue commands.

Simplify ProtocolHandler sendTextMessage with a std::string wrapper.

Android code needs manual testing.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I54ce807e2fc5de80118905e68557a95e637fbd18
2024-05-06 20:28:08 +01:00
Pedro Pinto Silva 28cd22e792 Mobile: Formulabar: inherit more from desktop, remove negative value
- Inherit padding from #formulabar desktop, a single dimension instead
of placing different margins/padding across mobile
- Fix alignments
- Use css vars for buttons sizes

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I21110e43115576a212d29b1a55268fbeed6d52af
2024-05-06 15:39:59 +01:00
Pedro Pinto Silva d526ee1031 Formulabar input, cell address input, AutoSum: Fix sizes discrepancies
- Remove individual sizes
- Rely on the same single size digit that comes from the parent
  container
- AutomSum button should not inherit buttons height
- Fix jumping buttons: Cancelformula (close btn) should be placed
  exactly where equal ("=") was before

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I6c5a40709051ace3313195f4491798429eb5f6a0
2024-05-06 15:39:59 +01:00
Pedro Pinto Silva 7a83489abe Formulabar: Fix address input field not being targeted (css)
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ifdd449bcedb5049eae281b9b5e882b410290a7ee
2024-05-06 15:39:59 +01:00
Pedro Pinto Silva 30d3313342 Formulabar: Fix buttons jumping position
Before this commit the buttons would jump position between default
button group and cell edit mode button group (when acceptformula and
cancelformula buttons appear)

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I5411f145a9f4f4d2dd10a4278105447a52755815
2024-05-06 15:39:59 +01:00
Pedro Pinto Silva 23db285fa4 Formula bar: Fix alignment, avoid individual margin for each button
Better to rely on grid gap or somesuch

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I50e59d1b3464687a0bba76bf54a0ed2412dc3758
2024-05-06 15:39:59 +01:00
Pedro Pinto Silva 9e87e8ca70 Refactor: CSS: avoid generic formulabar rules
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Idfc850615026dcf06bb1f27c4adbe8f33b6f9bee
2024-05-06 15:39:59 +01:00
Szymon Kłos 05ed084481 Show run presentation icon in Impress slide sorter toolbar
This fixes regression from commit ae5e33b30c
remove-w2ui: convert presentation toolbar to JSDialogs

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I2f7c34369f1d2683be481fb466656b972de50cd4
2024-05-06 14:16:41 +02:00
Szymon Kłos 58e5208027 Fix buttons visibility in formulabar on cancelformula
Make code more deterministic by removing old hacks with
timeout and cursor detection from:
- 6037d52
- b62320c

Bug was that on desktop when we were in formula edit mode
and we clicked cancel button - it was not showing again
the regular buttons but instead it was showing the
accept/cancel buttons.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I1a51920e99f4902c1dbb62b0eab6e4f2edc932ce
2024-05-05 21:22:55 +02:00
Szymon Kłos 57e14eb6ce cypress: fix assertion in jsdialog test
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I07964dda90a89c2560df6e5d7e8c3b6f38551164
2024-05-05 20:04:55 +02:00
Szymon Kłos c817690f8d jsdialog: hide unused linkbutton
this is shown after commit cf0a6f4
jsdialog: add "linkbutton" as an independent widget

it wasn't there before

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ibdf8a9eb7f226740c11e8a34c16c7be4177576e6
2024-05-05 20:04:55 +02:00
Caolán McNamara a6b3961c50 add a test for joining doc and disconnecting
a normal case, where user#2 joins the document successfully and then
their connection closes; where the remaining client gets the
notification that there is only one client in the session.

an abnormal case, failing test currently disabled, where user#2 joins
the document, "load url" is launched, but the connection is immediately
dropped; the other client gets a notification that a user has joined to
make it a 2 user session, but no notification that the user has dropped.

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I8271fb3d4def917acdff0fae6a3a52b5d02ef7af
2024-05-03 20:14:11 +02:00
Michael Meeks 8b558a2372 Default to four pre-spawned children.
They should be cheap memory wise, and save quite a bit of latency.

Keep 1 for debug mode - to make attaching to the right process easier.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I230be6ae61874f36b47ffc93d888d455bea3a7d8
2024-05-02 17:28:38 +01:00
Darshan-upadhyay1110 e88d9340a0 Fix toolbar up section after w2ui rework
To make consistent all toolbar element height with prev version where we were using w2Ui lib
- i have added height to table-row element same as we had in prev version
- remove fix height for toolbar-up which is not needed now
- this fix height will effect the bg-color in toolbar-up section

Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: I7b307a6a72968ed81fe2eb8663c430f11e3b3ced
2024-05-02 13:55:25 +01:00
Pedro Pinto Silva caa132c386 Fix calc-mobile top toolbar and formula bar which are broken
Pedro :
This changes from flex to grid (so we can have multiple columns and 2 rows)

Darshan:
    - adding one more div and wrap all child of toolbar-wrapper execpt 'formulabr' will work here
    - i have tested the css grid approch it is breaking the mobile UI in Calc
    - here i have changed a bit in html and twiked css which covers all cases

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ia50fda95e2bef57d707bb4be1dd34e2ec083bfc5
2024-05-02 13:55:25 +01:00
Pedro Pinto Silva f003bb3b8a Mobile: Hamburger and back btn: Fix height after table to div
With "Change table layout to CSS base table structure" and "Adjust
table elements for mobile view." changes we now have more divs instead
of table elements but with that the hamburger menu is now mislaigned
   - Fix height
   - To do: ideally we would make both hamburger menu and the button
   at its side rendered with the exact same structure which is not the
   case. And ultimately remove height and just have it flex stretch etc

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Id9365df82f1caff132dde41760a06689ec1145d1
2024-05-02 13:55:25 +01:00
Pedro Pinto Silva 82f2e01175 Mobile: remove legacy hamburger (opened state) rules (css refactor)
No need to specifically set width and height for .menuwizard-opened
state. Best to set only one time those dimensions and just inherit
from #toolbar-hamburger no matter the additional css class

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I51eafc6c9b05b843d800b40a990aefd912e463f8
2024-05-02 13:55:25 +01:00
Darshan-upadhyay1110 872ac5ad29 Adjust table elements for mobile view.
- we changed table structure of `toolbar-wrapper` with `div`
- so we also need to consider mobile view
- made some neccessary changes for mobileview because of structure change in cool.html.m4 ('toolbar-wrapper')
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: I91cd2c3ffbb0d625a78852398f6773136e9a7f6b
2024-05-02 13:55:25 +01:00
Darshan-upadhyay1110 dd3df946e1 Change table layout to CSS base table structure
- For the editor in the home view, a layout table is used, and it includes the use of IDs. This can
potentially lead to issues with the interpretation of content by assistive technologies
- Layout tables are
meant to structure the layout of a page and should not contain structural markup like th , caption ,
summary , headers , or id.

Solution:
- replace `td` and 'table' tag with `div`
- make some changes on css to be consistent with our prev design
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: I136cd8d51b2e5035c6ef4292f759f49519e5bd61
2024-05-02 13:55:25 +01:00
Henry Castro 273e9c15a8 browser: preview: simplifiy _resize function
The _onScroll request the visible previews.

..

Change-Id: Ib5370f1790b489edb4626a22bf6c5bb1cd8d0f17
Signed-off-by: Henry Castro <hcastro@collabora.com>
2024-05-02 08:15:53 -04:00
Henry Castro 8da4031073 browser: preview: update 'createPreview' function
It only initialize the initial preview width and height,
the _onScroll function will request the visible previews.

Change-Id: I7e04ea93f85a9270d09b241dc14391be214080a4
Signed-off-by: Henry Castro <hcastro@collabora.com>
2024-05-02 08:15:53 -04:00
Henry Castro 3efeae0484 browser: preview: remove unused console logging
Change-Id: Iebe938767ec1c162fe1119f32ba1f7847f6226d5
Signed-off-by: Henry Castro <hcastro@collabora.com>
2024-05-02 08:15:53 -04:00
Caolán McNamara 1425b36104 merge background saves together in profile
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I016133f31f34b859dcb21b794406c7e6a1559aa9
2024-05-02 14:02:56 +02:00
Caolán McNamara e9f81f8008 add sample watchdog script
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I9d3b9b2a405d87bee6c8f242f8c71179abb44005
2024-05-02 11:07:36 +02:00
Tomaž Vajngerl cf0a6f4a2f jsdialog: add "linkbutton" as an independent widget
This depends on the core change, which separates the linkbutton
widget from fixedtext widget as it is already an independent widget
in "weld" and used in accessibility checker. Adds "clicked" event
that is triggered when the text is clicked and send to the core.

Signed-off-by: Tomaž Vajngerl <tomaz.vajngerl@collabora.co.uk>
Change-Id: I4a999f3e57aaa7950482c55defa3012346351cb1
2024-05-02 10:38:21 +02:00
Tomaž Vajngerl eed0dadff3 Adds a11y checker sidebar
Enables the accessibility checker sidebar, changes the icons from
the old name to the new name (as it depends on the UNO name) and
adds the UNO command to enable the sidebar.

Signed-off-by: Tomaž Vajngerl <tomaz.vajngerl@collabora.co.uk>
Change-Id: If9aeb375ec87ef27d4dead5f3148bc40f01db976
2024-05-02 10:38:21 +02:00
Darshan-upadhyay1110 a7a541ad14 initializ UI after server reconnection
- Non-edit mode does not intialized after server reconnection
- this patch will fix initializedUI after reconnection
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: I43405067287dd3f7f134fc9dcabfdcae183724ce
2024-05-02 09:57:46 +02:00
Neil Guertin ced7998b1b Fix mobile/writer/table_properties_spec.js
Wait for table select to fix copy/paste issue

Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: I5d564c062f5c8f5616997cd49222d39f47baa260
2024-05-02 08:48:19 +02:00
Caolán McNamara 6d00ed64d6 _sessionUserInfo tracks disconnected sessions
as well as current ones.

i.e.

/// User Info container used to store user information
/// till the end of process lifecycle - including
/// after any child session goes away

so add some info in the log to flag which ones are still connected and
which ones are not.

https: //github.com/CollaboraOnline/online/issues/8943
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I5350c04d1a7bb8095464881fba97e5910f71ffb3
2024-05-01 17:51:02 +02:00
Rashesh Padia fcc34f061a fix: can't reconnect and get to edit mode after full server shutdown
- regresssion from 464358ca70

Signed-off-by: Rashesh Padia <rashesh.padia@collabora.com>
Change-Id: If2b20c7960e3c242064fc04425b4f893612f6362
2024-05-01 16:23:02 +02:00
Caolán McNamara 2546252d31 disable watchdog during Document::updateMemoryDirty
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I5358ec0df536c4b3c302011869b42db3491ce73e
2024-04-30 17:55:13 +02:00
Caolán McNamara c2f4f8031d disable watchdog while loading and saving
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Ic1757f1cafcaed7feb3ce0cbc21fe8e03c5d4bd4
2024-04-30 17:55:13 +02:00
Caolán McNamara 038e278b03 bump watchdog pings from 20ms to 50ms
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Ib1add9a1e392e96ad9f92feffd518b92aeb6a81c
2024-04-30 17:55:13 +02:00
Pranam Lashkari 1f66dcf831 calc: fixed js console error
problem:
when try to edit any cell for the first time,
there was console error due to undefined variable

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I8a29ad6e0e6243cc55175be0173eceb80bfea877
2024-04-30 15:36:18 +01:00
Aron Budea 27f1de8e87 Bump version to 24.04.1.4
Signed-off-by: Aron Budea <aron.budea@collabora.com>
Change-Id: I39c8de7125edc3de3696487b7519dbd2b0717c26
2024-04-30 16:35:25 +02:00
Darshan-upadhyay1110 b6122e0f37 Change get by ID value in all cypress_test
-  according to previous change(commit) we need to adjust ID in cypress test files

Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: Ic5510392b101ff7c7daa28719a60963c7bb2c743
2024-04-30 14:54:21 +02:00
Darshan-upadhyay1110 e45e31949d Remove '-input' string because we append that in _editControl & correct all getElementById which uses the Input element
- Because we have appended '-input' to add ui-edit-control in jsDialog builder filer
    - now we do not need any id/string which have '-input' at very end of that element

    - for some cases we need correct GetElement by ID in js files

Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: Id9b4f53e8deaa2f26c6abc93dc80504895107bd0
2024-04-30 14:54:21 +02:00
Darshan-upadhyay1110 dd445ad4d1 Wrap input[type='edit'] with a parent div
- To unify editControl, added additional "parent" for edit's input
- this will be consistent with other input type controls
- and will help to establish link between lable and input[type='edit']
- changed parameter from input to it's input container which will help to pass correct ID to Core

Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: If5ab78bdf3d3ad61438898f5e4cacc19bd2ecb63
2024-04-30 14:54:21 +02:00
Szymon Kłos ec63d9c032 css: fix button-box alignment
in 24.04 more elements are grid now, it seems to be a
regression in button box:
1. enable macro execution in coolwsd.xml
2. open spreadsheet with macro
Result: you see the dialog with buttons in 2 rows
Expected: all buttons are in the same row

it seems to be missing grid placement for left and right sections

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ic1a3479114e4f832e852b9bdf3d39d2669ae69bb
2024-04-29 21:54:14 +01:00
Julius Härtl b0b73d2794 fix(browser): Emit proper UI_PickLink post message
Signed-off-by: Julius Härtl <jus@bitgrid.net>
Change-Id: I635780723b98887e6c35a397940cc2517a6a9025
2024-04-29 19:13:35 +02:00
Pranam Lashkari ae27e8291c macro: open document without macros enabled
problem:
when user selected disable macro in the opening dialog
document used to close and return to integrator
but now cancel button in csv import dialog is hidden,
so no need to distinguish there and we can continue to load without macros
In addition we still close the file if user clicks "X" button on title bar

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: Ie0c7d77954e099cb3c8a72c400c688b3ae1343c7
2024-04-29 18:59:12 +02:00
Skyler Grey 1895938524 calc: zoom: Stop leaving blank areas with freezes
Previously when there was a frozen pane we calculated an incorrect
size on the unfrozen pane, leading to slight blank edges when you were
mid-zoom-out.

Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
Change-Id: Id26f6ba815429addd0cdf3af37f5c54363a08b2b
2024-04-29 18:35:43 +02:00
Skyler Grey bb9be7abb8 Make freeze shadow appear/disappear mid-pinch-zoom
Previously when panning with zoom, the freeze shadow would stay in its
initial state (either hidden or shown) whether or not it should actually
be shown at the current position.

Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
Change-Id: Ic0d05c1204b1e15abbb6d8ad34235206fdc7740c
2024-04-29 18:35:43 +02:00
Skyler Grey 227bf6de6b Make freeze shadow move with a pinch-zoom
Previously the freeze shadow would stay where it was, creating a hard
edge and confusion about where was frozen. With this change, the freeze
shadow moves with the zoom.

This change needs a followup to show/hide the shadow when we reach/move
away from the document edge.

Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
Change-Id: I8bec41be6ce5eff3c1bfd3ac0234b6d53833614b
2024-04-29 18:35:43 +02:00
Pedro Pinto Silva f50d5a1303 Custom properties dialog: fix grid and misalignments
- Fix alignment between rows by:
  - Setting some of the columns' width
  - Removing margin from all buttons & set width. Add column gap
- Fix vertical alignment
- Fix header alignment (Name, Type, Value) so it aligns to the content
- Make "Add property" occupy full width (ideally this button would be
  part of the inner grid "last row" but for now this is already an
  improvement)
- Remove lengthly css targets and the use of nth-child

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I85d9bdbcc365c735757ee086f6e4912d694a011c
2024-04-29 15:21:06 +01:00
Hubert Figuière 978dc59ce1 calc: Implement hiding the grid lines
Fixes #8066

Requires https://gerrit.libreoffice.org/c/core/+/166647

Signed-off-by: Hubert Figuière <hub@collabora.com>
Change-Id: I2196e1a8e654a8afd20519b18f00cefafa048f2c
2024-04-29 14:42:18 +01:00
Henry Castro 91b082fb44 browser: preview: fix invalidate previews when resize
Change-Id: Ic4f4a2cc9e98134564e0a9015b0d4c99bad66e08
Signed-off-by: Henry Castro <hcastro@collabora.com>
2024-04-29 07:39:52 -04:00
Henry Castro 53d702b717 browser: preview: remove unused code '_isPreviewVisible'
Change-Id: Ie7c4a8d4909837888db31952dee8a190a0d332c5
Signed-off-by: Henry Castro <hcastro@collabora.com>
2024-04-29 07:39:52 -04:00
Henry Castro c2f4c999ae browser: preview: remove accessor hack
Change-Id: Id936503eade75aba9d9a4772a9dcdd3e5ed4742f
Signed-off-by: Henry Castro <hcastro@collabora.com>
2024-04-29 07:39:52 -04:00
Henry Castro df0ec74f9c browser: preview: replace missing 'preview_placeholder.svg'
.

Change-Id: Ic12df42d1b7bdc79377c9cb5f52f819f0d5083f1
Signed-off-by: Henry Castro <hcastro@collabora.com>
2024-04-29 07:39:52 -04:00
Henry Castro a1c976f913 browser: preview: simplify 'updateAllPreviews'
Change-Id: I0d7c3877924544064bafc3ca93c887329b04a245
Signed-off-by: Henry Castro <hcastro@collabora.com>
2024-04-29 07:39:52 -04:00
Michael Meeks d2dae8f2b5 Fix broken conditional compilation for WASM.
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: Ib0f3733a0719c87281b432c7c009fc2362ad3cce
2024-04-29 10:56:54 +02:00
Michael Meeks 31624e869c test: cleanup logging accounting post fork, for more helpful tests.
coolforkit: common/Log.cpp:677: void Log::shutdown(): Assertion
`ThreadLocalBufferCount <= 1 && "Unstopped threads may have unflushed
buffered log entries"' failed.

Was caused by mis-accounting. Also join document threads on 'exit'
which happens during unit tests to ensure we don't hit the above.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I523e723e54e4252ae0d65de36af086e97dd79f04
2024-04-29 10:56:54 +02:00
Michael Meeks 12310c7dec test: allow an exitTest to work in Kit and propagate its result.
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I0d32d46e81eb3ed42d8531860ef2d8e06bdca591
2024-04-29 10:56:54 +02:00
Michael Meeks a866719881 test: abort a test whose kit has a segfault by default.
Otherwise forkit tends to loop aggressively re-starting that for the
duration of the test wastefully.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: Ia1c684a5d995f54f29290c9631b1ee14266445d7
2024-04-29 10:56:54 +02:00
Michael Meeks 642da39dc5 test: create UnitSyntheticLok - to stub and override LOK behavior.
Simple example to re-instate previous unit test.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I26da1178bc897797a656eb5ae9f838d17cbaf75f
2024-04-29 10:56:54 +02:00
Michael Meeks 14e3a20e18 DocumentManagerInterface - remove un-helpful abstract base.
This added 200+ lines of code, made things harder to
understand, and was used only in a single test that can be
covered in another way.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I4ed8d1d52d533f8b24be7dd5e12dbb7702ef1a80
2024-04-29 10:56:54 +02:00
Michael Meeks 08e17a0388 Simplify Document creation, and coupling to KitWebSocket.
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: Iec7dfd3d33de2ae548ca73081d50361958672e4a
2024-04-29 10:56:54 +02:00
Rashesh Padia 7a75153290 fix: zotero options not visible when viewId is zero
- regression from 9202365fc6

Signed-off-by: Rashesh Padia <rashesh.padia@collabora.com>
Change-Id: I4554a5fcc9b0c5dce48c8b35ea32142ff1c323f3
2024-04-29 10:28:54 +02:00
Gökay Şatır 1a1835bd90 Remove "updateResolvedState" function.
It sets a reply's status to "resolved" only if its parent is resolved.

I can't remember why we implemented this like this before.

But now, we don't need to.

Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: Ia31dab0237d3b89e5d391cf87394514d18b595f7
2024-04-29 11:09:36 +03:00
Gökay Şatır e43d988084 Fix typo. Causes JS error.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: If2ffdf4d561d34f3febc6c976e7427621c5cdf79
2024-04-29 11:06:01 +03:00
Miklos Vajna c559e2fc5e cool#8806 clipboard: fix paste special of images in Firefox
Copy an image to the clipboard, click Paste -> Paste special on the
notebookbar in Firefox: the image is pasted, but the paste special
dialog doesn't close.

What happens here is that Firefox lacks navigator.clipboard.read(), so
the relevant code is Clipboard.js dataTransferToDocumentFallback(), not
the new _navigatorClipboardGetTypeCallback(). Here e.g. copy from
desktop Writer (html+text) would lead to a _doInternalPaste(), which
would call _checkAndDisablePasteSpecial() for us, but the image case
returns early, so the closing doesn't happen.

Fix the problem by explicitly calling _checkAndDisablePasteSpecial()
before returning early.  In contrast with the other uses of
_checkAndDisablePasteSpecial(), we don't need to call the paste or paste
special uno command (since _asyncReadPasteImage() takes care of pasting
with a websocket comment), so it's fine to ignore the return value.

No testcase, our cypress tests run on Chrome, and this happens only with
Firefox.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: I751d234edfdf9e8fb37f2bf2d6b3f3d8e65a27f4
2024-04-29 08:52:53 +01:00
Ashod Nakashian 7268248481 wsd: test: give up attempting to connect if the test finished
Some tests are designed to exercise the reconnection
logic. Once the test validates that the correct
reconnection logic is used, the test is considered
finished. In those cases, we need to break the
test framework's retry logic.

Change-Id: Ie0bb5dcc430a954910c2af4817a500f5b576bd4c
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-04-27 14:14:28 +02:00
Aron Budea b38e1f41ea Don't log warnings about version mismatch for admin console
It's only relevant for regular URLs that contain version hash.

Signed-off-by: Aron Budea <aron.budea@collabora.com>
Change-Id: I73afaa0559c3dddc09a8ed5f786fb5126e1c8f0c
2024-04-27 06:52:04 -04:00
Neil Guertin 190a3acf78 Cypress: Fix mobile/impress/apply_font_text_spec.js
Failed because mobile wizard opened too soon.
Fix: Wait for selection before opening mobile wizard.

Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: Ie29e3f5be17bafa2dd09b3f8f5b6415104456cb7
2024-04-27 01:37:10 -04:00
Neil Guertin c44bcb2980 Cypress: Join subFolder and fileName into filePath
Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: I361d523f564e7b9a46dd2398080eef110eeae79c
2024-04-26 21:10:39 -04:00
Aron Budea d471d93c1e browser: Add correct class to Share / See History buttons in Impress
...as in other tabbed bar JS files.

Signed-off-by: Aron Budea <aron.budea@collabora.com>
Change-Id: I29c43d9dc0ce4fa929e049e70171e0b8ab029088
2024-04-27 02:00:44 +02:00
Neil Guertin ed731b7091 Cypress: Retry selectTextOfShape
Most users of selectTextOfShape also need to select all text.
Sometimes the cursor appears but does not allow CTRL+a to select
all text. Work around this by including the selection in the retry
using waitUntil.

Fixes mobile/impress/apply_paragraph_props_text_spec.js, which started
failing sporadically after commit e0a0646ce1.

I also adjusted the dblclick selector because it was finding multiple
elements but I think that is unrelated

I also created a separate function editTextInShape, for tests
that do not need to select all text

Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: Icdfa731ba9a5f8d08a858192a4f1f5bc79b09b76
2024-04-26 17:35:05 -04:00
Szymon Kłos d1a58af640 css: fix insert shape popup
insert shape now shows all the items in one column.
fix it so we have rows

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I371f7fa233e46a62dbb6637d934bc5ceb5cdecb0
2024-04-26 15:26:48 +02:00
Pranam Lashkari 1a287fd96d annotation: avoid resizing editing comment
problem:
when you try to reply to long comment, it would be resized
and subsequntly reply box will take space and other comments
will not make enough space for it

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I4d81904721e5bb196947598d0dca211ee9d480a6
2024-04-25 20:27:25 +01:00
Pranam Lashkari fe9b582275 annotation: fixed comments could not expand
problem:
when comment was on the edge of the document/screen(vertically)
resize was called which ultimately collapsed the comments in small screen
which could not be expanded unless scrolled further from edge.
It was more problematic for the threads,
if entire thread could not fit in the screen it was always failing to expand

regression from bac4161

it nullifies the effect from 81b00e7
now if comment is added at the end of the document and it goes beyond doc boundry
doc will not scroll automatically to make entire comment visible

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I198b4887ae19ca0c17ba1453960cd36a66beb04d
2024-04-25 20:27:25 +01:00
Pranam Lashkari 0c2247213e annotation: fixed thread scrolling to root comment on action
problem:
when long thread did not fit on screen and actions were performed
on last comments of thread which put root comment out of view,
it will cause scroll back to root comment (i.e: reply)

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I23d699425dc2dff1cfeddf6ab9be7131f80c3a31
2024-04-25 20:27:25 +01:00
Pranam Lashkari 38efd68c14 annotation: avoid explicit unselect before select
select function now can take care of reselection and layout update

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I2a061643ec190d5b2d005b940923a28131ed6cb0
2024-04-25 20:27:25 +01:00
Pranam Lashkari e443f940d1 annotation: make comment section scrollable with mouse
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: Ib6a2fee7ace81ffbc82ec4545e6f613f79c6734f
2024-04-25 20:27:25 +01:00
Caolán McNamara a327d3ec83 do invalidation tests without spellchecking
which may kick in at an arbitrary point. We shouldn't invalidate if
there is no change, but that's a TODO.

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I910c96f2c2a0efab393ccea52c9f25d5804cd967
2024-04-25 20:00:18 +01:00
Miklos Vajna 24109be2e3 cool#8648 clipboard: fix idle tests
This is not part of CI at the moment, so I didn't notice it till Szymon
pointed it out.

	make -C cypress_test check-idle spec=calc/idle_spec.js

passes with this, which is the only suite in 'make check-idle'.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: Ieeb15653abcc016bc7de87115df136dfe3f27d0d
2024-04-25 15:09:51 +02:00
Gökay Şatır e0a0646ce1 Use app.file.textCursor.rectangle instead of map._docLayer._visibleCursor.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I9108d5b3281cf6d2c904d227880e451b608d8d37
2024-04-25 15:42:35 +03:00
Gökay Şatır a3abadc17e Use "app.file.textCursor.visible" instead of "map._isCursorVisible".
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: Iedb841ec64b4fa72511603ac7e43c997676da837
2024-04-25 15:42:35 +03:00
Gökay Şatır 95d1b6d3ca Rename app.file.cursor to app.file.textCursor.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: Ic81a775efb6592e81f52e8b2a6789ac5a90c761c
2024-04-25 15:42:35 +03:00
Miklos Vajna fa6d8f6dde cool#8806 clipboard: improve detection of HTML that's just an image
Copy an image in Firefox, paste in Chrome with the Paste button or with
Ctrl-V. Nothing happens in Calc, Writer gives you a popup to copy the
image, which is already the case.

What happens is that Clipboard.js already had some code to guess when
the HTML only contains an image, but while Chrome puts '<img ...' to the
clipboard, Firefox puts '<meta ...><img ...', so we don't recognize the
content as image.

Fix the problem by adding a new isHtmlImage() function to Clipboard.js
that handles both markups and use it from both places that deal with
paste (Paste button, keyboard).

Note that this manual parsing is needed, because the input is user
provided, so DOMParser or innerHTML would not be safe.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: Ia1340cd3777c5597e3fd257e905e9cc637802bcc
2024-04-25 08:33:49 +01:00
Michael Meeks 1b6af5e28d killpoco: remove lots of redundant JSON includes.
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I976c5b8d6763cbbf0ee5cadfa2f7335ec719fe85
2024-04-25 09:06:13 +02:00
Neil Guertin 4f01c7e4de Cypress: Remove beforeAll and rewrite document loading helpers
New helpers setupDocument, loadDocument, reloadDocument
Clean up beforeEach functions
Replace most calls to beforeAll with setupAndLoadDocument
Replace calls to reload with reloadDocument

Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: I12307f93c8a418e6f55bb36b8afe340d7841b726
2024-04-25 07:37:56 +02:00
Neil Guertin dfa13bfe62 Replace beforeAll with setupAndLoadDocument
Replace beforeAll in most tests with new helper function
Tests that need to close or reopen test files cannot use
the new function and will be updated later

Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: I372280e55993123fc26f83cb2e6e6e78665a6846
2024-04-25 07:37:56 +02:00
Neil Guertin 7cc0c1996e Cypress: Remove afterEach/afterAll
Cypress recommends NOT cleaning up after tests
  https://docs.cypress.io/guides/references/best-practices#Using-after-Or-afterEach-Hooks
Open documents should not affect other tests
Files will be closed automatically by the server anyways
Tests with more strict requirements can explicitly close
  documents before, during, or after those tests
This is necessary to support beforeAll cleanup
Half of tests were verifying the wrong filename was closed anyways

Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: Iab458963a3fbfe87f732dc97140704c2d0ef53d4
2024-04-25 07:37:56 +02:00
Skyler 8510db5560 iOS: stop keyboard pushing content offscreen
Previously using the onscreen keyboard would shrink the visual viewport
while leaving the elements at the same size, meaning some of the content
had to be offscreen. As we scrolled the page to have the cursor in view,
this would move the notebook bar offscreen.

To avoid the possibility of the cursor leaving the screen or the bottom
toolbar being offscren, we can use the VisualViewport API to force the
logical viewport to have the same size as the visual one

This won't have an effect in iframes as the logical and visual viewport
in iframes are always the same, and we already scale to 100% height by
default anyway

Signed-off-by: Skyler <skyler.grey@collabora.com>
Change-Id: I07726bee8b61334f6a32e873ab2d5428fa60dca3
2024-04-24 21:53:19 +02:00
Attila Szűcs 4566ee65d1 writer: fix annotation size regression
Hidden contentNodes (in annotation) may become visible during resize.
Looks like setting style.max-height also change style.display.

Now i set it only if style.display is not none.

Signed-off-by: Attila Szűcs <attila.szucs@collabora.com>
Change-Id: I30f2eb75cb3ccb5b43044cef856314b0e35b9300
2024-04-24 19:59:26 +01:00
Attila Szűcs e02ae8be7a writer: resize comments based on space
Make comments window bigger, if needed, and possible.
Selected commits grow up to MAX size, even if there is no space for it.

There is 2 constant limitation:
MAX - --annotation-max-size this is the maximum size commentText window
can grow. If the comment have more text, than it will have scrollbar.

MIN - --annotation-min-size if there is not enought space, but comment
have more text, this is the minimum size of commentText window.

note: commentText window can be smaller then MIN, if it has less text.

During doLayout:
first, in resetCommentsSize comments size resets to default.
(max-height = MIN size.)

after comments positioned with loopUp / loopDown,
resizeComments check all comments (maybe it could be optimized)

If a comment have more text as its actual size, then
it check the space between this, and next comment..
and resize this comment.

If there is not enought space after the comment, then
it check for more space between this, and previous comment, and
resize + move up the comment as much as needed.

Signed-off-by: Attila Szűcs <attila.szucs@collabora.com>
Change-Id: Ie7b0971febd8c965b01ebe23125eac4eded1a742
Signed-off-by: Attila Szűcs <attila.szucs@collabora.com>
2024-04-24 19:59:26 +01:00
Henry Castro 97f82d0a72 browser: preview: change place hoder to svg
spinner pre-loading previews

Change-Id: Ib6316d58da60fb537e238f93981f0cc8294f6885
Signed-off-by: Henry Castro <hcastro@collabora.com>
2024-04-24 12:05:29 -04:00
Henry Castro 780b5a8e67 browser: preview: simplify "layoutPreview"
Change-Id: Ia7b478cd14901e877dece81b57f418e8bdf1668b
Signed-off-by: Henry Castro <hcastro@collabora.com>
2024-04-24 12:05:29 -04:00
Henry Castro 7d96728081 browser: preview: remove more unused code
Change-Id: I6431ee0093c006d142c2c0d3561a36ec31ba94f0
Signed-off-by: Henry Castro <hcastro@collabora.com>
2024-04-24 12:05:29 -04:00
Gülşah Köse 1d84071fc5 Prevent opening multiple tooltip on drawing area widgets
We see multiple tooltip problem on drawing area widgets.
Example case:
    Add basic shape into a writer document
    Right click on shape and open Position and Size dialog
    Select the Rotation tab
    Hold the rotation angle widget and drag around itself
When you inspect the "Rotation Angle" tooltip, count may be 600
We expect only 1.

So we prevent to show another tooltip if we have already one.

Signed-off-by: Gülşah Köse <gulsah.kose@collabora.com>
Change-Id: I2f548f8c7afce8095e83a6faa3722e164f990210
2024-04-24 17:07:03 +02:00
Gökay Şatır dc7b6d93a3 Add HTMLObjectSection for using for icons.
Replace dropdownmarker with an instance of HTMLObjectSection, which doesn't use lat/lng.

Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I152ed3ea4120c0682d057b2beedd4e5d8910da17
2024-04-24 16:44:43 +03:00
Michael Meeks 2d1865a8f6 logging: remove now unused StreamLogger.
Change-Id: Ic8a28dcc97aa0b17d2cb8efa99c42f7791486a15
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2024-04-24 10:59:51 +01:00
Michael Meeks 884a841cde Logging: wrap poco and simplify logging.
Centralize more logging functionality in Log.cpp, simplify and
wrap underlying logging APIs better.

Code is much more generic, and hides implementation details
much more thoroughly, while keeping the same API / wrappers.

To do this we have to sub-class Poco::Logger to get access to
its generic 'log' method instead of a mess of in-line wrappers,
this lets us avoid lots of code.

Change-Id: I541d3aef49f99ce582655c5102a0041bf84cd56a
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2024-04-24 10:59:51 +01:00
Henry Castro 722a2e57d2 wsd: simplify LOG_MESSAGE to the logging framework
Change-Id: I997855e586783451a556cefe2860f9384585045a
Signed-off-by: Henry Castro <hcastro@collabora.com>
2024-04-24 10:59:51 +01:00
Henry Castro 1271ee3e7f wsd: remove "PRIO" parameter to the logging framework
remove POCO dependency enumerator value.

Change-Id: I2abccd591374db96be81932d25b59fb0b10bac69
Signed-off-by: Henry Castro <hcastro@collabora.com>
2024-04-24 10:59:51 +01:00
Henry Castro 335e29abf7 wsd: add 'name' parameter to the logging framework
Change-Id: Ic8cc82e06200d2c2c8f47e27fd5e3225ca7f6202
Signed-off-by: Henry Castro <hcastro@collabora.com>
2024-04-24 10:59:51 +01:00
Szymon Kłos 1bc804deda remove-w2ui: remove css
it is not used anymore: see commits with remove-w2ui prefix

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ifc0034dcb28455204e490d0d21e97af22d3c8ae8
2024-04-24 10:57:31 +01:00
Szymon Kłos f00176aabe remove-w2ui: replace w2ui-scroll-wrapper
And add self made ui-scroll-reight/left items with
primary color tiangle. We should replace it at some
point with something more pretty.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I67530c6352b8356214399f324b55bbf9bc24f876
2024-04-24 10:57:31 +01:00
Michael Meeks 1516ca22cb bgsave: set state to unmodified on successful background save.
There is a race here, clearly if you type while a background
save is ongoing - but this is far better than leaving the
document apparently unmodified.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: Ie5e3e692294e48ad887481af2e0906092830f265
2024-04-24 09:24:34 +01:00
Michael Meeks cd37cd8765 bgsave: improve auto-save tests.
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: Ie08a68f79734e84218c9553ad3738f7b658cdc08
2024-04-24 09:24:34 +01:00
Michael Meeks 9085ff7580 Improve DocumentBroker state dumping.
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I091c67d8b72bcaa3d82cd4de7be9d5ceb8d9720d
2024-04-24 09:24:34 +01:00
Miklos Vajna 28e51d58f4 cool#8648 clipboard: stop fetching the clipboard on text selection create in tests
This was just a workaround to keep tests working till they are fixed to
not assume we do an implicit 'copy' as soon as we have a text selection.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: I37d16ee2841c41593a5af2fb6ceba025fe1c79e0
2024-04-23 14:17:10 +01:00
Caolán McNamara 843b286d8c cid#360695 Dereference after null check
<< precedence is higher than ?

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Ie7a77ba949195b91df3b87059c0c458c57b2be94
2024-04-23 14:30:42 +02:00
Caolán McNamara e6de6b9f93 cid#318937 Array compared against 0
this returns the same type as its 3rd arg, so using "false" returns
a const char* and not a bool

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Ibd46ecea82ef4587e1a2083430981976457ab874
2024-04-23 14:30:42 +02:00
Szymon Kłos 01a30b03f1 Allow to embed the presentation in window
Similar like in:
commit d9d13d7092
wasm: support serving wasm files

add headers required when we use WASM so we are able to
embed presentation in window.

Without that we get:
not-set Cross-Origin-Embedder-Policy

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I03ca3717488a92fe405693764f3f18a964b23bf7
2024-04-23 11:52:48 +02:00
Aron Budea 1ff9451754 Browser: Duplicate Repair option in Impress tabbed bar
...and remove duplicate code.

Regression from c9ef8c3015

Signed-off-by: Aron Budea <aron.budea@collabora.com>
Change-Id: Ib992d2c169d3e40f9cab670935696ab2899c639c
2024-04-23 10:40:19 +02:00
Andras Timar d6244a5e66 docker: CODE 24.04
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I7f1d5bec60a342d1b3d0dee1534506a13f12a67b
2024-04-23 09:45:58 +02:00
Skyler Grey f21031c998 mobile: Use SavedUIState=true
SavedUIState is a ui_defaults option to ignore any user preferences for
state when loading, it was added in
https://github.com/CollaboraOnline/online/pull/7575

We need to set SavedUIState explicitly on mobile, which the following
pulls do for iOS and Android respectively:
- https://github.com/CollaboraOnline/online/pull/7908
- https://github.com/CollaboraOnline/online/pull/7912

Unfortunately, setting it to false can cause some nasty bugs, such as
inability to change theme to light. It also intentionally ignores user
preferences when you reopen a document, but this isn't particularly
desirable on mobile.

I believe it to be an oversight that the option was set to `false`
rather than `true`, as `true` was the behavior before the ui_default
option was added and neither change gives a reason for it to be false
rather than true.

Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
Change-Id: I30ce445db1b7e69a3b44eec3fb4689c463233b1f
2024-04-23 08:20:35 +01:00
Caolán McNamara 94341f0390 cid#360697 Ignoring number of bytes read
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I24c1bf9f103f3bf1325246a0223919ff1dbf62b4
2024-04-23 08:53:55 +02:00
Caolán McNamara 0db12d85bf includes should be in AC_LANG_PROGRAM preamble
no the body

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I9377142c676efc3f0d658efa01e06a91f3f0924d
2024-04-23 08:51:52 +02:00
Darshan-upadhyay1110 258c5c0ce6 Remove extra grid cell space from header in autofilter child popup
- we need to also consider `th` tag to make it display none
- it's a empty text span so do not that extra space.
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: Ib83d42f64a0115fdc4d17a8f7e952419a84cc9d5
2024-04-23 08:45:00 +02:00
Miklos Vajna 9b95bf829f cool#8648 clipboard: fix mobile/writer/table_properties_spec.js
To work even if we don't automatically fetch HTML when a text selection
is created.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: I359fa602523052940879ce749624ee63086554c1
2024-04-23 08:06:01 +02:00
Miklos Vajna 82dc3e1a46 cool#8648 clipboard: fix mobile/writer/track_changes_spec.js
To work even if we don't automatically fetch HTML when a text selection
is created.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: If9371a3d235a0ee6c006be72dabe40242fa46b2b
2024-04-23 08:06:01 +02:00
Parth Raiyani 0f749d45a8 Removed NBSP while coping info to clipboard
Signed-off-by: Parth Raiyani <pmr642001@gmail.com>
Change-Id: I2566a4902ed36e53ad2acfbe1c32efccb04bddda
2024-04-22 17:02:55 +02:00
Pranam Lashkari 5525ffab36 annotation: refectored reply node count code
now reply count node  multipurpose, it also indicates
if a comment which was being edited is collapsed

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I18a676885deea0afa30eb20505a76239e11c5493
2024-04-22 14:43:08 +01:00
Pranam Lashkari 9981260b68 cypress: added test for collapsed autosaved comment indication
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I4e6929a074e750041a1814629317baf0433eaab0
2024-04-22 14:43:08 +01:00
Pranam Lashkari d663e4a6b3 annotation: indicate if comments are in edited state while collapsed
problem:
when in small window, comment was autosaved,
it wasn't collapsed but would hang on the edge of the screen half visible.
We can't collapse the comment directly as user will not be able to find again
which comment was being edited.

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I9393e7f2b53d8ea37273cc2290cc74636c514cb5
2024-04-22 14:43:08 +01:00
Gökay Şatır f64a5c3310 Remove unused functions and notes, improve a comment.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: Ic62f276983614bfbc56b50e3b0f37b1ea82c4d1a
2024-04-22 16:38:32 +03:00
Gökay Şatır cfeba70dab Lat / Lng Removal
Remove _cellCursor and use app.calc.cellCursorRectangle -> SimpleRectangle.
Turn _prevCellCursor,_cellCursorOnPgUp, _cellCursorOnPgDn into SimpleRectangle.
Remove horizontalDirection and verticalDirection calculations. They are not used. Also remove them from _onUpdateCellCursor function.
Use app.calc.cellCursorVisible instead of empty rectangle checks.
Set variables to null to re-init them instead of assigning them empty rectangles.
Push lat/lng usage through markers (leaflet things).

Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I4b258a72f1ac3c94ccf25a07d0e7dab232165b90
2024-04-22 16:38:32 +03:00
Darshan-upadhyay1110 89a7742206 Add color image preview in autofilter dialog for filter by color option
- it's not user friendly to just see color code with a radio button.
- this patch will show color image preview for filter by color options according to the color code
- it will applied only for dialogs with filter using color codes in `Autofilter`

Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: Ifc67a2692df5c9b5c332c8a15d5ad92cde4f4bf8
2024-04-22 14:14:58 +02:00
Pedro Pinto Silva ce0536eae5 Use the same tooltip style and framework for doc name & close button
Before this commit, in both cases we were not using tooltip
method (which is used everywhere) thus, resulting in inconsistent
tooltip styles, sizes and no animation (these ones were just native
browser tooltips)

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: If7f6213f507f5c439ceaaeb1c713c7680cf563d5
2024-04-22 12:23:17 +01:00
Pedro Pinto Silva 41063ceafb Fix unobutton's lack of pointer cursor
Before this commit buttons such as bold (in the notebookbar) or
sidebar button (in the top toolbar) would not change the cursor on hover

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ief075b4f4d187f6a5d87458d02077c0deaf69fe6
2024-04-22 12:23:17 +01:00
Henry Castro f17bdc679f browser: preview: remove unused code
The code is old and it is not used anymore by
new changes did it.

..

Change-Id: Id163cba7f586e3a083bff4cbb169a5d16e4b0cce
Signed-off-by: Henry Castro <hcastro@collabora.com>
2024-04-22 11:10:47 +01:00
Michael Meeks 3c6d158615 A more plausible default for _isWriteable.
In all WOPI cases this is overridden by CheckFileInfo etc. but for
legacy direct file:/// usage this state can still be seen from
unit tests it seems.

cf. commit 115b9cf2ab

dump_state() output:

 Document broker sessions [1]
		id: 001
		name: ToClient-001
...
		isWritable: false
		isReadOnly: false

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I19792b1dfdb6f5126a4d119a4d001a06bc507fb7
2024-04-22 08:50:38 +01:00
Michael Meeks a355e9b4ee remove random static mutex guard.
Presumably originally introduced to protect the static FileDeleter,
which has internal protection of its own now; cf. commit

1ae9ce8ad2

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: Id3266d7f08a9f7bd620df49850242a250fc73903
2024-04-22 08:50:38 +01:00
Miklos Vajna a91036247b cool#8648 clipboard: fix mobile/impress/insertion_wizard_spec.js
To work even if we don't automatically fetch HTML when a text selection
is created.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: I01a3ac4e843c69f6e91f650f33b8066161e73e68
2024-04-22 08:43:40 +01:00
Miklos Vajna ad22a9f017 cool#8648 clipboard: fix mobile/writer/insert_formatting_mark_spec.js
To work even if we don't automatically fetch HTML when a text selection
is created.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: I302edb920801895f1a728313b5e9a9405ec7d396
2024-04-22 08:43:40 +01:00
Miklos Vajna 9cca40deda cool#8648 clipboard: fix mobile/writer/delete_objects_spec.js
To work even if we don't automatically fetch HTML when a text selection
is created.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: Ic4a57aede4f0bca397868a80303df8d124e31ba4
2024-04-22 08:43:40 +01:00
Miklos Vajna a2db31f437 cool#8648 clipboard: fix mobile/writer/apply_font_spec.js
To work even if we don't automatically fetch HTML when a text selection
is created.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: I7cfe6a9245f0397a580cd4375836ff042a5751db
2024-04-22 08:43:40 +01:00
Miklos Vajna 04a6af39cf cool#8648 clipboard: fix mobile/impress/spellchecking_spec.js
To work even if we don't automatically fetch HTML when a text selection
is created.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: I7490be48e86f73d36e98cbea76b10f98d87aeede
2024-04-22 08:43:40 +01:00
Andras Timar 4831dabec0 fix debian/changelog
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I1702d573f18933af420635a3f5f1fa179aaee327
2024-04-22 08:35:55 +02:00
Andras Timar e23abebbe7 Bump version to 24.04.1.3
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ifd464665131aed0a2d46a3b2748f10c3d74084b9
2024-04-22 08:33:24 +02:00
Shavazo dd6760ca96 Translated using Weblate (Japanese)
Currently translated at 77.0% (451 of 585 strings)

Co-authored-by: Shavazo <pleasure.7010@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ja/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I4ca32cd89ee8115aa9bc48db69f3122755017d9e
2024-04-22 08:21:16 +02:00
Ettore Atalan 861da42d71 Translated using Weblate (German)
Currently translated at 100.0% (478 of 478 strings)

Translated using Weblate (German)

Currently translated at 98.6% (577 of 585 strings)

Co-authored-by: Ettore Atalan <atalanttore@googlemail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/de/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/de/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I98466f744ddb6f459c86b0163684e742fc9f2470
2024-04-22 08:21:16 +02:00
Michael Meeks 52f00be490 bgsave: ensure that a bgsave process doesn't have a tile queue.
Otherwise we go on doing work that the parent kit process should do eg.

[ kitbgsv_006_002 ] TRC  ToMaster-8f9: saveDocumentBackground returns succesful start.| kit/ChildSession.cpp:887
[ kitbgsv_006_002 ] TRC  Calling paintPartTile(0x4c0716f0)| common/RenderTiles.hpp:130

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I257f61d05d8a0da0c8eb9d8c60e502da66dc8cdd
2024-04-20 16:08:38 +01:00
Hubert Figuière 46f32423da impress: Allow presentation in read-only mode
- We allow the slide menu and the few presentation commands

Signed-off-by: Hubert Figuière <hub@collabora.com>
Change-Id: If2533450a3b2af365a89f780dca32daf87c0758a
2024-04-20 10:36:12 +01:00
NamelessGO a4db9b7a65 Translated using Weblate (Portuguese (Brazil))
Currently translated at 100.0% (585 of 585 strings)

Translated using Weblate (Spanish)

Currently translated at 100.0% (478 of 478 strings)

Translated using Weblate (Portuguese (Brazil))

Currently translated at 100.0% (478 of 478 strings)

Translated using Weblate (Portuguese)

Currently translated at 100.0% (478 of 478 strings)

Translated using Weblate (Portuguese (Brazil))

Currently translated at 100.0% (585 of 585 strings)

Translated using Weblate (Portuguese)

Currently translated at 100.0% (585 of 585 strings)

Translated using Weblate (Spanish)

Currently translated at 100.0% (585 of 585 strings)

Translated using Weblate (Portuguese (Brazil))

Currently translated at 100.0% (110 of 110 strings)

Co-authored-by: NamelessGO <66227691+NameLessGO@users.noreply.github.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/android-app/pt_BR/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/es/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/pt/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/pt_BR/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/es/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pt/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pt_BR/
Translation: Collabora Online/Android app
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I566f62d87df721abcd9ebb2fc780a9df71f232ed
2024-04-19 16:08:46 +02:00
Sebastiaan Veld b4a949c66f Translated using Weblate (Dutch)
Currently translated at 100.0% (585 of 585 strings)

Co-authored-by: Sebastiaan Veld <sebastiaan.veld@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/nl/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I424b6e2dba4947073c21b20975458a6be4365a5e
2024-04-19 16:08:46 +02:00
Yaron Shahrabani 937cb0079e Translated using Weblate (Hebrew)
Currently translated at 53.1% (254 of 478 strings)

Translated using Weblate (Hebrew)

Currently translated at 52.9% (253 of 478 strings)

Translated using Weblate (Hebrew)

Currently translated at 100.0% (585 of 585 strings)

Co-authored-by: Yaron Shahrabani <sh.yaron@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/he/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/he/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I45cf1906cca418011e62178e2d6064949707c63b
2024-04-19 16:08:46 +02:00
Oğuz Ersen d26428d250 Translated using Weblate (Turkish)
Currently translated at 100.0% (585 of 585 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: Iaa3fa75a694e85196e81b080e27a531a806936a1
2024-04-19 16:08:46 +02:00
Matthaiks fd3d39e484 Translated using Weblate (Polish)
Currently translated at 100.0% (585 of 585 strings)

Co-authored-by: Matthaiks <kitynska@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pl/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Id8aa995f80f4331406b7030d58c42e25a7e84bda
2024-04-19 16:08:46 +02:00
Andras Timar da532b947a Translated using Weblate (Hungarian)
Currently translated at 100.0% (585 of 585 strings)

Co-authored-by: Andras Timar <andras.timar@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/hu/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ia6b0c2ceea1bfd5ab791d56c051ab1c579fe89a4
2024-04-19 16:08:46 +02:00
Pranam Lashkari 77f71b3b0b annotation: do not scroll to root comment while editing
problem:
if comment thread is very long and some action is
performed to the last comments which puts root comment out of view,
entering modify or reply mode will make scroll to root comment.
This makes editing comment/reply go out of view

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I99f8df6886a69242b3db92674516678a61d2904f
2024-04-19 14:45:52 +01:00
Pedro Pinto Silva d84e76a841 Writer, Impress Insert tab: Annotation & Remotelink to similar place
- Make the Insert tab : insert annotation in similar place between
apps
- Use the same accesskey (accessibility, shortcut) in between apps and
the same as the one used inside of Home tab
  - Writer: Insert tab
    - Insert annotation: Add missing DE accesskey
    - Insert remotelink: Add missing accesskey
- Make both insert tabs more compact by making sure hyperlink and
remotelink stacked on both apps

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Icb8c512d437a8c328e6acf2cc41fc335d660af26
2024-04-19 14:03:36 +01:00
Pedro Pinto Silva 0bc4daa15c Writer, Impress Home tab: Promote insert annotation to bigtoolitem
- Promote to big button
  - Use the same from the previous position to make the whole tab more
  - compact by changing the insert image to a simple toolitem
- Change location in the home tab so it's easier to reach and it's
more consistent between writer and impress
- Use the same accesskey (accessibility, aka shortcut) between both apps

Cypress top_toolbar_spec.js needed to be updated to make sure scroll
indicator do not cover when attempting to access it

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I0b3f3b83772317263c9d5d3d0e7f35d831eaa1ed
2024-04-19 14:03:36 +01:00
Skyler Grey 914e3575d1 Use existing viewId in commentListSection avatar
In 79028c6f88 I replaced an instance of
using this.map._docLayer._viewId as if the user is not in the document
this becomes your own view ID and shows the wrong avatar. Unfortunately
I missed CommentListSection which has the same code.

As we already have a viewId fetched a little later down, I opted to use
it rather than get another myself

Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
Change-Id: Ieda06e03902effe9be8fef3623b73d3caeef6f65
2024-04-19 14:58:32 +02:00
Miklos Vajna 00370c247b cool#8806 clipboard: don't assume that navigator.clipboard is always defined
Trying to paste from the notebookbar in a setup which is not localhost
but uses http resulted in a JS exception:

> Clipboard.js:863 Uncaught TypeError: Cannot read properties of undefined (reading 'read')

We assumed that navigator.clipboard is always defined, but then its
'read' and 'write' properties may be undefined.

Fix the problem by abstracting this, and check for navigator.clipboard
as well in global.js.

Can be tested by disabling https in coolwsd.xml and changing localhost
to the real local IP in the make run URL.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: I1dab14e311066fa640dbba65dfcc35526a6886d7
2024-04-19 13:49:53 +01:00
Neil Guertin a5e6a81cdd Fix failing cypress test multiuser/writer/annotation_spec.js
Fixes for several sporadic issues, each uncovering the next
Sidebar was not getting hidden because the button was pressed too soon
 - Wait for sidebar to show before hiding it
Comment text area was disabled
 - Wait for disabled attribute to go away
Second half of comment text was getting sent to document instead of comment
 - Wait after typing in document before inserting comment

Also add wrapper describe block to share setup/teardown
 - Fixes copy/paste errors in one block, which was missing
   calls to selectZoomLevel and setActiveFrame

Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: I13ef1189cfacc4beac0b2c3363c70aa1e8583db3
2024-04-19 08:21:57 -04:00
Neil Guertin 85024eeb99 Remove clickOnIdle and inputOnIdle
Replace helper.clickOnIdle(selector) with cy.cGet(selector).click()
Replace helper.inputOnIdle(selector,text) with
helper.typeIntoInputField(selector,text)

Also replaced waits before clicks with a disabled check

Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: I2db36737e61271285cd474c1ffd549d285286133
2024-04-19 08:21:50 -04:00
Skyler Grey f8f15a139a Fix broken frozen columns mid-pinch-zoom
Previously the following issues were present when columns were frozen
- The frozen column was allowed to move, this was exacurbated when I
  made it easier to move in my 'calc: pinch-zoom:' commits,
  (3ba8257c64 to
  b378a0fd77). This is now fixed
- A regression was also introduced in that range where the selected cell
  marker would become offset if you placed it in a frozen section then
  pinched to zoom. This is also fixed

Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
Change-Id: I07f70a32e5cb68aeb759fd6cad626b2d4c0eed72
2024-04-19 09:42:52 +00:00
Caolán McNamara f02be4aa25 compile check of -D_FORTIFY_SOURCE=2 not failing with CFLAGS=-O0
need to include some typical headers to get it to issue a failure
diagnostic

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I37d6e0f342698507952a8006b88d56e55060270e
2024-04-19 10:40:11 +01:00
Pranam Lashkari 0cd7498e64 notebookbar: event prevent default for theme toggle button
problem:
if calc->view tab-> dark theme button is clicked,
if button is clicked from icon it works fine,
but if button is clicked on label event is triggered twice,
which means theme would be restored to first

reproducible only in firefox

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: Ie645df86651a7507582de44147885a2b62384ddb
2024-04-19 11:17:42 +02:00
Miklos Vajna 1dc4bae0c9 cool#8648 clipboard: fix mobile/impress/insertion_wizard_spec.js
To work even if we don't automatically fetch HTML when a text selection
is created.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: I640d913d7ed5069c002b0a9376b6208ac42908a2
2024-04-19 09:42:39 +01:00
Miklos Vajna ad737657c6 cool#8648 clipboard: fix mobile/impress/impress_focus_spec.js
To work even if we don't automatically fetch HTML when a text selection
is created.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: I62b809a1326c0516120076acd2dbaca8469a11bc
2024-04-19 09:42:39 +01:00
Miklos Vajna 027a87157b cool#8648 clipboard: fix mobile/impress/delete_objects_spec.js
To work even if we don't automatically fetch HTML when a text selection
is created.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: I8ba49faa7eb5926993111d03a961f750174d3bea
2024-04-19 09:42:39 +01:00
Miklos Vajna 283b5a1637 cool#8648 clipboard: fix mobile/calc/spellchecking_spec.js
To work even if we don't automatically fetch HTML when a text selection
is created.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: I8cc3d77a42d66c80882e44f5cd09ac88f53dfa9c
2024-04-19 09:42:39 +01:00
Miklos Vajna 9ea5add217 cool#8648 clipboard: fix mobile/calc/searchbar_spec.js
To work even if we don't automatically fetch HTML when a text selection
is created.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: I74f253bb7df509c731a6b3bb22a077e1142e4580
2024-04-19 09:42:39 +01:00
Pranam Lashkari 35aa8572c1 annotation: enable comment insertion from context menu
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: If5b949c36851664d5720042d3ff5c8394b2d3961
2024-04-18 22:03:11 +01:00
Pranam Lashkari 17a1db2005 annotation: fixed comments not inserted in calc
problem:
could not insert more than one comment in calc

regression from fcb6367

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I30b52569a48d5f1d0bb2a3fe9f6f6e7c6bd43c80
2024-04-18 22:03:11 +01:00
Caolán McNamara 94fed86c35 default to using available compiler hardening flags
can be disabled with --disable-hardening-flags, defaults on except
for wasm and sanitizer cases

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Id3ccb7492b73dfa6c7bbd5dd0419927032fc9bdf
2024-04-18 21:21:04 +01:00
Caolán McNamara aba11a6d73 fix test failure with hardening flags enabled
constexpr std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::operator[](size_type) [with _Tp = char; _Alloc = std::allocator<char>; reference = char&; size_type = long unsigned int]: Assertion '__n < this->size()' failed.

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I182678a1b4fcdf9e9481779f4cd1cf0ec55b2cb1
2024-04-18 21:21:04 +01:00
Michael Meeks 7f7d901726 bgsave: default to background save off on upgrade for now.
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I7cfceb1288dc2e05438653f3cedc9b7d32bc5fb8
2024-04-18 20:18:07 +01:00
Michael Meeks 5f1387b6db bgsave: various documentation cleanups & a missing const.
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I55636718815adc1b294219304e7fd060f88f9c15
2024-04-18 19:48:35 +01:00
Michael Meeks 33037c3a65 bgsave: don't try to save twice in the same background process.
Get the polarity of the check on whether we succeeded to spawn a
background save process right, so we don't spawn two saves
concurrently, and block input processing in the wrong place.

Also a few obvious sillies fixed, and some more assertions for
good measure; was not good:

[ kitbgsv_001_001 ] TRC  ToMaster-002: Finished synchronous background saving ...| kit/ChildSession.cpp:882
[ kitbgsv_001_001 ] TRC  ToMaster-002: saveDocumentBackground returns succesful start.| kit/ChildSession.cpp:887
[ kitbgsv_001_001 ] TRC  Document - input processing now: disabled was enabled| kit/Kit.cpp:2095
[ kitbgsv_001_001 ] TRC  ToMaster-002: uno command .uno:Save {... notify: true| kit/ChildSession.cpp:1944

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: Ie06a74a538bdd5038ca9c94b422f27cff9e4a82e
2024-04-18 19:48:35 +01:00
Michael Meeks f845ac08af bgsave: have a single source for InputProcessing enable & disable.
Somehow this state can get confused in a bgsave process:

   Kit Document:
         ...
         inputProcessingEnabled: false
         ...
   SocketPoll:
     Poll [kit] with 1 socket - wakeup rfd: 39 wfd: 45
             fd        events        rbuffered        wbuffered        rtotal        wtotal
             52        0x1        process             0             0         r:    825

'process' should read 'ignore' for disabled input.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I787eebe6fda3ae1b527d7605b8813fa764e81890
2024-04-18 17:19:19 +01:00
Pedro Pinto Silva bd6d48b022 Add missing icons for accept and reject change and go to the next
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ic64c6e640209c150891c7f677d05af2151a6ba06
2024-04-18 17:13:40 +01:00
Darshan-upadhyay1110 4690d8ec28 Hide outline format button for mobile
- Hide `Set outline format` uno button
- we will add this option again after fixing the dialog issue on mobile view for Outline option in `Bullets and numbering`
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: I270b78b7b9f00fd7b0f12c348794e3d3da3e653e
2024-04-18 16:35:47 +01:00
Caolán McNamara b95395434e if a sheet is removed or moved, re-request comment positions
a problem since:

commit 72b2ce4bb6
Author: Caolán McNamara <caolan.mcnamara@collabora.com>
Date:   Wed Oct 25 19:19:08 2023 +0100
    we don't need to round-trip through core to reposition notes

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: If00ae17a8e80ca3f8d2a530efa6cdba90207be56
2024-04-18 17:08:28 +02:00
Caolán McNamara 06a6059235 move these common calc annotation test blocks to calcHelper
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Ia67e29e447b333f4dfdfe25ec717cbdfc6dce043
2024-04-18 17:08:28 +02:00
Ashod Nakashian 1e206ac001 wsd: allow for recovering from unloading document
When the last connection is closed, we flag the
document for unloading, until we save and
unload and have nothing further to do. However,
if during that time a new client joins the
document, we reset the unloading state and
recover.

A previously failing and disabled test is now
re-enabled and passes.

Change-Id: I425a9286ec5df56064132e5e4227227761c65830
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-04-18 10:05:06 -04:00
Gökay Şatır 9eeed4d950 Add splitCoordinate to global variables.
Fix getViewRectangles function - it's used now.
Remove "_cellCursor" usage from CalcTileLayer.
Modify tests for the new changes.

Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: Ia5ec5a6e89d7d64df2041112936a16ec06c4da93
2024-04-18 16:30:27 +03:00
Gökay Şatır ce36339b35 Turn _cellcursorTwips into a local variable.
Remove an unused function.

Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: Ic60d088cceb67c836ead24b84d94064272516d37
2024-04-18 16:30:27 +03:00
Gökay Şatır 05e231b93c Improve geometry classes.
Add CellCursorSection - not used yet.
Start using app.canvasSize variable.
Use simpleRectangle more.

Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I2cd4e23897c918679a0a385e1ca2d04117fd71c6
2024-04-18 16:30:27 +03:00
Neil Guertin 908e766282 Fix failing test desktop/calc/top_toolbar_spec.js
Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: I02944fb4c72bfd19fdeedb944e235633c33021b8
2024-04-18 08:51:42 -04:00
Michael Meeks d1fe734ed2 bgsave: Don't busy-spin when input processing is blocked.
It seems we've had input processing turned off more than expected
recently, if we have an event or callback in the queue, it seems
we set our timeout to zero.

Since we would not be processing input this would never change,
and we would just busy spin indefinitely; just lots of:

[ kitbgsv_001_001 ] TRC  ppoll start, timeoutMicroS: 0 size 1| net/Socket.cpp:404

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: Ib374c6ce12d467eba602c7eaee99cc3940ffe681
2024-04-18 13:49:27 +01:00
Michael Meeks 8b0b0239ae bgsave: improve input processing trace debugging.
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I53ff0809248f010b5a569ef83d8d02f3287a77b5
2024-04-18 13:49:27 +01:00
Miklos Vajna 3a1dd02dd1 cool#8648 clipboard: fix mobile/calc/insertion_wizard_spec.js
To work even if we don't automatically fetch HTML when a text selection
is created.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: I6d8f5429fafa77cc4e3019878c0791555225abd0
2024-04-18 10:14:36 +01:00
Miklos Vajna a12bcd3fb0 cool#8648 clipboard: fix mobile/calc/delete_objects_spec.js
To work even if we don't automatically fetch HTML when a text selection
is created.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: Id6e1e2099273d22f9ae9718e18c70afbc27e64e7
2024-04-18 10:14:36 +01:00
Miklos Vajna 2b37f2113f cool#8648 clipboard: fix mobile/calc/cell_appearance_spec.js
To work even if we don't automatically fetch HTML when a text selection
is created.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: I72fca080c13b4d0954ba3fff67faaa6a4927ba3e
2024-04-18 10:14:36 +01:00
Miklos Vajna a5d05f2364 cool#8648 clipboard: fix mobile/calc/bottom_toolbar_spec.js
To work even if we don't automatically fetch HTML when a text selection
is created.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: Ie60c7a27d88a47f00c9b793a48d4c8e533ac32d2
2024-04-18 10:14:36 +01:00
Miklos Vajna 0c21b6e833 cool#8648 clipboard: fix mobile/calc/autofilter_spec.js
To work even if we don't automatically fetch HTML when a text selection
is created.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: If5ecd80c5b16f8f5f3f1154de6d42ca0cd803773
2024-04-18 10:14:36 +01:00
Pranam Lashkari 50963aadf2 uno: .uno:SetDocumentProperties: add file path parameter
problem:
in LOK/online to support async save, files in jails may have
different extensions (ie: .upload, .uploading)
this caused problem to detect files as original file name may not exist.
As result property like file size were always set to 0

chronology of events:
1. File is saved normally with existing name
2. After saved we make it ready for upload and add extension .upload in "renameForUpload"(kit/ChildSession.cpp)
3  We change to .uploading extension when we are uploading (DocumentBroker::handleSaveResponse, DocumentBroker::uploadAfterLoadingTemplate)

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: Ibda40b0c134ef6baef9edb0427b3c56340924858
2024-04-18 10:07:13 +01:00
Aron Budea a4671ba059 browser: Convert MobileTopBar.js to TypeScript
Signed-off-by: Aron Budea <aron.budea@collabora.com>
Change-Id: Ibced15ed3ebec2c7a7b07539f25270b19d615a1f
2024-04-18 08:35:25 +00:00
Bayram Çiçek 99cb267661 Calc: fix drop zone indicator regression
with cbf452b03d drop
indicator was not shown if the cursor is over the <div> elements
that inside the tabs

- fix by using e.currentTarget instead of e.target
and do some checks while on _handleDragLeave

Signed-off-by: Bayram Çiçek <bayram.cicek@collabora.com>
Change-Id: Iec8e246f18e553487b0eb0d9264cff8bb37b6305
2024-04-18 09:25:39 +01:00
Szymon Kłos b878363899 statusbar: use ui-badge for items
Statusbar items which are not active previously were grey.
Recover that styling and do cleanup to not specify CSS in the
JS code.

We use that only for items which are active/inactive - not
for just labels

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ic5beb7b2fa398d594cfa035d4cbcfe6f40cae787
2024-04-18 08:00:15 +01:00
Szymon Kłos c7dd10a877 statusbar: better strings formatting
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I7c5d5cbd2e36e6391610f8d4b18a87bf32c9dde2
2024-04-18 08:00:15 +01:00
Pranam Lashkari 81b00e7376 annotation: scroll to comment after resize comment list section
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: Icbabf5dcdb6f1e01ca0271b2898df28f11810f35
2024-04-18 07:57:22 +01:00
Pranam Lashkari bac4161583 annotation: resize comment list section on view size change
problem:
in writer when comment is added at the end of document,
it may go out of view and covered by the status bar and can't scroll any further

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: Ia40ea128cd36a904ee5030bb7399da183e21f44d
2024-04-18 07:57:22 +01:00
Caolán McNamara ec9c6babcb on joining an existing session calc/writer can use new users spell preferences
but impress/draw should continue to use the existing document
preference. Writer and Calc have spell as a pre-view feature, while
impress/draw still has it per document.

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Ieb8c307b13f2ee010e09058a1ba63c7808637487
2024-04-18 08:46:46 +02:00
Skyler Grey d5f902de9f comments: fix avatar when author is not in document
In e855aa6114 a regression was introduced
where a comment avatar was set to your avatar if the user was not in the
document

This commit returns it to the previous behavior, which had a "default"
avatar instead. It might instead be nice to embed avatars in the
document to avoid the avatars being missing, however the previous
behavior is far less confusing than the regressed behavior and is far
easier to get to than embedding avatars in the document

Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
Change-Id: I82834089062b1e7c2570d9fd78c7e1a3077f4c96
2024-04-17 15:02:38 +00:00
Rashesh Padia 9202365fc6 fix: duplicate `You` on reconnect
- it might happen viewinfo message arrives before status message,
viewinfo message update view list with old _viewId because new _viewId
after reconnection is not avaialable yet
- this patch fixes this by reseting the _viewId on socket close and call
updateviewlist event after client gets new _viewId from status message

Signed-off-by: Rashesh Padia <rashesh.padia@collabora.com>
Change-Id: I88a6ade574faa1368b1635db891fe87f89fa080e
2024-04-17 11:09:43 +01:00
Rashesh Padia 1aead601b3 fix: bogus cellviewcursor on reconnect
- also might fix the duplicate user on reconnect

Signed-off-by: Rashesh Padia <rashesh.padia@collabora.com>
Change-Id: Id302d79dd664d2e4efd6b4ba49972b3634b19569
2024-04-17 11:09:43 +01:00
Neil Guertin 422df9d8ef Remove extra timeout for closing document
Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: I4c92893fb55c8884d0b0f417806686c0a6b9bbae
2024-04-17 11:08:56 +02:00
Neil Guertin cb5528c01c Remove noise from logs in closeDocument
Query included the header of the table, which was then
printed in the logs including lots of whitespace noise

Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: I361f60c9b42972f580ccb10986dd4b3b9400ca0c
2024-04-17 11:08:56 +02:00
Neil Guertin 4e9bb9eba4 Remove wait and skip of close document for failed tests
The bug referenced has been fixed for a long time
so the workaround is no longer necessary

Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: Ifac6555c711a0f142dd5d00ba4f4133dd4aece9f
2024-04-17 11:08:56 +02:00
Gökay Şatır a25a8e0ee0 Rename forgotten variable.
In PR https://github.com/CollaboraOnline/online/pull/8700

We renamed some variables and removed usages of cellCursorXY.
One was forgotten and causing null ptr reference.

Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I840cc711076e4473dee8b6a1b823a362e0eecd84
2024-04-17 11:26:36 +03:00
Ashod Nakashian e690a739da wsd: support synchronous CheckFileInfo
In certain scenarios, such as with Proxy.php,
we don't have CheckFileInfo in advance and
need to request it before proceeding further.

This adds a wrapper to wait for the
CheckFileInfo request to complete.

Change-Id: I8afa955f841899eb667c02168a29a68c1dffb21b
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-04-17 10:18:33 +02:00
Miklos Vajna 4c5adb70e6 cool#8648 clipboard: fix mobile/calc/apply_font_spec.js
To work even if we don't automatically fetch HTML when a text selection
is created. This was the first mobile suite that needed fixing.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: Iad772d878d20d76bcf3770b7acc6abafa74859b2
2024-04-17 09:43:04 +02:00
Miklos Vajna fdb1f8c7fc cool#8648 clipboard: fix desktop/calc/cell_appearance_spec.js
To work even if we don't automatically fetch HTML when a text selection
is created. This was the last desktop suite that needed fixing.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: I428153c89c9ff46dc41541713c13fe19455e0c14
2024-04-17 09:43:04 +02:00
Miklos Vajna 3c9272c1bf cool#8648 clipboard: fix desktop/calc/autofilter_spec.js
To work even if we don't automatically fetch HTML when a text selection
is created.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: I7d2f870d7c694ca7305477c614c3ddb698e0c501
2024-04-17 09:43:04 +02:00
Miklos Vajna 25b377efb4 cool#8648 clipboard: fix desktop/calc/delete_objects_spec.js
To work even if we don't automatically fetch HTML when a text selection
is created.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: I80c8534b456ec5930a79d8339b297905bb5ba2de
2024-04-17 09:43:04 +02:00
Miklos Vajna 67d38b64a4 cool#8648 clipboard: fix desktop/calc/focus_spec.js
To work even if we don't automatically fetch HTML when a text selection
is created.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: I5e6d435fc9322fd5478d78f8e9ba0ef525b6c5cd
2024-04-17 09:43:04 +02:00
Michael Meeks eceb1db8ec bgsave: remove closed sockets from Kit's SocketPoll.
Hard closing without shutdown is necessary, but we continued to poll
and read on an fd that would be re-used to open eg. a ZIP file:

[ kitbgsv_007_001 ] TRC  #19: Incoming WebSocket data of 13522 bytes: 50 4B 03 04 14 00 00 08  00 00 29 9C 90 58 33 26  AC A8 2F 00 00 00 2F 00  00 00 08 00 00 00 6D 69  | PK........)..X3&../.../.......m"
...
[ kitbgsv_007_001 ] ERR  #19: An unfragmented message or the first fragment of a fragmented message must have the opcode different than 0| net/WebSocketHandler.hpp:452

which would then close the file unhelpfully.

Not removing the socketHandler when cleaning up means that
we trigger the ForKit's ServerWSHandler::onDisconnect which
SigUtil::setTerminationFlag() causing all 2nd kit processes
to expire on start.

We also want to ensure that we update the thread-id of the last
forkit process before we start removing sockets and checking
thread-ids.

We want to get rid of the parent process' sockets we inherited
but don't need very cleanly post fork.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I82966f4421fc96df552fd50cf81c8b0bc92b9bbb
2024-04-17 08:35:30 +01:00
Michael Meeks 030acb1a85 bgsave: Add SLEEPBACKGROUNDFORDEBUGGER environment variable.
Change-Id: I7284d03ddcd79a0848d1cca9b219e2ef96548511
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2024-04-17 08:35:30 +01:00
Henry Castro a80477a16c browser: assert preview queue length
Ensure all preview tiles array is equal length of preview queue
to be processed.

Change-Id: I37a8109a1d02d7dd761c9fbd36a7d0aa8102f7c3
Signed-off-by: Henry Castro <hcastro@collabora.com>
2024-04-16 12:55:24 -04:00
Henry Castro 013b4c7d56 browser: update preview layout part
The function '_processPreviewQueue' it request only
visible preview parts, it was an old code that it
needs to be updated.

Change-Id: I56519c328fb3bec70ca1fce2730f5146dc254fa5
Signed-off-by: Henry Castro <hcastro@collabora.com>
2024-04-16 12:55:24 -04:00
Henry Castro e927ea7286 browser: logging fetched preview parts
Change-Id: I4ebc3e17c9270f61fb430729b2fdcf34e0148ab0
Signed-off-by: Henry Castro <hcastro@collabora.com>
2024-04-16 12:55:24 -04:00
Henry Castro 67f9afe4a7 browser: logging to check request preview parts
Change-Id: Ie6971ffc972e2e3616461a07b8a8f51991ed28f5
Signed-off-by: Henry Castro <hcastro@collabora.com>
2024-04-16 12:55:24 -04:00
Henry Castro 626d2acd2c browser: logging warning if empty rects
Change-Id: I6fa4d760d1ec8cc0dd6060aeb9d19939572c629d
Signed-off-by: Henry Castro <hcastro@collabora.com>
2024-04-16 12:55:24 -04:00
Henry Castro 385d3790a7 browser: fix queue preview part duplicate
Change-Id: Iefc364964ec916f8e230d35c9432f72cf5466ad0
Signed-off-by: Henry Castro <hcastro@collabora.com>
2024-04-16 12:55:24 -04:00
Hubert Figuière 6a8e00c1af permission: Don't show the edit button if read-only
If wopi.UserCanWrite tells us we can't write the file no reason to show the edit button
that would do nothing anyway.

Fix https://github.com/CollaboraOnline/online/issues/8686

Signed-off-by: Hubert Figuière <hub@collabora.com>
Change-Id: I4f6d1f8d8be520e422e260f2e532cb86541e8d0f
2024-04-16 16:44:50 +01:00
Michael Meeks 03a8be557e bgsave: initial unit testing skeleton.
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: Ia231d0f0f9d6ea0cd20b7ad7e28eee082530cf71
2024-04-16 16:43:52 +01:00
Michael Meeks af749c2237 bgsave: rename parameter to background, and add setting.
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: Ic49ec5715682b71461b49741d022fc7149aa5a13
2024-04-16 16:43:52 +01:00
Michael Meeks 2d018d38a5 bgsave: add unit testing hooks for after bgsave fork & pre exit.
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I35a2ec185762138dc85db39df3e7644c60acfddc
2024-04-16 16:43:52 +01:00
Michael Meeks 5dbe4fe02f bgsave: warn and fail on unexpected receipt of .uno:Save.
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I097320d8b668c1bfae9052e9edc5a4df9c7c0bcf
2024-04-16 16:43:52 +01:00
Andras Timar d968b0af63 Use CodeQL Action v2
see https://github.blog/changelog/2023-01-18-code-scanning-codeql-action-v1-is-now-deprecated/

Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I92253f747b8bbb9d365bb49b40402c832d63d0de
2024-04-16 16:30:34 +01:00
Michael Meeks a8102212c6 bgsave: ensure kit processes die when their parents do.
Potentially zombie / badly behaving kits should be taken down
by the kernel, and this lets us continue our cleanup by killing
just the parent process.

Change-Id: I1e81f41cded0c67b72622f8ed88602daf427238c
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2024-04-16 15:07:18 +01:00
Caolán McNamara 85fc0fd841 cid#360688 COPY_INSTEAD_OF_MOVE
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I426317d77e437d024ad2fb0133cf8eaa5c91e8c6
2024-04-16 15:19:35 +02:00
Caolán McNamara ce437ce41a cid#360691 COPY_INSTEAD_OF_MOVE
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I19c77888eabd7ea6c1186d3a3a30e6913826a641
2024-04-16 15:19:35 +02:00
Caolán McNamara 2d5797ad4b cid#360692 Uninitialized scalar variable
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Ica6d5a202c1124680ae5ab01bd551fc800a74910
2024-04-16 15:19:35 +02:00
Caolán McNamara c4a6b37460 cid#360694 silence Division or modulo by float zero
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Ifac9d92f95e131f2888bef6a74435b3d6a8df829
2024-04-16 15:19:35 +02:00
Caolán McNamara 7f4fd7f556 cid#360695 Dereference after null check
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Ic7d9fe40440d9a6d31b6f546270ab36acfa24d4a
2024-04-16 15:19:35 +02:00
Caolán McNamara 99f6114d63 cid#360689 Uninitialized scalar field
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I60c1c8ac794c0ae09f0a3a7b05413c886b73d44a
2024-04-16 15:19:35 +02:00
Caolán McNamara fa994b2177 cid#360699 Uninitialized scalar field
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I578424a95b728d285924b78679d9ec23ad53972b
2024-04-16 15:19:35 +02:00
Noel Grandin 8739373a88 use erase/remove idiom to clean pollSockets
which is more efficient than repeatedly erasing in a vector.

Signed-off-by: Noel Grandin <noel.grandin@collabora.co.uk>
Change-Id: Iebd41130b37a67ffd74fa2d692b83220b1cab3f4
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2024-04-16 14:00:42 +01:00
Miklos Vajna a8d4a3e859 cool#8648 clipboard: fix desktop/calc/searchbar_spec.js
To work even if we don't automatically fetch HTML when a text selection
is created.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: Ib53e71546cc1965f4a1073d507b07caef086c628
2024-04-16 13:47:11 +01:00
Miklos Vajna 5bf298243f cool#8648 clipboard: fix desktop/calc/searchbar_spec.js
To work even if we don't automatically fetch HTML when a text selection
is created.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: I6148fdbdff6390c20e454ed9f26c6e55e774cc69
2024-04-16 13:47:11 +01:00
Miklos Vajna e396df494c cool#8648 clipboard: fix desktop/calc/top_toolbar_spec.js
To work even if we don't automatically fetch HTML when a text selection
is created.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: I3562d90ff20963bb77afebb8ea7430586f0b6bbd
2024-04-16 13:47:11 +01:00
Miklos Vajna 7f9c809881 cool#8648 clipboard: fix desktop/calc/undo_redo_spec.js
To work even if we don't automatically fetch HTML when a text selection
is created.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: Idb62d8496f8ff9503654ecea1747f097463afb1b
2024-04-16 13:47:11 +01:00
Miklos Vajna c10cc6d8b8 cool#8648 clipboard: fix desktop/impress/delete_objects_spec.js
To work even if we don't automatically fetch HTML when a text selection
is created.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: Ic499b60dde450b32464dc2b8cd959066ac5c2e7e
2024-04-16 13:47:11 +01:00
Caolán McNamara e3d5c168c1 try adding {force: true} to leaflet-layer clicks
error is:

1) Joining a document should not trigger an invalidation
       Join after document save and modify:
     CypressError: Timed out retrying after 10050ms: `cy.click()` failed because this element:

`<div class="leaflet-layer" style="position: absolute; width: 642px; height: 484px;"></div>`

is being covered by another element:

`<div class="jsdialog ui-button-box end" id="">...</div>`

Fix this problem, or use {force: true} to disable error checking.

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I8b0dde030b2aadf554db75872facb6c5c96a321c
2024-04-16 13:22:56 +02:00
Caolán McNamara b88d518622 unwanted extra quote at end of true in json
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I66d80d415ea8e19823ccb7e6b3e8b6af1df51fbc
2024-04-16 12:04:17 +02:00
Méven Car fb96ec89a3 WopiStorage: turn err to warning logging for PutFile
Let the error detail the error origins.

Signed-off-by: Méven Car <meven.car@collabora.com>
Change-Id: I67a98dfe1001fd663af464ec5ec417330d0fbfb1
2024-04-16 09:24:42 +02:00
Henry Castro 4989876cc6 config: fix font color value (Dark Theme)
Change-Id: Ib7a368c1257d69ba57e13fdcec044855826a2cdd
Signed-off-by: Henry Castro <hcastro@collabora.com>
(cherry picked from commit 67affdb956)
2024-04-16 08:57:18 +02:00
Szymon Kłos a142cd9161 css: use variable for separator color
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Id9f07bac4f653c1f51bade1124cfee730247d6fd
2024-04-15 16:44:45 +02:00
Szymon Kłos aeaba960db jsdialog: don't focus separators
Don't allow separator and spacer (placeolder which expands)
to be target of a focus when we use tab key.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I724604eb299c65e4709d3e7708f514c312188393
2024-04-15 16:44:45 +02:00
Miklos Vajna e733accdac browser: fix merge conflict in Widget.Combobox.js
eslint now forces single quotes.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: Ia462bc21bc720b64caf5d535eb46e637e24b9f4a
2024-04-15 14:34:32 +02:00
Patrick Luby aedfd864d4 Enable new paste handler on mobile platforms
At least on iOS, the new paste handler needs to send an uno message to
the LibreOffice code.

Also, completely remove fix for GitHub issue #5839. It no longer worked
and will be handled in a patch to LibreOffice's native iOS clipboard
handling code. Ultimately, GitHub issue #5839 was caused by the iOS
clipboard code's failure to never fire a "clipboard content changed"
event. So, the LibreOffice application layers never updated their
pasting enabled state.

Signed-off-by: Patrick Luby <guibomacdev@gmail.com>
Change-Id: I4e198a45d863e3ecaf1dd04e85ce9d0d9b1a0894
2024-04-15 13:56:51 +02:00
Szymon Kłos a5e20a4943 Revert "eslint: introduce strict rules"
It didn't work: prettier still used double quotes as a standard
so it was not possible to pass make check

This reverts commit 7c5c5bd47b.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ic04f1591dc39bbfe522ed2b840c543ec42b3ffa3
2024-04-15 12:23:26 +02:00
Michael Meeks 0b3b27cb72 bgsave: switch to using a 'save' command to the kit.
Also pass 'autosave' status in a more conventional way.

Ideally we would split 'save' away from a ChildSession / ClientSession
and have this on DocumentBroker / Document - for the future.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I39a6caf8b17fa2fc2d940ae0d11bdc2d4da20b6c
2024-04-15 11:06:22 +01:00
Michael Meeks 76230b6b4b SigUtil now associates all commands with a session anyway.
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I9098f7137d81bbc63e2449fbc8ecc53b3f1e7e7e
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2024-04-15 11:06:22 +01:00
Pranam Lashkari 7c5c5bd47b eslint: introduce strict rules
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I2cb0f61d3b159c78e67d99f163b828f60cb0f5e2
2024-04-15 11:48:17 +02:00
Darshan-upadhyay1110 a29ec03fae Fix header avatar have the same image of current UserList
Problem :
 - Open the document which have some comment from other User
 - we can see that they are same as the logged in user avatar

regression
    - this is a regression from commit e855aa6114
    - we were paasing url of user which is logged in and that should not happning for other user avatar image

Solution: - while setUserImage function pass viewId
    - this will help to identify the user Info from map
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: I5ee8b41c2e58a4ba15ecf551b264f944aa926da8
2024-04-15 09:36:53 +00:00
Jaume Pujantell 705755f7b0 browser: correct avatar css on userlist
Avatars on the user list where shown too big

When userlist-dropdown was separated from userListHeader as a
JSDialog, the proper avatar-img css stopped applying.

Signed-off-by: Jaume Pujantell <jaume.pujantell@collabora.com>
Change-Id: I58539c492758c4ecea09d598ba7e113034078cd9
2024-04-15 11:35:08 +02:00
Darshan-upadhyay1110 0d838c26f1 Update cypress test for toolbar_spec
- Now as we hide the button for none edit modified
- we need to check for items visiblity and not the disabled attr
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: Ic0b1765cd12381ea359a8ff65dd88a350d9e9f33
2024-04-15 11:05:29 +02:00
Darshan-upadhyay1110 86cb7081e6 Add readonly option in JSON for all application
- Readonly option was only present in writer before this patch
- this will add option for all other Apps: Calc,Draw,Impress
There is slight issue while getting the read-only flag for MobileTopBar .
        - `app.map. isReadOnlyMode ()`: Still not work because at point of getToolItems() no permission had be setted in permission.js file for function `isReadOnly()`
        - it means this._permission still undefined when we cal `app.map. isReadOnlyMode ()` from Control.MobileTopBar.js-
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>

Change-Id: I1f5fa012218ec1025ae32e33a99363fd2ffb87ab
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
2024-04-15 11:05:29 +02:00
Darshan-upadhyay1110 7438fd546e Hide disabled elements on mobile top-toolbar
- we disabled some specific button on mobile top toolbar
- but just disabling it won't hide that from UI
- maybe it is better to not show those buttons
- it also occupies much space in top view
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>

Change-Id: I5609fb5d02bcb0590a430df73ef4568ca838c960
2024-04-15 11:05:29 +02:00
Miklos Vajna 770feebf13 cool#8648 clipboard: fix desktop/impress/undo_redo_spec.js
To work even if we don't automatically fetch HTML when a text selection
is created.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: Iff00cdd8e1a8863c09362cefa3a2bfdf6275f837
2024-04-15 09:51:18 +01:00
Miklos Vajna 359e7eca67 cool#8648 clipboard: fix desktop/writer/editable_area_spec.js
To work even if we don't automatically fetch HTML when a text selection
is created.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: I60028b22e570d2566a4d64b0cd70150530830852
2024-04-15 09:51:18 +01:00
Miklos Vajna 406dad2128 cool#8648 clipboard: fix desktop/writer/notebookbar_spec.js
To work even if we don't automatically fetch HTML when a text selection
is created.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: I52851e3473532781fb03f2ac9d7c14614c2d7814
2024-04-15 09:51:18 +01:00
Miklos Vajna 1e4afce8a1 cool#8648 clipboard: fix desktop/writer/searchbar_spec.js
To work even if we don't automatically fetch HTML when a text selection
is created.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: Ia518a7f60c39109de82e0c9b38185ebe757df1cf
2024-04-15 09:51:18 +01:00
Miklos Vajna 56adf9983e cool#8648 clipboard: fix desktop/writer/table_operation_spec.js
To work even if we don't automatically fetch HTML when a text selection
is created.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: Ieb789f923357b3ff7749fee0202b15990491cfdc
2024-04-15 09:51:18 +01:00
Aron Budea 246e87fea2 wsd: Unconditionally compile support-key-enabled code paths
Signed-off-by: Aron Budea <aron.budea@collabora.com>
Change-Id: Iec477c223f2dc75e0be8b472c8439ca9311d6aae
2024-04-14 01:23:00 +01:00
Caolán McNamara bae0a91082 use SigUtil::setUserSignals before creating SocketPoll
The SocketPoll ctor which may, depending on COOL_WATCHDOG env variable,
want to override the SIG2 handler so set user signal handlers before
that otherwise tthat choice is overwritten

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I305570ab8becb41f0696e60908c1ca26fd9ba14a
2024-04-13 20:07:16 +01:00
Andras Timar 28e880e6b0 Update l10n files for Weblate
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I1e90cd046f92f6b61e38d85ffb8499f0c2451b83
2024-04-12 19:32:23 +02:00
Shavazo f4107de278 Translated using Weblate (Japanese)
Currently translated at 36.4% (174 of 478 strings)

Translation: Collabora Online/Help
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/ja/
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I7871d370c5d0a0c28c288fdb5dbfa7b99316301a
2024-04-12 19:19:49 +02:00
Poe Mon 57e7209b23 Translated using Weblate (Japanese)
Currently translated at 75.5% (441 of 584 strings)

Translation: Collabora Online/UI
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ja/
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I4d9692ac2a3ce3dfe97b4ccf572fbb838568b461
2024-04-12 19:19:49 +02:00
Shavazo a0eb3e9eb6 Translated using Weblate (Japanese)
Currently translated at 75.5% (441 of 584 strings)

Translation: Collabora Online/UI
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ja/
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I4d9692ac2a3ce3dfe97b4ccf572fbb838568b461
2024-04-12 19:19:49 +02:00
Shavazo 4cfbfb57eb Translated using Weblate (Japanese)
Currently translated at 35.9% (172 of 478 strings)

Translation: Collabora Online/Help
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/ja/
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ia0dd0c5661e95343e4d204f32b7eaf31c30350e6
2024-04-12 19:19:49 +02:00
Poe Mon 3d993a3b61 Translated using Weblate (Japanese)
Currently translated at 35.9% (172 of 478 strings)

Translation: Collabora Online/Help
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/ja/
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ia0dd0c5661e95343e4d204f32b7eaf31c30350e6
2024-04-12 19:19:49 +02:00
Poe Mon 14ebc41afc Translated using Weblate (Japanese)
Currently translated at 69.1% (404 of 584 strings)

Translation: Collabora Online/UI
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ja/
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ia98ed0e486c01bad90a83e289c5ff2f757a21d51
2024-04-12 19:19:49 +02:00
Shavazo ce180aeb47 Translated using Weblate (Japanese)
Currently translated at 69.1% (404 of 584 strings)

Translation: Collabora Online/UI
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ja/
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ia98ed0e486c01bad90a83e289c5ff2f757a21d51
2024-04-12 19:19:49 +02:00
Poe Mon 50098c8d01 Translated using Weblate (Japanese)
Currently translated at 34.7% (166 of 478 strings)

Translated using Weblate (Japanese)

Currently translated at 58.0% (339 of 584 strings)

Co-authored-by: Poe Mon <p.poemon.awitd@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/ja/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ja/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I61ea3286363469a3994dba5260611dd94909e743
2024-04-12 19:19:49 +02:00
Shavazo e41fcbe9b8 Translated using Weblate (Japanese)
Currently translated at 34.7% (166 of 478 strings)

Translated using Weblate (Japanese)

Currently translated at 58.0% (339 of 584 strings)

Translated using Weblate (Japanese)

Currently translated at 86.3% (19 of 22 strings)

Translated using Weblate (Japanese)

Currently translated at 67.2% (74 of 110 strings)

Co-authored-by: Shavazo <pleasure.7010@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/android-app/ja/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/android-lib/ja/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/ja/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ja/
Translation: Collabora Online/Android app
Translation: Collabora Online/Android lib
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I7940ff6e6ce714072f9b2b36185720f5da021c81
2024-04-12 19:19:49 +02:00
bittin1ddc447d824349b2 448d763abc Translated using Weblate (Swedish)
Currently translated at 98.4% (575 of 584 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: I4ccb0d08f7289e464c92e1d715dd2b35876910da
2024-04-12 19:19:49 +02:00
Rob Pearson 53cb535c28 Translated using Weblate (English (South Africa))
Currently translated at 100.0% (584 of 584 strings)

Translated using Weblate (English (New Zealand))

Currently translated at 100.0% (584 of 584 strings)

Translated using Weblate (English (United Kingdom))

Currently translated at 100.0% (584 of 584 strings)

Translated using Weblate (English (Australia))

Currently translated at 100.0% (584 of 584 strings)

Co-authored-by: Rob Pearson <rob.dunedin@gmail.com>
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/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I2c76e646cdcedcfaca4f9a04c3ff97c47fde6808
2024-04-12 19:19:49 +02:00
Sebastiaan Veld ef382064a4 Translated using Weblate (Dutch)
Currently translated at 100.0% (478 of 478 strings)

Translated using Weblate (Dutch)

Currently translated at 100.0% (584 of 584 strings)

Co-authored-by: Sebastiaan Veld <sebastiaan.veld@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/nl/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/nl/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: If98f22508fd790e3dc0763e90756564df1ac6ffe
2024-04-12 19:19:49 +02:00
Adolfo Jayme Barrientos c48eea7272 Translated using Weblate (Spanish)
Currently translated at 100.0% (584 of 584 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: I4d1f4b2b2193de2f363cbe6c31031e93dd713351
2024-04-12 19:19:48 +02:00
Rhoslyn Prys caa41c7278 Translated using Weblate (Welsh)
Currently translated at 100.0% (584 of 584 strings)

Co-authored-by: Rhoslyn Prys <rprys@posteo.net>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/cy/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I4d908b787f380af826d81db1ce4177bc392b9da8
2024-04-12 19:19:48 +02:00
Stanislav Horáček d8356dd907 Translated using Weblate (Czech)
Currently translated at 100.0% (478 of 478 strings)

Translated using Weblate (Czech)

Currently translated at 100.0% (584 of 584 strings)

Translated using Weblate (Czech)

Currently translated at 98.6% (576 of 584 strings)

Co-authored-by: Stanislav Horáček <stanislav.horacek@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/cs/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/cs/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Idee227b1605577163dabf22675d99ebbda590002
2024-04-12 19:19:48 +02:00
Yaron Shahrabani 83975d63aa Translated using Weblate (Hebrew)
Currently translated at 100.0% (584 of 584 strings)

Translated using Weblate (Hebrew)

Currently translated at 51.8% (248 of 478 strings)

Translated using Weblate (Hebrew)

Currently translated at 96.2% (562 of 584 strings)

Co-authored-by: Yaron Shahrabani <sh.yaron@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/he/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/he/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I20f108e6599109cfc975e046b6cb92390ab5040b
2024-04-12 19:19:48 +02:00
Andras Timar bb0bdbf3e9 CI test
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I63864518a63c1ef7c6812506daeb2ebd6aa8dc39
2024-04-12 19:19:38 +02:00
Méven Car 5f5ca6c3d2 welcome window: allow to translate tab numbers
Signed-off-by: Méven Car <meven.car@collabora.com>
Change-Id: I01d62428ec98b051a7b131901bab3c346e7697d0
2024-04-12 15:25:22 +02:00
Miklos Vajna 1f0aec8f19 cool#8648 clipboard: fix insert hyperlink dialog
Type a word into Writer, select it, Ctrl-K, the link text should default
to the selection, but it was empty.

This happens because Toolbar.js getTextForLink() doesn't have the
pre-fetched clipboard anymore, so we return an empty string there.

Fix the problem by triggering a text selection fetch (and leaving the
clipboard alone), and then handling the hyperlink dialog on the
CanvasTileLayer.js side.

Once this is done, the usual dummy clipboard registration & copy() calls
need adding and the test passes even with the patch from
<https://github.com/CollaboraOnline/online/issues/8648#issuecomment-2037278091>.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: Ibd8313588e705c4b027643b452099bbf02cfe8ec
2024-04-12 14:00:26 +01:00
Antony 68ff59156b Add accesibility support to comboboxes inside font panel in sidebar
- Add aria-label to input if aria properties present in the widget data
- Add appropriate roles to input and div as per standards mentioned in MDN docs for accessbility combobox
- Modified combobox button click event to open popup using Space key as well, as mentioned in the MDN docs for accessbility

Signed-off-by: Antony <dasantony@rocketmail.com>
Change-Id: I66ebc6897e6a9a73a65f53d5cbd2f06a645dcb3f

Signed-off-by: Antony <dasantony@rocketmail.com>
Change-Id: Id39242ea2fa57f8f5a46efca7a73b529ceae088d
2024-04-12 14:27:50 +02:00
Ashod Nakashian 980136ebf7 wsd: always create wopiFileInfo
We need to have a valid wopiFileInfo instance
even on Mobile, since we dereference it
to get the actual unique_ptr.

Eventually, we should change this to be
a shared_ptr everywhere, but until then
we need to make sure the pointer is valid.

Change-Id: I54b6a0f862e319f4e727c28ac396102410bb422d
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-04-12 13:16:58 +01:00
Ashod Nakashian f3b10c3790 wsd: make checkFileInfo call explicit
When we call checkFileInfo from the constructor
of CheckFileInfo, it is possible for the
callback to get fired immediately if we fail
to open a socket.
In that case, the caller would have had
no chance of having stored the reference to
the CheckFileInfo object instance, so
the callback would fire without the owner
having a way to properly do housekeeping.

By moving the call outside of the constructor
and making it explicit, we allow for a
better management of the CheckFileInfo
object instance.

Change-Id: I3094b73fa3ab70e83ec5238959defcb2fd9ecf4e
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-04-12 13:16:58 +01:00
Ashod Nakashian d60d19eb7a wsd: test: better UnitOverload logging
Change-Id: I2b5177b4b3500cfb252e8d9f7a2f6b049b25bc9e
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-04-12 13:16:58 +01:00
Miklos Vajna ad74670af5 cool#8734 browser: allow enabling dark mode from a URL parameter
One way for integrations to ask for dark mode is to set URL parameters.
This works for e.g. the language, but didn't work for dark mode.

There was already a parameter for this, but it was limited to Android.

Fix the problem by exposing the parameter for non-Android as well, and
also extend global.js to default to this, but keep the local storage as
an option to customize the setting if the user wants to.

Tested with 'make run', <input type=hidden> way may need more work on
top of this.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: I78c4115a8e337ef2b1ea9e498db2572965762bef
2024-04-11 08:33:21 +01:00
Ashod Nakashian d5f865d534 wsd: remove unused eof from the TileQueue
Change-Id: Ibb1ad403272554202b69f4c94f3b6f50c8db2379
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-04-11 08:31:24 +01:00
Ashod Nakashian 7d266c64cd wsd: test: move single-use local map
Change-Id: I02e654b060415e5dda32ffafcdc19f8edfd86a62
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-04-11 08:31:24 +01:00
Ashod Nakashian fc4de6db18 wsd: redunce string concatenation churn
Change-Id: Ic14a14b6fb69346d9f3e3638620ec35b7c2eb6c1
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-04-11 08:31:24 +01:00
NickWingate ec0d89754d Sanitize presentation window title and url
Note the url sanitised is the url passed to
the iframe, not the url in the popup window

Signed-off-by: NickWingate <nick.wingate@collabora.com>
Change-Id: Idad9bfaa390d83cfb083b99144cb9d0a54705287
2024-04-11 07:15:02 +01:00
NickWingate 4cfd274deb Force slideshow popup to have blank url in firefox
Firefox has automatic url navigation when we use
document.write and changes the url to the parent
window. document.write may also cause additional
problems (see https://developer.mozilla.org/en-US/docs/Web/API/Document/write)
Instead change only the innerHTML of the document.

Signed-off-by: NickWingate <nick.wingate@collabora.com>
Change-Id: I55b88fd557af05b2a0e49adb7f08e9467dd4a4ba
2024-04-11 07:15:02 +01:00
NickWingate 10f8e90d76 Add localization to popup title
Signed-off-by: NickWingate <nick.wingate@collabora.com>
Change-Id: I306120db1bcda043c92adad122e368e05c80f613
2024-04-11 07:15:02 +01:00
NickWingate 50267a3aaa Change convoluted url and name in windowed presentation
Open an empty popup with a blank url, then set the
content of the popup to be our slideURL wrapped inside an
iframe with a user friendly title.
Focus the iframe on load so that arrowkey navigation works
and forward the eventlisterner of the iframe to the parent
window to watch for escape key calls

Signed-off-by: NickWingate <nick.wingate@collabora.com>
Change-Id: Ie1063095db51119fd45453b8b4b180fcacb6d7c1
2024-04-11 07:15:02 +01:00
Ashod Nakashian 6ad2e59245 mount: smarter umount handling
We fall back to MNT_FORCE only when
MNT_DETACH fails. Also improves when
we log the error to stderr.

Change-Id: I8b8b2a863b0339ddd489f1d0150446e6bae82a8a
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-04-10 18:49:27 +02:00
Caolán McNamara 74ef545dd5 _setSpliterGradient triggers excess drawing
every _postMouseEvent in a spreadsheet calls _setSpliterGradient which
triggers a redraw

_applyDelta [bundle.js:18978:86]
ensureCanvas [bundle.js:18941:64]
TilesSection.prototype.ensureCanvas [bundle.js:15642:88]
TilesSection.prototype.drawTileToCanvasCrop [bundle.js:15654:54]
TilesSection.prototype.drawTileInPane [bundle.js:15503:66]
TilesSection.prototype.paintWithPanes [bundle.js:15481:48]
TilesSection.prototype.paint [bundle.js:15532:78]
TilesSection.prototype.onDraw/< [bundle.js:15602:52]
TilesSection.prototype.forEachTileInView [bundle.js:15536:71]
TilesSection.prototype.onDraw [bundle.js:15592:56]
CanvasSectionContainer.prototype.drawSections [bundle.js:14091:56]
CanvasSectionContainer.prototype.requestReDraw [bundle.js:13724:76]
CanvasOverlay.prototype.redraw [bundle.js:16337:41]
CanvasOverlay.prototype.updatePath [bundle.js:16320:80]
CPath.prototype.redraw [bundle.js:15929:33]
CPolyline.prototype.setPointSet [bundle.js:16015:63]
CRectangle.prototype.setBounds [bundle.js:16103:55]
CSplitterLine.prototype.onChange [bundle.js:16172:43]
CSplitterLine.prototype.onPositionChange [bundle.js:16171:51]
_setSpliterGradient [bundle.js:18874:67]
_sendClientVisibleArea [bundle.js:18860:73]
_postMouseEvent [bundle.js:17904:75]
L.Map.Mouse<._onMouseEvent</< [bundle.js:22844:16]
_executeMouseEvents [bundle.js:22878:61]
setTimeout handler

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I7eb9668edda38730daebb7a342b7a9c44677fabb
2024-04-10 17:12:19 +01:00
Pranam Lashkari 3f2a1a5caa added check for undefined properties
problem:
zotero was not loading because element.text didn't exist
on adding bibliography there was error to parse JSON,
because there's some more data in string after JSON

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: If34791ae7ca79ca7fd304b506cd483e929f4d2ac
2024-04-10 16:32:20 +02:00
Hubert Figuière 7a9aa6c6c9 Makefile: added a target to run with heaptrack
It will launch the gui at the end if found
It's much faster than valgrind+massif

Signed-off-by: Hubert Figuière <hub@collabora.com>
Change-Id: Ied5a00ab634f78bbb0dd24a48a83ae4293183cd4
2024-04-10 15:54:56 +02:00
Skyler Grey eb7d6eaa83 Fix formatting on JQuery join tooltip
A nice followup would be a change to automatically do this on all JQuery
tooltips, maybe I will make a commit to do that later

Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
Change-Id: I545f5e8d45849fb1b000c321b3554efd874eaaf8
2024-04-10 14:06:27 +02:00
Miklos Vajna 91c702e420 cool#8648 clipboard: fix most of desktop/writer/top_toolbar_spec.js
To work even if we don't automatically fetch HTML when a text selection
is created.

'Insert hyperlink.' needs more work, leave that one alone for now.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: I6abdc40e46d5347c8c005c1289b59ef8933f08d2
2024-04-10 08:47:07 +01:00
Miklos Vajna b3f2c690d8 cool#8648 clipboard: fix desktop/writer/track_changes_spec.js
To work even if we don't automatically fetch HTML when a text selection
is created.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: I1b674504b682dc7fce2c6a437dc91aadd8065531
2024-04-10 08:47:07 +01:00
Miklos Vajna 635a45aac0 cool#8648 clipboard: fix desktop/writer/undo_redo_spec.js
To work even if we don't automatically fetch HTML when a text selection
is created.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: Ic55ddf984d8605c8627e87454a4b4916e15523d1
2024-04-10 08:47:07 +01:00
Miklos Vajna 803df018da cool#8648 clipboard: fix desktop/calc/clipboard_spec.js
Move two functions from desktop/writer/copy_paste_spec.js to
common/helper.js, this way desktop/calc/clipboard_spec.js can do an
explicit Copy and then it passes even with the async copy.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: I7874f0ac00a4237a90015b0fbcd67dcfd2e9ad68
2024-04-10 08:47:07 +01:00
Andras Timar 94c9153556 Update Helm Chart with new release 23.05.10.1
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I8b739297ded85f4e24c61a88b4b16c46a3f96626
2024-04-09 17:42:59 +02:00
Andras Timar 5cfcbd2222 remove obsolete/removed files from CI check configs
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ia3ee3f6b508c5146df172cb07f4f515627ec75f1
2024-04-09 17:18:51 +02:00
Miklos Vajna 286cd1ccf7 cool#8648 clipboard: fix desktop/writer/copy_paste_spec.js
Once the patch from
<https://github.com/CollaboraOnline/online/issues/8648#issuecomment-2037278091>
is applied to make CanvasTileLayer.js _onTextSelectionMsg() not fetch
the clipboard proactively, this test started to fail.

This happened because the test assumed that once a text selection is
created, we have the HTML for it, which is no longer the case.

Fix the problem by extending the dummy clipboard code to also handle
plain text and by adding a function which triggers the copy(), to
minimize the changes to the actual test code.

This is just a start, lots of other tests still need fixing, and once
the pattern is clear, common code should be extracted to
cypress_test/integration_tests/common/helper.js, probably.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: I21ed1143470fa8026e133b0519e114a40fc0ed90
2024-04-09 07:52:33 +01:00
Patrick Luby 3a4c3d7c36 Enable new copy handler on mobile platforms
At least on iOS, the new copy handler works as intended and sends an
uno message to the LibreOffice code.

Signed-off-by: Patrick Luby <guibomacdev@gmail.com>
Change-Id: Ifa7dc0738dccf0642a9fadd48919e00bfb62e402
2024-04-09 08:20:33 +02:00
Gökay Şatır c6b461cd54 Shorten app.file.calc.cellCursor variables.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I1abdcac03e77f55d0d0a50a2cb128d4d29991f43
2024-04-08 12:14:46 +03:00
Gökay Şatır fcb6367cd7 Use SimplePoint for cell address.
Use SimpleRectangle for cell cursor.
Add .clone function to SimplePoint.
Use app.file.calc.cellCursor.visible for checking the cursor visibility instead of null variables.
Replace map._cellCursorPixels with app.file.calc.cellCursor.rectangle
Remove map._cellCursorXY with app.file.calc.cellCursor.address
Replace map._validatedCellXY with SimplePoint.

Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I9b1e2c92e5029b2f184055083d35200bb5e6b8c9
2024-04-08 12:14:46 +03:00
Caolán McNamara e1bf395798 aarch64 doesn't have SYS_futimesat
we picked something obscure, and clearly aarch64 took advantage of
not adding something obscure unnecessary for backwards compatibility
on that arch

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I097ef24c98e23931a3997c743d17d52c0afd52b7
2024-04-07 22:20:10 +02:00
Martin Srebotnjak affa583eb5 Translated using Weblate (Slovenian)
Currently translated at 100.0% (584 of 584 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: I0d6b357e94e0c991a0f3020ec3bb45a5c5b94a6f
2024-04-07 14:13:05 +02:00
Andras Timar cd9293f95b Translated using Weblate (Hungarian)
Currently translated at 100.0% (584 of 584 strings)

Co-authored-by: Andras Timar <andras.timar@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/hu/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I16965aacd9f5c285c2cf94505ca76c309c68a020
2024-04-07 14:13:05 +02:00
Andras Timar 9ce1b32d05 Bump version to 24.04.1.2
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I44be7be99a902b2da46aff26a74b3cf8189fdc8d
2024-04-07 14:11:38 +02:00
Caolán McNamara ee807283d4 drop newly unused HAVE_GETENTROPY and HAVE_SYS_RANDOM_H
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Iccfa44f56fb0d3b185df3c9c8457cf19d42f85f1
2024-04-07 12:11:48 +02:00
Michael Meeks 144b701453 cool#8703 - Drop random node creation and rely on inherited fd.
Re-using an inherited file descriptor to /dev/urandom frees us
from problems with mount options including 'nodev' and removes a
capability from the set we need.

Change-Id: I70337e923f802d7efbd3159c11a4e39f6529b6e6
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2024-04-07 12:11:48 +02:00
Michael Meeks 7311352dd6 Random re-work: keep a file-descriptor open to /dev/urandom
This should be inherited by forked children, and kept alive at all
times. If we have it already open everywhere, there seems little
benefit to the getrandom / getentropy system calls.

Change-Id: I5d58f7216c65febd161cbd78c24308d9192830ee
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2024-04-07 12:11:48 +02:00
Michael Meeks 29ef73868f killpoco: avoid using Poco::Random which likes /dev/random.
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I34659b3fda8a22a1b34416a37e18f483d7961f5e
2024-04-07 12:11:48 +02:00
Andras Timar 5e08727bd5 Fix typo: Bellow -> Below
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I1b9938006734063075ff4e87193289a09f726a35
2024-04-06 17:11:28 +02:00
Oğuz Ersen 4f57fe8645 Translated using Weblate (Turkish)
Currently translated at 100.0% (584 of 584 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: I41dd523b698ed045350da7bc94e7ba93c028feee
2024-04-06 17:10:22 +02:00
Matthaiks 00e2a29383 Translated using Weblate (Polish)
Currently translated at 100.0% (478 of 478 strings)

Translated using Weblate (Polish)

Currently translated at 100.0% (584 of 584 strings)

Co-authored-by: Matthaiks <kitynska@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/pl/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pl/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ib6cff3505678989abd2bb5ebb4c5f32a177916e7
2024-04-06 17:10:22 +02:00
gallegonovato 5ef7265f5c Translated using Weblate (Spanish)
Currently translated at 100.0% (584 of 584 strings)

Co-authored-by: gallegonovato <fran-carro@hotmail.es>
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: Id0232aecaa33814f268ba1d828d0dbb02813f79b
2024-04-06 17:10:21 +02:00
Szymon Kłos ee256370dd Remove unused hideTooltip function
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: If83bee032183fe93489eb8ff98f6f036528bd48b
2024-04-06 01:18:20 +02:00
Szymon Kłos d79ca54bf7 Move updateVisibilityForToolbar to toolbar base class
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I81c24b50a304ac6771feedfb241a2af54fef8b2c
2024-04-06 01:18:20 +02:00
Szymon Kłos 1ad7500dfb mobile: show/hide align menu correctly
after accessibility rework in notebookbar we use "-"
as separator between id sections for something...

this breaks getting the menubutton items by id,
let's avoid that character then

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I58f6c03bd635e981986b64ae2acfc43561146e8f
2024-04-06 01:18:20 +02:00
Szymon Kłos 92588928ab statusbar: hide icon for language menu
it wasn't there before w2ui removing

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Iaef58f76b8cd8aaa606dc6384d458448c24d5564
2024-04-06 01:18:20 +02:00
Szymon Kłos 6a1b5ec7d8 Firefox compatibility fix: text-wrap
As in https://caniuse.com/?search=text-wrap
text-wrap property is not used in currently most
popular Firefox versions, let's change it to
more popular white-space property.

It fixed wrapping of text in statusbar in Firefox

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I0fc68fbb128db56844ae8e0174fe292ee95c572a
2024-04-06 01:18:20 +02:00
Szymon Kłos 3d5e04c671 Remove unused userlist code from statusbar
- desktop shows userlist on the top, don't show duplicate in the statusbar
- make behavior compatible with previous version (23.05)
- remove unused signal: it is fired but nothing is listening for it
  (updateuserlistcount)

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Iabcb3b4a926c8941acf2e1425a9a28ede6e88311
2024-04-06 01:18:20 +02:00
Szymon Kłos 4885cbbaeb jsdialog: create base class for toolbars
This allows to share code and provide unified interface
for functionality like: show/hide/enable/disable/insert item.
Also restricted mode is supported for all the items.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I4a4e7ea43a993751b28f685544827d00b2b3668f
2024-04-06 01:18:20 +02:00
Szymon Kłos 74ec3af8b3 Unify MobileSearchBar naming with other toolbars
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I1102cb49e1dada7f3c5439068a05476b10c3ce96
2024-04-06 01:18:20 +02:00
Szymon Kłos 71f191803d remove-leaflet: Control.MobileTopBar
use standard ES6 class

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I316a7dad8b2085938602907f65f1affd4768a1e2
2024-04-06 01:18:20 +02:00
Szymon Kłos 4fd44c73ec remove-leaflet: Control.MobileBottomBar
use standard ES6 class

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I84698240985cf45bbd131f114f93f90b0f91711c
2024-04-06 01:18:20 +02:00
Szymon Kłos 69e85b4c6b remove-leaflet: Control.TopToolbar
use standard ES6 class

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I1b0d9d13354bb8c6d6d70705e427e07f9d221ffd
2024-04-06 01:18:20 +02:00
Szymon Kłos 30c0d121ad remove-leaflet: Control.StatusBar
use standard ES6 class

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ic4f41c050d05bf3ffb1a52c72e88af8901b271f6
2024-04-06 01:18:20 +02:00
Andras Timar 51b6f522c7 Update l10n files for Weblate
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ia23a33769b7844300bacd7df9a4ad0e2701dcec2
2024-04-05 18:54:09 +02:00
Alexander Gabilondo f65cbf1ba1 Translated using Weblate (Basque)
Currently translated at 99.8% (581 of 582 strings)

Co-authored-by: Alexander Gabilondo <alexgabi@openmailbox.org>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/eu/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ib8dc41ff640785221cbb04c27b2c9ae5afb3fc21
2024-04-05 18:53:12 +02:00
ButterflyOfFire dbe02ab9d3 Translated using Weblate (Kabyle)
Currently translated at 12.8% (75 of 582 strings)

Translated using Weblate (Kabyle)

Currently translated at 13.5% (65 of 478 strings)

Co-authored-by: ButterflyOfFire <boffire@users.noreply.hosted.weblate.org>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/kab/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/kab/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Idd37c98f62d70b59e83202b07e3973ce430f4aeb
2024-04-05 18:53:12 +02:00
Flavio F. M f5fd9d248e Translated using Weblate (Portuguese (Brazil))
Currently translated at 100.0% (22 of 22 strings)

Translated using Weblate (Portuguese (Brazil))

Currently translated at 100.0% (110 of 110 strings)

Translated using Weblate (Portuguese (Brazil))

Currently translated at 100.0% (22 of 22 strings)

Translated using Weblate (Portuguese (Brazil))

Currently translated at 100.0% (110 of 110 strings)

Co-authored-by: Flavio F. M <flavius_androiduser@protonmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/android-app/pt_BR/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/android-lib/pt_BR/
Translation: Collabora Online/Android app
Translation: Collabora Online/Android lib
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I8b69106c8f95d50ab2bda716cde84c71a12a149d
2024-04-05 18:53:12 +02:00
Michael Meeks e27a095775 bgsave: initial implementation (gated on COOL_BGSAVE=1)
Initial background save implementation from the Kit perspective.

To do a background save we:

   1. join known threads - we can't fork with >1 thread.
   2. check all is well: one thread, nothing unusual...
   3. create a socketpair to communicate with the child
   4. fork
   5. child: cleanup duplicated sockets
   6. child: setup LOK to not damage our shared file-system
   7. child: save
   8. child: report status back to parent & _Exit

There is still a substantial TODO, but this can be built on.

Change-Id: Ibf2c492372e2b5133932773e230ad05e18521794
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2024-04-05 17:34:43 +01:00
Michael Meeks ae9fee7f5a bgsave: add WebSocketHandlers for Kit to chat with its forked child.
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I224f120b9aae347c39d5c1471e2e74d8149c87f1
2024-04-05 17:34:43 +01:00
Patrick Luby 52a039e832 If there are no open documents, wait until one is added
Remove any stale elements from KitSocketPoll::KSPolls and
block until an element is added to KitSocketPoll::KSPolls

Signed-off-by: Patrick Luby <guibomacdev@gmail.com>
Change-Id: I25726171ef28d9107772f7665dd3cbb467e364e5
2024-04-05 09:02:13 -04:00
Caolán McNamara bb7cd9f357 After fork we don't have a watchdog thread
So watchdog won't fire for a stalling kit.

After a fork the child has only one thread, but a copy of the watchdog
object.

Stop the watchdog thread before fork, let the child discard its copy of
the watchdog that is now in a discardable state.

And allow it to create a new one on the next SocketPoll ctor.

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I7dc166dca3996401fbdc20cd7643f944662454c8
2024-04-05 10:50:33 +01:00
Darshan-upadhyay1110 d1bc0e8f69 User avatar should be consistent after mode change
- User avatar should first consider is there is already extract info available or not
- if we already have that image source data then please do not set default value
- also when mode change we do preform some refresh function on all icons
    - `map.on('themechanged', setupIcon, this);`
- in that case as well, first check if we have user extract info or not
- and based on that set image source URL
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>

Change-Id: Ifbd543322f5222fa7717b40a5ae565ed2f3c9891
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
2024-04-05 09:15:29 +02:00
Miklos Vajna 75251f9496 cool#8648 clipboard: try to use navigator.clipboard.write()
For one, getting the selection HTML all the time when we create a text
selection is a waste of resources, since only a subsequent copy needs
that HTML. For another, the complex selection case required a confusing
"two step copy" workflow, where first you press Ctrl-C, then you
download the large selection, finally you press Ctrl-C again.

The underlying problem is the same: the document.execCommand() API for
copy (and cut) is synchronous, but network operations are async, which
don't play well together.

Fix the problem by trying to use navigator.clipboard.write() instead:
the write() call still has to happen inside a magic security context
(keyboard used, click happened), but it can take a callback as a
parameter, and inside that callback it's fine to perform async network
operations, which allows both using a one-step copy and getting rid of
the HTML download on text selection change (when most of the time we
don't need it).

Tested:

- Chrome and Safari; the behavior for Firefox is unchanged, unless
  about:config opts in to expose the new Clipboard API.

- HTML, plain text and image copy.

- Cut, not only copy.

- Doing this with the notebookbar button & keyboard.

- A single cypress test now uses a fake clipboard to assert copy. The
  rest of the tests are left unchanged for now, but likely we need to
  get rid of this implicit assumption that the copy container is updated
  on selection change: different behavior for automated vs manual testing
  is ugly.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: Ifcf16474a339f3f1dae3dc99181836e645340048
2024-04-04 14:09:42 +01:00
Szymon Kłos 6b37c158d1 jsdialog: enable desktop's idle popup on mobile
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I109b68e6190b16b25ad3a7404141d84c9b713227
2024-04-04 13:43:35 +02:00
Szymon Kłos 2d023ec77f jsdialog: handle select/unselect in toolitems
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I877d1803ba4605c4b82cb2adee2bb6c4226381a4
2024-04-04 13:43:35 +02:00
Szymon Kłos f8d457cb62 remove-w2ui: convert mobile bottom bar to JSDialog
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I1e86d91282d15c6ed055f9a74808cd3158ff08de
2024-04-04 13:43:35 +02:00
Szymon Kłos cff5442244 jsdialog: enable snackbar on mobile
So far we had duplicated snackbar code.
Desktop version was more advanced, mobile wasn't updated.
Mobile one used mobile-wizard as a base so we had to hide
currently presented menu to show small piece of information.

Let's use desktop snackbar on mobile as well. We will be able to
remove old code path from mobile later.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I1da7a6b75591913ca0fc66f6d0e81d136c874f62
2024-04-04 13:43:35 +02:00
Szymon Kłos 912258fe3e jsdialog: enable dropdowns on mobile
Let's allow usage of JSDialog component previously
used on desktop and tablet only - in some cases on mobile.

This case are dropdowns which we do not want to show
as separate mobile wizard screen (eg. alignment selector
from toolbar).

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ibcfaea457c065c34644738c7bf56a2e4e53c50a3
2024-04-04 13:43:35 +02:00
Szymon Kłos c2a0d50839 jsdialog: create separate Util.MessageRouter
So we can type our messages, callbacks and better manage
where message is sent

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I3290f5cf9bc08669353d3e71785baffc6fb07003
2024-04-04 13:43:35 +02:00
Szymon Kłos 84e7eb7d03 jsdialog: reduce missing icon warnings
If MenuButton has custom menu defined it should
use original data.id as a command to avoid warnings
about missing icon with "-menu" suffix.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I06dfcdb0412c7d087f4002cdfff83f8157c3f237
2024-04-04 13:43:35 +02:00
Szymon Kłos 46a5b063b7 remove-w2ui: delete library's JS file
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ib279379168d86227b2abf2c979d302c5156fc7f2
2024-04-04 13:43:35 +02:00
Szymon Kłos 72fece4cd1 Add separate mobile commands in docdispatcher
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I6d83f0f5fbd0e373bd28129f8e444795068e3720
2024-04-04 13:43:35 +02:00
Michael Meeks fd635e4d69 SocketPoll: better re-entrancy protection.
Remove toErase list; instead null socket pointers earlier
to make things more deterministic.

Simplify toErase path, by just removing null sockets.

Check _socketPoll array bounds to cope with a re-entrant
mutation - imperfect; but the fd comparison will help.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I27d81358a7d80b939b50ce4ccb1b2178a091a360
2024-04-04 07:16:53 -04:00
Gökay Şatır cd014a92c2 Add simple geometry classes.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: Ic1819ff187edc9c0d33f77b3b82054cb8b27c6dc
2024-04-04 13:05:04 +03:00
Michael Meeks 9ba05ccbe6 Reduce C++ requirement.
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I640230950cabd93bf12c86750f6aa6c95eb05021
2024-04-03 22:38:08 +01:00
codewithvk 5a90127236 fix : Present in the window button hides only for mobile apps
Signed-off-by: codewithvk <vivek.javiya@collabora.com>
Change-Id: I8b2824f6a17091d1a5202051cc95b6a53013f0cf
2024-04-03 13:38:36 +00:00
Ashod Nakashian 958f4b0f55 wsd: merge downloadAdvance with download
Change-Id: I0f9ad626c78e81896e42f5a431b0f209a77f563a
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-04-03 14:26:28 +01:00
Ashod Nakashian 64b4339e00 wsd: pass uriPublic explicitly to download()
Change-Id: I7c333c83598c2a4847efcd96cd59bc595cdae49f
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-04-03 14:26:28 +01:00
Ashod Nakashian 25d10bf490 wsd: simpler downloadAdvance interface
Change-Id: Ibd8ba73b2f4e926cc078e66f53766ee99478f9d4
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-04-03 14:26:28 +01:00
Ashod Nakashian 72c368ea0e wsd: refactor the download logic in DocumentBroker
Change-Id: Ic916a8373664f2b4de8d8649bf160effb1fe3dfa
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-04-03 14:26:28 +01:00
Ashod Nakashian b2c980a91a wsd: refactor setting wopiInfo into the session
Change-Id: Id2850c43843cbb418e7c188efcd6d2e6bf652165
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-04-03 14:26:28 +01:00
Ashod Nakashian deb60c095d wsd: simplify uriPublic in DocumentBroker::download()
Change-Id: I5ca31e08716db4c0a47a952b89e6529b330b6370
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-04-03 14:26:28 +01:00
Ashod Nakashian e9591cfa25 wsd: pass uriPublic explicitly to downloadAdvance
Change-Id: I0ac6f32894ada50be59e9801b68a1918affd6a9e
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-04-03 14:26:28 +01:00
Ashod Nakashian ac589f5563 wsd: formatting
Change-Id: I365121f2ccfc1bf1f73f4f8e41a8d84e920da1ce
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-04-03 14:26:28 +01:00
Ashod Nakashian 577c1fb0d3 wsd: refactor the plugin processing
This reduces code duplication and makes
the code more readable by extracting
the huge block that processes plugins.

Change-Id: I2dc243173a4122ae1d5fc5b3fa2b40daff9664e4
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-04-03 14:26:28 +01:00
Ashod Nakashian 04526159df wsd: minor formatting
Change-Id: Ibe9d9d946fc9aba1b2ac754ef952dc6adda47961
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-04-03 14:26:28 +01:00
Ashod Nakashian 96bfccd5ae wsd: remove MOBILEAPP for parsing CheckFileInfo json
Change-Id: I72b916d9ed9266afca21934278f8d01c1d97928e
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-04-03 14:26:28 +01:00
Ashod Nakashian 84fd030707 wsd: DocBroker with wopiFileInfo
Change-Id: I32c7be67a191df063f97d3c5d7f20ba2a57256da
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-04-03 14:26:28 +01:00
Ashod Nakashian ec2e9ccdc3 wsd: CheckFileInfo parses the JSON response
Change-Id: I5a9cd984930c6312de9088acd39b83acf1c07eb9
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-04-03 14:26:28 +01:00
Ashod Nakashian 4c19afdd01 wsd: capture the file size in StorageBase::FileInfo
Change-Id: I842c730a51cbb336e108f26e717a17b12f12eb49
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-04-03 14:26:28 +01:00
Ashod Nakashian de985834e2 wsd: simplify DocumentBroker construction
Change-Id: I5e908f0f5aed9146e14175eb79335fe9c80db2f2
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-04-03 14:26:28 +01:00
Ashod Nakashian 062574341f wsd: move wopi stub/dummy interface to MobileApp.hpp
Change-Id: I58ac7467c4e74059e4de08c914546614ed6fe883
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-04-03 14:26:28 +01:00
Ashod Nakashian 9782e3eea9 wsd: more accurate load error message
Since we have a more accurate reason
for failing to load, that's what we
should always return.

Change-Id: If9d38cf6de6d41310ba94857efcd073e3f4ef8b7
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-04-03 14:26:28 +01:00
Ashod Nakashian 21c3b4d3ed wsd: merge single-use findOrCreateDocBroker overload
Change-Id: Ib8087891d793effa3192b4a2b893733eec275f40
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-04-03 14:26:28 +01:00
Ashod Nakashian 8e14087ef1 wsd: Support ahead-of-time document loading
Change-Id: Ia1cc7e42f7eea530097a37cce723b8833b998357
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-04-03 14:26:28 +01:00
Ashod Nakashian 6bed4e631b wsd: create DocBroker once CheckFileInfo clears
Change-Id: Ie38070b9e8bddd7d546070a00c8bf3779f6e8cf4
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-04-03 14:26:28 +01:00
Ashod Nakashian 708e4a7746 wsd: uninitialized member
Change-Id: I2eefc58eb0105999277114c70c2b17bf3a615ccd
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-04-03 14:26:28 +01:00
Ashod Nakashian 034ea8b290 wsd: structured binding in findOrCreateDocBroker
Change-Id: I3387ff00cf11d848bbd24d490f879a17471d7f7c
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-04-03 14:26:28 +01:00
Ashod Nakashian f38f5edd7d wsd: move overloaded findOrCreateDocBroker to RVS
Change-Id: I6a35a49ef3631769c4c38f8c63f86ce3e51aa695
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-04-03 14:26:28 +01:00
Ashod Nakashian 9148996509 wsd: simplify findOrCreateDocBroker call
Change-Id: I8765b887d6fde34bdbb8ff361af6636d494f2ddd
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-04-03 14:26:28 +01:00
Ashod Nakashian 042e4366ef wsd: cosmetics
Change-Id: Ib5fd54abcda44ce8c62171cbbf8c51ffcd530344
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-04-03 14:26:28 +01:00
Pranam Lashkari f29fe2a197 kit: set creation date when online creates file from template
problem:
when online created file using WOPI clients, creation dates were never set.
in online files are created using templates, even empty files are created using
an empty template

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I312d7af17bf322ca55b6e20bba344e4fc6628e66
2024-04-03 13:26:24 +01:00
codewithvk c0ab567b31 Added additional menu entries and a new sub-entry under Conditional formatting
- Added 'Contains text...' and 'Duplicate...' as menu entries under Conditional > Condition...
- Introduced a new sub-entry Top/Bottom Rules' under Conditional, with the following options:
    - Top n elements
    - Top n% (n percent)
    - Bottom n elements
    - Bottom n% (n percent)
    - Above Average
    - Below Average

These changes enhance the functionality of the Conditional formatting menu by incorporating commonly used options for users.

Signed-off-by: codewithvk <vivek.javiya@collabora.com>
Change-Id: I1c3c06b21a9d26e6a8966782c0af07381403c08f
2024-04-03 12:09:29 +02:00
Miklos Vajna ea8202268c Related: cool#8648 clipboard: use JSON when requesting HTML only
Visit the
/cool/clipboard?WOPISrc=...&MimeType=text/html,text/plain;charset=utf-8
endpoint, you get a JSON with HTML and plain text. Visit
/cool/clipboard?WOPISrc=...&MimeType=text/html, you get HTML with a
custom header that is only possibly to skip easily because HTML itself
has as well-known header.

This is decied in ChildSession::getClipboard(), which has 3 cases: 1)
single specific format 2) multiple specific formats and 3) all formats.
So far only 2) used JSON, but the new async clipboard copy will want to
(als) request just plain text, where skipping our own custom header is
hard, given that the text itself has no well-known header (unlike HTML).

Solve the problem by always using JSON when a specific format is
requested, so both the HTML and HTML+plaintext case gives JSON.

The client side of this is the recently introduced Clipboard.js
parseClipboard(), which can cope with JSON already.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: I8298f3f82d2a3871777c369f5aee6bb81d66a553
2024-04-02 21:41:57 +01:00
Darshan-upadhyay1110 5b6042f896 A11y improvements
Problem:

    - At various places, form elements are linked to the same label both through the 'for' attribute in the
associated label, and through the 'aria-labelled by' attribute in the element itself.
    -  This double linkage
can lead to confusion and redundancy, especially when using assistive technologies.

What should we do:

    - Remove Redundant Linkage: In most cases, the 'for' attribute in the label is sufficient to
    establish a clear linkage. The 'aria-labelled by' attribute can be removed in this case to avoid
    redundancy.

    - Consistent Use of Attributes: Ensure consistent use of attributes throughout the website. Use
    either 'for' or 'aria-labelled by' depending on the context and requirements, but avoid double
    linkage

Solution :

    - as we made label `for` attribute value consistent with `id` value for its corresponding `input/select` element
        - https://github.com/CollaboraOnline/online/pull/8646
    - now we can remove 'aria-labelled by' as there is already linkage present
    - there are some cases where labels are not present, we must use `aria-labelledby` in that case.

Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>

Change-Id: I389d271280a80835fd7345e8221e3777f8f8ed51
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
2024-04-02 18:35:56 +05:30
Szymon Kłos a214088801 Convert SearchBar.js to TypeScript file
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I12dc1f0f6744d76a863ed0598185340a898a8b58
2024-04-02 15:02:53 +02:00
Szymon Kłos 13a16ace0a remove-w2ui: convert mobile search bar to JSDialog
- fix typo in cypress function name
- unify mobile and desktop searchbar controls

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I2212f588ca720634b073111b1c78f10c6ee6b7ea
2024-04-02 15:02:53 +02:00
Miklos Vajna 25342ed317 Related: cool#8648 clipboard: extract parseClipboard() from Control.DownloadProgress.js
This way it can be reused in future code in Clipboard.js when
navigator.clipboard.write() is used, without duplication.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: I843577e55802bcb7ad6cbdc5f83919172bc7d3e0
2024-04-02 13:32:23 +01:00
codewithvk 7e63d2e9d2 fix : Format -> Conditional Menu Button Not Working
Signed-off-by: codewithvk <vivek.javiya@collabora.com>
Change-Id: I6d23bc3c1c4b080ade32a97dd8408149f49d160d
2024-04-02 10:25:20 +02:00
Darshan-upadhyay1110 2009123f18 Direct Label Association
Problem:

- The labels for the <select> elements are being associated with a <div> element that surrounds the
corresponding <select> element instead of directly linking it to the <select> element.
- This creates an unclear semantic relationship between the label and the actual form element, affecting usability for
users with assistive technologies
- this was not only issue with `select` element but for all input selection elements in JSDialogBuilder

Solution:

- `lable` and it's corresponding `input/select` element should have same `for` and `id` values
-  this patch will make `for` attr of `label` equals to `id` attr value of 'input/select' elements
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: If341174edcdb72af6fde3da14d5ed36ba0c3ae95
2024-04-02 09:54:31 +02:00
Szymon Kłos 855f520989 Fix TypeError on accept formula button
- in the formulabar in Calc
- type "=" then click "accept formula"

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I120f655766bc5e2b4688aec0e598da9c847478a8
2024-04-02 08:54:39 +02:00
Szymon Kłos ad5826e4c3 cypress: make mobile toolbar tests more reliable
- wait for enabled state
- then click internal button

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I7663deb668de2e98b007fbace60386a4a7157058
2024-04-01 14:04:08 +03:00
Szymon Kłos db86e87c30 cypress: make table_operation_spec.js more reliable
- it failed due to click on disabled button
- make waiting for idle click be aware of that
- add small waits after doing table changes to
  allow updates to be applied

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: If19352923aeca4c18024f3a2ffcc3731a8aff96f
2024-04-01 14:04:08 +03:00
Szymon Kłos 128ce410f1 remove-w2ui: stop using old toolbars on tablet
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Id8fd8e67c80eab7f48d1c519ecddb3d8dfd16062
2024-04-01 14:04:08 +03:00
Szymon Kłos fb017302f1 remove-w2ui: convert mobile top bar to JSDialogs
- use dispatcher to invoke commands
- TODO: checked state for buttons + cypress check

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I652a163ea0c831b47ce7725ffd0f9f190a98d9bf
2024-04-01 14:04:08 +03:00
Szymon Kłos 7a087600e9 jsdialog: use attribute not class for disabled state
- but still use class for css rules
- after rework in styling to use attribute we can drop that

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I568eedf45440f6636c31430cb98adcfdeab6aa4e
2024-04-01 14:04:08 +03:00
Gökay Şatır 5224c3c72e Diverse the ray casting into smaller functions.
Add guard for notebookbar data  and tab existence.

Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: Ied5ef0f75735db12b108a9348062bcd48fd25fd2
2024-04-01 13:24:49 +03:00
Oli a003dc90e5 Arrow keys traverse focus around notebookbar
When focus is in the notebookbar, arrow keys allow focus to be moved.

Signed-off-by: Oli <oli.baker@collabora.com>
Change-Id: Iccc9122f77c224e0190f25732ff9e4a24e4eab3e
2024-04-01 13:24:49 +03:00
Szymon Kłos 2aaadcc298 Fix TypeError on context change
it happens on context change (eg. shape selection) in
compact mode where context change handler used wrong
instance of toolbar

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I9b080786454a3e7ecbf5273ba609671de3f3eb01
2024-04-01 11:30:29 +02:00
Szymon Kłos 5c7fb35e0f user-list: invoke by KeyboardShortcuts and dispatcher
- this helps to reuse code and keep it clean

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I029ac4f5d84f878f36a0d5d9abcecabe0ec63ad1
2024-04-01 11:26:51 +02:00
Szymon Kłos dc943b31ed user-list: hide follow chip when clicked on it
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I35e6b5baf9c7569b8fa1e54a01a26f48024ffb05
2024-04-01 11:26:51 +02:00
Szymon Kłos 41e151a03a user-list: center name vertically, avatar ratio
- avoid resized avatar due to text padding

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I3d7b48b3981303096a42a1d8901012cec8a64be9
2024-04-01 11:26:51 +02:00
Szymon Kłos 5cdb826829 remove-w2ui: use JSDialog dropdown for user list
- reuse JSDialog Dropdown
- remove hack with overflow which was needed to show
  any popup above notebookbar
- fixes scrollbar visible above compact toolbar when
  switching from notebookbar mode

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I0366dbd68df20991d5fb26d116c38fb657e64c6d
2024-04-01 11:26:51 +02:00
Szymon Kłos 91701db744 jsdialog: css: put toolbuttons rules in btns.css
- put in single place with other button rules
- apply also to .jsdialog case (selected, hover)
  so it will be used in new toolbars

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ic04e1939908e0030e710902d38846ba50954fe23
2024-04-01 11:20:36 +02:00
Szymon Kłos 7b1acd8684 remove-w2ui: update toolbar item status
- toolbar had it's own status updates
- adjust the old code to use new toolbar functions

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I6da6b75b40678ed8d32500151b7c1e2c436a8cfe
2024-04-01 11:20:36 +02:00
Rashesh Padia f4696be0ca helm: update README
- added recommendation for resource values for production enviroment

Signed-off-by: Rashesh Padia <rashesh.padia@collabora.com>
Change-Id: Ia9a4b730bb7fd4c990d8c34531230b04c3a7f250
2024-04-01 12:37:20 +05:30
Aron Budea 47fcdd0cbc browser: Add Accept / Reject and Move to Next to tabbed bar and menu
Also fix Accept / Reject, which didn't show up.

Signed-off-by: Aron Budea <aron.budea@collabora.com>
Change-Id: Ia27b19d640fb59e24b4f7ccabc0df7f2d1fa2498
2024-03-31 13:32:33 +10:30
Flavio F. M 506e489d5e Translated using Weblate (Portuguese (Brazil))
Currently translated at 90.9% (20 of 22 strings)

Translated using Weblate (Portuguese (Brazil))

Currently translated at 98.1% (108 of 110 strings)

Co-authored-by: Flavio F. M <flavius_androiduser@protonmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/android-app/pt_BR/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/android-lib/pt_BR/
Translation: Collabora Online/Android app
Translation: Collabora Online/Android lib
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ibc54266fea67e85ff6151b88d6b759f630171718
2024-03-30 15:30:15 +01:00
Besnik Bleta 04c175daaf Translated using Weblate (Albanian)
Currently translated at 98.2% (572 of 582 strings)

Co-authored-by: Besnik Bleta <besnik@programeshqip.org>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/sq/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I8e683218df997cdf83acf44f9fa692f6d7f843f0
2024-03-30 15:30:15 +01:00
Méven Car 3b2b186615 Translated using Weblate (French)
Currently translated at 96.7% (563 of 582 strings)

Co-authored-by: Méven Car <meven.car@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/fr/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ia991b53cfc8bf5a5fc6407e35fc9e84f1151f0b1
2024-03-30 15:30:15 +01:00
Ihor Hordiichuk b858c394fc Translated using Weblate (Ukrainian)
Currently translated at 100.0% (582 of 582 strings)

Co-authored-by: Ihor Hordiichuk <igor_ck@outlook.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/uk/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I52812d299e3157891c22daaaa72b3c50eeffef27
2024-03-30 15:30:15 +01:00
CloneWith 4453775650 Translated using Weblate (Chinese (Simplified))
Currently translated at 68.6% (328 of 478 strings)

Translated using Weblate (Chinese (Simplified))

Currently translated at 100.0% (582 of 582 strings)

Co-authored-by: CloneWith <clonewith@users.noreply.hosted.weblate.org>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/zh_Hans/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/zh_Hans/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ie34a044632accf268ebf1236a45a7b8087f0a47e
2024-03-30 15:30:15 +01:00
Sebastiaan Veld 4878b1cdc9 Translated using Weblate (Dutch)
Currently translated at 100.0% (582 of 582 strings)

Co-authored-by: Sebastiaan Veld <sebastiaan.veld@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/nl/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I10db544bfb6808fe767f82b461cd0c354cb91ee8
2024-03-30 15:30:15 +01:00
Software In Interlingua 124fd6de2e Added translation using Weblate (Interlingua)
Co-authored-by: Software In Interlingua <softinterlingua@gmail.com>
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I8ca386465e76aed5447944c1a4c068c0d31821a0
2024-03-30 15:30:15 +01:00
Oğuz Ersen 7a5c747217 Translated using Weblate (Turkish)
Currently translated at 100.0% (582 of 582 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: Idacb6fdea2712f03dfc1cd2896fbdc0abff8fd61
2024-03-30 15:30:15 +01:00
Martin Srebotnjak fa2110ced8 Translated using Weblate (Slovenian)
Currently translated at 100.0% (582 of 582 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: Ie03460b4acd12838566a724a6b4079ad9c3d7d35
2024-03-30 15:30:15 +01:00
gallegonovato 37acc6aa78 Translated using Weblate (Spanish)
Currently translated at 100.0% (582 of 582 strings)

Co-authored-by: gallegonovato <fran-carro@hotmail.es>
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: I12cb02927c656a2309b8d57677731a4536d8a8a6
2024-03-30 15:30:15 +01:00
Rob Pearson c72605a41b Translated using Weblate (English (South Africa))
Currently translated at 100.0% (582 of 582 strings)

Translated using Weblate (English (New Zealand))

Currently translated at 100.0% (582 of 582 strings)

Translated using Weblate (English (United Kingdom))

Currently translated at 100.0% (582 of 582 strings)

Translated using Weblate (English (Australia))

Currently translated at 100.0% (582 of 582 strings)

Co-authored-by: Rob Pearson <rob.dunedin@gmail.com>
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/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ib171b43b524cc71888d3b4bdd4e36c8d3d453ca9
2024-03-30 15:30:15 +01:00
Ettore Atalan 2eaefcd52d Translated using Weblate (German)
Currently translated at 99.3% (578 of 582 strings)

Co-authored-by: Ettore Atalan <atalanttore@googlemail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/de/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I83d2fe41d3c83737e12588212368322796c9ed34
2024-03-30 15:30:15 +01:00
Szymon Kłos f2e9dee701 cypress: fix multiuser tests after w2ui removing
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I53c5ed04a3ba3f63ebbca8f2322e34cf8f707a04
2024-03-29 21:55:23 +01:00
Szymon Kłos d9dd67e0f9 cypress: skip failing Enable/Disable autofilter
it has problem with opening menu

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I72900aeee7a0d4548ae5281ff2ea3c16090ec736
2024-03-29 21:55:23 +01:00
Szymon Kłos cc30bb1935 remove-w2ui: handle postmessagge insert/show/hide button
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I67c65e48faf467c1d3e4b478e66b8b8e0dc312b4
2024-03-29 21:55:23 +01:00
Szymon Kłos 9f6ae3bf54 cypress: be more tolerant for scroll ranges
so we will not fail with some themes used
also not fail when we didn't show sidebar switch
on the toolbar

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Id511004176dcf91b553417a74cb3b71c239873eb
2024-03-29 21:55:23 +01:00
Szymon Kłos ae20224fa7 Improve accuracy of Util.ScrollableBar
- remove jQuery where possible

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I8aeb4284e62cd81fea8c51c7281fbffffc3d9986
2024-03-29 21:55:23 +01:00
Szymon Kłos ebff222073 remove-w2ui: convert TopToolbar to JSDialog
- reuse old code as much as possible
- font, fontsize, style are managed by old select2 wrapper
- move some commands to dispatcher

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I2fd1820b36f3c63a5fdcc482afbcc5ffe04e299f
2024-03-29 21:55:23 +01:00
Szymon Kłos 46b49afc2a jsdialog: avoid duplicated uno command execution in dropdowns
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Id74f2149d2dac2c5c70f9c74b8eedb27b377d5eb
2024-03-29 21:55:23 +01:00
Szymon Kłos 3444b0b940 jsdialog: allow to execute action on menubuttons with menuId
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ibbb7d6043e0e22c9c3edb9c295e190e6a72dfde5
2024-03-29 21:55:23 +01:00
Szymon Kłos be1184eef1 notebookbar: correctly add and remove callbacks
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ia798e12f06372e839ef8565d4c32626a44b44658
2024-03-29 21:55:23 +01:00
Szymon Kłos 76540bed81 jsdialog: allow separators in menubutton menu
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I1d2e2e9485de1100faf3693d828036e21dbd7b06
2024-03-29 21:55:23 +01:00
Szymon Kłos ad760e4d2c jsdialog: make toolbar styling shared
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Id33cfcf9d91fbfe4a2180e945dd32439d4d5999e
2024-03-29 21:55:23 +01:00
Parth Raiyani c9ef8c3015 Removed Group download as option from coolwsd.xml
Signed-off-by: Parth Raiyani <pmr642001@gmail.com>
Change-Id: I47c07ed88d68de5fc65b2e5e1e0896bc2a082131
2024-03-29 15:07:07 +01:00
Michael Meeks 9e0cef08c2 Websocket: allow a hard shutdown after flushing data.
Don't wait for the other end to acknowledge closing the socket.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: If5e4bb6d9c5148c0e0c61d59c233f6cf5594c577
2024-03-29 13:04:09 +00:00
Michael Meeks df343fc5fa Watchdog: joinThread should tolerate not having a thread yet.
Change-Id: I9a0fe85d22dbe62c9be492e1c71dbb41f9253303
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2024-03-29 13:04:09 +00:00
Michael Meeks 425c01f284 Socket: allow re-creation of wakeup pipes.
Before spawning a child thread we want to close wakeups and
remove them from our global list to avoid the child waking the
parent.

However - if we are re-using a SocketPoll in a forked child,
we need to be able to create new wakeup sockets, so factor
out for re-use.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I06b088e02127482a65cd9666114ca9a93fd5ca7b
2024-03-29 13:04:09 +00:00
Michael Meeks 0a9a454c96 Socket: allow disabling of 'shutdown' on a socket.
shutdown closes a socket in both the parent and the child process,
which is not what we want when forking a bgsave process - and
certainly not for the socketpair we communicate down.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I10418e9c7f5edca60f257a60f11ba396984d39b2
2024-03-29 13:04:09 +00:00
Michael Meeks 80eeabb1a6 Watchdog: expose global watchdog thread.
This will enable thread joining before fork for bgsave.

Change-Id: I68c7c53f892f5edef861137c48759c7ccb8532ab
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2024-03-29 13:04:09 +00:00
Skyler Grey b378a0fd77 calc: pinch-zoom: fix hard edge when zoom-panning
Previously we clamped the pinch so it could not go outside the bounds of
the initial zoom pane (presumably this was intended to avoid you going
outside the map with your pinch).

Unfortunately, this is the initial bounds, causing a nasty edge when you
panned around too much, which is particularly noticable with the
improved zoom-pan ergonomics.

I decided to remove this altogether rather than scaling it correctly, as
I don't believe that a check to make sure you're not going outside the
map feels particularly natural when pinch-zooming around the document,
particularly as only the center of your pinch is checked.

Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
Change-Id: Ib98ca91e82bbe7f2bb9986595fc5f7928e2206c9
2024-03-29 13:44:32 +01:00
Skyler Grey 6912edc5de calc: pinch-zoom: Fix zoom end position
Previously the new zoom did not correctly calculate where the end of the
zoom should be centered, causing the zoom to jump when it finished.

Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
Change-Id: Ic6c1eb032c66af764da4efca3f015af895e75600
2024-03-29 13:44:32 +01:00
Skyler Grey f897c3fccc calc: pinch-zoom: stop cursor offset
Previously, overlayed elements such as the cursor did not properly
follow the new zoom as they were separately calculated. To fix this, we
can use the _getZoomDocPos function to calculate where these should be
drawn

Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
Change-Id: I39d6c926895e72be03ad33e6a9221a4f740e9b50
2024-03-29 13:44:32 +01:00
Skyler Grey 96e18f48a8 calc: pinch-zoom: Recognize zoom start position
Previously, the document would not always properly follow your finger
when you tried to pan while in a pinch-zoom. In particular, we would
sometimes get this disatrously wrong (e.g. at some zoom levels we would
move our fingers one way and have the document go the other!).

I have rewritten the _getZoomDocPos function to avoid this, in
particular by adding a parameter to keep track of where our zoom started
from which lets us know where we need to zoom around. In the
mouse/button zoom case this doesn't change, but in the touchscreen zoom
case it informs us how much the viewport should have been moved.

Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
Change-Id: Ia87d941651da43eb5c16c8ce10a2493e7214252a
2024-03-29 13:44:32 +01:00
Skyler Grey 3ba8257c64 Stop a leftover swipe action preventing a zoom
Previously if we were in animation from the end of a swipe and we started
a zoom, we would cut the animation but not continue to start a zoom. This
made surprising behavior when you could put down two fingers to stop the
ongoing movement but could not then zoom with them.

Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
Change-Id: Ib4c6e686caaf78b3637563da6fcc914c06f3055a
2024-03-29 13:44:32 +01:00
Michael Meeks 588aabb7c3 Watchdog: re-direct USR2 when enabled to snapshot a late thread.
By tracking the thread-id, we can deliver a SIGUSR2 to the right
thread at the right time; this avoids perf polling our uninteresting
watchdog thread.

In that thread use Caolan's suitably obscure futimestat system-call,
so that we can record based on that to see only slow things:

perf record -e syscalls:sys_enter_futimesat -ag --call-graph dwarf,65528

Change-Id: Iad05d8589fdc9541a7d0599f63625d2cde5fdf89
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2024-03-29 10:35:32 +00:00
Szymon Kłos 026ac909c1 remove-w2ui: disable search next/prev buttons on init
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I520d495dc8f00288a451cc73eeca327d1fdcd02f
2024-03-29 01:40:29 +01:00
Szymon Kłos 35c13792ca remove-w2ui: add tooltips for statusbar buttons
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ifd8994e78947b38dd27a3382b8af15c1c7745c78
2024-03-29 01:40:29 +01:00
Szymon Kłos 2f42cbeb63 remove-w2ui: hide some statusbar items in readonly mode
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: If8ed7efc5d8eec6d28366d8e25d801a31895c9b9
2024-03-29 01:40:29 +01:00
Szymon Kłos a0c0e1601e remove-w2ui: permission mode indicator without hover effect
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ibd540c00a7aaf53b0a831847ae0eb57137e418c4
2024-03-29 01:40:29 +01:00
Szymon Kłos 6a452d9023 remove-w2ui: convert status bar to JSDialog
- move plain html controls into HTMLContent widget
- reuse scrollable bar from notebookbar
- use dynamically loaded menu entries in MenuButton
- allow to update MenuButton which contains menu id in the id

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I2b77479520c03420fefeb32dd09d6b34279e5686
2024-03-29 01:40:29 +01:00
Szymon Kłos a091d1970c remove-w2ui: reuse user list from notebookbar
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Id3bb9615385e9951dd53d591f71389975fa8ace9
2024-03-29 01:40:29 +01:00
Henry Castro 652d52f7df browser: fix scroll tab when loading document
If the element 'spreadsheet-tab-scroll' does not exist
when loads document, then scroll to the selected tab.

Change-Id: Iec86225f7ea97a149d455210921daaf91a4e761a
Signed-off-by: Henry Castro <hcastro@collabora.com>
2024-03-29 01:43:39 +05:30
Gökay Şatır b6a1df0c9d Show cursor in readonly mode.
Add a guard for potentially undefined functions in scroll section.
Allow arrow and home, end keys in readonly mode.

Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: Ie695ebf2cd14f49fbb4db2b9ba8f81df5b289591
2024-03-28 12:44:53 +03:00
Szymon Kłos 6f44bbc600 Fix error on hide tooltip
Tooltip can be modified only when was already initialized.
Sometimes we tried to hide it without initilization.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I6f4a18acef6be2d3c00548f8b4408c7876d6bdfa
2024-03-28 07:51:42 +01:00
Henry Castro 5c7f26ed22 browser: ignore validation of hidden inputs
"An invalid form control with name='' is not focusable."

Change-Id: Ic81d91748371147beed6cbc7b43cc569412760ba
Signed-off-by: Henry Castro <hcastro@collabora.com>
2024-03-27 09:05:22 -04:00
Pedro Pinto Silva ea566ce757 Modals should always be placed on top of tooltips
Before this commit, already opened ui-tooltips were being placed on top
of everything, including modal dailogs. Fix that, set jquery css
line to the same z-index used by non-modal dialogs.

Additionally: update browser/README file so it documents this change
and clean up vex legacy bits.

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ie7123822d96c594433ac197aeb9c651aa9b14461
2024-03-27 13:23:48 +01:00
Pedro Pinto Silva b8a0eb472a Comment (Annotation): Fix inconsistent width
Before this commit annotations could have different widths. A comment
with a very short text - not filling a line - would result in a
abnormal narrow annotation card, screenshot of the observed bug:
https://archive.org/download/collabora-online-comment-width-bug/collabora-online-comment-width-bug.png

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I7d51ebf53d5eb9e1361c59cee9ce9ba19e703299
2024-03-27 13:23:31 +01:00
Henry Castro f66b820f39 drop additional activation of dark theme
we now load the document in the initial theme, so we don't need
this additional activation of the dark theme.

Change-Id: I523dda19cacd6fd3f81cd86ee554aacd5f73edea
Signed-off-by: Henry Castro <hcastro@collabora.com>
2024-03-27 11:45:08 +00:00
Darshan-upadhyay1110 201fbb5064 Create icon url before calling set image
- icon url passed inside `setImage` function was wrong
- line spacing icons are not correctly
- this patch will correct the url before setImage
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: Ie733c79c4edae404d934953eaea20632bc18f8da
2024-03-27 12:29:20 +01:00
Gülşah Köse 941134cb45 Fix permanent tooltips on dialogs
Position and Size dialog of the shape has a rotation angle widget in
rotation tab. User can drag move instead only one click on the rotation
angle widget. It causes a permanent tooltip on document. So It is better
to handle mousedown instead click to close tooltip.

Signed-off-by: Gülşah Köse <gulsah.kose@collabora.com>
Change-Id: Idbea0bb8a56568a92f3f4d4c9ee6df1da01b7c24
2024-03-27 12:25:33 +01:00
Szymon Kłos 9923e69595 jsdialog: move helpers for scrollable bars to separate file
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I33454bc7d6a8f0c7e2346e36364fa39ba97f826c
2024-03-27 11:15:05 +01:00
Szymon Kłos 7e77251093 jsdialog: implement vertical separator
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I4225583e19dba332aff9f71ebec01cd84359ca98
2024-03-27 11:15:05 +01:00
Szymon Kłos 9e8010354b jsdialog: create spacer widget for toolbar
it allows to stretch content

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ie0fb906478e08165ae9e9412d9265bfdd64024bc
2024-03-27 11:15:05 +01:00
Szymon Kłos fcd431f3e2 jsdialog: move container widgets to own file
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ice18e1d861140b20c1b161032fb89d0e107ca18e
2024-03-27 11:15:05 +01:00
Skyler Grey bca4cbc15b Fix LOUtil.checkIfImageExists reprocessing errors
Previously, we would sometimes get the same error event mulitple times,
leading to us erroneously believing that an image which loaded correctly
was invalid. This caused images to sometimes disappear, particularly
when switching to dark mode.

Additionally, some images are critical to layout so even if they fail to
load we should not 'display: none' them. We can set their src to an
invisible pixel to get a similar effect. We must assume that they have
their width/height correctly set elsewhere or things such as the broken
image would also break the layout.

Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
Change-Id: Id8e52416a60d394a00669e266595344eaa3376d2
2024-03-27 09:44:09 +00:00
Skyler Grey 3718221c5a Revert "userlist: Stop hiding images if load failed"
This reverts commit 1bb727c25f, which is
change ID I16172a4d3148390896e3d475b7810598d94ceb27

The commit was a quick fix for an issue where we would sometimes process
image errors multiple times, leading to us hiding them. In the next
commit, I modify checkIfImageExists to avoid this issue entirely,
meaning that the fix is no longer needed.

The dark mode SVG added in it was a duplicate of the light SVG so can
also be removed.

Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
Change-Id: Ia5ea01f34a8b38472c885e5a8b7b227006bf9935
2024-03-27 09:44:09 +00:00
Pranam Lashkari 422ba3e333 annotation: fix calc mobile comment not visible
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I37dc47e7daf991c1b2bb771fc1a96e939edd270d
2024-03-27 14:41:16 +05:30
Marco Cecchetti 959f9b5467 calc: fix regression due to core commit: 8f7dd2340b7
The core commit 'show cell cursor on in place editing' introduced a
regression: cell cursor messages grabs focus from the formula bar when
used for editing. The regression was causing the failure of
desktop/calc/focus_spec.js cypress unit test.

Signed-off-by: Marco Cecchetti <marco.cecchetti@collabora.com>
Change-Id: If4274cc510af065feb7aa13806a86746302b22b2
2024-03-27 09:12:48 +01:00
Michael Meeks 40f4977792 forkit: quicker zombie reaping by handling SIGCHLD.
Should launch new children more quickly on child death,
as well as getting to a waitpid and cleaning the zombies
faster too.

Change-Id: I06c36f63ac7ff52c407f739f1ce10d5e680fb82f
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2024-03-26 20:16:08 +00:00
Marco Cecchetti acefa3f357 calc: fixed bogus cell view cursor overlay
On switching tab not clear other view messages saved for replay.
Added cypress unit tests for checking the cell view cursor bounds.

Signed-off-by: Marco Cecchetti <marco.cecchetti@collabora.com>
Change-Id: I788828783a86038bb9d7f26648925b0e03bd560a
2024-03-26 20:34:45 +01:00
Skyler Grey 3685faad68 impress: comment movement: Fix undefined _map error
In Iea4d16918b054d355e6d8695e0dc1d6ededd6793, a regression was
introduced where we would check for a specific property of _map when
dragging anything. This was needed only in calc to determine the RTLness
of the sheet. Unfortunately, _map can sometimes be undefined (such as
when dragging around a comment in impress).

By moving the RTL check so it only executes if there is a map, we can
avoid this error, but the check will still run where it needs to.

Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
Change-Id: I9994a3957e37975360126fab33ba08e807d723dd
2024-03-26 17:31:15 +00:00
Henry Castro 5210cf752f browser: fix dialog warning alerts
* Enable security.enable_macros_execution in coolwsd.xml.
* Open a file with a macro.
* Click Help.

Expected result: the popup dialog should not close

Change-Id: I3981c1ddbb3782dd9ee43dc0c9dce282d2f21392
Signed-off-by: Henry Castro <hcastro@collabora.com>
2024-03-26 09:20:18 -04:00
Szymon Kłos c6d37405dc Format correctly tooltips
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Idf471bcd7753e6c18218dcaae4babc6cd423eab8
2024-03-25 20:25:01 +01:00
Andras Timar 0e3086ecc2 remove an unused image
It was part of the removed Vereign document signing feature.

Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I46e40c10f19a1f6bc821b51553d2a8276d2407fb
2024-03-25 17:46:23 +01:00
Neil Guertin b21b4b98a3 Use escape in removeShapeSelection
Creates more reliable svg dom

Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: Ie8adb7b2e543c93a4a23c49dd84aac973543f208
2024-03-25 09:33:03 -04:00
Neil Guertin 786ad1c84b Rewrite desktopHelper.insertComment()
Replace four helper functions (insertMultipleComment setupUIforCommentInsert
createComment saveComment) with one (insertComment)
Simplify code flow
Remove unneeded docType conditionals
Remove unneded identical arguments from every call
Add more relevant assertions
Use force click to remove extra toolbar clicks

Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: Ia4bc4ac964fd0ee754a481843d55682b87b63086
2024-03-25 09:31:27 -04:00
Neil Guertin e70143b09f Cypress calc helper: make assertDataClipboardTable retriable
Finally, a robust solution for checking sheet contents
Uses .should() to make a retriable assertion, subject to normal
timeouts and with no need to wait before.
Fixes sporadic failures in desktop/calc/autofilter_spec.js

Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: I9c4e36b3bcdf0968e9b95237f3f17f284d2628de
2024-03-25 09:31:20 -04:00
Skyler Grey 397c14841a Scroll: Cleanup dead code
Some code in this file is unused. In particular, the conditions to
fulfill touch scrolling will never be met since
I9016fc15ad3ccb3664af348fdcdca006495b0778, and the _performScroll
handler is never called. Let's delete it!

Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
Change-Id: Id34380f09300935dcb74435d8d94104d235f6f21
2024-03-25 11:24:26 +00:00
Skyler Grey de4d4c6e18 ScrollSection: fix panning with RTL
Previously we did not take into account whether something was RTL when
scrolling it with ScrollSection. By introduing a new isRTL function to
check this, we can do something different (in this case scrolling the
other direction) if we are controlling an element that should be RTL.

We need to introduce a function, as whether we are using RTL can change
over the lifetime of the ScrollSection

Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
Change-Id: If4261a3e32375f6127241b846b97a3b4ac29eb0b
2024-03-25 11:24:26 +00:00
Skyler Grey 0a134f2a7a Draggable, TouchGesture: Fix panning with RTL
Previously when we were in RTL mode panning would be flipped. This
commit unflips it

Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
Change-Id: Iea4d16918b054d355e6d8695e0dc1d6ededd6793
2024-03-25 11:24:26 +00:00
Szymon Kłos ae5e33b30c remove-w2ui: convert presentation toolbar to JSDialogs
- it is on the left below slides list
- handle disabled state in CSS for regular unotoolbuttons

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Iebff6e7db0234a4f61c532397bab697c1071595d
2024-03-25 10:48:46 +01:00
Michael Meeks fd77301ebb polls: switch compiled in delays to 60 seconds.
Forkit forking children is done in response to socket messages,
and parent process death should kill us too.

In general if we are relying on a poll to spin to achieve
something, we have a performance bug; this should exacerbate them
to flush them out.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I60d1c3b3c2532bbd686a3d3cfdea10f2a541a19a
2024-03-25 08:18:35 +00:00
Michael Meeks c3ff6af81d Cleanup waitForKitPidsReady.
In-line and specialize helper used just once.
Simplify code-flow, and reduce duplication.
Reduce duplicate logging.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I1ed68fdff5edfb10466d8bd13e88e5d2a5a71a63
2024-03-25 08:18:35 +00:00
Michael Meeks 005ba1567e PrisonerPoll - leave unused Kit sockets in the poll.
This lets us detect when Kit processes die without waiting for
the poll() timeout and feebly spinning the PrisonerPoll loop.

Instead we get notified immediately; but to do this we then need
to be able to safely transfer the socket between SocketPolls.

SocketPoll's should own Sockets - so by switching ChildProcess to
use a weak_ptr and also the NewChildren list - we can have standard
ownership and a sensible transfer between SocketPolls. A Socket is
owned either by PrisonerPoll or a DocumentBroker in the normal way.

Clean the NewChildren list as/when children are unexpectedly killed
apparently there are still some ownership issues probably around
the strong ChildProcess _ws pointer.

Change-Id: Ie541a9d03e36aee53fd57c45953e0de21ebe1828
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2024-03-25 08:18:35 +00:00
Michael Meeks 31f1ce360a crash test - cope with more complexity around re-starting.
With faster starting spare kits we can end up waiting for a state
where there are no live or spare kits, but the spare kit has already
beaten us to the punch:

[testCrashKit] (+1124ms): Killing coolkit instances.| httpcrashtest.cpp:151
[killPid] (+1124ms): Killing 1650047| httpcrashtest.cpp:257
[killPid] (+1124ms): Killing 1650071| httpcrashtest.cpp:257
[waitForKitProcessCount] (+1124ms): Waiting for kit process count: Doc Kits: 0  Spare Kits: 0 | KitPidHelpers.cpp:70
[waitForKitProcessCount] (+1124ms): Current kit processes: Doc Kits: [1650047, ] Spare Kits: [1650071, ]| KitPidHelpers.cpp:80
...
Forking a coolkit process with jailId: 09X67pOy1HAgSk9G as spare coolkit #5.| kit/ForKit.cpp:406
...
[waitForKitProcessCount] (+1558ms): Current kit processes: Doc Kits: [] Spare Kits: [1650083, ]| KitPidHelpers.cpp:94
... fail ...

Avoid this by intersecting before & after to ensure are all before are
dead.

Cleanup exposing the more problematic wait-for-zero-spare method.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I6f0ba87139b58f9bf1770ebbc5cac95b5063679e
2024-03-25 08:18:35 +00:00
Szymon Kłos 5355042687 remove-w2ui: convert sheets toolbar to JSDialog
- SheetsBar is on the bottom in Calc, with buttons + tabs
- add callabck for edit field - only fired after ENTER
  this fixes issue from FormulaBar conversion to JSDialog
- fix cypress mobile
- simplify CSS

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I7a286c87564e5ee0a89055ab4faa4daef9af31f5
2024-03-23 18:46:16 +01:00
Szymon Kłos 8777d33f34 dispatcher: fix print action
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ia92483fa900bde5b05383f72199b820a2b178c10
2024-03-23 18:46:16 +01:00
Gökay Şatır c402ecd41a Introduce docdispatcher.js.
In order to handle commands in a more structured way.

Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: If7e2aed089cda1df59b2bf2b454b540d36391df0
2024-03-23 18:46:16 +01:00
Gökay Şatır f44e0e0e3c Make use of shortcutDescriptors more.
In order to simplify keypress handling.

Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I2c5cfce5cb97ca8bbbbc28368deae708060bfbcc
2024-03-23 18:46:16 +01:00
Gökay Şatır fadaa38985 Move the shortcut handler upper in the handler function.
To distinguish it from the local variables that it's not using.

Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I1d1fe3a6506afd43cbfc8b1084a4d321f5d743d1
2024-03-23 18:46:16 +01:00
Gökay Şatır 10786103b1 Merge cmd into ctrl.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: Ie242d77bb3af20558d71cb0139d92ff069a8e794
2024-03-23 18:46:16 +01:00
Ashod Nakashian 5880312981 wsd: fix support-key build
Change-Id: Ib59494884333a200d768eec8b829e565f6470e2a
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-03-23 09:47:44 +10:30
Skyler Grey 391d68fc61 userlist: Stop hiding images if load failed
Previously there was no dark mode user SVG, which led to a failed load.

Additionally, we were using L.LOUtil.checkIfImageExists which sometimes
hides the image if it is unable to substitute it for a light mode one.
This caused the layout to fail as avatars were required to properly
space everything else.

By changing this so we provide both a dark and light mode user image, we
can avoid using the function which problematically hides the images in
this case.

Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
Change-Id: I16172a4d3148390896e3d475b7810598d94ceb27
2024-03-22 15:49:00 +01:00
Skyler Grey 0163b4498e following-ui: dark: Make borders and text visible
Previously the borders and text of the following chip were hardcoded to
be black, but this doesn't work excellently in dark mode. Using the css
variable will make the text and user border always be a color that can
be read.

It may be sensible for us to also change the pool of following border
colors as they are all very dark, but that can wait for a future PR.

Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
Change-Id: Ia2dcdf24ae12f5d45f59ef7ba3c2ed8e4ab5acf4
2024-03-22 15:49:00 +01:00
Caolán McNamara 339e724ae6 make profiling script find all coolwsds
there might be coolwsds launched from another service which doesn't
match -u coolwsd, so use -t coolwsd instead to capture all of them

then their output might be interleaved, so switch to another log
format that retains the name[pid] and stable sort on that column
so we have all the matching lines for a name[pid] contiguous but
ordered within that by time. After the sort, cut to drop the
columns that are additional over the 'cat' format.

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Id1d1c37001249ff348d6c09c005fb0836133258c
2024-03-22 13:16:59 +01:00
Szymon Kłos f29a7c63df Skip failing writer/tracked_changes_spec.js for now
Comment Undo-Redo:
     AssertionError: Timed out retrying after 10000ms: expected '<div#comment-container-2.cool-annotation.cool-annotation-collapsed-show>' to have class 'tracked-deleted-comment-show'

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Iae9361e5189ec8795a6dc6e0ac83cc99d653a538
2024-03-22 13:10:31 +01:00
Szymon Kłos 1945c79169 Skip failing mobile/calc/bottom_toolbar_spec.js for now
Merge cells:
     AssertionError: Timed out retrying after 10000ms: Expected to find element: `#copy-paste-container table td`, but never found it. Queried from:

              > cy.get(#coolframe, [object Object]).its(0.contentDocument, [object Object])
      at Context.eval (integration_tests/mobile/calc/bottom_toolbar_spec.js:74:50)

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I8ecca00d9a1c5cc35949b4b6f875092b487d60c4
2024-03-22 13:10:31 +01:00
Neil Guertin c73cab4479 Fix failing test mobile/calc/spellchecking_spec.js (forward port)
Test failed in 23.05 because of a change in .leaflet-marker-icon
Rewrite openContextMenu and remove uses of .leaflet-marker-icon

Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: Iecfacdd192ea723001ed56e6c9f0c32645a6af2c
2024-03-22 13:10:31 +01:00
Szymon Kłos 5359806efb Skip failing calc/focus_spec.js for now
This is a regression from the following change:
https://cgit.freedesktop.org/libreoffice/core/commit/?id=8f7dd2340b7cc593f1abfea7fbdc22e2d7ec6324
https://gerrit.libreoffice.org/c/core/+/164880

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I8f01ffadf91cea8941d264f03bcc6b371a4a9248
2024-03-22 13:10:31 +01:00
Miklos Vajna f9fe3c1880 Related: cool#8023 wsd, ClientSession: fix bogus <body> warning with plain text
E.g. unit-copy-paste emitted a warning like this:
wsd-1576653-1576734 2024-03-20 21:28:53.448488 +0000 [ docbroker_002 ] DBG  ToClient-005: Missing <body> ...

This is a real problem in case the clipboard has HTML, but it's fine
when the clipboard is just plain text.

Fix the noise by returning early when the body of the clipboardcontent
message contains just plain text.

This works because the body never starts with plain text when HTML is
also available: the JSON case is not an issue and the entire clipboard
dump lists HTML before plain text.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: I1ff51249fb710e3a9c127917aae4178c22738668
2024-03-22 08:32:41 +01:00
Andras Timar 6686aaa01a Remove unused viamapi-client.js file
It was part of the removed Vereign document signing feature.

Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ibe8a31102eaefcfba1898ad2f31226c24e12f330
2024-03-21 10:09:29 +00:00
Ashod Nakashian fe3c3bc135 wsd: test: move WebSocketSession under test
WebSocketSession is used exclusively for tests,
so it's best that it is located in the test
directory.

Change-Id: I88333d619902df7991c3f26b94ed309246446ae0
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-03-21 09:08:51 +00:00
Pranam Lashkari 581ce772ee fixed js console error
problem:
in impress get into textbox editing and then try to drag and move text box,
you get js error because map is null

regression from 9cf64b0726

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I586c5f242241aa50f62c49371c994aeb7c370525
2024-03-21 13:58:03 +05:30
Darshan-upadhyay1110 868ba940aa accessebility: replace <span> tag with header tag in modal(js dialog) title
- The title of the modal window is currently marked with a <span> tag instead of an appropriate heading
tag (such as <h2> , <h3> , etc.).
 - This affects the semantic structure of the page and makes it difficult for
users with assistive technologies like screen readers to effectively navigate the page.
- The modal title is not recognized as such, which hinders orientation and understanding of the content.

- Solution:
    - replace <span> tag with <h2>(header tag) for `ui-dialog-title`.
    - to make font-size consistent added css rule for `ui-dialog-title`.

Note: this will change all js dialog title withg header tags ( not only specific to writer but also effeted for every document type)
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: I5a1e276c3a129400aa5834e186a263db95f01833
2024-03-21 10:59:42 +05:30
Szymon Kłos 5efe701294 Reenable cypress mobile tests
Partial revert of commit aa259d7337.
Also make idle tests run before multiuser

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: I87024193d81bcadc9ea77e9033dceb3c6250d966
2024-03-20 08:46:49 -04:00
Neil Guertin e7782149e1 Skip mobile/calc/cell_appearance_spec.js border test
Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: Ife1faecf4471292f1aaddd98adc0b57329a8807d
2024-03-20 08:46:49 -04:00
Neil Guertin 4d4f999f24 Skip mobile/impress/apply_paragraph_props_text_spec.js
Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: I299ddd958e26c49746ce77f1a1e9fca383779ed3
2024-03-20 08:46:49 -04:00
Neil Guertin 42a36b9afb Fix mobile/impress/apply_font_text_spec.js
Exclude placeholder text
Fix removeShapeSelection detection

Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: Ie8cfd791ae4468fa6994e3a49efe05577e7aae37
2024-03-20 08:46:49 -04:00
Neil Guertin 9e5f6c17dc Fix copy-plain-container in cypress tests
Container was showing in cypress mobile tests.
In Calc, this blocked clicks from reaching the top left cell.

Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: I7ceab551b7247962d9517f52560e6e03646511bf
2024-03-20 08:46:49 -04:00
Neil Guertin 83d8df81bd Fix mobile/writer/apply_font_spec.js FontColor tests
Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: I47ed365d9f3b3d884ea883aa0834e39f563feab3
2024-03-20 08:46:49 -04:00
Miklos Vajna b14f3fffff cool#8465 clipboard: improve handling of plain text copy, complex case
In case the selection is complex (not simple), we used to just request
HTML, and then the browser converted that to plain text, which has the
downsides already mentioned in commit
7f9de46688 (cool#8465 clipboard: improve
handling of plain text copy, simple case, 2024-03-08).

Steps to support this:

1) Clipboard.js now asks for the text/html,text/plain;charset=utf-8 MIME
   types.

2) wsd: ClientRequestDispatcher::handleClipboardRequest() now maps this
   to DocumentBroker::CLIP_REQUEST_GET_HTML_PLAIN_ONLY

3) ClientSession::handleClipboardRequest() maps this to the HTML+plain
   text MIME type list.

4) kit: ChildSession::getClipboard() is now improved to take a list of
   MIME types, not just 1 or everything.

5) kit: ChildSession::getClipboard() now emits JSON in case not all, but
   multiple MIME types are requested.

6) wsd: ClientSession::postProcessCopyPayload() now knows how to
   postprocess clipboardcontent messages, which may or may not be JSON
   (it's JSON if more formats are requested explicitly, leaving the 1
   format or all format cases unchanged)

7) Control.DownloadProgress.js now handles the case when we get JSON and
   sets the core-provided plain text next to the HTML.

   Leave the handling of non-JSON case in, because this means we can
   copy from an old COOL server to a new one.

Note that this approach has the benefit that once the clipboard marker
is inserted, the length of the text/html format would change, which
means we can't parse the clipboard data till the marker is removed.
Emitting JSON for html+text means adding the marker keeps the ability to
parse the HTML and the plain text part of the clipboard in JS.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: I67a1f669e8a638d34cc25a2f288a7b30884b9892
2024-03-20 10:21:59 +01:00
Jaume Pujantell 8921e19d84 reduce uses of MOBILEAPP on some files
Reduce the uses of MOBILEAPP conditionals by using the isMobileApp
function.

Signed-off-by: Jaume Pujantell <jaume.pujantell@collabora.com>
Change-Id: If541307fbc457b342674cc560b6c53454f3904cf
2024-03-20 09:13:00 +01:00
Jaume Pujantell 3ba713aabf add isMobileApp util function to reduce ifdefs
Removed all MOBILEAPP preprocessor conditionals from Util.hpp/.cpp
Added isMobileApp function to help remove further conditionals.

Signed-off-by: Jaume Pujantell <jaume.pujantell@collabora.com>
Change-Id: I038a4db47ec2a2c7bb10f5696df5571b13bd9a61
2024-03-20 09:13:00 +01:00
Ashod Nakashian 0241aa5aca wsd: use http::Response in FileServerRequestHandler::preprocessFile
Change-Id: I5afa5d8b56017568f02e7ed5cd6cb93df12d895e
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-03-19 20:51:02 -04:00
Ashod Nakashian 4387168d94 wsd: reuse the response in FileServer
This allows for setting common headers
only once and have it on all file
types and scenarios.

Change-Id: Ia9d67ac5dbf59dd6e22beea0b4ae162ccb846b33
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-03-19 20:51:02 -04:00
Ashod Nakashian a48917d052 killpoco: use http::Response in admin file serving
Change-Id: I9ad49002bc85071770aba08c23e0210bb10ff55b
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-03-19 20:51:02 -04:00
Ashod Nakashian 4dfb7ee312 killpoco: use http::Response for Admin metrics
Change-Id: I86eed98061bdb24d4bca8de452e4d4f925f27e93
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-03-19 20:51:02 -04:00
Ashod Nakashian 882350ed70 wsd: remove sendWithDateAndAgent
The explicit header entries were needed
with Poco, but since we always set them
in our http::Response constructor, these
are redundant.

Change-Id: Ifde48fd3048018747dae3e84560b31960e511a25
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-03-19 20:51:02 -04:00
Ashod Nakashian 7fb6ccf4ee wsd: remove duplicate Server and Date headers
We always create http::Response instances
with these headers. These explicit entries
are vestiges from Poco sockets.

Change-Id: I65c263e95b253e22e4e6deae57fffc5616311c84
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-03-19 20:51:02 -04:00
Ashod Nakashian 00d483f67d wsd: minor cleanup of Admin::getLogLines
Change-Id: Ic238dcb7996c2967355366c062f0b94912d7adc7
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-03-19 20:51:02 -04:00
Ashod Nakashian 0a78d691ab wsd: parse config only once in Admin
Change-Id: I7b21f526145abd7f16eb4da8b2d4784798cf8b9b
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-03-19 20:51:02 -04:00
Ashod Nakashian 0ffdc19b3f wsd: simplify jwtToken extraction
Change-Id: I190817a0086d762bacfadac76b5edacbdf84dc12
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-03-19 20:51:02 -04:00
Ashod Nakashian 727beabc94 wsd: simplify isAdminLoggedIn
Change-Id: I9ec2a585b2256882ee89ee6479a752735927e678
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-03-19 20:51:02 -04:00
Ashod Nakashian 355dfdd58a wsd: add authenticateAdmin helper
Change-Id: I183ddef3378e19ce43845aa73804fe8c142e8e0e
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-03-19 20:51:02 -04:00
Ashod Nakashian f034709b69 wsd: include cleanup
Change-Id: I9e63d673b25ac29f8070a81b35e5def96d6a165f
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-03-19 20:51:02 -04:00
Ashod Nakashian ccb29243c6 wsd: move stringifyBoolFromConfig to anonymous namespace
This is an internal helper and doesn't need
to pollute widely used headers, especially
that it pulls Poco headers with it.

Change-Id: I67a5aa64589d3f37141aff612f7fb807bb190d6f
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-03-19 20:51:02 -04:00
Ashod Nakashian 41abc931dc wsd: new isAdminLoggedIn that only verifies a valid token
This helper doesn't implicitly authenticate the
user and generate a JWT token.

Change-Id: Ib32ba4c73948c12bf41520e32e6a16da0e9cb425
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-03-19 20:51:02 -04:00
Michael Meeks 5105e4202a unipoll cleanup - remove obsolete DocumentBroker mutex.
This should not have been necessary for a long time; but add
some assertions to help check.

Change-Id: Iedbc0bb57839209d1f1caeaab7094e335c881e57
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2024-03-19 20:44:59 -04:00
Szymon Kłos d1e1f9d46d formulabar: make it a grid to not move on activation
this puts buttons and inputs at fixed positions so they
don't move when we enter formula editing mode

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I2dd99e3ac233b66847af0165359d15fb50a10a97
2024-03-19 17:39:24 +01:00
Szymon Kłos bde997dfa8 remove-w2ui: use JSDialog for formulabar
- remove w2toolbar
- use JSDialog instead
- remove Leaflet class, use ES6 class

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I94fd17983cd727eefdd5b43f5b93d4319f15f3b0
2024-03-19 17:39:24 +01:00
Rashesh Padia 464358ca70 fix: data loss when shutting down while using typer
- Docbroker only uploads the document when the document is already saved and
  there are no further modifications.
- But when using typer once dockerbroker saves the document and tries to upload
  there are already new changes to the document. Therefore, docbroker keeps on
  saving this new changes and keeps on skiping the upload as there are new
  changes to the document; until it times out

Signed-off-by: Rashesh Padia <rashesh.padia@collabora.com>
Change-Id: I427d37a6228299006530daddebdf4365af63588b
2024-03-19 19:42:20 +05:30
Jaume Pujantell bde21a35ab clipboard: do no compare wth invalid metapath
Copying from a document, closing it, reopening it and then pasting
did nothing.

The short-circuit for internal paste gave a false positive.

Signed-off-by: Jaume Pujantell <jaume.pujantell@collabora.com>
Change-Id: Ib21faf270d2ed03af2954f79bee8c1efbb0fd0ca
2024-03-19 14:19:06 +01:00
Michael Meeks c1b6b5d30f Watchdog to call probe-point when SocketPolls are slow.
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: Id58efab0c0fee88a3da094765eb6b7641aec6e02
2024-03-19 11:29:07 +00:00
Szymon Kłos 355e6b30cd Add missing semicolon in getContentListRecursive
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I9ab0f302c8acfa272ac64434d64f64c3d09ad4f8
2024-03-19 10:51:42 +01:00
Szymon Kłos 26801321a8 notebookbar: a11y: open dropdown for MenuButtons
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I6fc7085975d13c144fdd543558c8fabfe2ed29b9
2024-03-19 10:51:42 +01:00
Szymon Kłos 4ef8fb4c9c jsdialog: allow to press dropdown arrow using keyboard in MenuButton
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I5a4c0e482fc632334a8041797368be3e6cf2e4e4
2024-03-19 10:51:42 +01:00
Szymon Kłos b36af7d51f notebookbar: a11y: show accelerators for MenuButtons
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I1cec1f53153a35d50afee89906af1099df2a87cb
2024-03-19 10:51:42 +01:00
Skyler Grey 50dd9477a6 Stop following text overflowing chip
With some styles the following text was too large for the chip.
Unfortunately, sizing it to be consistent made it unreadably small. To
solve this, we can show only the first line of the text in the following
chip and show the second as a tooltip instead.

Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
Change-Id: I4b5306370c31f4d0b13e1a91bf17a9d491807c45
2024-03-19 10:43:48 +01:00
Pranam Lashkari ca95ab3f6c Revert "Check for comments in isAnyDialogOpen"
This reverts commit e9cf81f29e.

problem:
when comment is being edited, nothing could be copied from the doc

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I34ceacc5d9c7d5eb7d57ec2489a47734b80a044f
2024-03-19 13:58:53 +05:30
Pedro Pinto Silva 0bec574ec3 Custom properties dialog: Fix height mismatch select and input field
Better to use the same height so to fix the misalignment

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: If3e76a695a943eee4861479e2ce7b6b1dd287d4f
2024-03-19 08:47:43 +01:00
Ashod Nakashian 8b97c4527e wsd: add ProfileZone to WopiStorage::uploadLocalFileToStorageAsync
Change-Id: I17a4a96f0ffbf4a230e7c5a0234782555fc06320
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-03-18 18:41:49 +00:00
Ashod Nakashian c7b67ec100 wsd: corrections to TraceEvent
We continue to process all entries of
the array.

The command name is now correct.
Otherwise, an error was logged instead.

Change-Id: Ie5085e062dc36a4e955347246d5087ec7749d270
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-03-18 18:41:49 +00:00
Ashod Nakashian dd2b187cd9 wsd: avoid duplicate string copying for ProfileZone
Change-Id: Ie07e5d1ef3d0260ce66252e601b0be810c24aee1
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-03-18 18:41:49 +00:00
Ashod Nakashian f2c35e2435 wsd: support ProfileZone in CheckFileInfo
Change-Id: Ifd4608bbb9db119bbaeb2820f2d151597e41a479
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-03-18 18:41:49 +00:00
Ashod Nakashian 21b0394828 wsd: better empty string operations
Change-Id: Ic14efcaa8a1c345b875c27446b16f51740c55efa
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-03-18 18:41:49 +00:00
Ashod Nakashian 0dfd863fd3 wsd: streamline TraceEvent strings
Change-Id: I56e5cf05d45914e71d96a0b0a583d413fd6bd79a
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-03-18 18:41:49 +00:00
Ashod Nakashian 8800dea4c2 wsd: emit ProfileZone recording on demand
This adds a single-shot emitting of ProfileZone
stats. It can be fired manually or done by
the destructor, allowing for profiling a section
that differs from the lifetime of the ProfileZone
instance.

Change-Id: I016096edf053d942a202079eed540f9e2df3870f
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-03-18 18:41:49 +00:00
Ashod Nakashian 7dde66356d wsd: better encapsulation in ProfileZone
Change-Id: I7be121f10409d70b5f72e5dd601f859163b7ab33
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-03-18 18:41:49 +00:00
Ashod Nakashian a18334264f wsd: better construction of ProfileZone
Change-Id: I3cef57f58ce2039a7f4fa960d40c8a9ce776e21e
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-03-18 18:41:49 +00:00
Skyler Grey 34ece47362 Convert ColorPicker.js to ColorPicker.ts
I did the things necessary for TypeScript to stop complaining, as well
as additional modernizing things such as formatting and removing
L.Class.extend

Here's the full list:
- Update browser/Makefile.am with the new filename
- Fix any typescript errors that prevented compile
- Remove L.Class
- Factor out repeated types
- Tighten types to avoid functions leaking anys

Though not all of those steps are necessary, they are all useful, as
along the way TypeScript helped me to find and fix several times when I
had incorrectly inferred what the type should be

Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
Change-Id: I20d6580c53337909788b0517353c5852365b871d
2024-03-18 18:07:30 +01:00
Skyler Grey 22e92855d3 Remove unnecessary any in Control.UserList.ts
This was left around, presumably from before I typed user

Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
Change-Id: Ie5ff95a04b20fd260ebfb3dc3317c3869ac22b91
2024-03-18 18:07:30 +01:00
Andras Timar 39ee21ddca Bump version to 24.04.1.1
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I69d1ea53feb1e0f1d512d0c073186463f6475b32
2024-03-18 16:17:50 +01:00
Jaume Pujantell 1f1eab4d99 add test for font input focus
Add a cypress test for the change in commit dfe1e1b5

Signed-off-by: Jaume Pujantell <jaume.pujantell@collabora.com>
Change-Id: Id829d271efe7ccebf58c9f83cc67e6b1cf8b72e9
2024-03-18 15:27:56 +01:00
Neil Guertin 187512aa58 Fix desktop/calc/focus_spec.js
Wait for formula bar buttons before typing

Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: I0603fee2acd7ba3090f7b8536a5e5d6f18a52179
2024-03-18 10:02:56 -04:00
Ashod Nakashian 57b7626531 wsd: only ever issue one RVS per request key
If we get an identical request while already
processing an async CheckFileInfo (while
serving cool.html), we shouldn't clobber
the old instance and issue a new one.

Change-Id: Ie6da4ab780d581db74430dedd6d307a4ac2e0a0b
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-03-18 13:47:58 +00:00
Ashod Nakashian d6f528a4d3 wsd: check if we already have a WS in RVS
We might not have the WS yet when
CheckFileInfo fails or returns unauthorized.

Change-Id: Id0fe34a6fadef7ba4094707a0ae82b83b9b2a5fb
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-03-18 13:47:58 +00:00
Darshan-upadhyay1110 09cfaa81a9 Improve Update state of uno Tool button state on stateChanged
- We made some adjustment in core side
- it will now send both property
     1."State" = either button is selected or not
     2."disabled" = either it is disabled or not
- based on above message made some adjustment and refactiong in update function
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>

Change-Id: I7aa9bae647252782fcc88bd11b34bf9954741502
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
2024-03-18 13:16:39 +01:00
Szymon Kłos 361039c528 remove-w2ui: reuse MenuButton for color picker button
- reuse MenuButton as base for colorControl
- add only last color indicator and activation on left side button
- make possible to clreate split button from unotoolbutton

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I8cd20149cc5bc25bedf4e0b0c56fc93d53339f4b
2024-03-18 12:58:02 +01:00
Szymon Kłos 5ff165124e jsdialog: allow to put any widget into MenuButton dropdown
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: If6f6192fe5cef6e7e6de20329d6e1b49bd6d1ed0
2024-03-18 12:58:02 +01:00
Andras Timar 56a30406d4
Update SECURITY.md
Versions
2024-03-18 06:37:02 +01:00
Gökay Şatır c127d54919 Send permission parameter to wopi parameters.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I0a779e7f27196ca987b11a619c9b0ee27a87bb4a
2024-03-16 07:28:30 +03:00
Gökay Şatır 27670275ab Send isAllowChangeComments flag to ChildSession.
We also set the variable on the core side in order to allow saving edited documents.

Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I9ba97daca7013bf26b25fff785f175e3fb213dfb
2024-03-16 07:28:30 +03:00
Gökay Şatır ea7c9c9fe6 Check session->isReadOnly along with getUserCanWrite.
This allows permission=readonly URL parameter.

Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I02df9723cf90c961be2e8ce579304355420d0d11
2024-03-16 07:28:30 +03:00
Gökay Şatır b7454abdbf Provide longpress timer for IOS devices.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: Ifaf76e198f0357e669c9966a185b6ab506e56f49
2024-03-15 20:46:20 +03:00
Gökay Şatır dfc523f15a Merge onContextMenu and onLongPress events.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: Icd4452a30479591035282a789ad6c9ae742c1b0b
2024-03-15 20:46:20 +03:00
Méven Car 5a2f290803 test/data: Add a ppsx file
Signed-off-by: Méven Car <meven.car@collabora.com>
Change-Id: Ic8eae566cc137400b356e4e99c4f93f9278dc83e
2024-03-15 18:25:53 +01:00
Méven Car 31c512ff66 Impress: Allow to autostart in presentation mode
This is implemented in two cases:
 * using a request parameter '&startPresentation=true'
 * for ppsx/pps for which the backend sends a startPresentation
   stateChange event. This can be overridden passing
'&startPresentation=false' to allow editing the file.

The presentation can only start in present-in-window mode due to browser
gating fullscreen by user activation.

Refactor SlideShow._onFullScreen to better handle the requestFullscreen permission restriction failing case.
Also clean up old references to old restricted implementations.

Signed-off-by: Méven Car <meven.car@collabora.com>
Change-Id: I98fcb1a7da170fa1c6a7de75c680259163233c9d
2024-03-15 18:25:53 +01:00
Neil Guertin 8a788347f2 Fix &debug=true and &randomUser=true url parameters
Move debug toggle to after docloaded message
Move sidebar toggle even later than that

Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: Ib72b5ef4c2c31f7707a384b2d819d5cde57a796d
2024-03-15 11:51:27 -04:00
Pranam Lashkari 7e51e5544c annotation: fix scaled comment positioning
problem:
when using display scaling/zooming clicking on comment may cause
overlapping on comments if the previous comment from clicked comment is long

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I6e9eec3ba5c3fb9f871ce42bb0a554d7e2cc3c5e
2024-03-15 11:43:12 +00:00
Michael Meeks 3b38327f55 Only create Unit-test SocketPoll when used.
We don't need a SocketPoll and its wake-pipes before we
run a test - obviously, and we should close it when we
fork a new test.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I56875b66ce2ba141baacdd70c973e9e9af02d1d0
2024-03-15 11:41:23 +00:00
Michael Meeks d6c49d4183 Cleanup ForKit's SocketPoll after forking.
Don't leave the wake-pipes lying around; it can't do any good
to have these cloned, and shared between child processes.

Change-Id: Ieb6c5c8fdd1285bc514116a1e00de76bcc5a1773
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2024-03-15 11:41:23 +00:00
Michael Meeks e9ef062eee Set thread name early & cleanup thread_locals.
On fork a thread_local variable simply inherits the parents'
value - so clearing the cached thread_id helps to make
logging more accurate.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: Ib03d2605489291589854caa10940fd7c11caea36
2024-03-15 11:41:23 +00:00
Michael Meeks 2e784c0a03 Socket: add API to close all sockets.
This may not look hyper-elegant, but using ~Socket to do this
calls 'shutdown' first on the sockets, which closes the parent's
duplicate of the socket very unhelpfully. So close instead.

Don't touch and thus COW memory. We will leave the Socket Poll
around un-used, and un-polling from eg. the ForKit in the Kit
process.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I1328dee0278ce39350194c617acffa114887d523
2024-03-15 11:41:23 +00:00
Michael Meeks f21b4854ee Generalize DirectoryCounter and add FDCounter class.
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I6f51d8eeafcafcd8fe8a70a4e9f734e8c002eed6
2024-03-15 11:41:23 +00:00
Jaume Pujantell d77b0b6bd2 android: add support for c++20 and std::filesystem
Android build fails due to use of std::filesystem and
c++20 features like string::starts_with.

cmake requires c++2a flag
std::filesystem requires ndk 22+

Signed-off-by: Jaume Pujantell <jaume.pujantell@collabora.com>
Change-Id: Ibba1e5e76a32ba5526d9d7111b810a650f372a02
2024-03-15 12:23:56 +01:00
Bayram Çiçek 93f3bcff82 use getentropy() for BSD systems
- instead of using /dev/[u]random devices, use
getentropy() to make direct system calls
if the system is a BSD.

- if getentropy() fails, we need to fall back to
"/dev/[u]random" approach.

Signed-off-by: Bayram Çiçek <bayram.cicek@libreoffice.org>
Change-Id: Id6a2629c06d641eb4e7cf3991de4036d2f7b346e
2024-03-15 09:29:10 +00:00
Pranam Lashkari 77f3361654 cypress: fixed tests after textbox/shape svgs updates
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I0fd693c373dd996ed926f65b7df64a531048476d
2024-03-15 09:23:27 +00:00
Pranam Lashkari 714b24c6ae canvas:svg: update inner text area of shape/textbox based on input
problem:
before this patch innert textarea svg was not updated after changing text,
it was static based on first selection of textbox/shape,
to update the textarea we needed to unselect and reselect shape/textbox

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I11ceaf76867cecf5a356149d2072181e9f10b86e
2024-03-15 09:23:27 +00:00
Miklos Vajna 7d95971b19 clientnb: missing include
<timar> net/clientnb.cpp:117:10: error: ‘shared_ptr’ in namespace ‘std’ does not name a template type
<timar>   117 |     std::shared_ptr<WebSocket> getWebSocket()
<timar>       |          ^~~~~~~~~~
<timar> net/clientnb.cpp:38:1: note: ‘std::shared_ptr’ is defined in header ‘<memory>’; did you forget to ‘#include <memory>’?

IWYU agrees it's a missing include even if this builds for me by
accident.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: I367ef3efcf2bdaf1b69c4bf21ef168e03807365c
2024-03-15 11:49:09 +10:30
Andras Timar ea4234cfda remove executable bit from SVGs
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Id83fbfeb2880ef9208f45b8c2dcb16753c7307fe
2024-03-14 17:10:35 +01:00
Skyler Grey e385a7b53b Stop following anyone when you start typing
When you are following someone and start typing, it's a pretty good
indication that you don't want to be following that person, particularly
because if they edit you will then be jumped over to where they are

We also need to stop unfollowAll from always rerendering the user list,
as when we rerendered on every keypress there was a noticable
performance degredation. Instead, we can make it only rerender when
we're following someone, which is a lot better.

Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
Change-Id: I110ca74859b7cee03c6a58c87d3975275f29760d
2024-03-14 11:44:52 +00:00
Szymon Kłos e8f61f02bb remove-w2ui: replace w2overlay with jQuery tooltip for user join
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ic6db4451222ea2d409e421322a67648c2d9c7989
2024-03-14 08:35:15 +01:00
Szymon Kłos 087380bf2d remove-w2ui: replace w2overlay with info modal for undo conflict
so it will be also visible in notebookbar mode

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ia311e3bff119b202b08b6ba04f75ad795d8a735c
2024-03-14 08:35:15 +01:00
Szymon Kłos edca8edb77 notebookbar: remove some unused rules
in the past when JSON was generated from core it was needed...

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I862bd405f17bd102d9772b0f806aec8bfcca4ac8
2024-03-14 08:35:15 +01:00
Szymon Kłos 240c6754b4 remove-w2ui: reuse MenuButton for insert table popup
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I8dbeca30842d7bc8898f7e8146b0f279b9d0054a
2024-03-14 08:35:15 +01:00
Szymon Kłos 7ffa56d711 remove-w2ui: reuse MenuButton for insert shape popup
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ib18fad0242d55aa01ef1f2c5e49105eb6d6627f9
2024-03-14 08:35:15 +01:00
Szymon Kłos aa259d7337 cypress: disable mobile, idle, multi tests for now
so we will check desktop only which can pass

This change should be reverted after we fix problems

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Id34bf6446c7ea56fc8dd8ddf750abafd693c0aa1
2024-03-13 18:49:07 +01:00
Szymon Kłos ba8a3fd60b cypress: disable failing draw/pdf_page_up_down_spec.js
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ia795fae9e852453d47f8afeb33150041fb21eb4b
2024-03-13 18:49:07 +01:00
Szymon Kłos 10950c599e cypress: disable some failing svg checks
It fails on triggerNewSVGForShapeInTheCenter()

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I2693ea645a4103ecfd51db0405022764a0130d5a
2024-03-13 18:49:07 +01:00
Szymon Kłos e1f1003599 jsdialog: correctly enable/disable widgets
this fixes cypress test: desktop/impress/jsdialog_spec.js

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I8e80b1e3721394e18e21902ad7794b526f5da7a5
2024-03-13 18:49:07 +01:00
Szymon Kłos f71b03484b cypress: fix insert image tests
`<div class="unotoolbutton notebookbar ui-content unospan-home-insert-graphic unoInsertGraphic no-label" tabindex="-1" id="home-insert-graphic" title="Image">...</div>`

is being covered by another element:

`<div class="w2ui-scroll-right" style="display: block;"></div>`

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Idc5aa7b6ca1c7c9a601b07e60ba76d980dc07ae2
2024-03-13 18:49:07 +01:00
Neil Guertin be851931ea Cypress: log helper function start and end
Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: I61812b730fa58ee1c2969f4ded84b08f5eca981a
2024-03-13 13:21:20 -04:00
Henry Castro 5ac45caea0 browser: fix prettier wrong parameters
Change-Id: I40cece8d48b01b8a6dc1cbf91699a5ef436b3631
Signed-off-by: Henry Castro <hcastro@collabora.com>
2024-03-12 13:49:38 -04:00
Henry Castro db8fee7d9b browser: create 'prettier-write' rule
Change-Id: I3f326da9428e4c8c5558912004446725f6b32772
Signed-off-by: Henry Castro <hcastro@collabora.com>
2024-03-12 13:49:38 -04:00
Henry Castro 20462e576f browser: create prettier rule
Change-Id: I8ea727458c450a14880b06971d48c58edd0961c2
Signed-off-by: Henry Castro <hcastro@collabora.com>
2024-03-12 13:49:38 -04:00
Henry Castro 71023d9ba7 browser: simplify 'prettier' call
Change-Id: I0e2af38d70e30dea42187fa2fb960da5328af857
Signed-off-by: Henry Castro <hcastro@collabora.com>
2024-03-12 13:49:38 -04:00
Henry Castro e2103b241a browser: create eslint rule
Change-Id: I65766ffdebf5c3148cf13507f6ee9c1980c4bb79
Signed-off-by: Henry Castro <hcastro@collabora.com>
2024-03-12 13:49:38 -04:00
Henry Castro 5d8e9983a9 browser: simplify eslint call
Change-Id: Ic88985555934f0d6274b9b87a298cf4769594cd1
Signed-off-by: Henry Castro <hcastro@collabora.com>
2024-03-12 13:49:38 -04:00
Henry Castro 8a14ca766d browser: fix format style
[error] ===================================================================
[error] ---
[error] +++
[error] @@ -1635,5 +1635,6 @@
[error]  		}
[error]
[error] -		for (var pmKey in partMode) { // no keys method
[error] +		for (var pmKey in partMode) {
[error] +			// no keys method
[error]  			var partTileQueue = partMode[pmKey];
[error]  			var part = partTileQueue[0].part;

Change-Id: I3dad1053203c22c48b0c60ede9b7e83265f183bd
Signed-off-by: Henry Castro <hcastro@collabora.com>
2024-03-12 13:49:38 -04:00
Henry Castro 76d33f1182 config: add 'prettier' command before bundeling process
Execute the 'prettier' command to check format code style.

Change-Id: I93e4a57e03d26627caa3b2c52ae44669a8723267
Signed-off-by: Henry Castro <hcastro@collabora.com>
2024-03-12 13:49:38 -04:00
Henry Castro ec40680f9a browser: admin: ignore eslint transpilation code
The *.ts files in admin are transpiled typescript to *.js
so ignore the file to eslint again.

Change-Id: Icb5edbcc9d782562886c17453921979fd2dbdd2e
Signed-off-by: Henry Castro <hcastro@collabora.com>
2024-03-12 13:49:38 -04:00
Henry Castro f6895dcddf config: fix eslint 'prettier' package extension
config setup: builddir != srcdir

------------------------------------------------------------

Oops! Something went wrong! :(

ESLint: 7.0.0

Error: Cannot read config file: ../browser/.eslintrc
Error: ENOENT: no such file or directory, open '../browser/.eslintrc'

Change-Id: I7900d9715b9a918c2f978aae63522a8c62956278
Signed-off-by: Henry Castro <hcastro@collabora.com>
2024-03-12 13:49:38 -04:00
Andras Timar b969b98007 rpm: BuildRequires
cppunit-devel is not required for release build
nodejs is required, but may be provided by other means,
not by an rpm package.

Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: If761ef746559c9e002817f7a102191f5087001e2
2024-03-12 16:47:38 +01:00
Andras Timar 47a94b9b56 test android CI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I98ec8b2a052e7881a5f82e43d973ec6b3506d20f
2024-03-12 16:46:36 +01:00
Andras Timar f2d30c60e3 Update Helm Chart with new release 23.05.9.4
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I9bcf32e0422a886b790d5836fb4bf1f5d68090ee
2024-03-12 16:46:36 +01:00
Darshan-upadhyay1110 17c6f4241c Do not hide or show elements which are force to be hidden in mobile view
- We specifically hide some section or elements in mobile view
- if we go level up or level down in mobile view, we should not change the state of those elements which already hidden using css rules
- this patch will cover that part of issue where we do not consider elements which are hidden by css rules
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: I7ffd83c5b74987f74b7e327fd13775a81d02120d
2024-03-12 15:58:59 +01:00
Darshan-upadhyay1110 9c0e74be84 Fix image path for base spin field icons
- image path was wrongly assigned
- setImage method will do the work to set image path
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: I765f0049d7d607926529df38a202b9ec923584b1
2024-03-12 15:58:59 +01:00
Michael Meeks c9cac383b6 net: add socketpair wrapper.
Useful to have a Unix socket-pair to communicate with
a forked process.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: Ic4ad1eee62b6d3b40a03bc8e59bce6e0e16efc28
2024-03-12 08:49:39 +00:00
Michael Meeks a8d97dc16d Calm down warnings.
Seems browsers start to ping servers on their websockets, so don't
warn about that.

We trim memory left and right in clients, that doesn't deserve a
warning either.

Change-Id: I7bdcc99d167a8df3c847a1893dee8cd9123250f2
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2024-03-12 08:33:17 +00:00
Pedro Pinto Silva ad3fca4ea3 Gitpod: Update branch parity, use core 24.04 instead
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ibe21ffb1a9743088d20017d3b64144e69b29c3c1
2024-03-11 15:40:02 +01:00
Szymon Kłos 661edaeea0 remove-w2ui: use MenuButton for borser style dropdown
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I7d9dfe1015e7488f0d127b39f6abcbda0158800b
2024-03-11 15:21:45 +01:00
Szymon Kłos 6f8996d1c1 jsdialog: reuse standard MenuButton for ConditionalFormatMenu
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I295f916ebc8288a62097f234a933d12ed9e02aa0
2024-03-11 15:21:45 +01:00
Szymon Kłos 668fcfac0b jsdialog: make Dropdown submenu code more generic
- automatically handle html content
- fix dropdown cropped when close to the screen edge
  and content is custom html (fixes #7578)
- automatically handle focus

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I3187971f47295d699a18dbf5b8dd129e3a809991
2024-03-11 15:21:45 +01:00
Szymon Kłos 9ae0947b35 remove-w2ui: remove unused _makeW2MenuFocusable helper
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ie97c5945a7ffb45740020c1603843ef6efcebc0d
2024-03-11 15:21:45 +01:00
Szymon Kłos fe753b6f66 remove-w2ui: apply prettier rules to new files
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ied640eec87c1df05aaba37117a249e1551f45233
2024-03-11 15:21:45 +01:00
Szymon Kłos 8991cc1ef9 remove-w2ui: extra properties for JSDialog.Dropdown entires
- icon
- checked state
- hint / tooltip

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Id2c65861262c8aef43395cf933b8d992e643166a
2024-03-11 15:21:45 +01:00
Szymon Kłos 0864c21dbc jsdialog: if MenuButton has only one entry - call it
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I36eb02ce3774880e0c9413169f8fa1ca8e6b596f
2024-03-11 15:21:45 +01:00
Szymon Kłos 88b0407a86 remove-w2ui: reuse JSDialog menus for grouped Export buttons
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I1080610bca521c339f4eacba40320e94dbc7b9df
2024-03-11 15:21:45 +01:00
Szymon Kłos 21057adfc4 Move exportFormats to the app state
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ic7fa0f8a9175fc5af0969641c82b4e0fadfc0f1e
2024-03-11 15:21:45 +01:00
Szymon Kłos 16b9294b6a remove-w2ui: reuse JSDialog menus for Paste
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I1e2a8772c079fea0f464a7f1cf41e9a8faf26889
2024-03-11 15:21:45 +01:00
Szymon Kłos d65663a3f1 remove-w2ui: reuse JSDialog menus for CharSpacing
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ic36aabc34dc98ca5d5a8cc1bf88df91b4b53f4d8
2024-03-11 15:21:45 +01:00
Szymon Kłos cfae74ef97 remove-w2ui: reuse JSDialog menus for InsertGraphic
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Id3b3291b517b6fbb10464148ebac4a7e6b48717a
2024-03-11 15:21:45 +01:00
Szymon Kłos 98ac4ccd22 remove-w2ui: reuse JSDialog menus for LanugageMenu
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ica44237bb054d0e1a16eed1f9f062b948497181c
2024-03-11 15:21:45 +01:00
Szymon Kłos 9bad40a2c5 remove-w2ui: reuse JSDialog menus for LineSpacing
TODO: checked state for menu entries
TODO: accessibility, shortcuts

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I6dc96a4748fd69a75af8a64ed37e5dce24bd9830
2024-03-11 15:21:45 +01:00
Szymon Kłos 73553cdd26 remove-w2ui: move menu definitions to separate file
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I478fffd6b533909016e3af89e4e08fd793f5ab48
2024-03-11 15:21:45 +01:00
Szymon Kłos 07da50acc3 remove-w2ui: use JSDialog.Dropdown in MenuButtons
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I9a5bec468a64ef8cfa9868ef3a61b9d308106c94
2024-03-11 15:21:45 +01:00
Szymon Kłos 98f52d9b40 jsdialog: close dropdown on escape key
Dropdowns are objects in the JS only so don't send
message to the server.

Dropdown is a simple list of entries (menu),
do not confuse it with popup which exists in the
core and message shoult be sent in that case.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Iffcd6cac81608841dca969e979298e33182c6595
2024-03-11 15:21:45 +01:00
Neil Guertin fdad902d08 .gitignore coolbench
Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: Iee40c108b7c4bfa15e19ba0a3eb683c1d8b66c9d
2024-03-11 10:20:48 -04:00
Miklos Vajna b1917aab1d cool#8465 clipboard: fix skipping the header of the complex case in JS
Have 3 paragraphs in Writer, insert an image in the middle with
(to-char) anchoring. Select all text, copy to trigger the complex copy
codepath. Insert the result to Wrtier, some "text/html" and a number
extra paragraphs appear before the result content in the past result.

Seems the root of the problem is that the clipboard format generated by
ChildSession::getClipboard() is 1) a mime type on its own line 2) size
3) real content; but we just skipped 1) and 2) in the past, but now this
doesn't work, presumably due to a change on the core side.

Fix the problem by just making the header check case-insensitive for
now.

Once I add a html+plain text mode here, I'll probably switch to properly
skipping the first two lines instead, since the plain text won't have a
well-known header to identify the content. No testcase, this complex
download codepath will be Firefox-only in the future, so not easy to
cover with cypress.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: Ia99e5325188e5a34b56962cf4e3e9b8287e267c0
2024-03-11 13:50:53 +00:00
Ashod Nakashian 7267e34dd8 wsd: test: extend process timeout
4 seconds proves too short in some cases
and times out occassionally. 10 seconds
seems more reasonable.

Change-Id: Icede882355a66bf383ebdd87858f1ded77825c5f
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-03-11 08:35:20 -04:00
Andras Timar b042363fe4 fix build on !ENABLE_SIMD branch
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I2cd306c7574c0a98e5b66cbef9bcab379ad6d905
2024-03-10 20:06:53 +00:00
Michael Meeks 7a944ac3cd Simd: address RLE mask as bytes instead.
Add an endianness swap for the endangered big-endian species.

With: https://github.com/CollaboraOnline/benchmark

make coolbench && ./coolbench /opt/libreoffice/benchmark/*/*.png

fastest times:

before took: 1956ms - time/rle: 39.13us
after  took: 1671ms - time/rle: 33.43us

1.17x faster.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I1873ffd618f20248ade6741cc5ad269b04d3bba2
2024-03-10 20:06:53 +00:00
Michael Meeks 6e0cde3596 Simd: another marginal win.
Coerce into an 8bit register to avoid masking - 2%.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I0d76cdde533ca6d67915e578351a68e1d22258ba
2024-03-10 20:06:53 +00:00
Michael Meeks 0149c9a3b2 Simd: avoid altering block pointer during inner loop.
For a marginal win.

Change-Id: I0cb14ea5b20fc55de813078d0c12e30c8e930146
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2024-03-10 20:06:53 +00:00
Michael Meeks 19fec4fc58 Optimize SIMD code harder with -O3.
Avoids inadvertent non-optimization having an impact.

Change-Id: Ic548769e98f00d455f67ccd32d493f02b204a70f
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2024-03-10 20:06:53 +00:00
Michael Meeks 04b74d5767 Initial RLE benchmark.
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I00a7903fe9b10066881b1637f6ae9ad59ff6607b
2024-03-10 20:06:53 +00:00
Michael Meeks 295fcc2d9c Move loadPng to Png.hpp to share it.
Also encapsulate png types more in Png.hpp

Change-Id: Ia0789405149cb00723f0da96d56eac7a30c2ef3f
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2024-03-10 20:06:53 +00:00
Ashod Nakashian c121488a67 wsd: WopiStorage cleanup
Remove MOBILEAPP directives and create
stub WopiStorage and WOPIFileInfo.

Change-Id: I57cd5a008d625ac53ef23c4bb3872381af35560c
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-03-09 12:37:19 -05:00
Ashod Nakashian dacfb65965 wsd: move WopiStorage to own home
Change-Id: I622c6c1230f7c1248c7b432b6d1b56bff4cacb9e
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-03-09 12:37:19 -05:00
Ashod Nakashian 55b3ad962a wsd: SPDX-License-Identifier
Change-Id: Ia174022aba50c8655ff758958b517b4a47615aab
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-03-09 12:37:19 -05:00
Ashod Nakashian da3175b51c wsd: take arguments by-ref where possible
Change-Id: I256619ca27c39f2618fa04ed9386d2a6f876828b
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-03-09 12:37:19 -05:00
Ashod Nakashian d57baeb906 wsd: reduce directives for unused variable supression
We use [[maybe_unused]] to reduce explicit supression
especially under compile-time directives.

Change-Id: Ic5f3f3227a80efe52097cb35520d05b9cdaacb42
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-03-09 12:37:19 -05:00
Ashod Nakashian 4a3e10e4a9 wsd: reuse CheckFileInfo in WopiProxy
Change-Id: I926b8ad6f9035dda4061e8e1d6065a39e772862a
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-03-09 12:37:19 -05:00
Ashod Nakashian 11422c5340 wsd: move WopiProxy to wopi/
Change-Id: I5ec7bfe1c5295c3d17979dc5aaa2806259c6af9d
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-03-09 12:37:19 -05:00
Neil Guertin 7e81b5ebbc Replace total pid count waits with targeted waits
Wait for doc kits or spare kit counts specifically. This removes the chance of
race conditions between waiting for doc kits to shutdown and the spare kit to
start back up.

Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: If28da4b786d3e2b429acb5840dfcdb7bb5a3f948
2024-03-09 16:36:39 +00:00
Neil Guertin f82915ebcb Move kit pid helper functions to one file
Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: If77b8ac3c7493f4d44b510ec54b68292856f89d5
2024-03-09 16:36:39 +00:00
Skyler Grey a40be5499e Add prettier
Prettier is a code formatter for javascript/typescript. It's relatively
common to see complaints about style in pull requests or inconsistent
style getting in to Collabora Online. Also, without a formatter it's
harder for editors to automatically format code in sensible and
consistent ways

Prettier doesn't have many options, but those which it does have I have
set to the closest values to current behavior (e.g. single quotes) in
order to minimize unnecessary changes

This commit doesn't format all existing files. Doing so would cause
blames, cherry-picks and diffs to become much less useful. Instead, we
use browser/.beforeprettier to list all files that would need to be
changed, and this file is ignored. You are encouraged but not required
to set your editor's equivalent of 'editor.formatOnSaveMode' to only
format changed lines

This commit also does format of docstatefunctions.js, previously it did
not in to check that an incorrectly-formatted file could fail CI. Now it
does to make sure that formatting fixes the issue. This file was chosen
because it is very new and very small.

Change-Id: Ie6067f34aa658f887e149a08aebd0180b2354005
Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
2024-03-09 15:53:21 +01:00
Szymon Kłos fae5644eaa cypress: fix annotation autosave tests
this fixes regression from commit 34bf81f146
KeyboardShortcuts: define which app supports shortcut

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I90e46de486021254dee96605b9d5d39ca04b5a29
2024-03-08 19:25:52 +01:00
Szymon Kłos 7de8d56429 cypress: make hide sidebar button click reliable
Timed out retrying after 10050ms: `cy.click()` failed because this element:     `<td id="tb_editbar_item_sidebar" style="" class="" valign="middle" title="Sidebar">...</td>`

is being covered by another element:

`<div class="w2ui-scroll-right" onmousedown="event.preventDefault()" onclick="var el=w2ui['editbar']; if (el) el.scroll('right');" style="display: block;"></div>`

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ifa8aa4e9229c3c909b7f118c008904a78d0cd38b
2024-03-08 19:25:52 +01:00
Pranam Lashkari 14ff135f18 annotation: comment added with tracking must deleted without trace
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I4447c5e0be4c86a6c579b91de868a6736704fbfd
2024-03-08 20:42:50 +05:30
Andras Timar 224343cde0 Translated using Weblate (German)
Currently translated at 99.5% (476 of 478 strings)

Translated using Weblate (German)

Currently translated at 99.5% (476 of 478 strings)

Co-authored-by: Andras Timar <andras.timar@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/de/
Translation: Collabora Online/Help
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I8ec860efbb9d8e198e1bc453108fa53e47c5f28f
2024-03-08 16:04:04 +01:00
Leif-Jöran Olsson 664ce6be44 Translated using Weblate (Swedish)
Currently translated at 100.0% (582 of 582 strings)

Co-authored-by: Leif-Jöran Olsson <info@friprogramvarusyndikatet.se>
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: Ia3faf883e1ee90b581c79ada2a4f2e67a97f7487
2024-03-08 15:23:52 +01:00
Matthaiks a72f97dbc7 Translated using Weblate (Polish)
Currently translated at 100.0% (582 of 582 strings)

Co-authored-by: Matthaiks <kitynska@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pl/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I36857d95d0f0dce1ab6e3d45846df8c80d5a39ef
2024-03-08 15:23:52 +01:00
Andras Timar 6bdd95479b Translated using Weblate (Hungarian)
Currently translated at 100.0% (582 of 582 strings)

Co-authored-by: Andras Timar <andras.timar@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/hu/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I877b279c11f156db04750aeb3d5d5238e1713d66
2024-03-08 15:23:52 +01:00
Gökay Şatır a1d0745de5 Add sample URLs for readonly mode to console output.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I2e10a25850a64bb666d0473d8881878ff41ad6b1
2024-03-08 17:21:51 +03:00
Miklos Vajna 7f9de46688 cool#8465 clipboard: improve handling of plain text copy, simple case
Currently the current selection is always requested as HTML by the
browser, and then we ask the browser to convert it to plain text.

The problem is that e.g. Writer can produce much better plain text from
its model, compared to the plain text by the browser, e.g. bullet
characters for bullet points.

Fix the problem by:

- CanvasTileLayer.js, _onTextSelectionMsg(): requesting both HTML and
  plain text. Use ',' as a separator, as that's already established,
  e.g. the HTTP Accept header does that already

- Switching the textselectioncontent protocol message from just HTML to
  JSON that contains both HTML and plain text. This is produced in
  ChildSession::getTextSelection() and parsed in CanvasTileLayer.js,
  _onMessage()

- Clipboard.js, setTextSelectionHTML(): allowing setting both HTML and
  plain text.

- ClientSession::postProcessCopyPayload(): knowing if the content to be
  processed is HTML-in-JSON or just HTML, do additional escaping in the
  JSON / textselectioncontent case, but leave the other clipboardcontent
  case unchanged.

So far this only handles the simple case, the behavior for complex
selections are left unchanged for now. The payload is also unchanged
when a single format is requested, as many tests depend on test.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: I2fe1378a8d50b7901ac9e808eb78858cd8ff8575
2024-03-08 13:54:10 +00:00
Pranam Lashkari 971b235514 annotation: prevent page up/down button from messing the view
problem:
when pressed page up/down button inside the annotation textarea,
entire view is forcefully pushed upwards to put the cursor at the top of view.
This is a chrome bug reported at: https://issues.chromium.org/issues/41417806

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I30048374e7b8330cd8c865010e3b4237d355391e
2024-03-08 14:30:44 +01:00
Michael Meeks f00486ac52 Setup thread-counter to monitor live threads in a Kit process.
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I77ea935ed2c731ecf5361413492ed5768f58c57a
2024-03-07 09:36:00 +00:00
Michael Meeks a702d29244 Re-factor thread counting into a ThreadCounter class.
This can rewinddir on a persistently open file descriptor
pointed at /proc/self/task opened before dropping privileges.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: Ie5a5948300c46c8c6a65f7f7eda3a60a9d5cf9c3
2024-03-07 09:36:00 +00:00
Andras Timar 0daaab3b8a Update Helm Chart with new release 23.05.9.3
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I3a9d5273ee0bfbe0188f685cd66b159423498bc3
2024-03-07 13:37:08 +05:30
Szymon Kłos a0a169920c PostMessage test page: add export with notify set
This allows to test responses.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Idfee8632ac0aeb8a105555e7c9d527288568091e
2024-03-07 06:58:17 +01:00
Szymon Kłos 284a2cfd94 Notify WOPI host about status after export
It requires to add `Notify: true` in the Action_Export
postmessage. Result will be sent with `Action_Save_Resp`

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Iaeee2e22bf1a2ae934eb657116c1878cb6ed50f6
2024-03-07 06:58:17 +01:00
Szymon Kłos f1460e92cf Make exportas error more informative for user
Replace "The server encountered a xxx error while parsing
the yyy command." with more informative "Document cannot
be exported. Please try again." on export issues.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I2683720d043713af95ccc61d46c3da09e6f5092b
2024-03-07 06:58:17 +01:00
Michael Meeks f406a8c901 ios: blind project file edit to include KitWebSocket.cpp.
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: Id5f6287b20ad35a6505dfeace6a9cdcc9e551bc7
2024-03-06 20:56:55 -05:00
Michael Meeks 3c19d92833 Delta -> unique_ptr to break include problems on Mac.
Also rename _pngPool to _deltaPool.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I35fb7db4c5c62e2f05a69ac6d6bd742f9ae78ca8
2024-03-06 20:56:55 -05:00
Michael Meeks 0b91bacdc8 killpoco: reduce scope and number of various includes.
Change-Id: Ic3eb409fbb11cc665f0f3a55bb7a4e59cbd28f8b
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2024-03-06 20:56:55 -05:00
Michael Meeks 5ed9ade9da Remove unhelpfully named alias for sendTextFrame.
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I63857061c48eca14ada9ed9e0b7a2afafae87fc7
2024-03-06 20:56:55 -05:00
Michael Meeks c117d87bb4 nearly pure re-factor: split out code into its own modules.
StateRecorder.hpp split from ChildSession.cpp
KitWebSocketHandler.[ch]pp split from Kit.cpp.
ThreadPool.hpp split from RenderTiles.hpp

Expose headers for KitSocketPoll and Document
at the same time.

Not clear we need the DocumentManagerInterface anymore.

Conditionally compile out Document::createSession for unittest
dependency breaking, and avoid Rlimit::handleSetrlimitCommand
likewise.

Make makePropertyValue a private method of Kit.cpp.

clang-format new files.

Change-Id: I47a1d6afe20165f156b477a931b94c916cff4b9d
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2024-03-06 20:56:55 -05:00
Andras Timar e59349f1c3 CodeQL C++: use core assets of version 24.04
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I92b79a3ef4a05864245e90a487e5f86f67092df9
2024-03-06 20:09:07 +01:00
Pranam Lashkari 5e41d722d2 annotation: fixed incorrect class name use
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I8d7060c6a37781a61add2585d69f1153a60724ce
2024-03-06 22:20:30 +05:30
Pranam Lashkari 5b177f49a0 annotation: tracked deleted comment should't be interacted
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I1b1e6f3f65b49b6ebacfbabcfb6aecfee46dae4d
2024-03-06 22:20:30 +05:30
Michael Meeks 1a0fc1bf43 Fix JS lint warnings during make check.
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: If1444e25d86268580ac9a92f8541ddf344c062cf
2024-03-06 16:36:51 +00:00
Andras Timar 2c54c32e78 Update l10n files for Weblate
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I5010f1fb57d1121d8402b73d764f2a4f1b9a6750
2024-03-06 16:30:03 +01:00
Neil Guertin 1dbed001b6 Fix click in impress annotation tests
There are now two .avatar-img elements after recent user list changes

Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: Ia229422b4dc3e90ede240e36927b4615091cb97d
2024-03-06 15:08:29 +00:00
Skyler Grey c19b6f9d2d jsdialogs: allow limited dragging offscreen
You should be able to drag part of a JSDialog offscreen, so long as you
are also dragging another part of them onscreen. This allows you to
access the whole jsdialog even if you have a small device, which
otherwise would not be possible.

Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
Change-Id: I243124bfdc1afbf8e7da84f5932493540beb12b4
2024-03-06 14:54:46 +00:00
Skyler Grey bf32456460 Improve screen-edge jsdialog drag ergonomics
When trying to drag a jsdialog offscreen, we previously froze the
dialog. This was frustrating if you dragged a jsdialog to the edge of
the screen, because you then couldn't continue to drag it at all without
moving it away from the edge of the screen, even if the direction you
tried to drag it would not move it offscreen.

An example is if I dragged a jsdialog to the right edge of the screen,
it would be harder to drag it up as it would "stick" to the edge. I
would expect the upwards component of the movement to be honored, even
if the rightwards component could not be.

Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
Change-Id: I865d4ab4833016228c63bab434eb0c6281fed03c
2024-03-06 14:54:46 +00:00
Gökay Şatır 9e2aa171c4 Allow some of the interactions in readonly mode.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I57c697e3493a92e9b77adbb2a389417b6d5ce5bc
2024-03-06 14:03:02 +01:00
Gökay Şatır 8d1d34d48f Add docstateFunctions.
Simplify readonly document checks.

Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I8884ba8cc3fec56817d8e3e02c775a9c891dfba0
2024-03-06 14:03:02 +01:00
Gökay Şatır bf7ce2b086 Allow events through core side on readonlymode.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I4ff02b96f0019aa794834c824de0d1a323a00c7c
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
2024-03-06 14:03:02 +01:00
Gökay Şatır 1354d23a2f Revert "Changes for handling readonly mode click events:"
This reverts commit 924f13f106.

Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
2024-03-06 14:03:02 +01:00
Gökay Şatır f05e06b26c Revert "Take the socket messge change back when in readonly mode."
This reverts commit 10fc559c63.

Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
2024-03-06 14:03:02 +01:00
Gökay Şatır 70da09059d Revert "Fix readonly click event."
This reverts commit ad76f8fece.

Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
2024-03-06 14:03:02 +01:00
Gökay Şatır 4384cf5225 Revert "Enable readonlyhyperlinkfo functionality for Calc."
This reverts commit be29c99606.

Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
2024-03-06 14:03:02 +01:00
Gökay Şatır 5a9cc2a529 Revert "Enable readonly click for all document types."
This reverts commit 25db900be2.

Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
2024-03-06 14:03:02 +01:00
Gökay Şatır cd24db4e98 Revert "Do copy the hyperlink location in readonly mode."
This reverts commit 9e47d6a830.

Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
2024-03-06 14:03:02 +01:00
Neil Guertin 8717fa6d90 Fix for unit-httpws failure
Fix race condition in testSaveOnDisconnect by waiting for kit process to
stop instead of just counting total kit processes

Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: I6bda6b114070123a1366bc04eac1873f19928ac0
2024-03-06 09:10:32 +00:00
Szymon Kłos 17015c1109 lok_allow: remove also port
Noticed in some k8s deployments where alias groups were
defined with port. For lok_allow we need only host name.
Avoid adding empty hosts.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ic9cd574f9b6faa3c382229a853883a128e9b0620
2024-03-06 08:47:28 +00:00
Darshan-upadhyay1110 117453c71b Add freeze-panes options to column/row headers
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: Ibdda73599ca0185a7615971e202dbc1f30ed5da3
2024-03-06 09:22:41 +01:00
Darshan-upadhyay1110 dbc481cc02 Move freeze options to VIEW tab in compact mode
- move freeze options from layput tab to view tab
- options should be consistent for both compact and tabed view
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: I9baed9ca50ddfb963dfd555e9fec42b594321902
2024-03-06 09:22:41 +01:00
Pranam Lashkari 993af840c0 annotation: fixed resolved comments are not hidden completly
problem:
when we turn off the option to show the resolved comments,
author image was not hidden and stuck on screen which can't be interacted or scrolled

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: Id0fb30c787b6e8c288df1142b9f882b7633f3dc9
2024-03-06 08:10:14 +01:00
Andras Timar f9b1f96563 Fix processing of URL parameters (in proxy.php case)
The URLSearchParams() function was confused in the proxy.php
case, because the global.location.search contained two '?' marks,
like ?req=/browser/dist/cool.html?WOPISrc=...&lang=..&etc...
In the normal case the string started with ?WOPISrc=

Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I566935656be6622d698ea2ba3c949455877526f6
2024-03-06 16:01:54 +10:30
Pranam Lashkari 9869526047 UI:annotation: fixed selection indication for track change buttons
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I0e4f40d1f2ad50c323e9780e05451d7fe9e6e4c9
2024-03-05 20:32:45 +01:00
Ashod Nakashian 7b0d87e47c wsd: move StorageConnectionManager into wopi
Change-Id: I1d606f1ccf0c9bc95dfc8b0fa88d082f2c123127
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-03-05 07:10:34 -05:00
Ashod Nakashian af29ad28b0 wsd: log the previous upload attempt result
Change-Id: I11a338024e18b72983c205f6afe02883b5d69398
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-03-05 07:10:34 -05:00
Ashod Nakashian ed753e16d2 wsd: use new CheckFileInfo class in RequestVettingStation
Change-Id: Iafcf965c98027fa2b5ffe4db5bd1fd5820c47f23
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-03-05 07:10:34 -05:00
Ashod Nakashian 317397eaac wsd: new CheckFileInfo class to do async requests
We also create a new sub-directory for WOPI
code, which helps better organize things and
isolate it from Mobile App builds, which have
no need for it.

Change-Id: Id6dbbd450f35c9c0eb8460de12330cff2e3e5576
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-03-05 07:10:34 -05:00
Ashod Nakashian cd878f3c6b wsd: expose http::Session's socket FD
For logging and informational purposes.

Change-Id: I200a54604c40351516f7947cb2bca8cf01a89c81
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-03-05 07:10:34 -05:00
Skyler Grey c639ba2e9e Add .editorconfig
.editorconfig is "a file format for defining coding styles" which is
understood by various editors. It can allow for, for example, vscode to
automatically configure whether to use tabs or spaces.

I'm adding it both because my editor seems to incorrectly assume the
Javascript in the project should use spaces, as well as to be a precursor
for adding prettier in a later commit. I've split it off from prettier as
it shouldn't have an effect on the build so should be able to be merged
before CI is able to run on the prettier build.

Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
Change-Id: Id0b1da1388a1fb2706d64623a6d8f35f9a1c605f
2024-03-05 11:29:26 +00:00
Henry Castro c30452befa browser: fix regression print range
Do not send the command ".uno:DeletePrintArea" to server side,
it disables printing range feature.

Change-Id: I8bb1ec9ab01793e6bf3b74b8cb121a5fbad3b8e2
Signed-off-by: Henry Castro <hcastro@collabora.com>
2024-03-05 11:23:01 +00:00
Ashod Nakashian 25784d8677 wsd: test: use LOK_ASSERT_STATE for more informative report
Change-Id: Ibd8589e3d6a2ca226578258c3cc1b9d85cad2d2c
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-03-05 12:21:50 +01:00
Ashod Nakashian 1896baa539 wsd: test: use STATE_ENUM in tests
Change-Id: Ie37bfdb7aba986dc17c1ebaac80d9b1b662a5df6
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-03-05 12:21:50 +01:00
Ashod Nakashian 6725005db9 wsd: test: use LOG_TST to easily identify logs from tests
Change-Id: I1a07cc59886311274335612f106c99d8a5100d53
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-03-05 12:21:50 +01:00
Ashod Nakashian efa67ea216 wsd: test: refactor WopiTestServer to override uploading
Change-Id: Ie8fbad9825af874cb13a732c87337cdff5c27c1d
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-03-05 12:21:50 +01:00
Miklos Vajna ec0e81a7b4 cool#8023 browser: try to use the new Chrome clipboard in non-experimental mode
Now that
<https://sdk.collaboraonline.com/docs/advanced_integration.html#clipboard-handling>
is figured out, this should be less risky.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: I549adad6386d328d7dc5f7e4eeee16446665df82
2024-03-05 08:58:49 +00:00
Pranam Lashkari 33470da3f6 css: annotation: removed unused mobile wizard css classes
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: Ie20202f48fedb0e062e00f2b4d92eaba425c854e
2024-03-05 09:11:25 +01:00
Szymon Kłos 5146e40566 KeyboardShortcuts: update cypress
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I82ff8e10355c31747dc856f94e3693d69d4a2dc6
2024-03-04 22:42:19 +01:00
Pedro Pinto Silva ab9dacd26f Calc: spreadsheet protected status: use better icon
Before this commit, the icon that is placed in the protected spreadsheet's tab
was too big and bulky. Opt for a smaller and more minimal version of
that so it balances better with the accompanying spreadsheet's name.

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I9ab688262ddaed21a067b904f51569ee87355298
2024-03-04 16:08:56 +01:00
Pedro Pinto Silva 1510192b42 Calc: spreadsheet protected status: fix misalignment regression
With cbf452b03d all non protected
spreadsheet tabs have their name (tab label) aligned to the top.
  - Fix it but making sure we align to the middle on both coordinates

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I24cb61d691f2e9e2b4399a5201dc387d32f45eb2
2024-03-04 16:08:56 +01:00
ccz 023a8c68ab Translated using Weblate (Chinese (Simplified))
Currently translated at 93.9% (541 of 576 strings)

Co-authored-by: ccz <mmlsc@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: If4731566dfc5c4d851d81ba9f0d9c0ade7660520
2024-03-04 14:45:36 +01:00
Ayhan Yalçınsoy 0d741daf11 Translated using Weblate (Turkish)
Currently translated at 100.0% (478 of 478 strings)

Translated using Weblate (Turkish)

Currently translated at 100.0% (576 of 576 strings)

Translated using Weblate (Turkish)

Currently translated at 98.3% (470 of 478 strings)

Translated using Weblate (Turkish)

Currently translated at 99.8% (575 of 576 strings)

Co-authored-by: Ayhan Yalçınsoy <ayhanyalcinsoy@pisilinux.org>
Co-authored-by: PhD. Ayhan YALÇINSOY <ayhanyalcinsoy@pisilinux.org>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/tr/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/tr/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I5d3bcfcef9e253af9c8e99f15e7f561b25b94c96
2024-03-04 14:45:36 +01:00
Ihor Hordiichuk 8b00984cd4 Translated using Weblate (Ukrainian)
Currently translated at 100.0% (576 of 576 strings)

Co-authored-by: Ihor Hordiichuk <igor_ck@outlook.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/uk/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I2d444f37ce6d9d50bcbb1cea7c80edbe87188b17
2024-03-04 14:45:36 +01:00
Milo Ivir 888deba718 Translated using Weblate (Croatian)
Currently translated at 100.0% (478 of 478 strings)

Translated using Weblate (Croatian)

Currently translated at 100.0% (576 of 576 strings)

Co-authored-by: Milo Ivir <mail@milotype.de>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/hr/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/hr/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I450b9fda9a00d8603ab0adddef604df571d4b733
2024-03-04 14:45:36 +01:00
Besnik Bleta 9ee08e7660 Translated using Weblate (Albanian)
Currently translated at 97.7% (563 of 576 strings)

Co-authored-by: Besnik Bleta <besnik@programeshqip.org>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/sq/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I1202ecc23b8e1d6965d63fee20c33dbc36233336
2024-03-04 14:45:36 +01:00
Martin Srebotnjak e3369f5018 Translated using Weblate (Slovenian)
Currently translated at 100.0% (478 of 478 strings)

Translated using Weblate (Slovenian)

Currently translated at 100.0% (576 of 576 strings)

Co-authored-by: Martin Srebotnjak <miles@filmsi.net>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/sl/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/sl/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I7ed0ab34193822113d31a929f6c824195bf5c717
2024-03-04 14:45:36 +01:00
Andras Timar 18fb549d72 help search input attributes
- type="search" for a11y
- spellcheck=false" to avoid red underlines
- localizable placeholder is added programmatically from 34bf81f146/browser/src/control/Toolbar.js (L552)

Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I695990a25ccb00821a16738a9388a51001199112
2024-03-04 12:09:19 +01:00
Szymon Kłos 34bf81f146 KeyboardShortcuts: define which app supports shortcut
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I5c8735845e54ac30f6af61ff66d8897ead4fe9be
2024-03-04 10:48:39 +01:00
Pranam Lashkari bfe0c5e7de annotation: remove obsolete mobile wizard popup code
it was introduced in 13bc532
and it was removed from use in 2f77b3a

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: Iec401a9505491fe69196cdb1e7192fa499d3d38f
2024-03-04 07:41:16 +01:00
Ashod Nakashian 2e8561195c wsd: move deprecated logic under legacy_server config
We no longer send LOOL-WOPI headers, unless
the configuration specifically flags for
legacy servers. But we always send COOL-WOPI
even to legacy servers, to help them upgrade
seamlessly.

Change-Id: Ifc919ed8f6665cd8f846117ef4e8b7ef09fbd563
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-03-02 04:02:26 -05:00
Pranam Lashkari 9cf64b0726 canvas: svg: show textbox move animation while edit
problem:
if a textbox/shape is being edited and try to move it while still in editing,
it was not animated, so user gets illusion that shape was not moved,
but in fact it moved and directly appears at the last moved position without animation

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I830e368e162b3b38edea0d9240cf82800fa8080a
2024-03-01 15:50:33 +00:00
Pranam Lashkari e49ff79cf1 annotation: avoid resetting comment show state if being edited
problem:
when try to insert comment(inside text with existing comment) and comment field is empty,
click on some other comment(which is on same text), it will cause an empty comment insertion in DOM
which can not be removed until doc reload.
This subsequently prevented new comment insertion.

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I29294dcfbbaddddaa768e08b47b855b3e8c7f454
2024-03-01 18:25:51 +05:30
Darshan-upadhyay1110 ad40933dfa Localization of placeholder string in "Keyboard" and "help" dialog
- Localization of "search" placeholder in
    - help dialog &
    - Keyboard shortcut dialog
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: Idcb622dccb9e62ae02fb7eae089c7a4bf7f219a5
2024-03-01 09:26:00 +01:00
Szymon Kłos 3d56af0ab5 Add KeyboardShortcuts and disable multi-sheet selection
This will be a class for storing keyboard shortcuts in
a unified way. We can easily define shortcuts for different
languages so we don't have to write long if-statements
which can cause problems if done not very carefully.

Added tests protecting from regressions.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I4dfa2d757eab4ecc1f21279e68d1ee97ae261dc5
2024-03-01 08:59:36 +01:00
Szymon Kłos 3db7c8e261 Don't switch to the same sheet again
This prevent us from requesting sheet geometry we
already have + we block a bug with jumping view.

Steps to reproduce:
1. open spreadsheet with 2 tabs
2. switch to tab 2
3. click again on tab 2
4. scroll up with mouse wheel
Result: after some time we jumped back (every time we scrolled)

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ib0b0a5b7149bd2b891902a5af379eba75d971110
2024-03-01 08:59:36 +01:00
Szymon Kłos 703dae0ea2 Don't save position data when not switching sheets
This caused problems with view jumping when user
clicked on the tab he already was on.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I7b6a2f833374cdeb1bc3d2d6b41929bec622b370
2024-03-01 08:59:36 +01:00
Szymon Kłos 22a452bb48 cypress: test for jumps when switching tabs in calc
Protect us from regressions.

We had issues with jumping view in calc, it was related to
switching tabs (not all was visible in the UI).

One case was repeated selection of the same tab.
Second one was using a keyboard shortcut to select multiple
sheets (ctrl + shift + page up/down).

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Icda723ee51b1a4aa8876208d52b4739ca380bb78
2024-03-01 08:59:36 +01:00
Marco Cecchetti ab80b9b0a2 calc: tab drag&drop does not work properly
This is a regression from 74a4484e "calc: on tab switching document
view can be restored to a wrong position"

Moreover the passed index was wrong when tab is dragged on the right
wrt to current tab position. Now the correct zero based index is
always computed.

Signed-off-by: Marco Cecchetti <marco.cecchetti@collabora.com>
Change-Id: I7395773da5a846ce61d8508bbd1d6e2e833d4511
2024-03-01 08:27:01 +01:00
Michael Meeks 7b9e11a382 coolmap: annotate hex dumps with memory map names for pointers.
Also dump a list of shared libraries by reference count in
unshared pages.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: Iecc281b27059c2f051b07fea29ab27be7d5703c0
2024-02-29 15:26:34 +00:00
Michael Meeks ca2c174a7d Notify crash-dumping of an inconsistent jail.
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: Ib3c81ad15a1386664c63818ec658f703d5359eae
2024-02-29 15:26:34 +00:00
Szymon Kłos ef9b536c89 Cypress Test: use widget which depends on core to test properly
Previously used combobox dropdown is online-only so it
will not block editing.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: If6bc092e8bc32ef78c63e8e7cf76922682bc0f19
2024-02-29 16:23:39 +01:00
Darshan-upadhyay1110 df465f3782 Cypress Test: Verify cell is editable after idle mode ends
- it should cover cases like all pop dialogs should be closed for idle mode
- cell should be editable after we re-activate the screen

Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: I34c681ebffdc0107f8787ddc0ad16e5fa35c2f0c
2024-02-29 16:23:39 +01:00
Darshan-upadhyay1110 d66ff75a5d Close all dialogs on document idle
- All dialogs should be closed if document become idle
- There are 2 cases for which all dialogs are being closed before socket closed or before screen dim
    1. document idle : we disconnect from server
    2. view idle: only screen dim, server is still connected

To test:
    - add auto filter in calc sheet
    - open autofilter popup
    - wait for document to become idle

Note: change value of `idle_timeout_secs` in coolwsd.xml to test
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: If76f03d830b8b3744fd2b54d131c5fa85a024c5c
2024-02-29 16:23:39 +01:00
Gülşah Köse 15d0bf40c4 Handle specific tooltip message for function usage tooltip
Using same callback caused a regression about showing tooltip while
reviewing a change in writer. So we have to use a special message for
function usage tooltip.

Signed-off-by: Gülşah Köse <gulsah.kose@collabora.com>
Change-Id: I6f769a43af6a01ed8e13abfd9c35a57ccd47c1ac
2024-02-29 16:23:26 +01:00
Neil Guertin 0700a5a314 Fix desktop/writer/statusbar_spec.js
Close confirm overwrite dialog after pressing insert

Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: I4dacb731c70b1bfd9bcbc2134f6e3cd7e242d468
2024-02-29 07:19:04 -05:00
Jaume Pujantell dfe1e1b57b keep focus on input field on document load
If the document reloads while the user is on an input field, do not
take the focus away to the document.

Signed-off-by: Jaume Pujantell <jaume.pujantell@collabora.com>
Change-Id: If5e97a666ddef6e7c28a30c8bd8ef8bca5f5b336
2024-02-29 10:12:14 +01:00
Hubert Figuière 2a5a4dd476 impress: Make sure that dropping a slide between slides reorder correctly.
We need to get the right node in the control

See https://github.com/CollaboraOnline/online/issues/6941

Signed-off-by: Hubert Figuière <hub@collabora.com>
Change-Id: Ib37c6411667fcbf4714e6f6448292c84adc78f0e
2024-02-28 11:54:22 -05:00
Skyler Grey 2fc5a9c705 Add chip for "follow the editor"
Previously the improvements to following were limited to only following
different users. We have another way to follow people, though, the
button labelled "always follow the editor".

We can repurpose the existing following chip to support this option by
changing the top text to say you are following the editor rather than
naming a specific user.

Additionally, to avoid inconsistencies with the "following" label on
users it's better to check which user we are following when rendering
the user list rather than keeping track via a "following" boolean on
each user. This boolean was getting out of sync when using the following
the editor feature.

Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
Change-Id: I2b76c1b1e4724cc2aaddbf8fd10b6c4e9155a169
2024-02-28 16:07:22 +01:00
Skyler Grey e11c60a1c5 Add an alt text for avatar images
Previously, avatars did not have any alt text. This is bad for, for
example, screen readers. By using a username as the alt text, we can
improve accessibility

Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
Change-Id: Ie52b09d57db4b8a7c8cf88c89c277f891f422bcc
2024-02-28 16:07:22 +01:00
Skyler Grey 81497efd55 Replace innerHTML with innerText
Previously we were using innerHTML to insert user-generated content
(usernames) into the document. While we were sanitizing these correctly,
it was hard to tell that we were and required a level of knowledge about
what was kept where (e.g. were we getting the usernames from the
sanitized cache or from an unsanitized event?)

By replacing innerHTML with innerText, this commit removes the risk of
someone making a mistake like using the wrong variable and introducing
XSS. It also makes the code more obviously secure

Unfortunately, w2overlay doesn't support using any property that is not
"html" to provide a message, so we can't directly use innerText. For now
I'll move the sanitization process directly above where we set the
message to make it obvious, but for this reason (and typescript) we
should consider replacing w2overlay in the near future

Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
Change-Id: If935dc2d765dd5e345ce760cad88386ea98d97b4
2024-02-28 16:07:22 +01:00
Skyler Grey 8d2c078604 Cache user avatar elements in commonly-used areas
Header avatars and user list avatars are rerendered whenever a new user
joins, which previously caused a flash as we rerendered the image
element (and refetched it from our cache, etc.).

By reusing the same avatar elements, so long as we can be sure to never
add them to the DOM multiple times (as the spec then requires the
browser remove it from the previous place, see
https://developer.mozilla.org/en-US/docs/Web/API/Node/appendChild), we
can prevent the browser from recreating the img and reloading the
avatar image.

In my testing, applying this to both the avatar previews and the user
popup list improved my experience with a high amount of users under
system load a fair amount. This probably makes little difference if
your system is able to quickly recreate/load the user elements, say if
you have a small number of users in your document, the profile images
should be cached by the browser anyway so unless you manually disable
cache this probably doesn't optimize away any downloads of images from
the server

Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
Change-Id: I0c28f94d815184c7a216ee222a95d76aa65d2592
2024-02-28 16:07:22 +01:00
Skyler Grey ade2fa7bd2 Improve styling for the new userlist and following
Previously the userlist and following worked, but were out-of-place
with the rest of the application. This was particularly noticable on
hover where I used a changing border color and text decoration rather
than the usual background change. Additionally, as I was using border
colors to indicate hover rather than a background change this caused
contrast issues on the light theme.

Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
Change-Id: I79373227d6efd397691038ab290a85b2913e0fad
2024-02-28 16:07:22 +01:00
Skyler Grey 2f4abdd2ae Fix "following" disappearing on user list updates
Previously, following was done by adding a "selected user" class in the
list. This is great, except we are now recreating users at several
points, which loses any classes that we don't know about. This commit
adds a new "following" property to user and when users are created uses
it to inform us if the class should be added

Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
Change-Id: Ia8e03ad75376a39e36911d3a24cb293d2cc15aa8
2024-02-28 16:07:22 +01:00
Skyler Grey fd2896d845 Allow unfollowing by clicking the following chip
This makes it much easier to unfollow users, as you don't have to open
the menu to do so anymore. To make sure you know about this feature, I
opted to show "Click to stop following" text below the "Following" text
on the chip, but this is not ideal as it forces us to make the text
rather small. More testing is needed, particularly with longer names, to
make sure this is alright.

Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
Change-Id: I98123dbe2d81da9aea899b0e33d2798f10f475dd
2024-02-28 16:07:22 +01:00
Skyler Grey e4b8cbe014 Add a chip to show who you are following
The chip displays beside the user list, and has information about who
you are following. It displays in the color of the user you're
following, and connects to the already displayed user avatar.

This chip is the first indicator we have that you are following someone
when you are not in the user list popup. This is important, because it
is easy to forget that you're following someone and be surprised when
you are jumped across the document to wherever they are.

An alternative that was considered was adding a border around the view
in a similar way to Figma's following border, and adding a status box
to the document view in a similar way to Visual Studio Code Live Share's
following notification, however it was decided that these could be
detrimental to people who were zoomed in a lot, and particularly Figma's
border could be confused for a document border.

Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
Change-Id: I112fa572bdae8a7aa43493e0237c7dfae8570294
2024-02-28 16:07:22 +01:00
Skyler Grey ab7a082110 Make the leftmost stacked avatar display on top
This will allow us to more clearly indicate stuff in the space to the
left of the avatars, as we'll be able to reference the avatar which is
on the top of the stack.

An example would be a "you are following" chip, which I intend to
implement next, as that could join with the user on the top (who is the
user you are following)

Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
Change-Id: I63225acb8bd37420ee4fe69bf1d675a18a0a0507
2024-02-28 16:07:22 +01:00
Skyler Grey aa1054a4f1 Allow unfollowing by clicking the followed user
Previously this would do nothing (as it tried to follow the user
again). This was bad, as it was a struggle to figure out how to
unfollow someone. Now clicking on the followed user again unfollows
them, which mirrors the functionality in other apps such as Figma.

Happily, as the previous action appeared as a no-op to the user, this
change shouldn't break anyone's existing workflows for Collabora Online

Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
Change-Id: Idf4a8b0e94d8720f24c3c4d042a3421f67d22dba
2024-02-28 16:07:22 +01:00
Skyler Grey cf080ab944 Reorder users so important users are higher
This commit makes 3 changes to the user list order

Moving the followed user to the top of the list, above you:
- Moving the followed user to the top continues my effort to move the
  most important information to the top of the user list. It's crucial
  to see who you're following, and I have a planned feature to allow you
  to click to unfollow them too. Moving the users to the top of the list
  will make this planned feature easier to reach
- Additionally, this will let us use the left side of the avatar list to
  add extra context to the followed user, such as a chip which says
  their name, while making it clear which user we're talking about.

Moving readonly users to the bottom of the list (excepting you if you
are readonly):
- This commit also moves readonly users to the bottom of the user list,
  as they are generally not as important as regular, editing users.

Flipping all other users so users who joined more recently are at the
top:
- This gives a bit more feedback when a user joins, as in addition to
  the popup in the top left corner of the screen you are also able to
  see their avatar in the list

Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
Change-Id: Ibd3f983590726d26418e40dbc6e28695ac2607e6
2024-02-28 16:07:22 +01:00
Skyler Grey 0766c12489 Reorder the user list so you are top
The user list is currently haphazardly ordered, which makes it hard to
find yourself in the list. This is especially important as unfollowing
someone currently requires you to press on yourself (although I'm
making changes so this will no longer be the case).

This commit also lays part of the groundwork for sorting the user you
are following at the top of the list, and readonly users at the bottom.

Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
Change-Id: I849162dec601959a60ef57ec2e8bc1235f74782d
2024-02-28 16:07:22 +01:00
Skyler Grey 61c6cbc249 Use a map for users and rerender all on changes
This stops us from iterating through dom elements to modify them
directly, which should make it easier for us to reorder them or change
their state at relevant points. Additionally, using a Map rather than a
list will make it easier to address users by their view ID which will
help modify specific users (e.g. for following status)

Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
Change-Id: I2e6ca67bfde2519e13a66a25e10d50bb02a88700
2024-02-28 16:07:22 +01:00
Skyler Grey 97a86549a7 Convert Control.UserList.js to typescript
I'm working on a set of patches to improve the userlist/following UI in
Collabora Online. Using typescript will allow me to be more certain
about the code I'm writing and make my code easier for other people to
understand.

Additionally, as I'm about to make significant changes to this file,
updating it to typescript now won't even damage the ability to blame too
much!

Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
Change-Id: Iccf64a01a465d895cbc1c24ad107f85665b5fbf3
2024-02-28 16:07:22 +01:00
Skyler Grey 0384682492 Add @types/jquery
Previously we were declaring $ as "any" but a type package for jquery
exists. Using it will provide us type definitions for jquery throughout
the project. This means we need to remove our previous definitions and
install the package

Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
Change-Id: Id54b3c6c9a4ab86897296fe9ba26570db8697207
2024-02-28 16:07:22 +01:00
Noel Grandin 8a8e55c16e replace Poco in StreamSocket::send
Signed-off-by: Noel Grandin <noel.grandin@collabora.co.uk>
Change-Id: I987cc515e27fbaf4e778a5ac6f005a43ff88be71
2024-02-27 13:17:12 +00:00
Neil Guertin dc72922f1e Fix failing impress text positioning tests
Exact positions have changed between core 23.05 and core 24.04.
Allowed for a range because failures report different positions
on different machines.

Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: Iec8024a4e2c8d310748c3b9f52dcb9b325d1529b
2024-02-27 13:39:06 +01:00
Neil Guertin 6cd22f1f40 Update impress tests
Move selection from beforeAll to each testpoint
Remove clickOnIdle

Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: I1ef87e7df34319c4a1307695ffaa0011b6dbb4cd
2024-02-27 13:39:06 +01:00
Neil Guertin 5162b7b050 Simplify text element selection in impress tests
Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: Ie24dc99f9cfba7b2b563dd168154087c1c7f8b6c
2024-02-27 13:39:06 +01:00
Miklos Vajna 27e2c2d574 cool#8342 browser, clipboard: new from-this-doc button in the paste special dialog
Which is probably the majority use-case and shouldn't need access to the
system clipboard, so works even without keyboard and in Firefox.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: Id2fc79950d40c76223b052e01267b492f732a9ad
2024-02-27 10:47:08 +00:00
Miklos Vajna 002f6be0e0 cool#8342 browser, clipboard: fix unwanted whitespace in the paste special dialog
The real content is inserted before the label, so the label can be
hidden to avoid this not needed spacing.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: I28a1101fc96b6e2cdb389b56ca3a5114092c92db
2024-02-27 10:47:08 +00:00
Miklos Vajna 0617543e54 cool#8342 browser, clipboard: emphasis on the core of the body of paste special dialog
The intention is to communicate that the user has to press a key,
otherwise we won't read the clipboard.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: Ieee44192c79f4181b3ff8be723cee49d37092e99
2024-02-27 10:47:08 +00:00
Miklos Vajna 8e4ee1d89b cool#8342 browser, clipboard: improve wording of button of paste special dialog
Make the wording more explicit to communicate what will be cancelled.
This is not to be backported, as it's a new l10n string.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: I9e337e06582b6839f713fc6f08da65292f64ddb1
2024-02-27 10:47:08 +00:00
Andras Timar 5e47f747a4 Update Helm Chart with new release 23.05.9.2
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I3d5b5bca3c7246c6fd4341c8a9b9981c4ff5c94a
2024-02-27 11:30:10 +01:00
Andras Timar e84ca61d4f Add THIRDPARTYLICENSES to rpm package
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I0e5689c00eee6d1ee08a75030b3dadfedc0b476e
2024-02-27 10:49:13 +01:00
Andras Timar b922c3446f Add THIRDPARTYLICENSES file
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I16d35e8b5de011320578a976d870d09cfcb4d6e6
2024-02-27 08:59:46 +00:00
Pranam Lashkari 537959188f notebookbar: event prevent default for insert annotation button
problem:
if writer->insert tab-> insert comment button is clicked,
if button is clicked from icon is works fine,
but if button is clicked on label event is triggered twice,
which caused js errors

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I3956083b02204733abc3543c73f6019d3a3b4c67
2024-02-27 08:16:05 +01:00
Ashod Nakashian 2d31aafa11 wsd: fix assertion and better logging
In some cases the WOPISrc is inconsistently
encoded. So now we decode before comparing.

Also, improve related log entries.

Change-Id: Ifd6cca76c91a34761dd0ce8f6d78c3af5d47fd43
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-02-26 18:24:32 -05:00
bittin1ddc447d824349b2 e54c9aeab0 Translated using Weblate (Swedish)
Currently translated at 100.0% (576 of 576 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: I1b5cc0dfe56f6dd09fb2313b91b50835288e228d
2024-02-26 16:53:16 +01:00
gallegonovato c6eb9e4379 Translated using Weblate (Spanish)
Currently translated at 100.0% (576 of 576 strings)

Co-authored-by: gallegonovato <fran-carro@hotmail.es>
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: I3ae73e17ef2f8dbc9f42a1d72b63755531da6fa9
2024-02-26 16:53:15 +01:00
Patrick Luby 22e341b656 Revert "Remove unused file."
This reverts commit c69e14a5dd.

The above commits causes document loading in the iOS app to
always fail. Even the animated loading graphic never appears.

I don't know why removing that .js file causes this behavior,
but I did see the following in the trace messages in Xcode.

  To Online: load url=null accessibilityState=false lang=en-US

It appears that the JS code is sending a null URL to load.

Signed-off-by: Patrick Luby <guibomacdev@gmail.com>
Change-Id: I7af391c4a4fb0d3d363b7023a27d4fcf92f7a4b5
2024-02-26 10:49:31 -05:00
Pranam Lashkari 7cf288b7d9 annotation: don't count deleted reply when tracked change show off
problem:
when tracked change show is off, and reply is deleted,
it will not be visible so but count shows it, it may
cause counfusion to user

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I730ebb1b5909b3db75611b5b6d60498d0b796c58
2024-02-26 17:55:06 +05:30
Gülşah Köse df35d06b9d Do not trigger hidetip if no tips are present
Signed-off-by: Gülşah Köse <gulsah.kose@collabora.com>
Change-Id: Ia72fd5a4ac51f912e0b9688f39f2618ab603de12
2024-02-26 12:54:56 +01:00
Pedro Pinto Silva 4e0383dfce Translated using Weblate (Portuguese (Brazil))
Currently translated at 100.0% (576 of 576 strings)

Translated using Weblate (Portuguese)

Currently translated at 100.0% (576 of 576 strings)

Translated using Weblate (Portuguese)

Currently translated at 95.6% (551 of 576 strings)

Translated using Weblate (Portuguese)

Currently translated at 93.7% (540 of 576 strings)

Co-authored-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Co-authored-by: Pedro Silva <pedro.silva@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pt/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pt_BR/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I3c2f6e1a65c77d8df2c348f3b6e57ce999acbacd
2024-02-26 12:16:00 +01:00
Rashesh Padia e77b66c2dc admin: fix re-verification fails when reload on scale down
- introduced in fe919ac2af
- the idea was to reload the page when scale down happens to refresh the UI and
  remove the gap between the cards
- but on reloading the page it might happen pod with which the current routeToken on client is associated gets killed
  so the indirection_server couldn't authenticate it.

Signed-off-by: Rashesh Padia <rashesh.padia@collabora.com>
Change-Id: I5d1f74352207c97def132c4437d9d297fd63dbb4
2024-02-26 12:04:52 +01:00
Rashesh Padia f7a8f1a395 admin: fix heading cut off on AdminClusterOverivewAbout page
Signed-off-by: Rashesh Padia <rashesh.padia@collabora.com>
Change-Id: I014841023de86f5c62e2e4fe5ca29e8a42b33db0
2024-02-26 12:04:52 +01:00
Caolán McNamara ed5924c494 set the initial rendering state before the first invalidateCanonicalId
now that we will typically init the document theme, etc. from the
users last used settings, the current rendering state is likely the one
that the user wants to use.

The browser-side throws away all tiles, etc on getting a
canonidalidchange, so get the current document renderering state to
describe this initial state so later LOK_CALLBACK_VIEW_RENDER_STATE
events can be compared to this initial state and only emit
canonidalidchange if there is a need.

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I2902ff4e143f432755c335e1225149207fafdfc3
2024-02-26 10:02:32 +00:00
Sebastiaan Veld 94038f1e5b Translated using Weblate (Dutch)
Currently translated at 100.0% (576 of 576 strings)

Co-authored-by: Sebastiaan Veld <sebastiaan.veld@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/nl/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Id344edc9b6b9b4627fa8072b9854b226b31579ee
2024-02-26 09:57:54 +01:00
Andras Timar 12be1cfbb2 Translated using Weblate (Hungarian)
Currently translated at 100.0% (576 of 576 strings)

Translated using Weblate (German)

Currently translated at 100.0% (576 of 576 strings)

Co-authored-by: Andras Timar <andras.timar@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/de/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/hu/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I5ac88c3265996bd4172bbdbbd07d282b7f525dac
2024-02-26 09:57:54 +01:00
Matthaiks 4f09cf3e36 Translated using Weblate (Polish)
Currently translated at 100.0% (576 of 576 strings)

Co-authored-by: Matthaiks <kitynska@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pl/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I7ecb3d391c096bcce3fd585bec259021f8366aba
2024-02-26 09:57:54 +01:00
Miklos Vajna c3c80f00a6 wsd, clientsession: guard against negative w/h in clientvisiblearea
Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: I34435276afbdc02b6e820b630560608f16f3a0e0
2024-02-26 08:27:21 +00:00
Andras Timar 6f7f0d6ace Update l10n files for Weblate
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I5c9b1fd9fc6357ed8f93a563abc95ff1c7ca90cc
2024-02-26 08:45:58 +01:00
Rob Pearson 06220b2318 Translated using Weblate (English (South Africa))
Currently translated at 100.0% (478 of 478 strings)

Translated using Weblate (English (New Zealand))

Currently translated at 100.0% (478 of 478 strings)

Translated using Weblate (English (United Kingdom))

Currently translated at 100.0% (478 of 478 strings)

Translated using Weblate (English (Australia))

Currently translated at 100.0% (478 of 478 strings)

Translated using Weblate (English (United Kingdom))

Currently translated at 100.0% (110 of 110 strings)

Co-authored-by: Rob Pearson <rob.dunedin@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/android-app/en_GB/
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/
Translation: Collabora Online/Android app
Translation: Collabora Online/Help
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ib80ce5f36171feebf4ab115ef367090c586f7ab2
2024-02-26 08:44:40 +01:00
bittin1ddc447d824349b2 b0525fd068 Translated using Weblate (Swedish)
Currently translated at 100.0% (478 of 478 strings)

Co-authored-by: bittin1ddc447d824349b2 <bittin@reimu.nl>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/sv/
Translation: Collabora Online/Help
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I94b64d12f829101680f3cec5ff13468e3c7fa245
2024-02-26 08:44:40 +01:00
gallegonovato 273c1e40c7 Translated using Weblate (Spanish)
Currently translated at 100.0% (478 of 478 strings)

Co-authored-by: gallegonovato <fran-carro@hotmail.es>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/es/
Translation: Collabora Online/Help
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I476b4144261da6fd5085e7ce5b7703361a92381e
2024-02-26 08:44:40 +01:00
Miklos Vajna 2f74e4b8d4 es2017: bump eslint version
This spec was released 7 years ago, and allows e.g. async/await, which
can result in more readable code in some cases.

There is danger that we return to the main loop too easily using this
construct, so no suggestion to rewrite any of the existing code to use
this, as that can have side effects on how e.g. we process incoming
websocket messages.

Do use await at a single place to make sure await can be indeed used.

Thanks Hubert to notice that the await-using function itself has to be
async, the error message from eslint isn't too clear in that case.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: I05b17658fcfab3d20a7e1e8aedf733ef6c7764f5
2024-02-26 08:31:37 +01:00
Gülşah Köse c3e535c3aa Make tooltip text translatable.
Signed-off-by: Gülşah Köse <gulsah.kose@collabora.com>
Change-Id: Idda52eeaaef73ada94481f2a5f49b67e47b05d4a
2024-02-25 20:56:04 +01:00
Ashod Nakashian f4707aac13 wsd: split createDocBroker into createClientSession
We only need the client WebSocket when creating
a new ClientSession. As such, we can spawn the Kit,
create a new thread, and even download the document
before the said WebSocket is connected.

At this point we only refactor the createDocBroker
helper.

Change-Id: I1bb57f6f0f2e89d49266cb87f152970a47e1eecf
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-02-24 14:09:22 -05:00
Ashod Nakashian 1dc205186a wsd: better logging in RequestVettingStation::handleRequest
Change-Id: Ic76aab4909c682df8739e2e1de8aa00832387d77
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-02-24 14:09:22 -05:00
Ashod Nakashian 84aa1a44e8 wsd: parallel load with cool.html
Support parallel CheckFileInfo upon serving
cool.html. This makes loading documents faster
from the user's perspective by parallelizing
CheckFileInfo and, later, DocBroker creation
and document downloading.

Change-Id: I838a19022517196ee2b459991a542ed9ef323e48
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-02-24 14:09:22 -05:00
Ashod Nakashian 93b1b736d1 wsd: RequestDetails from document-load URI components
This will help construct RequestDetails while
serving cool.html to do parallel-loading.

Change-Id: I976bda80fb62a3a61b161c7094aadee1a8d52851
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-02-24 14:09:22 -05:00
Ashod Nakashian 789eb6fa52 wsd: make wopiInfo a member of RequestVettingStation
Change-Id: I74eaaee3a5afc30ee89d16a83f89d3f471bd1f09
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-02-24 14:09:22 -05:00
Ashod Nakashian 3b6c11b0ce wsd: extract ResourceAccessDetails from cool.html file request
Change-Id: Ia03878fa8d0007f6708cfba8a6363ea9d3bfb35d
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-02-24 14:09:22 -05:00
Ashod Nakashian f76bcaa4b4 wsd: use a single shared_ptr instead of container for RequestVettingStation
Change-Id: I38c496edccf5d6ccc352f06b1c75972913248517
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-02-24 14:09:22 -05:00
Ashod Nakashian 32ba3e34b5 wsd: restructure RequestVettingStation interface
This makes it easier to support even earlier use
of RequestVettingStation, when cool.html is served.

Change-Id: I206f5f593a33806c24c6ed1e126d4cae5500f405
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-02-24 14:09:22 -05:00
Ashod Nakashian 7570dd299c wsd: use RequestVettingStation for async loading
This replaces the synchronous loading logic
with the new asynchronous one.

Change-Id: I20fd7903cffbbd7c524d8051295113439ef75d5b
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-02-24 14:09:22 -05:00
Neil Guertin 597bb4c1ee Fix zoom button click in cypress tests (part 2)
Use force click on buttons instead of scrolling the statusbar to make
them visible

Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: Ib6e7eadcfb02f47e7bd4b44c71f44387f0b19168
2024-02-24 17:23:37 +05:30
Pranam Lashkari e114aa1ce8 cypress: replace incorrect class name checking
regression from 4a2e256

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: Icddb4e5ef631574773e716e02df1a20ac078d44f
2024-02-24 17:23:14 +05:30
Pedro Pinto Silva 3e897e64c1 Keyboard shortcuts dialog: don't allow width to change after opened
With the inclusion of the searching (actually filtering) input field
the dialog would change width mid typing. Example: 1. open dialog: the
width would be x; 2 type something in the search box: the width would
be < x. Better to set a fixed width so if the biggest element is
hidden the dialog doesn't change in size.

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I6662433388efa66812317f60a4e0a6bf36e5e98a
2024-02-24 08:09:55 +01:00
Mowdep 9fcd956651 fix typo in locales help pages
Signed-off-by: Gabriel Fareau <gabriel.fareau@gmail.com>
Change-Id: I02e3937dd8230d4c9bb049845119b53c5c7f482e
2024-02-23 16:27:42 +01:00
Ihor Hordiichuk 2758305bc4 Translated using Weblate (Ukrainian)
Currently translated at 100.0% (478 of 478 strings)

Co-authored-by: Ihor Hordiichuk <igor_ck@outlook.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/uk/
Translation: Collabora Online/Help
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I3127c3a06a498b5e3d98ad4d440512c4619cf53b
2024-02-23 16:26:36 +01:00
Matthaiks 4466bcfd6e Translated using Weblate (Polish)
Currently translated at 100.0% (478 of 478 strings)

Co-authored-by: Matthaiks <kitynska@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/pl/
Translation: Collabora Online/Help
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I70d536eb87c4b94aa625821a7648b6fbf558c323
2024-02-23 16:26:36 +01:00
Ettore Atalan 9339ec99a1 Translated using Weblate (German)
Currently translated at 99.5% (476 of 478 strings)

Translated using Weblate (German)

Currently translated at 100.0% (575 of 575 strings)

Co-authored-by: Ettore Atalan <atalanttore@googlemail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/de/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/de/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I7e6248c92eb438ec37b3a0ae2f17340cac450d7c
2024-02-23 16:26:36 +01:00
Pedro Pinto Silva 9fd96b5d6c ui-tooltip: don't inherit the same shadow values as regular overlays
what: jquery ui-tooltip visible when user hovers buttons in the
notebookbar on when user starts a formula in calc (helpful floating
tooltip appears)

Before this commit, ui-tooltip was being set with a harsh
shadow making it more of a main element than a simple tooltip. Best to
don't inherit that strong shadow from .ui-widget-shadow (used in
overlays) and instead set a new one just for tooltip elements.

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ibf3ad525f97decc1d82ca7172ca1fb2bb7c1a6f2
2024-02-23 11:18:12 +01:00
Pranam Lashkari 4a2e2564ee annotation: hide deleted tracked comment if "show" option is off
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: Iedea40c331892140db66766e6d622e2db4da499e
2024-02-23 15:33:34 +05:30
Andras Timar 5288efbe91 Remove obsolete init script
The baseline is EL7, and systemd is assumed.

Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ibc43996e8b23007876ee8fa0d7dcf8478b217aa0
2024-02-23 09:34:47 +00:00
Miklos Vajna 170a9aaf65 cool#8342 browser, clipboard: start improving the paste special dialog's button
If the user doesn't read the text of the dialog, make it clear that
pressing the button will cancel the process, this is not a warning
dialog to be just ignored.

This is a minimal fix that introduces no new l10n strings.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: Ie68ce5bbfe9f9c8d600f6eadfef63301728984b5
2024-02-23 09:32:50 +00:00
Gülşah Köse 7b3960b7e6 Show tooltips over the cell while typing a function in a cell.
Signed-off-by: Gülşah Köse <gulsah.kose@collabora.com>
Change-Id: I85354a6c17947824408ae0458f29b858f31ab0e3
2024-02-23 10:06:32 +01:00
Darshan-upadhyay1110 e249784c39 Enable search input in keyboard shortcut dialog
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: If3c6a604ebcb16e66fbcbf7f765dc5f0595b8fb4
2024-02-23 09:57:56 +01:00
Darshan-upadhyay1110 38d8944621 Refactor show/hide section code
- we need to add display blok or table-row according to section tag
- add generic function to show or hide any section or sub section
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: Ib0996842a0c3703a6daf0754e739d4d5e00621cc
2024-02-23 09:57:56 +01:00
Darshan-upadhyay1110 df824e43c7 Refactor main section selection query
- Select section based on dialog type ( either "help-content" or "Keyboard-shortcut-content" )
- There are some section specific to doctype so only consider the section based on current doctype

Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: I56533b9cea0ad70b445ae864db23256a10ee27d7
2024-02-23 09:57:56 +01:00
Andras Timar 3682ac382e Make the 'Search' placeholder localizable in help window
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I5d1a9c72f0eac33b608c118b6024f2b9a562d26b
2024-02-23 09:28:02 +05:30
Neil Guertin 00c492f3c5 Fix zoom button click in cypress tests
Use force click on buttons instead of scrolling the statusbar to make
them visible

Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: I58f9571dd31d775cadd586f49a545bbc2198471c
2024-02-22 16:11:31 -05:00
Darshan-upadhyay1110 12b9283fba Fix: DocumentRepair does not work for non-english
- Do not use transalated string `UNDO`` and `REDO` as UNO command
- added action prop to handle above change

To test
 - open document in non-english format
 - make some changes in the document
 - open document repair
 - try to perform REDO or UNDO ops

Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: Ia98270b7623634fe4315988287445f14467df3f9
2024-02-22 16:47:06 +01:00
Andras Timar 323a786c1c Update l10n files for Weblate
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I58b836cc3528aa5c4e76e84ad0df6c7310ab00ef
2024-02-22 15:25:22 +01:00
Neil Guertin 962331a1bb Replace assertDataClipboardTable with assertSheetContents
Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: Ic1f7cf6e41b7841a8a11ce0a5d23bdc6d7baf9b8
2024-02-22 09:24:59 -05:00
Neil Guertin f5073cb7ed Fix sporadically failing autofilter test
Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: I71dfd8f98e41f799b33ca13a6a8b6fab78fb94f6
2024-02-22 09:24:59 -05:00
Besnik Bleta ea3fbed402 Translated using Weblate (Albanian)
Currently translated at 97.5% (561 of 575 strings)

Co-authored-by: Besnik Bleta <besnik@programeshqip.org>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/sq/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I178b9229666b5882471f1b3aa372a2c481b7a5d1
2024-02-22 15:23:32 +01:00
Sebastiaan Veld 6bace39af9 Translated using Weblate (Dutch)
Currently translated at 100.0% (575 of 575 strings)

Co-authored-by: Sebastiaan Veld <sebastiaan.veld@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/nl/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: If9f8b934e0bc01704076c57c618d47df3bebd285
2024-02-22 15:23:32 +01:00
Jesper Holck 09981374a2 Translated using Weblate (Danish)
Currently translated at 71.5% (334 of 467 strings)

Co-authored-by: Jesper Holck <jesper.holck@ibsgaarden.dk>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/da/
Translation: Collabora Online/Help
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Iffd5a640671f8b38f02d1f5799b7b5048f831813
2024-02-22 15:23:31 +01:00
Milo Ivir 19918b512b Translated using Weblate (Croatian)
Currently translated at 100.0% (575 of 575 strings)

Co-authored-by: Milo Ivir <mail@milotype.de>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/hr/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I9fea092cf69f4455645b8dc78d1bc739883eacba
2024-02-22 15:23:31 +01:00
Alexander Gabilondo 0821e50828 Translated using Weblate (Basque)
Currently translated at 100.0% (575 of 575 strings)

Co-authored-by: Alexander Gabilondo <alexgabi@openmailbox.org>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/eu/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I0e275d5a7aed796d4560dd1bced3302d62d3cb5f
2024-02-22 15:23:31 +01:00
Rob Pearson ae237ed7d6 Translated using Weblate (English (South Africa))
Currently translated at 100.0% (575 of 575 strings)

Translated using Weblate (English (New Zealand))

Currently translated at 100.0% (575 of 575 strings)

Translated using Weblate (English (United Kingdom))

Currently translated at 100.0% (575 of 575 strings)

Translated using Weblate (English (Australia))

Currently translated at 100.0% (575 of 575 strings)

Co-authored-by: Rob Pearson <rob.dunedin@gmail.com>
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/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I9566116dcf498f54b7d69084ed95072f6acfe808
2024-02-22 15:23:31 +01:00
Oğuz Ersen 5b4861a19b Translated using Weblate (Turkish)
Currently translated at 100.0% (575 of 575 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: I673a9fd5cf81aa0edbf7420090c9736b519651da
2024-02-22 15:23:31 +01:00
bittin1ddc447d824349b2 c99b69e538 Translated using Weblate (Swedish)
Currently translated at 100.0% (575 of 575 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: I3bd011a30dd79b421df4709b11a199f2ac4036e3
2024-02-22 15:23:31 +01:00
Сергій 9156d830a1 Translated using Weblate (Ukrainian)
Currently translated at 100.0% (575 of 575 strings)

Co-authored-by: Сергій <sergiy.goncharuk.1@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/uk/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I7649f35804e2bfc2458782b7519f6043a180192c
2024-02-22 15:23:31 +01:00
Matthaiks f4624b2a5a Translated using Weblate (Polish)
Currently translated at 100.0% (575 of 575 strings)

Co-authored-by: Matthaiks <kitynska@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pl/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I4747cbd9715fc35f975ccd0401addf5c5007ba61
2024-02-22 15:23:31 +01:00
Andras Timar de8b445d8f Translated using Weblate (Hungarian)
Currently translated at 100.0% (575 of 575 strings)

Co-authored-by: Andras Timar <andras.timar@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/hu/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I08a2e6443416fb60224c54247711580fb7382525
2024-02-22 15:23:31 +01:00
gallegonovato d9b833b5c7 Translated using Weblate (Spanish)
Currently translated at 100.0% (575 of 575 strings)

Co-authored-by: gallegonovato <fran-carro@hotmail.es>
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: Ib26a5eec2bb202b36636e06aa6940b6fcef42413
2024-02-22 15:23:31 +01:00
Aron Budea ff61e2a58a C++17 Remove checks on std::filesystem
Should be fully supported on compilers now.

Except leave this workaround in place for now:
b30757417b

Signed-off-by: Aron Budea <aron.budea@collabora.com>
Change-Id: I6e19ec034b3c64e66f5bf5ff1f436f94514fabd0
2024-02-22 11:16:28 +01:00
Pedro Pinto Silva 3f7af8dd9f Help dialog: Improve how filtered content appears
- Increase contrast on matched content (when user types something in
the search input field)
- Fix it for dark mode
- It's not worth it to try to highlight specific subsections. It can
look confusing and misleading (sometimes the subsection has no
importance unless the context is taken into account, it could be
interesting if we were marking it in a word by word bassis which is
not the case).
  - Better to just style/mark the whole mainSection instead
- Make the overall style look different when the search box has text
so, user can distinguish when he is searching vs not searching. This
also helps to understand that the in one context sections are being
hidden, that we are not in presence of the whole help documentation
but just some sections.

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I2af72d36f426d23b239d54464860c6368a65e597
2024-02-22 09:45:20 +01:00
Pedro Pinto Silva 3cda990ad6 Help dialog: fix low contrast TOC when using dark mode
Refrain from using hard coded dark text, use instead css var that
changes according to the light/dark mode.

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I7343c422a06a7415406d6d476adade77810c68c5
2024-02-22 09:45:20 +01:00
Darshan-upadhyay1110 afa593f0aa Show alert effect on input field for un-matched filter terms
- animation on input field if search term is not matched with any section content
- add auto focus in input field on dialog open
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: Ie0415affeeb59a2a785bf5ffd9f32f1e98471958
2024-02-22 09:45:20 +01:00
Darshan-upadhyay1110 edfaa0d3b9 Add filter content with entry widget in help => online-help
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: I7578c621c28b7a5d18c76f2fff834ad2edd68ca5
2024-02-22 09:45:20 +01:00
Aron Budea 3b8f3d07f6 Replace Util::startsWith/endsWith w/ C++20 equivalent
Replace a few cases of Util::toString(...), too.

Signed-off-by: Aron Budea <aron.budea@collabora.com>
Change-Id: I53c5dbbdf2f60710e94add9dd137aa9becb7bd3e
2024-02-22 08:08:32 +01:00
Gökay Şatır 8adfaedd45 Don't reinit header entry styles without a mode change.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I82bdbaea429d4b2fec8cda9c431a215feb47a129
2024-02-22 09:57:00 +03:00
Ashod Nakashian 3befdcb3f4 wsd: fix missing CommandControl.hpp include
Change-Id: I362e8f8c0645f51b0d49294edb097dfee22b353e
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-02-21 20:54:26 -05:00
Ashod Nakashian 61b281f4c4 wsd: include and header cleanup
Change-Id: I4d67bf1b1e8dcc68f7e6a9a4e42254c08d8ef646
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-02-21 20:13:39 -05:00
Ashod Nakashian 8d55aab329 wsd: exclude HostUtil from non-mobile apps
It's not used, since no external storage
is supported in the apps.

Change-Id: I5cf765ef3cb38dcb396318f6b9ace56bf4e127a2
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-02-21 20:13:39 -05:00
Ashod Nakashian bf6174e201 wsd: include cleanup in Storage.cpp
Change-Id: I40f52652979c07f9edb96544af64fd6875f937e0
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-02-21 20:13:39 -05:00
Ashod Nakashian 9f51316baa wsd: privatize HostUtil::addWopiHost
Change-Id: Ife50d3e0e501e193963d1d229d7f0e1d23e7158e
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-02-21 20:13:39 -05:00
Ashod Nakashian 0f0830c607 wsd: cosmetics
Change-Id: I53faa395aeaea2ac30da489312acf4c2c4a597af
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-02-21 20:13:39 -05:00
Ashod Nakashian 5d36c19cea wsd: include cleanup in COOLWSD.cpp
Change-Id: Ia89a2da4c5a0e12478c65b59af1b2be6ffb55089
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-02-21 20:13:39 -05:00
Ashod Nakashian 5a82c36680 wsd: move ClientRequestDispatcher to own file
This moves ClientRequestDispatcher and all
its direct exclusive dependencies to its
own file and adjusts formatting.

No functional changes were performed,
although namespaces were restored and
other minor changes were done for
consistency.

The resulting file is still rather large
at around 2000 lines, but that makes
COOLWSD.cpp smaller by about 30% now.

Change-Id: I59bcd997ad08702ce7029c6791095e75ad9b23b0
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-02-21 20:13:39 -05:00
Marco Cecchetti 5208c93e9b calc: on tab switching document view can be restored to a wrong position
In calc when a tab is moved to a new position or a sheet is inserted
or deleted, saved positions in SheetSwitchViewRestore which are used
to restore the correct document.
position when user switches back to a tab are no more valid.
In fact the internal map: sheet index -> sheet position becomes wrong.
This patch takes care to update such internal map when one of the
listed event occurs.

Signed-off-by: Marco Cecchetti <marco.cecchetti@collabora.com>
Change-Id: Ia4587b14179a35ff369d1f030657c4e5c64f5715
2024-02-21 19:47:10 +01:00
Marco Cecchetti b14dfa20bb calc: on tab swithing do not replay print twips messages
From CanvasTileLayer._saveMessageForReplay description:
"We will not get some messages (with coordinates) from core when zoom
changes because print-twips coordinates are zoom-invariant. So we need
to remember the last version of them and replay, when zoom is changed.
In calc we need to replay the messages when sheet-geometry changes
too. This is because it is possible for the updated print-twips
messages to arrive before the sheet-geometry update message arrives."

The problem is that after switching to a new tab it could occur that
some of these stored messages are replayed on the new sheet even if
they were related to the previous one.
So for instance if in the old tab there is a cell selection we could
end up try to select such cells in the new sheet too, and even if such
selection is successively cleared by further message specific for the
new sheet, such message replaya was causing an unexpected document
scroll.

Signed-off-by: Marco Cecchetti <marco.cecchetti@collabora.com>
Change-Id: I63995aaa51c25216abd246551fbd2ec437a3f6de
2024-02-21 19:47:10 +01:00
Aron Budea c0b65318f2 Bump baseline to C++20
Signed-off-by: Aron Budea <aron.budea@collabora.com>
Change-Id: I8201175e83eba549f22aaeb935cda46a712ec492
2024-02-21 18:28:47 +01:00
Szymon Kłos ee43390e71 jsdialog: send less messages for scrolled window
- send new scroll position only on change
- this reduces a lot network traffic and makes
  it more quick

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ifd4f3ecca2e826c3350d19e377cc265dbde563fe
2024-02-21 15:16:14 +00:00
Méven Car 5dcfea4ad7 Fix function wizard dialog
Signed-off-by: Méven Car <meven.car@collabora.com>
Change-Id: If92f27e54c5da3b09145d019c86076d6fa9373b3
2024-02-21 15:16:14 +00:00
Méven Car dbfe0e880a Adjust size of custome properties dialog
Signed-off-by: Méven Car <meven.car@collabora.com>
Change-Id: I5a7020db5b9dbb2f8bccfbe9da491111459a6f65
2024-02-21 15:16:14 +00:00
Méven Car f17328de63 custom properties: adjust spacing between fields
Signed-off-by: Méven Car <meven.car@collabora.com>
Change-Id: I0a8cdd565d725e5668adce427d89fbf74e935f70
2024-02-21 15:16:14 +00:00
Méven Car 5b03c12b93 Widget.ScrolledWindow: allow to resize based on content
Add a smoother scroll taking into account the row height of the data to
adapt the scroll height accordingly.

Signed-off-by: Méven Car <meven.car@collabora.com>
Change-Id: I96cf56367b80ca22f75b074e32ebff97eedeb0ab
2024-02-21 15:16:14 +00:00
Méven Car e849af2666 Add Css rules for custom properties fields
Signed-off-by: Méven Car <meven.car@collabora.com>
Change-Id: I4b57a1c04dc67620f4ee010e17fff4f9e677d0de
2024-02-21 15:16:14 +00:00
Andras Timar cbc32dc38e fix unconditional install-data-hook
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I3236d8ebb323b7d682e58c01da4ad8ec01ee943d
2024-02-22 00:26:23 +10:30
Hubert Figuière bc5c2d56c5 calc: Don't use es6 let and () =>
This was introduced by backport #8271 of the sheet protection

Signed-off-by: Hubert Figuière <hub@collabora.com>
Change-Id: I07a9fd428b11042ce191a5c7a48d53400253c445
2024-02-21 13:44:32 +00:00
Michael Meeks 2be1f8c345 UnitBadDocLoad - adapt to new jsdialog behavior.
Parse jsdialog responses, and send the right dialog id
to click items on.

Adapt to unexpected multiple updates for the corrupted document
warning dialog on load.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I0f934cdc60b2204afc493cf367f98a9cfa0aa6c0
2024-02-21 12:57:11 +00:00
Michael Meeks c090b4fd21 notasync warning improvement.
Kit's GlobalCallback has an alarming habit of enabling
inputprocessing during a jsdialog popup occuring during
load, so use a stronger heuristic to avoid sending errors.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I4a57685dcf63b4a3607c894e80a13e27bffaece5
2024-02-21 12:57:11 +00:00
Michael Meeks 57de384bb2 dumpState should summarize MessageQueue and TileQueue messages.
Change-Id: I86bff39dd26491dc1cdc781f7e2ce3bbcd9859bd
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2024-02-21 12:57:11 +00:00
Michael Meeks 01e47f08a8 torture testing: drastically simplify, and add odg test.
Removing the prior apparently fragile approach of summing
view-ids.

Instead check for lack of duplicate view-ids, and still
load & close lots of views in random orders.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: Ibcefc54597cc4e37a9728dab2f32002620b01c4c
2024-02-21 12:57:11 +00:00
Caolán McNamara 7154ac5d07 init document theme during load
like we do for the spelling setting, so we have the document in the
desired state early before any rendering, dropping the early full
document invalidations during initial setup

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I6b762c95fd4c00c7da04cf89f7bbeef4bc57375d
2024-02-21 10:23:15 +00:00
Caolán McNamara 15e385bb2d split the handling of the optional keyframe to before the delta loop
topic: https://github.com/CollaboraOnline/online/issues/8316

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Ifa97015b57539ded26a4b865d146b4084e3e7d6c
2024-02-21 10:10:19 +00:00
Caolán McNamara 2a971343f4 a keyframe, if it exists, will only appear at the start
topic: https://github.com/CollaboraOnline/online/issues/8316

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I4e26a2a9c20d506bf2f88637135bfe3681d941b2
2024-02-21 10:10:19 +00:00
Caolán McNamara 8f170ad2f3 avoid a subarray usage
topic: https://github.com/CollaboraOnline/online/issues/8316

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Ib330cc87804b3d35071aa17a268f2436a02ff32b
2024-02-21 10:10:19 +00:00
Caolán McNamara 3f102f996d skip using subarray for offset 0
topic: https://github.com/CollaboraOnline/online/issues/8316

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I179605ae0b1f4af6d2d22e42859b34d81a4c8b19
2024-02-21 10:10:19 +00:00
Michael Meeks eda61d1bb9 WOPI timestamp test fixes.
Adapt checks for empty or non-empty timestamps so that we can
match previous failures, and ensure coolwsd is sending us the
right override state.

Change-Id: I604e3aa0315753ae02e5a6e4173d6b3b3ffa3b3e
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2024-02-21 09:38:49 +00:00
Michael Meeks f1f198b197 wsd: Blank stored timestamp if an up-load times out.
Quite possibly we did successfully up-load, or at least our timestamp
may not match, but we cannot be sure enough to warn the user in this
case. We cannot reliably get notified of remote alteration on the
server of files, so wait until a more succesful save or new user
join to get an improved timestamp.

Change-Id: I5c8124ed74ba5c26371768ac778b9670282c87a3
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2024-02-21 09:38:49 +00:00
Michael Meeks 7031c3b0ce cool#8328 - config header fixup.
config.h should be included as the 1st line in each source file.
It should not be included in headers.

config_version.h which changes on every commit should not be
included widely - so remove it from the HttpRequest heeader to
save tinderbox's ccache.

Fetch version info from helper methods rather than in-lining via
defines, to better encapsulate.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: If449a36f1ac61940f04d70d5f4180db389d9b4c4
2024-02-21 09:35:25 +00:00
Marco Cecchetti d93fe44882 calc: cut/paste for a cell content doesn't work in Firefox >= 121
Limit the workaround for "no copy event is emitted by hitting CTRL+C/X
with no selection" to Firefox version from 117 to 120.

Signed-off-by: Marco Cecchetti <marco.cecchetti@collabora.com>
Change-Id: I00d3addc0330862bf07eebb8d030d1156fc6e321
2024-02-21 10:29:32 +01:00
codewithvk 277237911f Fix: Multiple Encoding During Document Renaming
On the client side, when setting up the socket, we encode  beforehand, so there's no need to encode it again.

Signed-off-by: codewithvk <vivek.javiya@collabora.com>
Change-Id: I09e59c6fdda4c93de5dd36fca5023ac88926c4d4
2024-02-21 09:38:23 +01:00
Szymon Kłos 599896176d Avoid exception on view list update
Fixes and gives more details for debugging in case of:

INCOMING: viewinfo: [{"id":3,"userid":"admin","username":"admin","userextrainfo":{"avatar":"http://.../avatar/admin/64","is_admin":true},"readonly":"0","color":0}] cool.html:323:37
Exception TypeError: this.map._viewInfo[this.map._docLayer._viewId] is undefined emitting event [object Object] onUpdateViews@http://.....:9980/browser/08e0fd2e1b/src/control/Control.UIManager.js:823:31

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I915f4d6e235426d1ae1d12c64629a6e250c16766
2024-02-21 09:21:36 +01:00
Darshan-upadhyay1110 804f299b81 Handle sperator case for tree Widget
- separator should treated as UI not any object value
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: Ie6182dda40b7fd3c0d1ea87c5df78a46239677ed
2024-02-20 09:30:52 +01:00
Rashesh Padia 824988663f js: couldn't pass json when saving fails when migration
- when saving the json sent to client was wrong

Signed-off-by: Rashesh Padia <rashesh.padia@collabora.com>
Change-Id: Ib5735dcf81db4257256a909fa7dface184f1c53d
2024-02-20 00:50:50 +05:30
Rashesh Padia edeea651a8 indirection: fix: 'Cluster is scaling..' popup when reconnecting
Signed-off-by: Rashesh Padia <rashesh.padia@collabora.com>
Change-Id: I5fc4017e647403822fbb0ceefd00b8aa7cfde531
2024-02-20 00:50:50 +05:30
codewithvk 0431c58465 disable file renaming in readonly mode
Signed-off-by: codewithvk <vivek.javiya@collabora.com>
Change-Id: I11b07d8352a0e29a4756db489f570cee55c9d03e
2024-02-19 17:02:48 +01:00
Pranam Lashkari ee7715353f zotero: fix long title taking all the space in dialog
problem:
when titles are long they go beyond dialog area and are not scrollable,
this hides the date and author details which can not be scrolled either

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: Iae8a5affb870faff0639ac9083e118cec40debd0
2024-02-19 19:56:42 +05:30
Miklos Vajna 8d931d8ea4 cool#8292 browser, clipboard: fix navigator.clipboard error handling
If the notebookbar's paste or paste special button is pressed and
Chrome's clipboard permisson popup is rejected, then nothing happened,
while Firefox case was showing a more helpful popup, explaining the
problem.

This has two sides: error handling should be better and also the error
should not happen in the first place. The error can also happen when the
<iframe> is not set up correctly, but that's to be handled on the
nextcloud side.

When there *is* an error, improve error handling by restoring the
codepath that matches Firefox:

- extract the rest of the code after invoking the async clipboard read
  in _execCopyCutPaste() to a new _afterCopyCutPaste()

- paste case: invoke _afterCopyCutPaste() when the paste fails

- paste special case: only pretend we're in paste special mode if the
  success fallback is called

  - if the failure callback is called, then invoke
    _openPasteSpecialPopup()

With this, the "has async clipboard, but the permission request
rejected" and the "don't have async clipboard" codepath matches.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: I727f00a1cf94dd1837e15e60410e1798de5daecc
2024-02-19 12:18:20 +00:00
Szymon Kłos 2085009757 calc: calculate correct position when scrolling to comment
In calc all comments are hidden and only shown when
mouse hovers the cell to which the comment is attached.
Anchor was always a wrong value so when we were at
some more distant position - it always jumped to random
place on hover.

This is regression from:
commit 6550e713c4
annotation: calc scroll vertical to make selected comment visible
which was followup for:
commit 2bf93e34c3
annotation: writer scroll to make selected comment visible

We need to compare the same type of positions. Now all the
values will be in core pixels and methods have comment which
indicates that.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I8e86a31087ff491ace92f407b166788cea73b25a
2024-02-19 12:02:11 +01:00
Hubert Figuière 203f7b462c globals: Make sure coolParams.get() return an empty string instead of null
This fixes a regression where `framed.doc.html` wouldn't load.

Signed-off-by: Hubert Figuière <hub@collabora.com>
Change-Id: I57b4a617755be4615ec6ec734f6e084d57eaebce
2024-02-19 10:29:36 +01:00
Pranam Lashkari de85b2dada zotero: fix missing field data in the dialog
problem:
in some types of items fields may be named differently,
leading to fields not being found and empty dialog entries.

currently only itemType 'case' was culprit but in future there maybe some other types too

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I24b58dc474a555b3f26c34bb4ae0b144c06abc57
2024-02-19 09:58:58 +01:00
Pranam Lashkari ed62a19701 cypress: add tests for tracked comments operation
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: If1a2bbe7d9d3ec7fa821db91aea1f7b3ed6f2c1e
2024-02-18 09:45:46 +05:30
Caolán McNamara f2c07343c5 getComputedStyle is very slow, but we don't need it for LTR comments
but it gets computed anyway, move it so its only called if actually
needed

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I187540df6def6b4f92199e273665e04ed493035a
2024-02-16 20:55:10 +00:00
Michael Meeks e7e909bf3d Don't complain about non-async dialogs on load & save.
Change-Id: I2e846ea99e8d062088c80be166c4fc73bb3f004d
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2024-02-16 20:31:53 +00:00
Hubert Figuière 65a33fde17 calc: Added protect sheet command in the notebook bar
Signed-off-by: Hubert Figuière <hub@collabora.com>
Change-Id: I845bd0dd4d8da4955c88e932c2701931b46e155f
2024-02-16 19:55:32 +00:00
Gökay Şatır c69e14a5dd Remove unused file.
This was added for IE11 compatibility.

Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I4be5d3199c1354e2e36ac31734c3ed4ffb46cd54
2024-02-16 15:13:33 +01:00
Gökay Şatır 852fba249a add a comment for a potential unused file.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: Iee185c006f158b49d43834e756b40f236cc94b16
2024-02-15 11:58:53 +03:00
Hubert Figuière 8b9c241347 calc: Hide rename and delete in the menu if the sheet is protected
This is consistent with LibreOffice: you can't delete nor rename
a protected sheet. It did nothing already.

Signed-off-by: Hubert Figuière <hub@collabora.com>
Change-Id: I81e91f0cddf8b0cf6004f1668cb996b7cd0ba8e4
2024-02-14 14:05:56 +00:00
Hubert Figuière cbf452b03d calc: Receive the sheet protected status
This set the CSS class 'spreadsheet-tab-protected' on the sheet tab.

Requires LOKit change https://gerrit.libreoffice.org/c/core/+/163325

Signed-off-by: Hubert Figuière <hub@collabora.com>
Change-Id: If199b36ba593c5e603d017346969360b6191fe5b
2024-02-14 14:05:56 +00:00
Szymon Kłos b4c0556a15 jsdialog: add JSDialog.SynchronizeDisabledState helper
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I32bd297d961561e3de8d01e43c2c994b70eabd99
2024-02-14 13:16:58 +01:00
Szymon Kłos 2bd25b15df cypress: test disabled state updates
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ib0c123e82360edcdf6c4bad533b40b3d5cc04bc2
2024-02-14 13:16:58 +01:00
Szymon Kłos 8f3b620a44 jsdialog: css: improve disabled widgets
Don't show grey border for labels and similar widgets...
Now we have "disabled" property on the root container of
every widget. We should style disabled state based on that.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I9e49783e8905a4c36b0010fa19d5feb869151e77
2024-02-14 13:16:58 +01:00
Szymon Kłos 21a469d215 jsdialog: checkbox disabled state
Update checkbox state on jsdialog action.
To allow click handler use it's current state not
initial data.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I95796771a1347c78a9c5e1983e3b0af61a236bb2
2024-02-14 13:16:58 +01:00
Szymon Kłos e05881b15d jsdialog: added Util.StateChange
- move listener watching disabled state to separate file
- use also for listboxes, comboboxes, spinfields
- handle state in menubutton

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I841413f17abd6398a7e82496c3f20bdc52ab9514
2024-02-14 13:16:58 +01:00
Henry Castro 6c32bd6276 browser: impress: override invalidate preview tiles
Invalidate tile preview when canonical view id
changes.

Change-Id: I62d2e20946ec863ceb71014bb0216675316a658b
Signed-off-by: Henry Castro <hcastro@collabora.com>
2024-02-14 11:48:17 +00:00
Andras Timar 6d13157a83 Update l10n files for Weblate
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I3fbb566a9b5284eead5ea46914e3dcd9c6712125
2024-02-14 12:45:09 +01:00
Joan Montané 70ecd173f5 Translated using Weblate (Catalan)
Currently translated at 90.0% (516 of 573 strings)

Co-authored-by: Joan Montané <jmontane@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ca/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ic2705706c574b1676baaedfefcbc7d077a70965f
2024-02-14 12:41:26 +01:00
Владимир 889bf18ec4 Translated using Weblate (Russian)
Currently translated at 97.0% (556 of 573 strings)

Co-authored-by: Владимир <plazotronik@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ru/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I535ee4dac1c6dc8f7724fcf6acef18bec05ecf9f
2024-02-14 12:41:26 +01:00
Henry Castro f6a0c366db fix fail unit test "builddir != srcdir"
Change-Id: I7a5b96da9e892c1948cbbc52c57344a2b67daab6
Signed-off-by: Henry Castro <hcastro@collabora.com>
2024-02-14 09:12:12 +00:00
Henry Castro 72b35d7d02 browser: fix scroll the currently selected tab
1) Load a document with a large number of tabs
2) The last tab was selected

Change-Id: I0326bf2e374dddd7e075ea5806e5aefe5f598611
Signed-off-by: Henry Castro <hcastro@collabora.com>
2024-02-13 19:31:22 +00:00
Szymon Kłos a82d1feafe jsdialog: handle disable action on mobile
- unify desktop and mobile toolbox code
- toolbox should apply disabled state on child nodes
- this is needed to handle disable action, previously
  we received JSON for complete widget

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I018d7505a383ec45c9260f3629daaa9771579995
2024-02-13 13:46:22 +00:00
Neil Guertin e0c5c85718 Reenable logging socket messages before debug mode
Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: I2452d4c7e3e3152533b676fb2db81ef95d96fb54
2024-02-13 09:43:04 +01:00
Hubert Figuière 474ff7612b calc: Add protect sheet command to Tools menu
Signed-off-by: Hubert Figuière <hub@collabora.com>
Change-Id: I1511419858e361ad7a7653b2939e8d516c2d7e59
2024-02-12 21:26:52 +00:00
Caolán McNamara 377c826894 disable getting the host printer queue
and default printer. In typical deployment these should be effectively
no no-op, so mostly aligns debugging env with deployment env so whatever
printer happens to be installed locally has no effect.

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I09651d9af2de9817d4d278d25937c9ce0dc87352
2024-02-12 20:39:02 +00:00
Pranam Lashkari 74bfa7398a annotation: added comment layout status enum for better readability
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: Id24c3f1fb0b612b3ba6a0e3a65b527ad53c5b941
2024-02-13 00:31:57 +05:30
Pranam Lashkari 5b3cfbab26 annotation: refresh comments on accept/reject all tracked changes
problem:
tracked comments deletion was not reflected with accept/reject all changes

implementation explaination:
we have different implementation for accept and reject all changes,
due to fact when we reject the changes those elements already exists in DOM,
we can mark them as rejected and modify them.
while on the other hand with accepting change DOM elements need to rearranged.

i.e: if comments are deleted while being tracked, and we accept that changes,
comment needs to be removed from DOM and if we rejected that change we just need to remove CSS class.

This implementation takes care of cases when comments are being deleted, other cases of addition or
modification works usually

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I0964fbd220f450cb144a115e8203250467e7edae
2024-02-13 00:31:57 +05:30
Caolán McNamara 71a427c465 cid#344351 COPY_INSTEAD_OF_MOVE
and

cid#336280 COPY_INSTEAD_OF_MOVE
cid#318848 COPY_INSTEAD_OF_MOVE
cid#318964 COPY_INSTEAD_OF_MOVE
cid#344354 COPY_INSTEAD_OF_MOVE

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I60a904be4b5edf61cfd5b2efab81e5c1a089b661
2024-02-12 11:12:33 +01:00
Neil Guertin 794d24b046 Add header to debug menu
Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: I5875a5e221c732b8130c44c79d6e18866e4dd2af
2024-02-10 19:12:54 +01:00
Hubert Figuière dece121bf2 calc: Enable sheet protection
Require LOKit change Ib8e8209225d027472c1f2eef57839df5784acf30
https://gerrit.libreoffice.org/c/core/+/163205

Signed-off-by: Hubert Figuière <hub@collabora.com>
Change-Id: Ie54b355ad794a0e34fabbd8e56b4a17a936686f7
2024-02-10 09:41:01 +00:00
Neil Guertin f76333da3b Debug overlayData improvements
Rename overlayData to _overlayData
Tools clear their data on remove

Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: If0f17c4d18b683247a15f1b880dd7c0e373809fc
2024-02-09 17:48:00 -05:00
Neil Guertin 0686e6a2cf Add Tile Data debug tool
Merge tile update data tracked in several places into one tool

Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: Iabf63ca30795d8791894e575fc631ccc9f676183
2024-02-09 17:48:00 -05:00
Neil Guertin 4ca1ebb852 Fix ping measurement from tile invalidations tool
Rename variables and functions
Move server ping to separate tool
Fix keypress detection for timing

Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: I15efed25ccacac19e6e96fdff767d332e8cc5fcd
2024-02-09 17:48:00 -05:00
Neil Guertin c9252e1574 Minor debug improvements
Rename and reduce scope of variable associated with
tile invalidations debug tool

Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: I3e22d69e9c5867d1194a42520b35231e20b1ca01
2024-02-09 17:48:00 -05:00
Martin Srebotnjak c8fc81e9a0 Translated using Weblate (Slovenian)
Currently translated at 100.0% (573 of 573 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: I910a4d881a9c8bb8cd573e15fe63dae730ec6595
2024-02-09 20:37:31 +01:00
Rhoslyn Prys b0a8987713 Translated using Weblate (Welsh)
Currently translated at 100.0% (573 of 573 strings)

Translated using Weblate (Welsh)

Currently translated at 100.0% (22 of 22 strings)

Translated using Weblate (Welsh)

Currently translated at 99.3% (569 of 573 strings)

Translated using Weblate (Welsh)

Currently translated at 59.0% (13 of 22 strings)

Translated using Weblate (Welsh)

Currently translated at 100.0% (110 of 110 strings)

Co-authored-by: Rhoslyn Prys <rprys@posteo.net>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/android-app/cy/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/android-lib/cy/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/cy/
Translation: Collabora Online/Android app
Translation: Collabora Online/Android lib
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I1fd5c876897b291e9ec7ff035f480edde9188c3d
2024-02-09 20:37:31 +01:00
Ashod Nakashian 7bba9b5b7d wsd: refactor findOrCreateDocBroker
This separates error-reporting to the client
through the WebSocket from the actual logic
of finding or creating a DocBroker.

This should be useful in creating a DocBroker
without having the client's WebSocket.

Change-Id: I66fc8ac09264fcbdb79ddf62867b8551a72929d6
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-02-09 15:50:50 +00:00
Ashod Nakashian 055b3535a0 wsd: optional timeout to getHttpSession helper
Change-Id: Ic7bfc332a7ce43884219fd04abe6d82b8c66007c
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-02-09 15:50:50 +00:00
Ashod Nakashian 92e52e663c wsd: support sendMessage with string literals
Change-Id: I1caaf408c424c1cb11fec6aaf9d894dac7f99f93
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-02-09 15:50:50 +00:00
Ashod Nakashian a449b8d229 wsd: simplify WebSocketHandler::sendErrorAndShutdown
Socket::shutdown() already does ignoreInput().

Change-Id: I75004ae881c481440d3e3cd31a96ba75ddbad22d
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-02-09 15:50:50 +00:00
Ashod Nakashian 3a109537ee wsd: exclude WopiStorage in mobile builds
This excludes Wopi handling (as much as possible)
from mobile builds.

Change-Id: I4abb00f02e77b5d89d56ced49ce19a37ae93c13e
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-02-09 15:50:50 +00:00
Ashod Nakashian ae1c28c325 wsd: test: allow more time for repair dialog messages
Change-Id: If841daf76f1f7fb220205a3a04d695b261540eb4
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-02-09 15:13:40 +00:00
Ashod Nakashian 0b47d8fc2a wsd: test: wait longer to load exoticlocale test
For some reason, the exoticlocale test takes
significantly longer to load. It often times
out when the CPU throttles or when it's
too loaded. Extending the timeout eliminates
the issue for me (no timeout over 175 runs).

Change-Id: I07cb099776af38206c0567f603cb6cc424eb0b93
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-02-09 15:13:40 +00:00
Ashod Nakashian d28aab5020 wsd: test: empty file-substitution test
Change-Id: I192e54e7e850d1e4697f09e87b6397ae26c9391a
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-02-09 15:13:40 +00:00
Neil Guertin 5df8021738 Random user formatting marks and sidebars
Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: I7692bb07adf7fc50ef72c4e933584573755295ad
2024-02-09 14:13:47 +00:00
Michael Meeks 0391c0a02f refactor: split out CSS image visiting.
We use this for the richdocumentscode case, but it is more
generally useful, this should be a pure re-factor.

Change-Id: I3a7f09d3da902a85dc2b362f7a160f07c90b97c6
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2024-02-09 13:51:04 +00:00
Skyler Grey f522c2f828 Replace dead chat links
The libera.chat matrix bridge shut down a while ago, so links to our
room on matrix load forever. Additionally, we use matrix rather than the
IRC room so we should not be advertising it when they will only need to
be redirected to the right place if they join.

I run a matrix homeserver (clicks.codes) and have set up a room address
on there. By telling people this room address instead of the libera.chat
one they can join the existing room even though libera.chat is not
hosting matrix.

Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
Change-Id: I8a4224f1a856e7295325196f1b1a80f860ed7962
2024-02-09 12:53:09 +00:00
Méven Car 95cc0f6dd4 browser: move impl of savecomments command to Toolbar dispatch
Signed-off-by: Méven Car <meven.car@collabora.com>
Change-Id: Ifcb34977b72bb0eccd23667deb4750637810e569
2024-02-09 13:27:27 +01:00
Neil Guertin 7416d2a3bd Debug menu cleanup
Extract "splits section" tool
It doesn't seem to do anything though
Also minor edits to "tile pixel grid section" tool

Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: I008acc087e99d83225c1ba3184743e6e5a60e283
2024-02-09 11:41:25 +00:00
Szymon Kłos 111d782d14 es2015: bump uglify-js version
so it will allow es2015

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ic4d572905c274a88323a98d6cb2bb01cba623f46
2024-02-09 12:14:19 +01:00
Szymon Kłos e6683d4d72 es2015: arrow function test
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I5f6c377b404d735515870e1c223f8e83f3b3989c
2024-02-09 12:14:19 +01:00
Szymon Kłos cc29bdefe0 es2015: use const in Control.Header.ts
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I834cfd100b6da8541f8108fbb9041a37fea4d9af
2024-02-09 12:14:19 +01:00
Szymon Kłos 7216290881 es2015: eslint: CStyleData is defined but never used
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I0027ac6fb9bfecb47d07c55e8eebbca0e363f9cc
2024-02-09 12:14:19 +01:00
Szymon Kłos f7482d806e es2015: bump eslint version
- allow ES2015 in JS

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I2f0f17d6fbb49d8205d9825f0bdf74b3076afacc
2024-02-09 12:14:19 +01:00
Ashod Nakashian d3905698b0 wsd: detect unencoded WOPISrc
We should always have an encoded WOPISrc.
We add detection logic to make sure
that all URIs that contain WOPISrc have
it encoded properly. We do this by
comparing the decoded WOPISrc with
the original URI.

Change-Id: Ia0c2a79b009ce105321ad35db3d4f81006e81cb3
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-02-09 03:57:04 -05:00
Gökay Şatır a809541878 Introduce redlinedDeletion type for comments.
When a comment is deleted while tracking is on, we need to show it if showChanges is also on.
This PR improves the handling of tracked changes for comments.

Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I2f6956fa18504995f91e6e1c0fa3d633f4317f5c
2024-02-09 12:52:19 +05:30
Neil Guertin d1822e4298 Cypress test logging improvements
Print full test name in beforeEach and afterEach
Hide xhr requests
Hide repeated actual and expected values on passed assertions
Add information to failure message

Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: Ic1a20481c05afb05b9c29d0bd428b59615d49dc7
2024-02-08 11:55:06 -05:00
Patrick Luby 3bbedaac01 Add iOS build file to .gitignore
Signed-off-by: Patrick Luby <guibomacdev@gmail.com>
Change-Id: Iaac1714a7427b2aaa0998b75e7f377149ed2e43c
2024-02-08 16:19:47 +01:00
Pranam Lashkari 6ec5056ffd annotation: scroll sheet if comments are not fully in view on hovering
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I3c5a3267947e0dfc8f53663ccdc7032ebd1819c3
2024-02-08 17:33:31 +05:30
Skyler Grey 7658c3f774 Fix video position in safari presentation mode
237d9c084a fixed videos rendering in the
wrong place on Safari (and all iOS browsers) in edit mode.
Unfortunately, it made the oversight of missing presentation mode, which
gets its SVGs from a completely different place 🤦.

This commit fixes presentation mode.

After this commit, you will see the video in the right place. Please
note that the white border present in edit mode is not there in
presentation mode, so if you line the video edge up with something in
the presentation you may think the video is offset: I suggest lining
something in the video up rather than the edge of the video object.

Known caveats:
- This commit seems to be a few pixels off with larger border sizes.
  It's a lot better than before, but still not perfect

This commit does not include detection for the upcoming Layer-Based SVG
engine <https://wpewebkit.org/blog/05-new-svg-engine.html>. This means
that this commit will *break* video if this is enabled in Safari debug
mode.  If this commit is merged as-is we need to make a followup to fix
this as soon as possible or we will end up with a similar-but-opposite
bug when that flag is toggled on by default.

Follow-up-to: I205e692e7027ad917bd6f29aa96b0ac70a4c9e04
Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
Change-Id: Ifeea18874d189c80cbb96029706a6f71d6125898
2024-02-08 11:22:10 +00:00
Darshan-upadhyay1110 1ffc8745f3 Add visual hint for freeze pane Lines
- added row/col divider with a transparent gradient over the area where cells are concealed
- shadow color will change accroding to UI theme (Dark/Light)
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: I3fe6f3b35ec84cda5d93fe9a094765cfb75b906c
2024-02-08 09:58:54 +01:00
Caolán McNamara 64a4dab516 we never have an empty std::unique_ptr for .second
and don't check for it in the other cases, so drop it in these ones

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Ie343178869cadc127ee898968fef8f798b6068d5
2024-02-08 08:51:46 +01:00
Caolán McNamara 95c98805a0 cid#336284 COPY_INSTEAD_OF_MOVE
and

cid#336290 COPY_INSTEAD_OF_MOVE
cid#336288 COPY_INSTEAD_OF_MOVE
cid#336282 COPY_INSTEAD_OF_MOVE
cid#318980 COPY_INSTEAD_OF_MOVE
cid#318853 COPY_INSTEAD_OF_MOVE

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Icf6447b8298432359ec37242427ce595f8de4160
2024-02-08 08:49:26 +01:00
Miklos Vajna 944491024f cypress, desktop/writer/top_toolbar_spec.js, 'Insert Special Character.': add conditional 3rd click
My local run failed in this test, because scrolling to the right just
twice resulted in a partially clicked toolbar item, so:

cy.cGet('#Home-container .unospan-CharmapControl').click();

failed. Force the clicking so a half-visible toolbar item also gets the
click.

An alternative would be to add a 3rd click if scrolling to the right is
still possible, but that looks less clean.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: I4caa3dc79df1bbbd5bd0c7e88ef1baea8ae4b17e
2024-02-08 08:25:55 +01:00
Michael Meeks 7387d9cc04 Reduce noise of somewhat excessive trace debug.
Given the surrounding debug we should be able infer the same
state from its absence.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: Id20de40f67ed52dc5535585aec9b5888131d6324
2024-02-07 21:17:48 +00:00
Caolán McNamara d8041e9516 use a path name unrelated to the parent dir name
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I622bc1569c775c57d7f268a063195706bb12be7b
2024-02-07 20:34:51 +00:00
Andras Timar fd6eabf976 Bump version to 24.04.0.0
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Id4b4f65772cab6ebeea6843044b8bdc3be5f07f7
2024-02-07 20:44:51 +01:00
Neil Guertin 4312908312 Add automated user tool to insert rows/columns
Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: I4f0e39784e82ce332b344f71456ac90bbd92a7d6
2024-02-07 17:29:04 +00:00
Neil Guertin 724698adaa Clarify Automated User menu
Move Typer and Randomize User Settings to "Functionality" menu
Rename main toggle to "Enable"

Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: I75709124f835c46ae741c4d51e14ed0b868528ae
2024-02-07 17:24:56 +00:00
Michael Meeks 720ac3d5a6 check: perform simple & quick eslint check before others.
Should save time in CI for simple JS errors.

Change-Id: Ib7e1ab68795cab12f8f5ec461cfed6e84986f440
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2024-02-07 17:13:48 +00:00
Michael Meeks 6c9fb23081 refactor: inline CRS.Simple into CRS.
Cleanup un-used wrapping.

Change-Id: I510f8244e51f2d6f56fdb0aee4046ebfd894c9e1
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2024-02-07 17:13:48 +00:00
Michael Meeks a30df0f583 js: remove obsolete CRS.Earth references.
Change-Id: I3c5a25bd3ff1ee7af01c6190244400ec8d68e47c
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2024-02-07 17:13:48 +00:00
Miklos Vajna c41cfb1999 test: fix -Werror,-Winconsistent-missing-override in WhiteBoxTests
WhiteBoxTests.cpp:660:10: error: 'updateActivityHeader' overrides a member function but is not marked 'override' [-Werror,-Winconsistent-missing-override]
    void updateActivityHeader() const
         ^
../kit/ChildSession.hpp:89:18: note: overridden virtual function is here
    virtual void updateActivityHeader() const = 0;
                 ^

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: I12f21fd9fbe0ba77d2196bfcd1cbdb5ef07e5d06
2024-02-07 15:10:07 +00:00
Neil Guertin 090a52cece Remove cSetLevel (unused)
Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: Ic1eaae123ae70f5f09553d6c69bfa699a02a921f
2024-02-07 07:16:37 -05:00
codewithvk 43db77e66d Add loading indicator for document title saving
To address the lack of visual feedback during the delayed saving of document titles, a loading bar has been introduced below the document name/title input field. This provides users with a clear indication of the ongoing save operation. Additionally, the delay that previously occurred after entering a new document name and pressing Enter has been eliminated, streamlining the save process.

Signed-off-by: codewithvk <vivek.javiya@collabora.com>
Change-Id: I9c5a41f999d02dcfaa24e7925029499cf310b2e0
Signed-off-by: codewithvk <vivek.javiya@collabora.com>
2024-02-07 13:09:13 +01:00
Neil Guertin e3714480f4 Adjust zoom limits for random user
Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: Id6ba3e351214f9bd2676b4935baa8105646d12c0
2024-02-07 11:38:54 +00:00
Hubert Figuière adbe12783f Fix warning for unocommands.py
This resolves the following Python warning.
unocommands.py:319: SyntaxWarning: invalid escape sequence '\('
  f.write('''};

Also make sure the output depends on the script

Signed-off-by: Hubert Figuière <hub@collabora.com>
Change-Id: I11f1e028c9c132f4afc66f9b5a6137b478f00774
2024-02-06 17:50:09 -05:00
Michael Meeks 29fa4a40a1 signal activity dumping: enrich with session details and state.
Cue up some basic state for being signal safe dumped on crash/abort.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: Ibc6713aef2a0e7b878b178b05f0e13c8d40b47fc
2024-02-06 19:29:28 +00:00
Neil Guertin d209ec78cc Upgrade to Cypress 13
Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: I8edbcbb72e1ad016df0ff6a2466d20865f517683
2024-02-06 10:05:11 -04:00
Méven Car 5df8a3eeb9 browser: CanvasSectionContainer initialize boundsList
Also move its declaration to the top of the class section with other
class members.

Signed-off-by: Méven Car <meven.car@collabora.com>
Change-Id: I506423078423074171ab00efb6f2d3fab0c68796
2024-02-06 13:20:33 +01:00
Szymon Kłos d0e2bdc8db Fix error on clipboard download fail
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: If2ea2bb7b756812cffa2125eff54b6526af6b79b
2024-02-06 10:59:50 +01:00
Szymon Kłos e0fbea717a Use encoded WOPISrc in ws requests
This is an issue if we use encoded and decoded WOPISrc for the
same document when using load balancers like HAProxy. It should
be always encoded.

What we did:

cool.html:
http://haproxy.local:9980/browser/2a43eb3236/cool.html?WOPISrc=http%3A%2F%2Fsomewopisrcfileaddress&title=title

ws:
ws://haproxy.local:9980/cool/http%3A%2F%2Fsomewopisrcfileaddress/ws?WOPISrc=http://somewopisrcfileaddress&compat=/ws

These 2 were redirected to different nodes when balancing
was done based on WOPISrc

This is regression from commit a722687c11
browser: simplify getParameterByName

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I17f0c4551404cece0bb995205459f2b38e860795
2024-02-06 10:59:50 +01:00
Ashod Nakashian c1ced10f17 wsd: no need to create existing mount-point
The mount-point must exist already, since
we always mount read-only. There is no
directory to create, but the subsequent
chmod always fails, since the mounted
directory is read-only. Since we started
warning when chmod fails recently,
6208b37a32,
these previously-silent failures became
noisy.

Change-Id: I9efaa89182c016e9a7a5d36cc3da5bfa7ee599c2
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-02-05 16:47:08 +00:00
Ashod Nakashian 398cf7bc82 killpoco: move own logging out of experimental
This enables our own logging (much faster)
out of the experimental flag and enables
permanently.

Not for backporting.

Change-Id: I15161ff4f82a2e298942f81f35aea305bb06f683
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-02-05 16:47:08 +00:00
Ashod Nakashian 3d4efc0030 wsd: header clean up and SPDX license
Change-Id: I6e75b9a6d5ddd192bef18f637ef9c3d5548d9c88
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-02-05 16:47:08 +00:00
Caolán McNamara f04d3450cd rng::getHardRandomHexString is now the same impl as rng::getHexString
so remove one in favor of the other

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I47778f7bce24f0687565aa179b7a3bbea9d95120
2024-02-05 16:19:38 +00:00
Skyler Grey 3922137e27 Hide exportpdf command in the android app
Curently, the exportpdf command hangs in the android app. A fix is in
progress, but as a stopgap solution disabling the command will avoid
people getting stuck

Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
Change-Id: Ied74c3f1fa57356542f3f71e1becbae81f5af7fc
2024-02-05 10:59:50 +00:00
Ashod Nakashian 6174fc3098 wsd: rescue the clipboard before autosaving on unload
This moves the clipboard resque logic earlier to
make sure it is cached before the Kit process
exits.

By putting the clipboard-fetching command before
the save-before-exit, we should get the clipboard
in most-all cases. There are still edge-cases
that can slip through, but they should be much
less frequent, and they will require much more
involved logic (tbd).

Change-Id: I0eff95c28524002a6131fa0a57ef8e09ae21ca59
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-02-05 11:52:02 +01:00
Navid Sassan f1415b6c3e fix the coolwsd.service being disabled after updates (#3125, #7606)
Signed-off-by: Navid Sassan <navid.sassan@linuxfabrik.ch>
Change-Id: I3bd50075f3f18251425527f5debf60bed26cc2d3
2024-02-03 18:48:39 +01:00
Navid Sassan 4cb6344f26 fix error in RPM postinstall scriptlet on RHEL8 (#7071)
Signed-off-by: Navid Sassan <navid.sassan@linuxfabrik.ch>
Change-Id: Ia022c46e7ada12e6e07b2da95e3cdccc026609cc
2024-02-03 18:48:11 +01:00
Neil Guertin b69642e9fb Remove waits from cypress tests
Remove most calls to cy.wait(), reduce and comment the rest.
Stub waitUntilIdle and clickOnIdle
Fix many failing tests
Reduce total cypress runtime by 45%

Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: I62ddfdcbc3ab107654459ebece2d325eca0c6156
2024-02-02 17:05:40 -05:00
Pranam Lashkari 36004ad1bb Calc: Selecting columns by dragging mouse deselect the first column
problem:
drag selection starting from the first row or column would result in first col or row being unselected.
It was caused by index being 0 resulting in condition being false

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I3619f52ccc7fdb2883af547f1c907c07ef27ddf9
2024-02-02 15:34:46 +05:30
Andras Timar d41638ff9b Update Helm Chart with new release 23.05.8.4
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I60134cca4ae3a62fdc2fcf23e43a629034188496
2024-02-02 12:06:03 +05:30
Andras Timar f4e8cba302 Bump version to 23.05.8.4
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I01fce60d8314700902fe83370b9a3276cd7958d1
2024-02-01 16:15:59 +01:00
Besnik Bleta ecce3604f7 Translated using Weblate (Albanian)
Currently translated at 29.1% (136 of 467 strings)

Translated using Weblate (Albanian)

Currently translated at 97.2% (557 of 573 strings)

Co-authored-by: Besnik Bleta <besnik@programeshqip.org>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/sq/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/sq/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I0349b5a79a6454e8a4ea173bf37479814947ea9d
2024-02-01 15:53:55 +01:00
Pedro Pinto Silva 939d3d2072 Avatar list: set Unknown user avatar with 0 margin, fix alignment
It seems when users are unknown we can get a different JSON bject:
Object { ViewId: "8", UserName: "Unknown", Color: 13013504, … }

This is then flagged and set as a different (from the identified
avatars) html element in createAvatar from Control.UserList.js

Better to fix the alignment via CSS

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I94fee62ae14bb47c6f989b4e0bb147f8ffc9ff39
2024-02-01 14:55:58 +01:00
Pedro Pinto Silva 8f97c50869 Calc: sidebar: Hide Styles dialog button
This button does nothing (Sidebar: Style: dialog button [square with arrow])
   - There is no paragraph style dialog in calc
   - The style sidebar pane visible on core side is not implemented in
   online

Better to hide it for now.

Fixes https://github.com/CollaboraOnline/online/issues/8135

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I62db3ec6466782a9dc2cb89deffec8023851de2d
2024-02-01 12:58:49 +01:00
Caolán McNamara 5432562801 getTempFileCopyPath is only used by tests so move to test-only code
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I7c8a122425c689edb3eeb8c80e08470eac347bcc
2024-02-01 10:01:08 +00:00
Aron Budea 81d743281a Capture this explicitely by name
To avoid the following warning in C++20:
error: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20 [-Werror=deprecated]

Signed-off-by: Aron Budea <aron.budea@collabora.com>
Change-Id: I8b195d675ddc87fa6b16f7240a046fac9a7769e1
2024-02-01 08:30:30 +01:00
Michael Meeks 9ff5c5bce6 randomness: abort if we can't get randomness, with a message.
Avoid using LOG_TRC etc. during static initializers before logging
is setup:

 #0  0x00007ffff7362183 in std::string::size() const () from /lib64/libstdc++.so.6
 #1  0x00000000007d1acc in std::operator==<char> (__lhs="", __rhs=<error reading variable: Cannot access memory at address 0xffffffffffffffe8>)
     at /opt/rh/devtoolset-12/root/usr/include/c++/12/bits/basic_string.h:3586
 #2  0x00000000008fdc04 in Poco::Logger::unsafeGet (name="") at src/Logger.cpp:289
 #3  0x00000000008fdb81 in Poco::Logger::get (name="") at src/Logger.cpp:280
 #4  0x000000000066a30f in Log::logger () at /opt/rh/devtoolset-12/root/usr/include/c++/12/bits/new_allocator.h:90
 #5  0x0000000000692f8e in Util::rng::getBytes (length=16) at ../common/Util.cpp:122
 #6  0x0000000000693312 in Util::rng::getSeed () at ../common/Util.cpp:91
 #7  0x000000000044f987 in __static_initialization_and_destruction_0 (__initialize_p=1, __priority=65535) at ../common/Log.hpp:87

Change-Id: I6a32a0d3f50a8e769994737d4c09befe11599b4e
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2024-01-31 20:13:19 +00:00
Andras Timar 165ebe51e8 Bump version to 23.05.8.3
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I9c897a2fb34aa056b8e7143138d78ab1856b2218
2024-01-31 21:11:12 +01:00
Michael Meeks b627777b13 Remove trendy C++ & Poco wrappers for random numbers.
And improve quality of low-grade random numbers significantly.
_rd.entropy() ? is not your friend.

Change-Id: I477557245949334bec517cdeae653c7452ed2049
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2024-01-31 16:28:15 +00:00
Michael Meeks b5701214c2 handle filename collision if necessary.
Change-Id: I9f2e8a16b07e78105ede57f4847c9762ea066368
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2024-01-31 16:28:15 +00:00
Andras Timar 744612e077 fix padding of spinfield unit on Firefox #8031
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Iff389334e534eb386904705b00b917a848a7154e
2024-01-31 16:23:32 +01:00
Michael Meeks da3cebf474 calc & impress: show invalidations debug only for the current part.
Helps us to catch un-necessary invalidations more precisely.

Change-Id: If5d681c025252e9e860e744945b33b68047524d9
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2024-01-31 13:48:26 +00:00
Neil Guertin d0ee423b32 Debug tool for incoming/outcoming/keyboard msgs
Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: I157cf9b651069e8f4c81b4595cddf7748323c062
2024-01-31 12:53:25 +00:00
Neil Guertin d462bf907d Log test name when starting and finishing test
Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: I15b3e0c02ad841872dc9d472672c112860f2bf47
2024-01-31 12:51:56 +00:00
Neil Guertin 38d71bbc9e Add debug tools to resize and delete columns
Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: Icd9daec7c0d267c7f8998186708efa274aadb543
2024-01-31 12:50:36 +00:00
Andras Timar 2a43eb3236 Translated using Weblate (Persian)
Currently translated at 100.0% (5 of 5 strings)

Translated using Weblate (Arabic)

Currently translated at 100.0% (5 of 5 strings)

Translated using Weblate (Malayalam)

Currently translated at 100.0% (5 of 5 strings)

Translated using Weblate (Vietnamese)

Currently translated at 100.0% (5 of 5 strings)

Translated using Weblate (English (South Africa))

Currently translated at 100.0% (5 of 5 strings)

Translated using Weblate (English (New Zealand))

Currently translated at 100.0% (5 of 5 strings)

Translated using Weblate (Upper Sorbian)

Currently translated at 100.0% (5 of 5 strings)

Translated using Weblate (Albanian)

Currently translated at 100.0% (5 of 5 strings)

Co-authored-by: Andras Timar <andras.timar@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ios-app/ar/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ios-app/en_NZ/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ios-app/en_ZA/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ios-app/fa/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ios-app/hsb/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ios-app/ml/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ios-app/sq/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ios-app/vi/
Translation: Collabora Online/iOS app
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I7c246f57c83c6ca8179ba7c1760fb60f7ecaa6e0
2024-01-31 11:47:59 +01:00
Besnik Bleta 74ee22a454 Translated using Weblate (Albanian)
Currently translated at 100.0% (110 of 110 strings)

Translated using Weblate (Albanian)

Currently translated at 100.0% (5 of 5 strings)

Co-authored-by: Besnik Bleta <besnik@programeshqip.org>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/android-app/sq/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ios-app/sq/
Translation: Collabora Online/Android app
Translation: Collabora Online/iOS app
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I3d5fedc3e50895b7cbe34a38a088b47eb8d9cbf9
2024-01-31 11:47:59 +01:00
Andras Timar 83dd570538 Translated using Weblate (Japanese)
Currently translated at 100.0% (5 of 5 strings)

Translated using Weblate (Hebrew)

Currently translated at 100.0% (5 of 5 strings)

Translated using Weblate (Finnish)

Currently translated at 100.0% (5 of 5 strings)

Translated using Weblate (Welsh)

Currently translated at 100.0% (5 of 5 strings)

Translated using Weblate (Ukrainian)

Currently translated at 100.0% (5 of 5 strings)

Translated using Weblate (Turkish)

Currently translated at 100.0% (5 of 5 strings)

Translated using Weblate (Swedish)

Currently translated at 100.0% (5 of 5 strings)

Translated using Weblate (Slovenian)

Currently translated at 100.0% (5 of 5 strings)

Translated using Weblate (Slovak)

Currently translated at 100.0% (5 of 5 strings)

Translated using Weblate (Russian)

Currently translated at 100.0% (5 of 5 strings)

Translated using Weblate (Portuguese (Brazil))

Currently translated at 100.0% (5 of 5 strings)

Translated using Weblate (Portuguese)

Currently translated at 100.0% (5 of 5 strings)

Translated using Weblate (Polish)

Currently translated at 100.0% (5 of 5 strings)

Translated using Weblate (Norwegian Nynorsk)

Currently translated at 100.0% (5 of 5 strings)

Translated using Weblate (Korean)

Currently translated at 100.0% (5 of 5 strings)

Translated using Weblate (Kabyle)

Currently translated at 100.0% (5 of 5 strings)

Translated using Weblate (Italian)

Currently translated at 100.0% (5 of 5 strings)

Translated using Weblate (Indonesian)

Currently translated at 100.0% (5 of 5 strings)

Translated using Weblate (English (Australia))

Currently translated at 100.0% (5 of 5 strings)

Translated using Weblate (Icelandic)

Currently translated at 100.0% (5 of 5 strings)

Translated using Weblate (Greek)

Currently translated at 100.0% (5 of 5 strings)

Translated using Weblate (German)

Currently translated at 100.0% (5 of 5 strings)

Translated using Weblate (Galician)

Currently translated at 100.0% (5 of 5 strings)

Translated using Weblate (French)

Currently translated at 100.0% (5 of 5 strings)

Translated using Weblate (Esperanto)

Currently translated at 100.0% (5 of 5 strings)

Translated using Weblate (English (United Kingdom))

Currently translated at 100.0% (5 of 5 strings)

Translated using Weblate (Dutch)

Currently translated at 100.0% (5 of 5 strings)

Translated using Weblate (Danish)

Currently translated at 100.0% (5 of 5 strings)

Translated using Weblate (Czech)

Currently translated at 100.0% (5 of 5 strings)

Translated using Weblate (Croatian)

Currently translated at 100.0% (5 of 5 strings)

Translated using Weblate (Chinese (Traditional))

Currently translated at 100.0% (5 of 5 strings)

Translated using Weblate (Chinese (Simplified))

Currently translated at 100.0% (5 of 5 strings)

Translated using Weblate (Bulgarian)

Currently translated at 100.0% (5 of 5 strings)

Translated using Weblate (Bosnian)

Currently translated at 100.0% (5 of 5 strings)

Translated using Weblate (Basque)

Currently translated at 100.0% (5 of 5 strings)

Translated using Weblate (Afrikaans)

Currently translated at 100.0% (5 of 5 strings)

Translated using Weblate (Hungarian)

Currently translated at 100.0% (5 of 5 strings)

Translated using Weblate (Asturian)

Currently translated at 100.0% (5 of 5 strings)

Translated using Weblate (Catalan)

Currently translated at 100.0% (5 of 5 strings)

Translated using Weblate (Spanish)

Currently translated at 100.0% (5 of 5 strings)

Translated using Weblate (Norwegian Bokmål)

Currently translated at 100.0% (5 of 5 strings)

Co-authored-by: Andras Timar <andras.timar@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ios-app/af/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ios-app/ast/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ios-app/bg/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ios-app/bs/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ios-app/ca/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ios-app/cs/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ios-app/cy/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ios-app/da/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ios-app/de/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ios-app/el/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ios-app/en_AU/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ios-app/en_GB/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ios-app/eo/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ios-app/es/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ios-app/eu/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ios-app/fi/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ios-app/fr/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ios-app/gl/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ios-app/he/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ios-app/hr/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ios-app/hu/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ios-app/id/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ios-app/is/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ios-app/it/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ios-app/ja/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ios-app/kab/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ios-app/ko/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ios-app/nb_NO/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ios-app/nl/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ios-app/nn/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ios-app/pl/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ios-app/pt/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ios-app/pt_BR/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ios-app/ru/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ios-app/sk/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ios-app/sl/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ios-app/sv/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ios-app/tr/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ios-app/uk/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ios-app/zh_Hans/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ios-app/zh_Hant/
Translation: Collabora Online/iOS app
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ia0de0d87f779abdce16d7612e9b7f3f4e6643a9b
2024-01-31 11:47:59 +01:00
Leif-Jöran Olsson 1e7ad9d0ab Translated using Weblate (Swedish)
Currently translated at 100.0% (573 of 573 strings)

Co-authored-by: Leif-Jöran Olsson <info@friprogramvarusyndikatet.se>
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: Iba238de37342465db45f7ab893b0dd29abd95d68
2024-01-31 11:47:59 +01:00
Software In Interlingua 4bf3374a1d Added translation using Weblate (Interlingua)
Added translation using Weblate (Interlingua)

Co-authored-by: Software In Interlingua <softinterlingua@gmail.com>
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ib83134b3fb6931bfc115036f6e3e8f44ec9077f4
2024-01-31 11:47:59 +01:00
Caolán McNamara 7999601398 add info to profiling script how to install dependencies
and how to sudo it, and tweak PATH to use the suggested info
automatically when sudoed

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I977f04bd38ad76393203c06d21f4a27abd0705ef
2024-01-31 10:10:42 +00:00
Andras Timar 58e6fb7949 Remove obsolete entry from coolkitconfig.xcu
This setting is obsoleted by https://gerrit.libreoffice.org/c/core/+/161667

Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ibd8dd96b4f5d1c0bd2dc0e227d51f714b330596a
2024-01-31 09:37:22 +00:00
Andras Timar acf32365b6 Remove entries that did not work and gave warnings - related to #3491
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I64214f1ea5fc9492306f6111a0f0018ca1372d53
2024-01-31 09:37:22 +00:00
Andras Timar 5c48cbfeb1 coolkitconfig.xcu does not contain autoconf variables any more
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I52c42582f28eeff213229a9fa3a5ecf9e6bf3d1f
2024-01-31 09:37:22 +00:00
Andras Timar 49c0565fb0 update iOS specific translatable strings
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I7b22d0af41b7e75dff7239b2a6c57e8b785b2f5c
2024-01-31 10:26:02 +01:00
Andras Timar ce5ffecce8 iOS app version in Settings
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ia33c6b25bdfbbe201b4aad74441944039d7906bb
2024-01-31 10:26:02 +01:00
Aron Budea 8e111f497d wsd: Add config to customize OS version info
Signed-off-by: Aron Budea <aron.budea@collabora.com>
Change-Id: I12abdd0755883acb7bae126ac3c9c999598b4428
2024-01-31 19:33:18 +10:30
Méven Car b3f487b5d9 widgets: Add a time field
Signed-off-by: Méven Car <meven.car@collabora.com>
Change-Id: I9e3e280db4a0b1f3e3a9df5fe8b6e0bfd97ddaa5
2024-01-30 21:24:49 +01:00
Henry Castro 879c622bc9 browser: fix cell selection if ESC is pressed
If a cell is edited and suddenly press ESC key,
followed by Shitf + Arrow down to select more cells,
so the "uno:InsertMode" state arrives late and
it cannot update the row header selection.

Change-Id: Ib0e4e0699336e07d96efd96559f7b47caa285921
Signed-off-by: Henry Castro <hcastro@collabora.com>
2024-01-30 17:49:13 +00:00
Szymon Kłos b085d3d214 cypress: fix writer/top_toolbar_spec.js insert special character
In 24.04 we activated dialog which informs about idle dialog.
It covers full screen so some tests fail on that.
Add {force: true} to ignore that in failing case.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I11a183deb91ca35a2ddecc63b62bcb82b8ad1d0f
2024-01-30 15:05:46 +01:00
Méven Car 090e4587dd widgets: combobox border-radius handle rtl languages
Signed-off-by: Méven Car <meven.car@collabora.com>
Change-Id: Ib9c6d8e972ff061223af4fa96a63b8e96d21e772
2024-01-30 13:50:44 +01:00
Andras Timar a04b69b393 Bump version to 23.05.8 for iOS app
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I5143f0dce43a9e324a2499c2e1defcebbc3a94fe
2024-01-30 10:25:36 +01:00
Szymon Kłos f623c6edb3 cypress: adjust to simplified notebookbar structure
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Id8748b333354abe2f5f75fb081915f6558243587
2024-01-30 07:17:32 +01:00
Pedro Pinto Silva 4e203938aa Notebookbar: remove inline buttons' float and set it to grid (css)
With "notebookbar: simplify structure with css grid" (Change id
I21421da5395fb9a7e4063a40f85e6af64e267ada) there is no more the need
to apply float rules as the grid layout should be responsible for alignment.

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ie57ffc819f460178eceb03c6796e02a8bc2297e7
2024-01-30 07:17:32 +01:00
Pedro Pinto Silva 8400c1d280 Notebookbar: Don't target Zoomreset button by its id
Zoom reset button ("#zoomreset") was targeted by its ID:
- We shouldn't do this better to instead inherit css class if needed
- With "notebookbar: simplify structure with css grid" (Change id
I21421da5395fb9a7e4063a40f85e6af64e267ada) this becomes more
problematic:
  - Zoom reset button now is align to the top while occupying 2
  rows (hover effect display huge rectangle)
- To do: This button should be a big button instead

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Iaf93a648b10e380b1b8fd5a1cc12e2a88a2accf5
2024-01-30 07:17:32 +01:00
Szymon Kłos 3ddeab3ca8 notebookbar: enable dropdown for currency toolitem
use toolbar from notebookbar_online.ui in the core

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ibeba3acfdae69248ed4de5d6a2df43cb7d1bb47a
2024-01-30 07:17:32 +01:00
Szymon Kłos 2b9558373f notebookbar: simplify structure with css grid
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I21421da5395fb9a7e4063a40f85e6af64e267ada
2024-01-30 07:17:32 +01:00
Michael Meeks fa80ecd2d0 sockets should use CLOEXEC ticket cool#8016
Change-Id: I5f59ed9446a1fda301bb4791f98ca7c1c137e606
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2024-01-29 21:01:39 +00:00
Rash419 65bd383000 release: upload helm chart to docker hub as well
Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I5c9dfe8538478eff0fb947c5c0befbe262dc38da
2024-01-29 21:13:12 +01:00
Miklos Vajna 82915ab865 unit-bad-doc-load: fix this to pass again
Probably went wrong with bf8b9945ab (Warn
on non-async dialog usage when in debug mode., 2024-01-26).

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: Ifb92e0d9431f252cdf26ac92dd428b87e5d6e8e0
2024-01-29 20:50:11 +01:00
Miklos Vajna e68c8617f5 cool#8023 browser, clipboard: add image paste testcase
Fails when we don't check for '<img' in Clipboard.js
_navigatorClipboardGetTypeCallback().

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: Idde76a7da26bac624c15c316be8cac638032c848
2024-01-29 08:50:25 +00:00
Miklos Vajna beb20e6ea4 cool#8023 browser, clipboard: add plain text paste testcase
Fails when Clipboard.js _navigatorClipboardReadCallback() doesn't check
for text/plain.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: I1aa2ce52e48a8d03ec3af24f91a5eaced02f52b8
2024-01-29 08:50:25 +00:00
Miklos Vajna f8bc853fda cool#8023 browser, clipboard: add external HTML paste testcase
This is the case when the HTML has no own marker and we actually parse
the HTML data.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: I8b1690faccbc9ebc6c67557cde8897eccf641fdc
2024-01-29 08:50:25 +00:00
Miklos Vajna d16ac21431 cool#8023 browser, clipboard: add internal HTML paste testcase
Fails with Clipboard.js _navigatorClipboardRead() returning false
unconditionally.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: Ib715cb205a1c01fb3c5208e88285124e68d3c232
2024-01-29 08:50:25 +00:00
Miklos Vajna df46ae93bb cool#8023 browser, clipboard: allow injecting a dummy clipboard for testing
If tests are invoked in parallel, then interacting with the real
browser/system clipboard would lead to unreliable tests.

In practice this is already problematic, because we don't want to ask
for browser permissions when running tests.

Solve the problem by creating a dummy clipboard that can be overwritten
by a test in cypress_test/.

The actual test is not yet added here, this is just the infrastructure.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: Icc9e3900dee7fb4b53454152e5cda13439569bdb
2024-01-29 08:50:25 +00:00
codewithvk 8b5613b03a fix: Impress: Dismiss snackbar on presentation window close
Resolved an issue in Impress's 'Present in Window' feature where the snackbar would persist even after closing the presentation window or pressing the escape key. Now, the snackbar properly disappears as intended, ensuring a cleaner and more intuitive user interface experience.

Signed-off-by: codewithvk <vivek.javiya@collabora.com>
Change-Id: Id491e39d88b433993b5ff83e10c3ca2b1eb8ab40
2024-01-27 12:41:32 +00:00
Michael Meeks 767fa5356d Revert "when exec'ing subprocess, only inherit stdin/stdout/stderr"
This reverts commit 8afaae86a8.
2024-01-27 12:03:53 +00:00
Caolán McNamara 0875d4a74a add pageup and page down to preview navigation
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I8000946e5d4c28288d0ad778b243ce8442c3b8c0
2024-01-27 11:44:48 +00:00
Noel Grandin 8afaae86a8 when exec'ing subprocess, only inherit stdin/stdout/stderr
we want the normal ones, so we see the output in our own console, but we
don't want the others.

It would be better to use posix_spawn_file_actions_addinherit_np here,
but that seems to be currently macos-only.

Signed-off-by: Noel Grandin <noel.grandin@collabora.co.uk>
Change-Id: Ifd42c51f68ca2f340b78066b381cdbc6a23f0abe
2024-01-27 11:26:44 +00:00
Noel Grandin 16228fa0ed speed up spawning/execing child programs
using fork(), the kernel needs to copy the VM data structures,
which can be quite large for the main COOL processes.

I looked into things like vfork(), clone() and using a helper-process,
but it looks like posix_spawn is sufficient for our needs.
Internally it uses clone(CLONE_VM) which means we avoid the VMA copies.

Also, simplify the arguments of spawnProcess,
we don't use the optional params anymore.

Signed-off-by: Noel Grandin <noel.grandin@collabora.co.uk>
Change-Id: I8f943541dc4d7f56c2d36ccbf7b78c40ec14b8e0
2024-01-27 11:26:44 +00:00
Neil Guertin 3162a42459 Add url parameter to launch with random settings
Sets random language and launches debug mode,
turning on the Randomize User Settings tool

Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: I5e06be624cd5383784ea640304980a82e76be229
2024-01-27 11:23:19 +00:00
Neil Guertin e54ab27957 Encapsulate debug overlayData
Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: I768562e7e4a17d65338d0f5a64c4346e2f09f53f
2024-01-27 11:18:51 +00:00
Michael Meeks 6f749b1055 signal activity dumping: log sixteen previous activies not eight.
Eight is a little few with multiple users around.

Change-Id: I0fe3e8a463463b9d7f2bb3e9efdc4aa12e7777e9
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2024-01-26 20:03:45 +00:00
Michael Meeks 27a7199fbd Warn on non-async dialog usage when in debug mode.
Change-Id: Ic623ba04b9e2735735bfd3ecc8738e12942ddee0
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2024-01-26 20:03:45 +00:00
Henry Castro 22c11a3557 browser: fix "Uncaught TypeError: getSectionWithName"
Change-Id: I660ca7cbc9e6ce6eaa3834ebd3c2829c606bc045
Signed-off-by: Henry Castro <hcastro@collabora.com>
2024-01-26 17:13:48 +00:00
Neil Guertin c4e7693ed3 Extract debug tools to new file Debug.js
Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: I20f42d24a6af91bdcf79dc7fe19e1cf25f90bd89
2024-01-26 11:55:17 -05:00
Caolán McNamara 8c3bf40bbe the viewrenderedstate=string string is only used in debugging
so we can pass through the full state that the view reports
which makes it easy to see if a browser side is given a view
whose render settings are unexpected.

e.g. clicking "formatting marks" and not getting a viewrenderedstate
with 'P' or view#1 clicks their "formatting marks" and view#2
receives a 'P'ilcrow state.

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I31d3a8397f02dedf2505bed5dd83576f3138b504
2024-01-26 15:17:48 +00:00
Hubert Figuière 6b09a0fcc2 global: Add L.Browser.mac to not parse user agent everywhere
Signed-off-by: Hubert Figuière <hub@collabora.com>
Change-Id: I3ce0eaa5145c8d8bb40422c9b2d472579b0ec74f
2024-01-26 10:17:14 -05:00
Andras Timar 05334db969 Bump version to 23.05.8.2
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ic4d50e2a63dd6519d3248ddb5ba87890e3ba3f68
2024-01-26 16:16:37 +01:00
Andras Timar 87f7853a56 Bump version to 23.05.8.1
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ic576e7e74c9f0f4580c08faf1923f8056d543250
2024-01-26 16:16:37 +01:00
Andras Timar 2b84bb7ab9 Public key for verifying digital signature of official images from Collabora (cosign)
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I664411a63c2cf518c340afc6f136033fc59bd5bc
2024-01-26 15:47:39 +01:00
Darshan-upadhyay1110 3be156804a Fix cropped userlist popup
- avatar popup list in the top right corener was getting cropped if we have multiple users ( like more than 10=12)
- this patch will make overflow auto and add scroll otion to tackel this issue
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: Id57539cb91a7f4a2a3766e6d01f0e6a00d3af92a
2024-01-26 12:57:10 +01:00
Darshan-upadhyay1110 c5c1de5993 Close all jsdialog when click or change the sheet tab
- jsdialog not getting close when we change tab
- this will close all dialogs whene we click on tab or change the tab

To test this patch
    - add 2 or 3 tab sheet in calc
    - add `autofilter` in any calc sheet tab
    - open autofilter popup
    - change sheet tab

Before this patch:
    - popup not getting close when focus goes away.

After: - all dialog should be closed now whene change the sheet tab.
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: I4eb308e499853a6e1d86b8dc7f60aa938e9c03b9
2024-01-26 12:56:43 +01:00
Miklos Vajna cd37b892f0 cool#8023 clipboard: remove old marker
The old marker is stripped away when Chrome sanitizes the incoming
clipboard HTML. We used to go with both markers to allow an incremental
conversion.

By now, there are no remaining consumers of the old marker, so remove it
before somebody would depend on both markers by accident.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: Ib9dd0e7cf64e1a99d6038a179651ef5e114c6f8b
2024-01-26 09:14:35 +00:00
Henry Castro 6013d78904 browser: remove 'tmp' dependency
It was a dependency of "pako" package, which it was removed.

Change-Id: Ia35b4c4ff9ee5e9ab1f09da398f6d93e51d24a1f
Signed-off-by: Henry Castro <hcastro@collabora.com>
2024-01-25 22:54:13 +01:00
Szymon Kłos da3e22ff74 sidebar: reinitialize after reconnect only
It seems that commit 2d7743cb73
sidebar: initialize after recover from idle

Introduced a regression, in multi user case sometimes
sidebar is shown/hidden by other users. Also app was
slow sometimes what could be a sidebar reloading all
the time.

Revert previous single-init on docloaded and use dedicated
reconnection code to reinitialize sidebar.

This should still fix the problem that when doc become unloaded
with sidebar opened - after reconnecting it was not possible
to close.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I4c66d6e7ca0998ea4461ebca1aa401ca4d65a4a9
2024-01-25 22:17:18 +01:00
Szymon Kłos 50734d335e calc: avoid view jump when focusing formula wizard
Change from commit 85ff10db7a
calc: avoid view jump when using formula wizard

wasn't enough to fix the issue. When we receive grab_focus
action for widget which is hidden outside view - browser
will move the app view leaving blank space on bottom.

Steps to reproduce problem:
    1.    open spreadsheet
    2.    open function wizard (Fx icon next to the formulabar)
    3.    move dialog so it is almost completely outside view (edit field
          with focus has to be outside view)
    4.    select some function and click inside edit field for it's param
    5.    click on the sheet content
    Result: view jumps and moves everything up

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I02c5e7432f46d20ccb8ccb6d84395dddb6eb5409
2024-01-25 13:23:25 +01:00
Szymon Kłos 7cfd624c76 calc: don't jump on merged cell selection with split panes
This issue can be reproduced in spreadsheet with split pane
where some cell is merged and longer than a visible area.
Then every click on that cell will move view to the
beginning of the cell - we don't want that.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I5649b8a24f0948d08ca5cc5b71f39844d620b52e
2024-01-25 09:58:31 +01:00
Szymon Kłos b24a9183d8 cypress: test view jump on merged cell with split pane
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Iec6ff179a28dce802d330a3f59ac484189a25c48
2024-01-25 09:58:31 +01:00
Milo Ivir db903a3d1d Translated using Weblate (Croatian)
Currently translated at 100.0% (573 of 573 strings)

Co-authored-by: Milo Ivir <mail@milotype.de>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/hr/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Iddfec457d77716c1b71a42687935c49dc46a1a52
2024-01-24 22:16:14 +01:00
Software In Interlingua 4a01a28041 Added translation using Weblate (Interlingua)
Added translation using Weblate (Interlingua)

Co-authored-by: Software In Interlingua <softinterlingua@gmail.com>
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I441bc6b6cda63560bf6d27b1d759e3af690a8da4
2024-01-24 22:16:14 +01:00
Ayhan Yalçınsoy 2325319a24 Translated using Weblate (Turkish)
Currently translated at 100.0% (467 of 467 strings)

Co-authored-by: Ayhan Yalçınsoy <ayhanyalcinsoy@pisilinux.org>
Co-authored-by: PhD. Ayhan YALÇINSOY <ayhanyalcinsoy@pisilinux.org>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/tr/
Translation: Collabora Online/Help
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I2365cf1126492cd047057850e8746bb6dc00a199
2024-01-24 22:16:14 +01:00
Szymon Kłos 85ff10db7a calc: avoid view jump when using formula wizard
Steps to reproduce problem:
1.    open spreadsheet
2.    open function wizard (Fx icon next to the formulabar)
3.    move dialog so it is outside view partially
4.    select some function and click inside edit field for it's param
5.    click on the sheet content
Result: view jumps and moves everything up

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I0555fb72a1dcf6de5e969994229e7a36b7811028
2024-01-24 16:09:30 -04:00
Rash419 fe919ac2af adminClusterOverview: reload page after rmsrv message
- previously after rmsrv the card is deleted but if the postion of the
  card is between the cards and middle card is deteled UI will look odd
- so reload the page after rmsrv event

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I111d6232a0f2b098a144ea642c19994bac71186a
2024-01-24 20:56:07 +05:30
Rash419 971254833b adminClusterOverview: fix: y-axis ticks cut off
Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: Ic63cdbd81c93f6491962cb23fa215734b644d92b
2024-01-24 20:56:07 +05:30
Miklos Vajna 59bd6b2854 cool#8023 browser, clipboard: try to use navigator.clipboard only in experimental mode
This is meant to allow getting this in for CODE, but not yet for COOL.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: Ie4c0f5d1154a1acc6d46efdf8d137bc4f30160c8
2024-01-24 13:24:31 +00:00
Miklos Vajna 11eff9ddcd cool#8023 browser, clipboard: try to use navigator.clipboard for paste special, too
The paste notebookbar button already tried to use
navigator.clipboard.read() in Chrome, but paste special still just told
users to go via Ctrl-V.

Additional complexity is that paste special was differentiated from
paste based on if this nagging dialog is open or not.

Fix the problem by:

- extracing the 3 places where we close the paste special dialog into a
  new _checkAndDisablePasteSpecial() method

- extending _checkAndDisablePasteSpecial() to also handle the case when
  paste special is enabled, even if no dialog is open

- extracing the navigator.clipboard.read() call into a new
  _navigatorClipboardRead() method

- and finally using _navigatorClipboardRead() in filterExecCopyPaste()

The intent is not not change behavior in any way for browsers that don't
support this API, like Firefox.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: I6c373a982604c3e934ee4f4f2f76271f0e7cdf3e
2024-01-24 13:24:31 +00:00
Miklos Vajna 62aaafe7b4 cool#8023 browser, clipboard: fix navigator.clipboard for the image case
Pasting images in Chrome worked with Ctrl-V, but not when pressing the
Paste button on the toolbar.

This happened because the old code (not using navigator.clipboard) had a
special-case for images, but the new code lacked something similar.

Bridge the gap by checking for images in
_navigatorClipboardGetTypeCallback() and extracting a new
_pasteTypedBlob() from the old _onFileLoadFunc() to share code.

With this, all of own/external HTML, plain text and image should work
again when using the Paste button and the old popup is no longer shown.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: I1162d21498a27b1b79455dd565175a2178d213d3
2024-01-24 13:24:31 +00:00
Miklos Vajna b49a56f3e3 cool#8023 browser, clipboard: fix navigator.clipboard for the plain text case
Pressing the paste button for the internal HTML case worked in Chrome,
but not for plain text.

If text/html is not on the clipboard, then also try text/plain.

Images still need more work.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: Ibd5eb8b3a7319763bf2ea638f338c8f213ed48ac
2024-01-24 13:24:31 +00:00
Miklos Vajna 7f790d49dd cool#8023 browser, clipboard: try using navigator.clipboard before showing the paste popup
When pasting with Ctrl-V, paste worked already. When pasting with the
paste button, we just opened a popup, telling the user to do Ctrl-V
instead.

The reason for this is that we used to paste using execCommand('paste'),
which typically fails in modern browsers (reportedly not in IE11).

Use the new navigator.clipboard.read() API (available in Chrome, not in
Firefox) to also actually do a proper HTML paste when using the toolbar
button.

Note that the new API strips away <meta> tags, so this depends on
previous work to switch to a <div id="meta-origin"
data-coolorigin="...">...</div> marker around the entire HTML. This also
just implements HTML paste, plain text and images still need adding;
paste special is unchanged for now.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: I2a9340719e99695131f9caa452b5fbfb53573e6c
2024-01-24 13:24:31 +00:00
Neil Guertin 048cf99814 Add Automated User with queue of tasks
Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: If65bf0678301e59a219ad0dd26b40d10737cda03
2024-01-24 06:31:59 +00:00
Ayhan Yalçınsoy 008146e0db Translated using Weblate (Turkish)
Currently translated at 99.5% (465 of 467 strings)

Translated using Weblate (Turkish)

Currently translated at 100.0% (573 of 573 strings)

Co-authored-by: Ayhan Yalçınsoy <ayhanyalcinsoy@pisilinux.org>
Co-authored-by: PhD. Ayhan YALÇINSOY <ayhanyalcinsoy@pisilinux.org>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/tr/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/tr/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I3499a3c41f6cdf86c6cc6fdce41f96241f07445c
2024-01-23 22:44:06 +01:00
Andras Timar 86788f6781 Translated using Weblate (Hungarian)
Currently translated at 61.8% (289 of 467 strings)

Co-authored-by: Andras Timar <andras.timar@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/hu/
Translation: Collabora Online/Help
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I33381d8dd91ca8fde2cb883a21a7e41cd48ace62
2024-01-23 22:44:06 +01:00
Ihor Hordiichuk b0f862db42 Translated using Weblate (Ukrainian)
Currently translated at 100.0% (573 of 573 strings)

Co-authored-by: Ihor Hordiichuk <igor_ck@outlook.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/uk/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ifa2a479f51528bf2d171b11d4038ca77559f1bc4
2024-01-23 21:59:02 +01:00
Sebastiaan Veld 73d57a811c Translated using Weblate (Dutch)
Currently translated at 100.0% (573 of 573 strings)

Co-authored-by: Sebastiaan Veld <sebastiaan.veld@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/nl/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I14c1986d01410ea20efd8c1f527829718d5c24d5
2024-01-23 21:59:02 +01:00
Seungcheon Seo 1b47ec4e69 Translated using Weblate (Korean)
Currently translated at 24.6% (115 of 467 strings)

Translated using Weblate (Korean)

Currently translated at 73.4% (421 of 573 strings)

Co-authored-by: Seungcheon Seo <seoseungcheon@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/ko/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ko/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I8f0976c1b6ea3e77ada2d9ee1137b75eaf0ed58a
2024-01-23 21:59:02 +01:00
Сергій d1456a67a8 Translated using Weblate (Ukrainian)
Currently translated at 100.0% (573 of 573 strings)

Co-authored-by: Сергій <sergiy.goncharuk.1@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/uk/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I82137cf82430a9d59c29d44a9d29c3d2d01fc818
2024-01-23 21:59:02 +01:00
bittin1ddc447d824349b2 5390430722 Translated using Weblate (Swedish)
Currently translated at 100.0% (573 of 573 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: Ibcd16eff64984ef319672f73bda872c0f5b466c1
2024-01-23 21:59:02 +01:00
Andika Triwidada eeadf78007 Translated using Weblate (Indonesian)
Currently translated at 93.1% (534 of 573 strings)

Co-authored-by: Andika Triwidada <andika@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/id/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I4337ed0897c64ee6624adfc379244ecd430faafe
2024-01-23 21:59:02 +01:00
Alexander Gabilondo 86faf293c0 Translated using Weblate (Basque)
Currently translated at 95.8% (549 of 573 strings)

Co-authored-by: Alexander Gabilondo <alexgabi@openmailbox.org>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/eu/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I409269f5bd5f0cc0e7f4c30338634e9cff5a3566
2024-01-23 21:59:02 +01:00
Szymon Kłos 01c1b071c1 IdleHandler: close idle mode on hover
Some people say it's annoying that you need to click
to enable the document. This patch makes it automatic
so popup is closed when mouse enters the app area.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ic5182c46b0687c4441a58d05fa1b8a644af0ba65
2024-01-23 20:41:51 +01:00
Szymon Kłos 2d7743cb73 sidebar: initialize after recover from idle
After document idle (document become unloaded on the server)
when we click in the popup and document was reloaded - if
sidebar was present previously it should be reinitialized.

Without that it was visible but not interactive and it was not possible
to hide it.

1. To test that use small timeout in the coolwsd.xml:
   per_document.idle_timeout_secs
2. Open sidebar
3. Wait for idle
4. Click in the idle popup

Sidebar should be interactive and it should be possible to hide it.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I8d4e970b77860115226dffc4c2b0c585fc091487
2024-01-23 15:30:11 -04:00
Caolán McNamara 20275856ad fix an undefined exception with invalidations on and overlays off
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Iab825c27e618e62dd661fea02e2fb127b1c13cbe
2024-01-23 15:06:40 +00:00
Caolán McNamara 7e0179420e reverse x dimension to get debugging overlays in right place for RTL sheets
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I3f97455c982299d17f06b915c631ee7dc343b356
2024-01-23 15:06:40 +00:00
Caolán McNamara c48eafafb5 cirrus FreeBSD 13 is failing
with:

Not enough compute credits to prioritize tasks!
Failed to start an instance: INVALID_ARGUMENT: Not Found 404 Not Found

disable until it might work again

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: If7c9ac8b8785ff0b13a45f5fb2ae85da9970d8c2
2024-01-23 15:29:08 +01:00
Caolán McNamara 4772c0f6c2 Related: cool#8063 add a debugging metric for 'new tiles %' of all tiles+deltas
https: //github.com/CollaboraOnline/online/pull/8063
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Ia754df62b697251e76076f39f4780784b3289dfc
2024-01-23 09:11:31 +00:00
Miklos Vajna 33310613cd wsd: fix reading past the end of the clipboard in postProcessCopyPayload()
Add a way to search with an offset in findInVector() and then we can
avoid strstr() which assumes a null-terminated input, which may not be
the case.

	READ of size 55 at 0x606000068a56 thread T8 (docbroker_001)
	    #0 0x55d0d6718a5a in StrstrCheck(void*, char*, char const*, char const*) /home/abuild/rpmbuild/BUILD/llvm-15.0.7.src/build/../projects/compiler-rt/lib/asan/../sanitizer_common/sanitizer_common_interceptors.inc:652:5
	    #1 0x55d0d6718882 in __interceptor_strstr /home/abuild/rpmbuild/BUILD/llvm-15.0.7.src/build/../projects/compiler-rt/lib/asan/../sanitizer_common/sanitizer_common_interceptors.inc:669:5
	    #2 0x55d0d71872c9 in ClientSession::postProcessCopyPayload(std::shared_ptr<Message> const&)::$_4::operator()(std::vector<char, std::allocator<char>>&) const /home/vmiklos/git/collaboraonline/online-23.05-san/wsd/ClientSession.cpp:1631:31

During unit-uno-command.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: Id42669d912bab4746d9f7d99a192c4c3f1d175f7
2024-01-23 08:38:26 +00:00
Gülşah Köse ee708edf0d Set titlebar max width equal to dialog container width
Prevents to overflow when the range name is long in conditinal format dialog

Reproducer steps to see long dialog:
1. Create a conditional format where the range is very long (inserted manually)
2. Home > Conditional formatting
3. Create
4. Scroll and paste the following in the Cell Range > Range:
`N3:AL4,N25:AA25,AC25:AL25,X11:AL11,N6:P7,Q5:AL10,Q12:AL13,N5:N7,O5:P5,N14:AL19,N11:P13,A8:C11,N8:P10,C20:J20,O20:AL20,A20:A27,D27,D10,T21:AL24,A3:K7,A12:K19,H8:K10,H27:K27,A28:K89,N26:AL89,M5,D11:K11,Q11:V11,L3:L89,N21:S22,N24:S24,M23:S23,B21:K26`
5. The title never gets truncated and the dialog is too wide

Signed-off-by: Gülşah Köse <gulsah.kose@collabora.com>
Change-Id: Ib845bc84a85d90dec87115cdcd10ae8704163081
2024-01-23 09:23:45 +01:00
Bayram Çiçek 0ad2c24f5c Calc: Don't switch tabs when context menu is triggered
- Trying to open context menu from a sheet tab also
changes the active tab. This occurs when right click
on a sheet tab (or long tap on mobile or tablet)

- moveLeft and moveRight of inactive tabs are
implemented.

- added _moveSheetLR and _moveOrCopySheet functions.

Signed-off-by: Bayram Çiçek <bayram.cicek@collabora.com>
Change-Id: I5b25a8cb363b8e04fd6dcec1f500e7ff2982b678
2024-01-22 12:49:38 +01:00
Miklos Vajna 56abb1c760 common: fix 0 read size in FileUtil::readFile()
/usr/bin/../lib64/gcc/x86_64-suse-linux/12/../../../../include/c++/12/bits/stl_vector.h:1124:9: runtime error: reference binding to null pointer of type 'char'
    #0 0x557ce8c06055 in std::vector<char, std::allocator<char>>::operator[](unsigned long) /usr/bin/../lib64/gcc/x86_64-suse-linux/12/../../../../include/c++/12/bits/stl_vector.h:1124:2
    #1 0x557ce8f16e3f in FileUtil::readFile(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&, int) /home/vmiklos/git/collaboraonline/online-23.05-san/test/../common/FileUtil.cpp:449:37

While running toplevel 'make'. Both 'st.st_size' and 'off' were 0, so
this is an edge case.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: I4899bffa48a761c84b6ee7d42776453b641ff5a7
2024-01-22 09:39:38 +00:00
Andras Timar 125591aff3 Update Helm Chart with new release 23.05.7.5
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ie99c37c4d7d318f1d5a077a233f3d188a7800a1f
2024-01-22 09:39:43 +01:00
Rob Pearson 72c065e9d1 Translated using Weblate (English (South Africa))
Currently translated at 100.0% (573 of 573 strings)

Translated using Weblate (English (New Zealand))

Currently translated at 100.0% (573 of 573 strings)

Translated using Weblate (English (United Kingdom))

Currently translated at 100.0% (573 of 573 strings)

Translated using Weblate (English (Australia))

Currently translated at 100.0% (573 of 573 strings)

Co-authored-by: Rob Pearson <rob.dunedin@gmail.com>
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/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I20c30eb42a473a06f9c6bb4f20bafcb2e4137a16
2024-01-20 20:20:27 +01:00
Yaron Shahrabani 2e6fda9dfb Translated using Weblate (Hebrew)
Currently translated at 98.0% (562 of 573 strings)

Co-authored-by: Yaron Shahrabani <sh.yaron@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/he/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I15bf026cc6c6225977cd947c4be013fc9b676a87
2024-01-20 20:20:27 +01:00
Caolán McNamara 03ada33e0c add a 'Tile update waste' to the top left as a percentage
make it bold with large text :-)

and move the exact figures back down to the bottom left

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I950ce3db288d63aef201f0a6274f778f2f05bc14
2024-01-20 11:53:40 +00:00
Caolán McNamara 79b376c4bd move tile load counts to top left
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Ifc01586209eca7ebbbf2d546adfd7d8095a2e3d4
2024-01-20 11:53:40 +00:00
Caolán McNamara b4a7acca2d increment global update for an empty delta, as we do for individual tile update
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I031522227bc332ba80df70ea46deb600047127e6
2024-01-20 11:53:40 +00:00
Caolán McNamara c4be02c2b3 if img was null then we always deref on calling _applyDelta
in practice presumably img can't be null, seeing as currently hasContent
would then be true, then we always deref on calling this._applyDelta

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I48d2466c0a12e4f7084d57a55a963cea469cf2fa
2024-01-20 11:53:40 +00:00
Miklos Vajna 8d5be1286b cool#8023 clipboard: switch marker from outside-html to inside-body
As pointed out at
<https://github.com/CollaboraOnline/online/pull/8041#discussion_r1457933092>,
it's not valid to have a markup like <div><html>...</html></div>.

The old markup was <html><head><meta ...></head>...</html> and that got
stripped away.

Fix the problem by going with <html><body><div ...>...</div></body></html>
which survives browser sanitize and also is a valid HTML.

Both the browser side and the wsd side is updated to go with this
inside-body markup. This also allows simplifying setTextSelectionHTML(),
because the valid HTML means the browser automatically strips the
<style> element whtn converting to plain text. Also remove a leftover
debug code in ClientSession::preProcessSetClipboardPayload() that I
forgot to remove.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: Icb0b26a37320ae98237222b450a861ebcb2f0c43
2024-01-19 17:07:34 +00:00
Caolán McNamara d40acc283b lang ended up as "(null)" and docs from debug.html didn't load
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Ie007dbdc2d4066c657d2a1cd05c6f4532404495b
2024-01-19 13:01:34 -04:00
Andras Timar 15f49bbb7e Bump version to 23.05.7.5
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I7f842b8fa30191424e0b1cce6a14c4056518a54f
2024-01-19 17:45:30 +01:00
Andras Timar b35aca88c0 Translated using Weblate (German)
Currently translated at 100.0% (573 of 573 strings)

Co-authored-by: Andras Timar <andras.timar@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/de/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I971289ee755819fb0445dfc64c315df5a7c9c681
2024-01-19 17:43:49 +01:00
Lily Logua e684f1a291 Translated using Weblate (German)
Currently translated at 99.8% (572 of 573 strings)

Co-authored-by: Lily Logua <lily.logua@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/de/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ibdb739b9aa086cc9e9816c63d2e5d8845fd334cd
2024-01-19 17:43:49 +01:00
Szymon Kłos 6546ab4501 Use once to call event handler just one time
Use dedicated option, don't do it manually.

https://developer.mozilla.org/en-US/docs/Web/API/EventTarget/addEventListener#once

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I2bce09c496ca7dd3267514bbb30308b7f7afe4f9
2024-01-19 14:40:01 +01:00
Szymon Kłos d331120059 Move document tooltip helper to UIManager
so it is with all other showXXXX helpers

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I0f009a1e380c0c5fd4ac8b43d19af74c25e58b40
2024-01-19 14:40:01 +01:00
Henry Castro 1a31a7baa0 browser: add logging token to send to server side
Change-Id: I252665637a3c5079e0c433f0b1a6c8197105e45f
Signed-off-by: Henry Castro <hcastro@collabora.com>
2024-01-19 10:54:42 +00:00
Henry Castro 9344c8000b wsd: add logging token javascript errors
The "logging.html" end point was intended to capture
unhandled javascript exceptions from client side,
only corner cases, when websocket is disconnected or
very early errors before websocket is created.
So add a token to restrict access.

Change-Id: I64b7d7f3b3ddd83f044fea21dc07285b4465b3be
Signed-off-by: Henry Castro <hcastro@collabora.com>
2024-01-19 10:54:42 +00:00
Henry Castro fc4a8efefe browser: move function "isLocalStorageAllowed"
The variable initialization does not depend on
the conditional M4 macro expansion.

Change-Id: I39f0079ea668768724e0ca3175070e66dc858b0b
Signed-off-by: Henry Castro <hcastro@collabora.com>
2024-01-19 10:54:42 +00:00
Henry Castro 28236b2405 browser: move iOS app init event listeners
The iOS app add event listeners is not a
conditional M4 macro expansion, so
move into the global.js file.

Change-Id: I3adb767cc191a73f0d9197af692e22dd72c6ab46
Signed-off-by: Henry Castro <hcastro@collabora.com>
2024-01-19 10:54:42 +00:00
Henry Castro 26dd660681 browser: remove unused function "Base64ToArrayBuffer"
Change-Id: Ibcdaf6a9e06b7cb169a1e59e8efc952a1291a6e5
Signed-off-by: Henry Castro <hcastro@collabora.com>
2024-01-19 10:54:42 +00:00
Henry Castro 1d08877b01 browser: remove unused function "onSlideClick"
Change-Id: I90ef1fda39c52ac231d6407fb14d1bacde9d3a7e
Signed-off-by: Henry Castro <hcastro@collabora.com>
2024-01-19 10:54:42 +00:00
Henry Castro 1ca7a26b9b browser: simplify no implicit access to L object
Change-Id: I59668b527af914a339bb9799f25edfad5584ea31
Signed-off-by: Henry Castro <hcastro@collabora.com>
2024-01-19 10:54:42 +00:00
Henry Castro e2beaab73a browser: simplifiy global === window
Change-Id: I90b6d1b9c36329736e4bdcb1c13180a2a76fab2d
Signed-off-by: Henry Castro <hcastro@collabora.com>
2024-01-19 10:54:42 +00:00
Henry Castro 8631d573e2 browser: catch exceptions should include the stack trace
Change-Id: Ie7229612b0b08927704155b269d4d2ae77040cad
Signed-off-by: Henry Castro <hcastro@collabora.com>
2024-01-19 10:54:42 +00:00
Henry Castro ad0f65be4d browser: if 'console.error' is invoked also invoke ...
'logServer' to save logging data to server side.

Change-Id: I7e5fd0d0f3aefaade1f34b98f9004af2579ba2bd
Signed-off-by: Henry Castro <hcastro@collabora.com>
2024-01-19 10:54:42 +00:00
Henry Castro a722687c11 browser: simplify getParameterByName
Use built-in URLSearchParams object

Change-Id: I99effedabf39902ccabfa34285d62fc5df2d2e01
Signed-off-by: Henry Castro <hcastro@collabora.com>
2024-01-19 10:54:42 +00:00
Henry Castro 91a5831636 browser: simplify logServer
Use "fetch()" function to save logging client data
to server side.

Change-Id: I8b6a94b7ad7ae02ca00666759e3695867df4d372
Signed-off-by: Henry Castro <hcastro@collabora.com>
2024-01-19 10:54:42 +00:00
Marco Cecchetti 9f6824a620 fix linking error for clang 17
CXXLD    unittest
/usr/bin/ld: ../kit/unittest-Kit.o: in function
`Document::updateEditorSpeeds(int, int)':
/opt/shared/work/libreoffice/repo-online/online-cl/test/../kit/Kit.cpp:1488:(.text._ZN8Document18updateEditorSpeedsEii[_ZN8Document18updateEditorSpeedsEii]+0x2d9):
undefined reference to `ChildSession::getSpeed()'

Signed-off-by: Marco Cecchetti <marco.cecchetti@collabora.com>
Change-Id: If95662647d33f80dd98013b6bc81be897dd6ffc5
2024-01-19 08:56:13 +01:00
Miklos Vajna b5d81234e5 cool#8023 browser: make sure 'style' content doesn't affect plain text selection
cypress_test/integration_tests/desktop/writer/top_toolbar_spec.js's
'Insert hyperlink.' testcase failed with:

	assert	expected **<p>** to have text **text text1link**, but the text was **@page { size: 8.5in 11in; margin: 0.79in }\t\tp { line-height: 115%; margin-bottom: 0.1in; background: transparent }\ttext text1link**

We typically ignore styles on import (and keep the ones in the document
already), so fix the problem by extracting part of stripHTML() into a
new stripStyle() and use that in setTextSelectionHTML(), which restores
the old behavior when it comes to the plain text version of our current
selection.

The old clipboard marker didn't have this problem, but that got removed
entirely with the new clipboard read HTML sanitize, which is even worse.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: Id07bf8bc7b1701e53415bde3cf8773411d830e9c
2024-01-19 08:24:57 +01:00
Miklos Vajna 5dd39010f8 cool#8023 browser: generate and interpret new-style clipboard marker
Seeing:

	short-circuit, internal paste, new style? true

on the console with this, which will work even after our HTML gets
stripped with the new-style clipboard API.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: I74b14a4415fa026cf24909323d23f760997bd392
2024-01-19 08:24:57 +01:00
Miklos Vajna 141e1ce7d0 cool#8023 Remove HTML marker in unit-copy-paste
This really just passed by accident in the past:

	Clipboard with 19 entries:
		[0] - size 5689 type: 'application/x-openoffice-embed-source-xml;windows_formatname="Star Embed Source (XML)"'
		[1] - size 159 type: 'application/x-openoffice-objectdescriptor-xml;windows_formatname="Star Object Descriptor (XML)";classname="47BBB4CB-CE4C-4E80-a591-42d9ae74950f";typename="Collabora OfficeDev 23.05 Spreadsheet";displayname="file:///tmp/user/docs/jexG9292sB0PuaWL/UnitCopyPaste1d0fdba5_empty.ods";viewaspect="1";width="6783";height="2712";posx="0";posy="0"'
		[2] - size 388 type: 'application/x-openoffice-gdimetafile;windows_formatname="GDIMetaFile"'
		[3] - size 1812 type: 'application/x-openoffice-emf;windows_formatname="Image EMF"'
		[4] - size 2222 type: 'application/x-openoffice-wmf;windows_formatname="Image WMF"'
		[5] - size 1073 type: 'image/png'
		[6] - size 79158 type: 'application/x-openoffice-bitmap;windows_formatname="Bitmap"'
		[7] - size 79158 type: 'image/bmp'
		[8] - size 1493 type: 'text/html'
		[9] - size 0 type: '    </tr>'
		[10] - size 0 type: '           <td align="left"><br></td>'
		[11] - size 0 type: '</table>'
		[12] - size 49 type: 'application/x-openoffice-sylk;windows_formatname="Sylk"'
		[13] - size 98 type: 'application/x-openoffice-link;windows_formatname="Link"'
		[14] - size 246 type: 'application/x-openoffice-dif;windows_formatname="DIF"'
		[15] - size 6 type: 'text/plain;charset=utf-8'
		[16] - size 6 type: 'application/x-libreoffice-tsvc'
		[17] - size 977 type: 'text/rtf'
		[18] - size 977 type: 'text/richtext'

Remove the marker, then sizes will match again.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: I1edea3d3a64b9a54cc1c0a0cea703ae66c2aba82
2024-01-19 08:24:57 +01:00
Miklos Vajna da4a376d90 cool#8023 wsd, ClientSession: extend HTML clipboard marker removal
Tested with an extended version of unit-copy-paste, which will appear in
the next commit.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: Ib15b7918fe678c594e2c345cfca27ba2f1c8b516
2024-01-19 08:24:57 +01:00
Miklos Vajna 819dd9c682 cool#8023 wsd, ClientSession: add new style clipboard marker to our HTML output
The HTML we produce on copy has to go via a sanitize process on paste
once we start using the new clipboard API at
<https://developer.mozilla.org/en-US/docs/Web/API/Clipboard/read>.

The trouble is that at least Chrome simply strips away all <meta> HTML
tags, we can no longer recognize our own HTML output, preventing us from
doing a better internal paste.

Fix this by switching to a markup with survives the cleanup: a <div>
around the <html>...</html> fragment.

This just introduces the new markup, doesn't replace the old markup yet.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: I75b00d00064ce452a57185c62f4d99a6d052d867
2024-01-19 08:24:57 +01:00
Henry Castro 8a64290b3a browser: css: fix focus outline dialog container
Change-Id: Iae53fe60aadd17259cf2855c116b5ccbe036402b
Signed-off-by: Henry Castro <hcastro@collabora.com>
2024-01-18 21:37:46 +01:00
Henry Castro d24190e5b4 browser: simplifiy close feedback
Change-Id: I9230c8f673c636e79614c20f4feb4bb8d355e280
Signed-off-by: Henry Castro <hcastro@collabora.com>
2024-01-18 21:37:46 +01:00
Andras Timar 9863ea3a42 Bump version to 23.05.7.4
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Iacbdaa6db4ae40b0ae8abe30e4657848e2c4ff34
2024-01-18 21:33:36 +01:00
Matthaiks e8aeb84d0f Translated using Weblate (Polish)
Currently translated at 100.0% (573 of 573 strings)

Co-authored-by: Matthaiks <kitynska@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pl/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I8c0671f96d086fb642e69ae3cb9033a24cd74855
2024-01-18 21:26:42 +01:00
Andras Timar c1d920c55a Translated using Weblate (Hungarian)
Currently translated at 100.0% (573 of 573 strings)

Co-authored-by: Andras Timar <andras.timar@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/hu/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I5ef51373b50ab9aad00ceec15ebe855fcbde2bea
2024-01-18 21:26:42 +01:00
gallegonovato 2610b3a34c Translated using Weblate (Spanish)
Currently translated at 100.0% (467 of 467 strings)

Translated using Weblate (Spanish)

Currently translated at 100.0% (573 of 573 strings)

Co-authored-by: gallegonovato <fran-carro@hotmail.es>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/es/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/es/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I243e150b28d073042b9292ecd835d6901b24b677
2024-01-18 21:26:42 +01:00
Lily Logua dd697da7d1 Translated using Weblate (German)
Currently translated at 97.9% (561 of 573 strings)

Co-authored-by: Lily Logua <lily.logua@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/de/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ibf984fe7847f061b6af8d04c50e6f8cc617c263a
2024-01-18 21:26:42 +01:00
Michael Meeks f477e17d5e ChildSession - dump much more internal state.
Change-Id: I1441d88968040b6852bf6338e8a4dfcdf8e308f5
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2024-01-18 20:18:56 +00:00
Ashod Nakashian 765447caac wsd: buy url substitution
Change-Id: I38d2988680f5b383a2ada5515927631726ba5362
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-01-18 19:25:59 +00:00
Ashod Nakashian ca05b90d8f wsd: checkfileinfo_override substitution
Change-Id: I6339cb16917e73cfe45e59e42715e5cbc2ae8bb8
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-01-18 19:25:59 +00:00
Ashod Nakashian 77ecca5a54 wsd: branding theme substitution
Change-Id: I05679b894d784e28eebf35bcc0e34ef2fe15d3e5
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-01-18 19:25:59 +00:00
Ashod Nakashian 72ba5ce154 wsd: postmessage substitution
Change-Id: I3b40148f58bab1e39d95d9dc0ee415ebd2450e79
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-01-18 19:25:59 +00:00
Ashod Nakashian 599d03390d wsd: css_variables substitution
Change-Id: I360b3c41fe453fec64ff0880f0e2aa8f627b136c
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-01-18 19:25:59 +00:00
Ashod Nakashian 3113970044 wsd: ui_defaults substitution
Change-Id: I6dc0e9ebf5a6f6dc49aced2671f5ee2453f94f16
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-01-18 19:25:59 +00:00
Ashod Nakashian 0a924e1fe8 wsd: access_header substitution
Change-Id: Ib25228efc5fdf771be6c677604ed1131ca4bdfd1
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-01-18 19:25:59 +00:00
Ashod Nakashian c62cb19dc9 wsd: access_token_ttl substitution
Change-Id: Ifcc2939124e061313cdb547985ec888aed9aa875
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-01-18 19:25:59 +00:00
Ashod Nakashian 5e9fdc8ef8 wsd: access_token substitution
Change-Id: Id55dc5b074d80c3f10fe71e2e0abd90802fe10e9
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-01-18 19:25:59 +00:00
Ashod Nakashian 2bb765c48f wsd: new helper class UserRequestVars
Used to substitute user-request variables
in the files being served.

Change-Id: I7c0046328ec05f2feb7fcd9df9a21e415a1e2513
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-01-18 19:25:59 +00:00
Ashod Nakashian 9555f3228b wsd: test: Sustitution of PreProcessedFile
Change-Id: I2d409f959d31f6a4037c925c9f1ef482d20a4406
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-01-18 19:25:59 +00:00
Ashod Nakashian f8944385fb wsd: new Substitute helper for PreProcessedFile
And enable the round-trip test.

Change-Id: If9a54959514a31f9459e8596b2a4e3847465f1b9
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-01-18 19:25:59 +00:00
Ashod Nakashian d7cbe7488b wsd: improved PreProcessedFile with SegmentType
Change-Id: I34609ae855ebbef395d13c4f77885dd6012685f2
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-01-18 19:25:59 +00:00
Ashod Nakashian 74a8f61586 wsd: better PreProcessedFile and new disabled test
Change-Id: I30a7698c54913f8eeef9a1e02cabaebd907cb7e3
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-01-18 19:25:59 +00:00
Ashod Nakashian 78f5b70695 wsd: new PreProcessedFile class
This class will be responsible for faster
variable replacement to serve the templates.

Change-Id: Ic0d75b0a197c0db75c0988c3b6af400a5b1c35a2
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-01-18 19:25:59 +00:00
Ashod Nakashian 84a0c1eec1 wsd: log cgroup memory and in GB
Change-Id: Ifda8891721228acf50e3348d43e902498e6d884d
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-01-18 18:59:18 +00:00
Ashod Nakashian 3585e7ed83 wsd: rvs: copy the WS before passing it to docBroker
Change-Id: Ie1b995b551453e871da19b13888b1e80ff6643b0
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-01-18 18:59:18 +00:00
Ashod Nakashian 8358fc2293 wsd: rvs: refactor send error and shutdown socket
Change-Id: I0a32dec86e3e9b9b5989da40a25af90ba9b82095
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-01-18 18:59:18 +00:00
Ashod Nakashian 37efb14d35 wsd: rvs: avoid exceptions when handled gracefully already
Throwing exceptions from an async processor does
nothing good. Instead, we handle the consequences of
the error in-place, instead of throwing.

Change-Id: I85c4cee7cc8231453498e4cb9cb07a07b2b417c9
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-01-18 18:59:18 +00:00
Ashod Nakashian a3dcf28bed wsd: rvs: better logging
Change-Id: I56df3835d74502590a5e0104c5dcbee6ad26d827
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-01-18 18:59:18 +00:00
Ashod Nakashian 6fe96901c9 wsd: rvs: support redirection of CheckFileInfo
CheckFileInfo requests can now redirect
to a new URL.

Change-Id: I7579ac37235b1a2ac1d7091366f0046cf889ce15
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-01-18 18:59:18 +00:00
Ashod Nakashian 1f3441cc42 wsd: rvs: refactor CheckFileInfo
This breaks the CheckFileInfo fetching
code in RVS into its own function to
allow for redirection.

Change-Id: I8bfa3a71705c77af8f6e75ed1af75e710767cf19
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-01-18 18:59:18 +00:00
Ashod Nakashian 1164cb90fa wsd: rvs: pass wopiFileInfo around
Change-Id: I52ef794d758a06d66cb91cc7bdb272bd2167b05c
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-01-18 18:59:18 +00:00
Ashod Nakashian 2063b1ba50 wsd: rvs: handle StorageSpaceLowException
Change-Id: I036c577716cc0ba38c9585e6d1009c7ba82a87a3
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-01-18 18:59:18 +00:00
Ashod Nakashian 91029b0efd wsd: rvs: refactor createDocBroker
Change-Id: Iaff50d505aa054a1f13c71a60a247feaede54172
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-01-18 18:59:18 +00:00
Ashod Nakashian 5c5c4559f9 wsd: rvs: add RequestVettingStation
RequestVettingStation is designed to
vet requests before allocating further
resources. Specifically, it is to be
used to verify whether the resource
requested exists and whether or not
the request is allowed and authenticated.

All of this is designed to be done
asynchronously, for performance reasons.

Change-Id: I399fa7bc91741ffee065a6d41acca0756eedc939
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-01-18 18:59:18 +00:00
Ashod Nakashian d1ac610b50 wsd: new setupTransfer into DocBroker
Will be used for parallel loading, when we
transfer thread ownership to DocBroker.

Change-Id: I99dea58afc6c86d7937e32c8b3313676cc46d3b7
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-01-18 18:59:18 +00:00
Ashod Nakashian 733883fb11 wsd: make findOrCreateDocBroker non-static
Needed to reference from ourside COOLWSD.

Change-Id: Ib8a160d912c6d3a2d972cc1fcf231e862f2fe24b
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-01-18 18:59:18 +00:00
Ashod Nakashian 8afdc40aca wsd: pass WopiFileInfo optionally to addSession
This is to allow for having gotten the WopiFileInfo
before creating DocBroker at all.

Change-Id: I0f21442860e09385e504b9a98049af286cc5b404
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-01-18 18:59:18 +00:00
Darshan-upadhyay1110 fdf43d682a Modify freeze cloumns and row style for better user experience
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: I40f716a5989ffb370eb87d34bd9ab0fee5df9dbb
2024-01-18 19:57:52 +01:00
Neil Guertin ae918ea449 Enable Idle test
Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: I109e8c1b4e14be096741ceea5285456b77a38d04
2024-01-18 11:11:33 -05:00
Neil Guertin b168aac5f3 Randomize user settings
Sets dark mode, zoom, spell check, sidebar, and moves around the sheet
in calc

Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: I56adcc425e3d7472f811f6e1e904186554dd432f
2024-01-18 15:45:18 +00:00
Andras Timar 1ac2492bcd Bump version to 23.05.7.3
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I21ff26ef0dfb4f782ccf517dc47239832bc2ef57
2024-01-18 13:08:35 +01:00
Henry Castro acfe9e8f09 browser: close feedback dialog if ESC key is pressed
Change-Id: I251aec921d6f174652e3068dfa06e5dfcaf61965
Signed-off-by: Henry Castro <hcastro@collabora.com>
2024-01-18 12:31:40 +01:00
Andras Timar f66cb26795 update l10n files for Weblate
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I3c25f048b5f20181d9d086f79d0de9d8cb0f2780
2024-01-18 11:56:57 +01:00
Sebastiaan Veld 8033b5dee6 Translated using Weblate (Dutch)
Currently translated at 100.0% (573 of 573 strings)

Co-authored-by: Sebastiaan Veld <sebastiaan.veld@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/nl/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I510356ac49fd60bfbecf4f8e915adf21be8c742e
2024-01-18 11:56:05 +01:00
Rob Pearson b14a808db5 Translated using Weblate (English (New Zealand))
Currently translated at 100.0% (573 of 573 strings)

Translated using Weblate (English (United Kingdom))

Currently translated at 100.0% (573 of 573 strings)

Translated using Weblate (English (Australia))

Currently translated at 100.0% (573 of 573 strings)

Co-authored-by: Rob Pearson <rob.dunedin@gmail.com>
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/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ibe223724d26076520814007f2f3d4a8622cd456c
2024-01-18 11:56:05 +01:00
Rash419 1fbbae0934 admin: add about page for indirection server
- show full license

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: Ia51012b5277e6666733fc83441754276a79759da
2024-01-18 16:15:42 +05:30
Szymon Kłos cad59f4b1c Increase out-of-focus idle timeout to 5 min
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I4cd990a6ed9443c9627f9b27bb3d20f4c498b688
2024-01-17 21:54:27 +01:00
bittin1ddc447d824349b2 ad9fbc97a3 Translated using Weblate (Swedish)
Currently translated at 100.0% (573 of 573 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: I0cbee16b6445fb8d9961b3b4a34ac26c6b067eb3
2024-01-17 21:53:05 +01:00
Matthaiks 8dc06bb989 Translated using Weblate (Polish)
Currently translated at 100.0% (573 of 573 strings)

Co-authored-by: Matthaiks <kitynska@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pl/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I5a20e4df02607f29723e89a832a24679f880c936
2024-01-17 21:53:05 +01:00
Andras Timar 3be25718ae Translated using Weblate (German)
Currently translated at 97.3% (558 of 573 strings)

Translated using Weblate (Hungarian)

Currently translated at 100.0% (573 of 573 strings)

Co-authored-by: Andras Timar <andras.timar@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/de/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/hu/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I3b6a6af0ac7f53de5dd4bea5bfd15d36d9dfc24c
2024-01-17 21:53:04 +01:00
Milo Ivir c3ad46b192 Translated using Weblate (Croatian)
Currently translated at 100.0% (573 of 573 strings)

Co-authored-by: Milo Ivir <mail@milotype.de>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/hr/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I6fb60199f6340aa9c267d827f9c26992765d3857
2024-01-17 21:53:04 +01:00
gallegonovato 93cb09869e Translated using Weblate (Spanish)
Currently translated at 100.0% (573 of 573 strings)

Co-authored-by: gallegonovato <fran-carro@hotmail.es>
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: Icdb787f5f8fe814e0195a78d9614bcfa8813761c
2024-01-17 21:53:04 +01:00
Gökay Şatır 9e47d6a830 Do copy the hyperlink location in readonly mode.
Using internal tricks to accomplish the task.

Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: Ie969a934f17a1b57a5c7acae8aa84baadfc5b5e2
2024-01-17 19:57:58 +01:00
Gökay Şatır 25db900be2 Enable readonly click for all document types.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: Ibcc38ba7af9108305a2efd940060267ec08dbbdf
2024-01-17 19:57:40 +01:00
Pedro Pinto Silva c0f530f9f8 Mobile: fix insert sheet after icon and replace insert cell icon
- Best to use a more generic insertcell icon (used also in core) instead
of re-using the insert cell right. (specially because this button
triggers another option panel)
- Insert sheet after button had the same svg as inset sheet before
  - Fix it and make those more distinguishable

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I90dde5ce35c8d765abf7db1d663ab977b44d26b7
2024-01-17 19:49:31 +01:00
Andras Timar 15fc539615 add missing icons (used by mobile UI)
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I82b1fc1c59452c092f7ff250e3919496458fff46
2024-01-17 19:49:31 +01:00
Gülşah Köse ab6f0ac18d Make drawing area image render delay solution to specific
Regression: 9b752c79b7970585c0cce3026d701b8e8b33d8a0:
	spellcheck dialog drawing area is affected.

Modalpopups are affected from image render delay.
So make the solution specific to modal popups.

Signed-off-by: Gülşah Köse <gulsah.kose@collabora.com>
Change-Id: I9456c347f0fa9da932e4df61f3324bb39544c06d
2024-01-17 18:50:43 +01:00
Andras Timar c74801353d update l10n files for Weblate
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: If13114f941b5a1b7e8b6f617fc3f8708bb9a616a
2024-01-17 14:33:41 +01:00
Andras Timar efb34a3c5e src/map/handler/Map.SlideShow.js contains localisable strings
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Id97b3f6e2f049e7a8075f3b7e8fde2894ca58de1
2024-01-17 14:32:36 +01:00
codewithvk ca5f40a3ea Impress: Disable 'Present in Windows' Button on Mobile and Tablet
This commit hides the 'Present in Windows' button in Impress on mobile and tablet devices. This change is necessary because, on tablets, pressing this button currently results in the presentation being saved as an SVG file, which is not the intended behavior. The button should only be available on desktop environments.

Signed-off-by: codewithvk <vivek.javiya@collabora.com>
Change-Id: I362183d899409f3c3075aeaaa3e50cde11e59925
2024-01-17 11:12:03 +01:00
MOHAMED IRFAN 41faa50420 Added translation using Weblate (Javanese)
Added translation using Weblate (Javanese)

Co-authored-by: MOHAMED IRFAN <MD.irfan@allautopartstore.com>
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I2045315806d4467df745ff3c16da5d9e8ad53b63
2024-01-17 11:02:08 +01:00
Milo Ivir eca7b65c72 Translated using Weblate (Croatian)
Currently translated at 100.0% (564 of 564 strings)

Co-authored-by: Milo Ivir <mail@milotype.de>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/hr/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I0463901441f00e63b04aa2eea178d9f5544f2b8d
2024-01-17 11:02:08 +01:00
Yaron Shahrabani 4751bbe2ee Translated using Weblate (Hebrew)
Currently translated at 99.6% (562 of 564 strings)

Co-authored-by: Yaron Shahrabani <sh.yaron@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/he/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: If859d270e6b03ffe8fc2cb35397670eea67b0146
2024-01-17 11:02:08 +01:00
Сергій 8a549f46b7 Translated using Weblate (Ukrainian)
Currently translated at 100.0% (564 of 564 strings)

Co-authored-by: Сергій <sergiy.goncharuk.1@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/uk/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Idca10bdaf19c1537c18304ca1b208a9e2c1f96a4
2024-01-17 11:02:08 +01:00
bittin1ddc447d824349b2 f74abf6354 Translated using Weblate (Swedish)
Currently translated at 100.0% (564 of 564 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: I822f16d373ae3ed5e40ac8fec31eabf2addb864d
2024-01-17 11:02:08 +01:00
Martin Srebotnjak e5d7c2f728 Translated using Weblate (Slovenian)
Currently translated at 100.0% (564 of 564 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: I15b3aec60d47023c23b9fd83813a48150761aa46
2024-01-17 11:02:08 +01:00
Matthaiks afd470b570 Translated using Weblate (Polish)
Currently translated at 100.0% (564 of 564 strings)

Co-authored-by: Matthaiks <kitynska@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pl/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I039f02f1fade461590fc06b3872bdae92421e28a
2024-01-17 11:02:08 +01:00
Sebastiaan Veld 689a3e6ddf Translated using Weblate (Dutch)
Currently translated at 100.0% (564 of 564 strings)

Co-authored-by: Sebastiaan Veld <sebastiaan.veld@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/nl/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I592c343940c8bcb755b5c55dede8e2a8a2e8e8ae
2024-01-17 11:02:08 +01:00
Andras Timar c06354ab7f Translated using Weblate (Hungarian)
Currently translated at 100.0% (564 of 564 strings)

Co-authored-by: Andras Timar <andras.timar@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/hu/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I35168db29cfc39e0412ed836bd2d10b275bba733
2024-01-17 11:02:08 +01:00
gallegonovato 50b94969d0 Translated using Weblate (Spanish)
Currently translated at 100.0% (564 of 564 strings)

Co-authored-by: gallegonovato <fran-carro@hotmail.es>
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: I899996182c21e85e651436074367e5c063f8754d
2024-01-17 11:02:07 +01:00
Rob Pearson a5dc239686 Translated using Weblate (English (South Africa))
Currently translated at 100.0% (564 of 564 strings)

Translated using Weblate (English (New Zealand))

Currently translated at 100.0% (564 of 564 strings)

Translated using Weblate (English (United Kingdom))

Currently translated at 100.0% (564 of 564 strings)

Translated using Weblate (English (Australia))

Currently translated at 100.0% (564 of 564 strings)

Co-authored-by: Rob Pearson <rob.dunedin@gmail.com>
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/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I7cc254fb1b252e221dc42d78cc2b7cbfad8357f7
2024-01-17 11:02:07 +01:00
Stanislav Horáček a74b320b97 Translated using Weblate (Czech)
Currently translated at 100.0% (564 of 564 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: I1da816353158fe663b5a747456ed9425b3440166
2024-01-17 11:02:07 +01:00
Michael Meeks ca34860bbc clipboard - dump saved clipboard state and details.
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I1dcee22ad66bce1081b88262b58e9999f6e81ada
2024-01-17 09:52:58 +00:00
Darshan-upadhyay1110 20af66cd5d fix spinfieldcontainer regression
- use margin-inline-start/end insted of margin left / right.
- This is important for RTL mode
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: Ie352a247aeedb1d1e9ff331a442a1c5214dbb470
2024-01-17 14:12:30 +05:30
Darshan-upadhyay1110 e8fd4a6ec3 Set child popup position for autofilter
- Child popoup like filter by color or filter by condition has fixed potion on screen
- added calculation child popup in autofilter
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: I8adc33e782bd7a238231ecb80e533a11bc71e5b4
2024-01-17 09:38:58 +01:00
Michael Meeks df5cf10002 drop pako dependency.
Unused in the package since:

    commit 2def6dc3d5
    Date:   Sat Aug 27 17:49:50 2022 +0100

    Switch to zstd image compression.

Change-Id: I785ad2c1522721ed34cf89a1922ee06d5e2507e4
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2024-01-16 22:28:10 -04:00
Miklos Vajna c97e4e2720 admin: handle errors while decoding URLs
#9 0x7f1fb8b06ee7 in __cxa_throw (/usr/lib64/libstdc++.so.6+0xb7ee7) (BuildId: c74eca671e2dd0f063706372d103f8acef88f1e3)
    #10 0x7f1fb808645b in Poco::URI::decode(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, bool) (/usr/lib64/libPocoFoundation.so.92+0x15145b) (BuildId: 32601204eb877c998d0122c4bef1c7c08c8d0285)
    #11 0x55a887e4bb8b in Util::decodeURIComponent(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&) /home/vmiklos/git/collaboraonline/online-fuzz/common/Util.cpp:830:9
    #12 0x55a8874b7547 in AdminSocketHandler::handleMessage(std::vector<char, std::allocator<char>> const&) /home/vmiklos/git/collaboraonline/online-fuzz/wsd/Admin.cpp:392:20

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: I87f358d218e8774d5c82f1fb12e2f56898e7581e
2024-01-16 21:36:43 +01:00
Ashod Nakashian 2d464fd7cc service: change KillMode to mixed
According to the systemd.kill man page, when
KillMode=control-group "all remaining processes
in the control group of this unit will be killed
on unit stop." This ends up killing the kit
processes as well, which prevents saving any
unsaved modifications before shutting down.

The setting we want is 'mixed'. According to
the man page, with mixed "the SIGTERM signal is
sent to the main process while the subsequent
SIGKILL signal is sent to all remaining processes
of the unit's control group."

In other words, with KillMode=mixed, coolwsd
will receive the termination signal and it will
manage its children. But systemd will still
make sure that when coolwsd terminates, or when
it times out, all children and properly killed.

This changes KillMode to mixed.

Change-Id: I4123dfe5143d2cc6223b1542821a10bad86fb449
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-01-16 21:33:52 +01:00
Gökay Şatır be29c99606 Enable readonlyhyperlinkfo functionality for Calc.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I246b58b849ae74aa552c3fd9202c851aad6606ec
2024-01-16 18:39:55 +01:00
Mike Kaganski d5340dae84 Show tooltips ('tooltip: {...}', LOK_CALLBACK_TOOLTIP) in documents
Signed-off-by: Mike Kaganski <mike.kaganski@collabora.com>
Change-Id: Ibc182d026f2504f7c5bedbbf972f38e4a9ba5db9
2024-01-16 15:41:48 +03:00
Mike Kaganski ed642d008d Handle LOK_CALLBACK_TOOLTIP in wsd
Send "tooltip: <payload>" to client for this callback type.
Client-side handling should be implemented separately.

Signed-off-by: Mike Kaganski <mike.kaganski@collabora.com>
Change-Id: I2d1a07dd36fa20a4b5ff785da788356e0f41d62f
2024-01-16 15:41:48 +03:00
Andras Timar 33634effc6 Update uno command translations (Edit Section)
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I4db725c804adeaa123418ada160808d6eca45ec8
2024-01-15 21:46:24 +01:00
Méven Car 3dcbe20a6e Ui: make combobox right side not rounded corners
Signed-off-by: Méven Car <meven.car@collabora.com>
Change-Id: If919ca50dcb3b74b7dda8c25ffb5242dc2a4dfdb
2024-01-15 18:03:34 +01:00
Méven Car 8b2f8916b3 Add Css rules for custom properties fields
Signed-off-by: Méven Car <meven.car@collabora.com>
Change-Id: I4b57a1c04dc67620f4ee010e17fff4f9e677d0de
2024-01-15 18:03:34 +01:00
Caolán McNamara d32785cdbb tsc can report an error but create js output, so 2nd make's 'succeed'
so on failure remove the output so a second attempt doesn't appear
to succeed

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Ibc1f7d46c2946cdc6a4dbcd6181872fb12e19fb6
2024-01-15 16:20:00 +00:00
Szymon Kłos 7ecbcc07f0 cypress: disable failing idle tests
Let's get this merged and try to fix later.
It works locally but not on CI.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I62dda307575f6b8e9eac40b061b2f8c9e609f2e7
2024-01-15 16:07:38 +01:00
Szymon Kłos a776ddf48d cypress: test idle handling
For faster testing use special values in Cypress case.
- check inactivity every 1s
- out of focus timeout - 1s
- inactivity timeout - 7s

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I9dd51f2098486917898b7624ac5ade56521f9e96
2024-01-15 16:07:38 +01:00
Méven Car c9e99706d6 context menu: allow edit section for Writer text sections
Signed-off-by: Méven Car <meven.car@collabora.com>
Change-Id: I40a40a99551a756ad234e73956169018b761fa42
2024-01-15 15:03:24 +01:00
Michael Meeks 5bd1f1d0e8 convert-to: be more tolerant of unusual filenames.
But re-write them anyway to be more sensible.

Change-Id: Ie146f4f84b539ab7e826a1c1b947497acde7e384
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2024-01-15 11:57:55 +01:00
Bayram Çiçek 3c8f6c748b Calc: Update Ctrl+Alt+PageUp/PageDown shortcut strings
- Ctrl+Alt+PageUp and Ctrl+Alt+PageDown shortcut
behavior were updated with 1bf686859d

- Documentation in "Help > Keyboard shortcuts" dialog has
been updated as:

  - Go to next sheet. -> Ctrl+Alt+PageDown
  - Go to previous sheet. -> Ctrl+Alt+PageUp

Signed-off-by: Bayram Çiçek <bayram.cicek@collabora.com>
Change-Id: I5eafb2226788660d53d69c12f698e6c8997c90d9
2024-01-15 11:24:09 +01:00
Michael Meeks 8bbc063076 spdx: improve machine and human readability of headers.
Change-Id: Ie057e46b9f9187d56f451d89abb8d520d591bfba
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2024-01-15 09:31:35 +00:00
Rash419 07393a0571 fix: formatting marks can't be turned off with opened document
- problem: open new document and toggle the formatting marks
  . Formatting marks appears and can't be turned off until you change the
  theme
- its a regression from 9d6b1d1
- canonicalchangeid can happen when turning automatic spell
  checking, formatting mark. we can't rely on viewrenderedstate to
  invalidate tiles on client side
- for example, it we toggle formatting marks viewrenderedstate remain
  same but canonicalid changes

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I6b170caa942c22d55198408c2ca67f14860f2c92
2024-01-15 09:04:26 +00:00
codewithvk f4dc729696 Mobile: Resolve issue where busy popup covers the whole document
Fixes a bug in the mobile version where the busy popup was erroneously covering the entire document. Adjusted the styling to ensure proper display and user experience.

Signed-off-by: codewithvk <vivek.javiya@collabora.com>
Change-Id: I6b3b9900b3f0891f36aacac3e7ab9013d4e93690
2024-01-15 09:35:55 +01:00
Caolán McNamara 3b86ee3ba2 cid#340393 silence Division or modulo by float zero
and

cid#340397 Division or modulo by float zero

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I0e2fae591f726eca0f3a605cd8c09d2de25d8db7
2024-01-15 08:38:31 +01:00
Caolán McNamara 258bffdfb1 cid#340396 Insecure data handling
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I7b0e1e9b1dc87587759cfe04aa9ac89d85e174dd
2024-01-15 08:38:31 +01:00
genofire b282e64cb6 feat(helm): add logging-operator flows
Change-Id: I0bd8de7b4dfd974c1f9e0eeb24eefc229f70431f
Signed-off-by: genofire <geno+dev@fireorbit.de>
2024-01-15 11:33:05 +05:30
Caolán McNamara d07107953c exceptions with triple debugging on but screen overlay toggled off
and just "tile invalidations" toggled on

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I8b8070acd9a7fc39ae176b8cf7a7c89517cd9ec5
2024-01-13 12:05:37 +00:00
Neil Guertin 88989a1361 Resolve TS build error
Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: Ic25805de741d6d71153211de68fb0ccc88e62d40
2024-01-12 19:24:26 +00:00
Andras Timar 131c1d628c Update l10n files for Weblate
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I98907c63eece2f496eebabdfa788753462627012
2024-01-12 17:14:33 +01:00
Rob Pearson 511bfff5b9 Translated using Weblate (English (New Zealand))
Currently translated at 100.0% (467 of 467 strings)

Translated using Weblate (English (South Africa))

Currently translated at 100.0% (560 of 560 strings)

Translated using Weblate (English (New Zealand))

Currently translated at 100.0% (560 of 560 strings)

Translated using Weblate (English (United Kingdom))

Currently translated at 100.0% (560 of 560 strings)

Translated using Weblate (English (Australia))

Currently translated at 100.0% (560 of 560 strings)

Co-authored-by: Rob Pearson <rob.dunedin@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/en_NZ/
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: I1674b6c9bda9b22a97d075c009e9a1bec63a84df
2024-01-12 17:12:26 +01:00
Szymon Kłos b49219dfb5 IdleHandler: sedn userinactive to server
This is followup for commit add3b76eb5
IdleHandler: bring back idle timeout for view

Which restored dimmed view, but I forogot to bring back
sending userinactive message in some cases

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I5b5627847f83d742b9c0c48632aa9d7a5ddd39bc
2024-01-12 09:44:57 +01:00
Gökay Şatır ad76f8fece Fix readonly click event.
Converting the coordinates were inconsistent.
Created JSON was not valid.

This PR fixes the issues.

Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: Ibb9cf4e4517a8e3f2d5fc701fdcf287ce72b6b9c
2024-01-12 08:34:20 +03:00
Szymon Kłos c9595b1d8f Remove unused parameter in Map.SlideShow
Followup for commit 437cce4198
Add dismiss snackbar to windowed and fullscreen presentation

- unused param fro showSnackbar
- not needed comments

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I4012efcac3ced33ab76c7cc2e980d7d086f63e92
2024-01-11 20:26:55 +01:00
NickWingate 6208c0dbf2 Manage closing snackbar
Snackbar only closes once only when user clicks dissmiss,
or the windowed presentation closes. Snackbar doesn't timout.

Signed-off-by: NickWingate <nick.wingate@collabora.com>
Change-Id: Ic42f2621792622b0e76959e7ebf825b680077449
2024-01-11 20:26:55 +01:00
NickWingate 153a6b7d98 Add dismiss snackbar to windowed and fullscreen presentation
When starts presenting an indefinite snackbar apears with
buttons to dismiss the snackbar or close the presentation

Signed-off-by: NickWingate <nick.wingate@collabora.com>
Change-Id: I1232894c9ab0ce12ecaaaf4eec0d19b9caedb883
2024-01-11 20:26:55 +01:00
NickWingate 9050a21786 Add dismiss option to snackbar
Signed-off-by: NickWingate <nick.wingate@collabora.com>
Change-Id: I91dfbb2454163a6b0802be2ef7b4f314e6f32912
2024-01-11 20:26:55 +01:00
NickWingate 56d9735563 Use modal dialogs to alert user they are already presenting
Use uiManager.showInfoModal to notify instead of alert()

Signed-off-by: NickWingate <nick.wingate@collabora.com>
Change-Id: Ide384dafaf21f1b541417fd53d57a8b1bb4fd385
2024-01-11 20:26:55 +01:00
NickWingate fae2e58f7e Focus parent window on windowed presentation close
Signed-off-by: NickWingate <nick.wingate@collabora.com>
Change-Id: I0f3f3e16c863dbcd7f4d238db47695be3ac1bd54
2024-01-11 20:26:55 +01:00
NickWingate 4a82d0187b Prevent multiple presentations from one document
Prevent multiple windowed or fullscreen presentations
from one document instance.

Signed-off-by: NickWingate <nick.wingate@collabora.com>
Change-Id: I0eb290888217478e3e417af6474813bf926f5f58
2024-01-11 20:26:55 +01:00
NickWingate 3b29cddb8b Add present in window option for impress
Add new 'presentinwindow' command which opens
a new window to display the slideshow svg in.

Signed-off-by: NickWingate <nick.wingate@collabora.com>
Change-Id: Ia28fcff0fd4ad64aca60381db202d7073661dc8a
2024-01-11 20:26:55 +01:00
Andras Timar f76e08abcb Bump version to 23.05.7.2
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I2cdd62d76c22fc2e6b51d930db48e0b1ed3fafed
2024-01-11 17:29:13 +01:00
Caolán McNamara ca37064baa iterate over Set.values to avoid mocha warning
./node_modules/typescript/bin/tsc mocha_tests/CanvasSectionContainer.test.ts --outfile mocha_tests/CanvasSectionContainer.test.js --module none --lib dom,es2016 --target ES5
src/layer/tile/TilesSection.ts(134,24): error TS2569: Type 'Set<any>' is not an array type or a string type. Use compiler option '--downlevelIteration' to allow iterating of iterators.
Makefile:926: recipe for target 'mocha_tests/CanvasSectionContainer.test.js' failed

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I6ee6e1f178619bd7d1db012436a3ee17ceb6b7c7
2024-01-11 16:17:07 +00:00
Caolán McNamara 4dfac103d0 fix error TS2694: Namespace 'cool' has no exported member 'TilesSection'.
in make check-local

Making check in browser
make[1]: Entering directory 'jenkins/workspace/tinderbox_online_master_debug_vs_co-23.05/browser'
make  check-am
make[2]: Entering directory 'jenkins/workspace/tinderbox_online_master_debug_vs_co-23.05/browser'
build cool completed
cp -a  "./../cypress_test/data/multiuser/cypress-multiuser.html" "./dist/cypress-multiuser.html"
Added HTML file for multiuser tests
make  check-local
make[3]: Entering directory 'jenkins/workspace/tinderbox_online_master_debug_vs_co-23.05/browser'
./node_modules/typescript/bin/tsc mocha_tests/SheetGeometry.test.ts --outfile mocha_tests/SheetGeometry.test.js --module none --lib dom,es2016 --target ES5
./node_modules/typescript/bin/tsc mocha_tests/Rectangle.test.ts --outfile mocha_tests/Rectangle.test.js --module none --lib dom,es2016 --target ES5
./node_modules/typescript/bin/tsc mocha_tests/CPointSet.test.ts --outfile mocha_tests/CPointSet.test.js --module none --lib dom,es2016 --target ES5
./node_modules/typescript/bin/tsc mocha_tests/CBounds.test.ts --outfile mocha_tests/CBounds.test.js --module none --lib dom,es2016 --target ES5
./node_modules/typescript/bin/tsc mocha_tests/CanvasSectionContainer.test.ts --outfile mocha_tests/CanvasSectionContainer.test.js --module none --lib dom,es2016 --target ES5
src/layer/tile/CanvasSectionContainer.ts(2094,78): error TS2694: Namespace 'cool' has no exported member 'TilesSection'.
Makefile:926: recipe for target 'mocha_tests/CanvasSectionContainer.test.js' failed
make[3]: *** [mocha_tests/CanvasSectionContainer.test.js] Error 2

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I9d6f130b7943165b3937cbbd70efcf0690c94b88
2024-01-11 16:17:07 +00:00
Darshan-upadhyay1110 4a40ff5b94 Improvment in spinfield conatiner class.
Steps to reproduce:
    - Insert chart in odt
    - right click and select properties
    - see dialog looks odd

Problem:
- label element after spinfieldunit getting overlapped
- user can not see label tag after spinfield conatiner

Improvment:
- added css for spinfieldconatiner to fix overlapping issue.
- improve margin for more readability of .jsdialog.ui-text
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: If64d30d10021a023c76852647ef8aebdede0513a
2024-01-11 16:35:46 +01:00
Andras Timar 7d0d35fc25 Change 'Voice Over' to 'Screen Reading'
VoiceOver is the iOS name for the function. Let's pick a more neutral name.
"Screen Reading" was suggested by Michael Meeks.

Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I9d6f7f59d06bf83e0324dc095f3c141e122ad5f4
2024-01-11 15:58:36 +01:00
gallegonovato 00d6125b94 Translated using Weblate (Spanish)
Currently translated at 100.0% (560 of 560 strings)

Co-authored-by: gallegonovato <fran-carro@hotmail.es>
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: Ia0f0fa4a42b349b7da4965291b1fdeaab0bbd095
2024-01-11 15:56:45 +01:00
Ihor Hordiichuk b08afe09d0 Translated using Weblate (Ukrainian)
Currently translated at 100.0% (560 of 560 strings)

Co-authored-by: Ihor Hordiichuk <igor_ck@outlook.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/uk/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ifafa2d169e2367fa97fb6f5422597ffbd17c00fb
2024-01-11 15:56:45 +01:00
bittin1ddc447d824349b2 b87249ae0f Translated using Weblate (Swedish)
Currently translated at 100.0% (560 of 560 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: I9bb235e6780e5c627d0bfd571d4991f04656b536
2024-01-11 15:56:45 +01:00
Matthaiks a020010fd5 Translated using Weblate (Polish)
Currently translated at 100.0% (560 of 560 strings)

Co-authored-by: Matthaiks <kitynska@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pl/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I3986835b8e392309f93c382b284455f9a1faa899
2024-01-11 15:56:45 +01:00
Sebastiaan Veld 2e027c533c Translated using Weblate (Dutch)
Currently translated at 100.0% (560 of 560 strings)

Co-authored-by: Sebastiaan Veld <sebastiaan.veld@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/nl/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ie5cae8040adef0a3261b72fc5bddc633272d3bf4
2024-01-11 15:56:45 +01:00
Andras Timar 40fefbd492 Translated using Weblate (Hungarian)
Currently translated at 100.0% (560 of 560 strings)

Translated using Weblate (German)

Currently translated at 99.4% (557 of 560 strings)

Co-authored-by: Andras Timar <andras.timar@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/de/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/hu/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Idf2e726747eba50cb818c7af5043529221c02704
2024-01-11 15:56:45 +01:00
Aron Budea ed53c00fde kit: Only log smaps_rollup open failure when it actually failed
...not when it wasn't even attempted.

Signed-off-by: Aron Budea <aron.budea@collabora.com>
Change-Id: Ide56c46b1a2d99c3639aace430cec099c6afcbf4
2024-01-11 14:26:54 +00:00
Andras Timar d31134fa0c ensure that progressbar in mobile apps doesn't display 'Collabora Online'
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I972b3acdbabc24df8d51643215c7bf5c9d226a65
2024-01-11 09:40:46 +00:00
Caolán McNamara 534708fad3 cool#7951 add cypress test
add regression test for:
https://github.com/CollaboraOnline/online/issues/7951

confirmed test fails with reverted core commit of:

commit 754cd4309b5b055a05b57f5d25ed128c439f460b
Date:   Mon Jan 8 15:04:07 2024 +0000

    Related: cool#7951 don't invalidate when creating a new view

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I4e2bf09f8fbe36919a9826e8cf29cc5250520dc6
2024-01-11 10:25:42 +01:00
Bayram Çiçek fc51f7d0dd Calc: swap Ctrl+Alt+PageUp / PageDown behavior
If there are multiple sheets, you can switch between them with Ctrl+Alt+PageUp/PageDown.

this shortcut has been updated as:
- Ctrl+Alt+PageUp -> go to the previous tab
- Ctrl+Alt+PageDown -> go to the next tab

Signed-off-by: Bayram Çiçek <bayram.cicek@collabora.com>
Change-Id: Ic88adbe6cdd629b002810770bc19dc7af35d4499
2024-01-10 23:54:45 +01:00
Pedro Pinto Silva b2c2dc88a4 Add missing present in window icon
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I4488d432b71fde92dad643bf2069ea4694708e96
2024-01-10 21:41:32 +01:00
Szymon Kłos d98e57045d Fix uncaught TypeError in isAnyEdit 2
followup for commit 4c70df5

Fixes case:
Uncaught TypeError: app.sectionContainer is undefined
    isAnyEdit CommentSection.ts:991
    isAnyDialogOpen Control.UIManager.js:1141
    _activate Control.IdleHandler.ts:83
    _onSocketOpen Socket.js:256
    connect Socket.js:72
    loadDocument Map.js:326
    <anonymous> main.js:117
    <anonymous> main.js:137

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Id7f6a9e7c5794a00683739366d6584d3bcc3e694
2024-01-10 21:30:12 +01:00
Szymon Kłos c991563fa9 Color selector: add no-fill as button
Make it more unified with "Office" color picker.
Use styling from jsdialog for color picker to match
all other ui components.

Unified with existing "Automatic" button for font color.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I93d1031eaa7d3f3d52dc1812657eef20f4b88a82
2024-01-10 21:22:19 +01:00
Neil Guertin 484214e7c4 Fix failing test desktop/calc/focus_spec.js
Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: Ibcd6a2b3d27cbd56d8a24de5f12316bacbd2061f
2024-01-10 14:21:51 -05:00
Skyler Grey 66797856e9 bind noManualDrag in Path.Drag.js
Previously, noManualDrag was not bound to any object. This worked fine
in SVGGroup.js because the 'this' that was inferred was the correct
'this', however in Path.Drag.js the 'this' inferred was incorrect. This
code path was occasionally called when dragging which caused an
intermittent error while dragging objects in draw

This is a followup to Iab0d3bcca588eaed14469597868a9c4e2dcf8488, which I
believe introduced this regression

Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
Change-Id: If8657133a1b6c000b1096fb2c822d02d728de80c
2024-01-10 18:50:40 +00:00
Andras Timar d732a9b019 Bump version to 23.05.7.1
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I573183c19dfc2de1e44d0c425143528e67354797
2024-01-10 19:39:25 +01:00
Rash419 4484f2e955 fix: can't open readonly files
- regression from d118874bee which was a
  fix for regression from 93b5bdf
- previously we used to send blockingcommandstatus message to the core
  when we were getting statusindicatorfinish but when file is readonly
  we load the document first therefore we get the statusindicatorfinish
  first then wait for the input from the to whether to open the readonly
  document or not
- now we send the blockingcommandstatus only after we get the first
  status message which indicates document is loaded and opened

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I0f4934e085befa6f9a918ac61a265391b217a2f2
2024-01-10 23:30:01 +05:30
Caolán McNamara 0f922c2322 Rewinding and rereading proc/smaps_rollup doubles the values on some kernels
So this only affects the case where we reuse the fd from opening smaps_rollup

Bug seen in 4.15.0 and not in 6.5.10, suspected to be fixed by:
258f669e7e
included in >= v4.19

Test for this in coolwsd and set a flag if it is broken

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I0a4aca77b9d9201e4f70172340296e5eb5460229
2024-01-10 17:30:46 +00:00
Bayram Çiçek 85d08b7534 Calc grouping: fix overlapping issue
- Multiple groups at the same level were overlapping
and therefore, it was not possible to see collapsed
('+') control boxes.
  - note: there should be no space between groups
  to reproduce the issue. If there is a space between
  groups; of course there will be no overlap - which
  is expected.

- This patch fixes this issue and now collapsing
multiple groups at the same level don't overlap.

Signed-off-by: Bayram Çiçek <bayram.cicek@collabora.com>
Change-Id: I93c119031d6730ddb98bfb8c9c87f71bd5cb31b6
2024-01-10 17:51:42 +01:00
Bayram Çiçek 57767a04ae Calc grouping: find parent groups correctly
- groups was using indexes to find their parent groups.
  - this does not work properly and causes following issues:
    - some groups are created but not drawn (so they are invisible)
    - some parent groups does not hide their child groups

- this patch:
  - removes the index-based search of parent groups.
  - implements startPos and endPos based search.

Signed-off-by: Bayram Çiçek <bayram.cicek@collabora.com>
Change-Id: Ia3b85f3d9a032008f8abbc7b38ad2417aa0ec6c8
2024-01-10 17:51:42 +01:00
Neil Guertin 7fcb928503 Fix failing test multiuser/writer/invalidations_spec.js
Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: If34a07e6a70f2c4293e8a2eb9d5e3d5fd14258ac
2024-01-10 18:18:55 +03:00
Paris Oplopoios 5d32ecc2ed Center header/group lines in the pixel grid
Signed-off-by: Paris Oplopoios <paris.oplopoios@collabora.com>
Change-Id: I0b3abf10ee646a8f09d1dcc0a811df9299548e3c
2024-01-10 15:51:49 +02:00
Patrick Luby 73a8f533af Refactor conversion of exported file's URL to system path
File names with spaces or non-ASCII characters are encoded in the URL so
use -[NSURL path] to properly decode and convert the URL to its system
path.

Signed-off-by: Patrick Luby <guibomacdev@gmail.com>
Change-Id: I156bde25e299f1fa42f02c8516c6603eadfe0691
2024-01-10 14:31:46 +01:00
Patrick Luby c4737dfc58 Implement LOK_CALLBACK_EXPORT_FILE for download requests in the iOS app
Have the document's DocumentViewController display a save dialog and
export a copy of the file written by the LibreOffice code.

Signed-off-by: Patrick Luby <guibomacdev@gmail.com>
Change-Id: Idf8136bc321893f18010eb74f9c39b21f0f698d5
2024-01-10 14:31:46 +01:00
Andras Timar b5e00e354a Update l10n files for Weblate
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: If567037a3c3256bc8c640570ad91792084f347c2
2024-01-10 14:03:21 +01:00
Yaron Shahrabani 4780dc04ee Translated using Weblate (Hebrew)
Currently translated at 52.4% (245 of 467 strings)

Translation: Collabora Online/Help
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/he/
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ifa4563e800df4dbb1285639b67086f1a83bf542a
2024-01-10 13:59:51 +01:00
Yaron Shahrabani dd42d7ad64 Translated using Weblate (Hebrew)
Currently translated at 96.4% (538 of 558 strings)

Translation: Collabora Online/UI
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/he/
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ib109fc5ddbe9d00f48f5e19b17e2e186443ebc2e
2024-01-10 13:59:51 +01:00
Martin Srebotnjak 6328bb3cf8 Translated using Weblate (Slovenian)
Currently translated at 100.0% (558 of 558 strings)

Translation: Collabora Online/UI
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/sl/
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I21edb730204cac7de3d8699859bff482bb2d5b14
2024-01-10 13:59:51 +01:00
Adolfo Jayme Barrientos c19a7c2f32 Translated using Weblate (Spanish)
Currently translated at 100.0% (467 of 467 strings)

Translation: Collabora Online/Help
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/es/
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Iad4eeec6828614c1982aef56f4921e5d2ad7566a
2024-01-10 13:59:51 +01:00
Сергій 90367144ee Translated using Weblate (Ukrainian)
Currently translated at 100.0% (558 of 558 strings)

Translation: Collabora Online/UI
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/uk/
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I877f18358f738370d298f2a7d4892b213a9f83b7
2024-01-10 13:59:51 +01:00
Andras Timar c8f3e83427 Translated using Weblate (Russian)
Currently translated at 100.0% (558 of 558 strings)

Translation: Collabora Online/UI
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ru/
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ia29f6f5a064c6437a2b7e463e382e4abbc6461ac
2024-01-10 13:59:51 +01:00
gallegonovato 5152018ce7 Translated using Weblate (Spanish)
Currently translated at 100.0% (467 of 467 strings)

Translation: Collabora Online/Help
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/es/
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Iad4eeec6828614c1982aef56f4921e5d2ad7566a
2024-01-10 13:59:51 +01:00
Adolfo Jayme Barrientos 8d61dce138 Translated using Weblate (Spanish)
Currently translated at 100.0% (467 of 467 strings)

Translation: Collabora Online/Help
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/es/
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Iad4eeec6828614c1982aef56f4921e5d2ad7566a
2024-01-10 13:59:51 +01:00
Ettore Atalan b32539c20b Translated using Weblate (German)
Currently translated at 99.1% (553 of 558 strings)

Translation: Collabora Online/UI
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/de/
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ia9fdf498bf7eb0787beb58ab892766b27bebea00
2024-01-10 13:59:51 +01:00
Stanislav Horáček c8ee59314b Translated using Weblate (Czech)
Currently translated at 100.0% (558 of 558 strings)

Translation: Collabora Online/UI
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/cs/
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I279bae168f577d8bb815e94c6d1e6baf160db594
2024-01-10 13:59:51 +01:00
gallegonovato 12b9af8905 Translated using Weblate (Spanish)
Currently translated at 91.8% (429 of 467 strings)

Co-authored-by: gallegonovato <fran-carro@hotmail.es>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/es/
Translation: Collabora Online/Help
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I6408f75cf9ac26ac72f3005cba5ab7630b178f1f
2024-01-10 13:59:50 +01:00
Adolfo Jayme Barrientos 93acd54b06 Translated using Weblate (Spanish)
Currently translated at 91.8% (429 of 467 strings)

Translated using Weblate (Spanish)

Currently translated at 100.0% (558 of 558 strings)

Co-authored-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/es/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/es/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I6704ac530359599f078e7cea70f961f972aaf0b3
2024-01-10 13:59:50 +01:00
Ayhan Yalçınsoy 930bd7b413 Translated using Weblate (Turkish)
Currently translated at 86.2% (403 of 467 strings)

Translated using Weblate (Turkish)

Currently translated at 98.3% (549 of 558 strings)

Co-authored-by: Ayhan Yalçınsoy <ayhanyalcinsoy@pisilinux.org>
Co-authored-by: PhD. Ayhan YALÇINSOY <ayhanyalcinsoy@pisilinux.org>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/tr/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/tr/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Id1e15bb6cebde8169781d4c9287efe11d851729c
2024-01-10 13:59:50 +01:00
bittin1ddc447d824349b2 239a759b35 Translated using Weblate (Swedish)
Currently translated at 100.0% (558 of 558 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: I598254caf1a314a62cf61abf8d977355fa258077
2024-01-10 13:59:50 +01:00
Mike Kaganski c3a8ff1946 Translated using Weblate (Russian)
Currently translated at 99.8% (557 of 558 strings)

Co-authored-by: Mike Kaganski <mikekaganski@hotmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ru/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I2311abeeada0db779df3721c23961385761a596a
2024-01-10 13:59:50 +01:00
Matthaiks 396753939d Translated using Weblate (Polish)
Currently translated at 100.0% (558 of 558 strings)

Co-authored-by: Matthaiks <kitynska@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pl/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ib0dd79342e8dce841fbf5b87d6fcd260ae9af739
2024-01-10 13:59:50 +01:00
Sebastiaan Veld a782c5ea83 Translated using Weblate (Dutch)
Currently translated at 100.0% (558 of 558 strings)

Translated using Weblate (Dutch)

Currently translated at 100.0% (558 of 558 strings)

Co-authored-by: Sebastiaan Veld <sebastiaan.veld@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/nl/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ie513982c5fd19e8590dd1afb1d49b6d07d5fd72b
2024-01-10 13:59:50 +01:00
Eloy Crespo 505f44fb6e Translated using Weblate (Spanish)
Currently translated at 79.0% (369 of 467 strings)

Translated using Weblate (Spanish)

Currently translated at 100.0% (558 of 558 strings)

Co-authored-by: Eloy Crespo <eloy.crespo@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/es/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/es/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I01b77d987320befda5f3b767307adbd6af2a8c02
2024-01-10 13:59:50 +01:00
Andras Timar 2d31925f47 Translated using Weblate (Hungarian)
Currently translated at 44.7% (209 of 467 strings)

Translated using Weblate (Hungarian)

Currently translated at 100.0% (558 of 558 strings)

Translated using Weblate (German)

Currently translated at 100.0% (467 of 467 strings)

Co-authored-by: Andras Timar <andras.timar@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/de/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/hu/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/hu/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ia10cd62bef4d39f3ee1265e82d35801790f62e1e
2024-01-10 13:59:50 +01:00
Jaume Pujantell 9874bddff6 highlight row/col header when editing
The header highlighting was tied to the position of the cell cursor
so when editing a cell the highlights disapeared with the cell cursor.

This also checks the previous cursor position if there isn't a current one.

Signed-off-by: Jaume Pujantell <jaume.pujantell@collabora.com>
Change-Id: I93bf38b42cbaf091511c05e38bfab331e9532f4a
2024-01-10 11:13:28 +01:00
Hubert Figuière d1b018a765 Click on a resume message to dismiss it
See https://github.com/CollaboraOnline/online/issues/7403

Signed-off-by: Hubert Figuière <hub@collabora.com>
Change-Id: I20aa320a6efbbf8ce19eda34c3d5278a601e15fc
2024-01-10 10:15:29 +01:00
Skyler Grey 5e922869f0 safari: fix contenteditable on old versions
In old versions of Safari, typing text would not input anything. This
appears to be a regression from replacing the input area with a
contenteditable div (1d2607e836).

This seems to be caused by "Safari has the user-select CSS setting as
none by default" (see https://stackoverflow.com/a/31831776/12293760).
From my research, this only affects old versions of Safari, but adding
this CSS fixes it and does not prevent editing in other browsers.

Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
Change-Id: I708708b87f3169f6f69cab28003379519ce114dd
2024-01-09 20:11:06 +01:00
Andras Timar aedb392968 move image to right dir
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I5012d7c251d9d3e19b99ca5dd22b750d422d89ab
2024-01-09 16:31:51 +01:00
Mazin Alhaddad 374ffb97e9 Fix control header entry highlighting
Currently, the header entry initialization does not correctly set the
backgroundColor or hoverColor and fails silently. Fix that by grabbing a known
CSS property.

The on onMouseMove callback also incorrectly sets the previous entry to
the resulting entry before using it within a comparison. This causes the
branch to never be taken.

Fixes #10
Change-Id: I801fd3e6b6759b0ab66a99d68cd0ef80f1f3737e
Signed-off-by: Mazin Alhaddad <mazin@getstate.dev>
2024-01-09 18:27:14 +03:00
Pedro Pinto Silva bc9d8258bb Add missing togglewasm icon "Go offline"
This new button is located at the "File" tab and it's only visible if
the enable wasm node is set to true in the coolwsd.xml
- Add missing svg

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Id9f16f50f589272848519e8a4578e965e4371035
2024-01-09 16:19:38 +01:00
Darshan-upadhyay1110 55970cdf47 Add bg color for active sheet tab in Calc
- add bg-color for active sheet tab in Calc
- this will differentiate selcted tab with the not selcted
- add hover effect on active tab
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: I1e1b4dfa868c30bbf7b3abdd6dafad88777ce19a
2024-01-09 16:18:35 +01:00
Mike Kaganski a2f989e2ef Don't select columns, when clicks are over resize area
This allows to select several columns (or individual cells) at once,
and then double-click on the respective "border" area to resize them
automatically to their content (.uno:SetOptimalColumnWidthDirect).

Signed-off-by: Mike Kaganski <mike.kaganski@collabora.com>
Change-Id: I8b19ecb00a6285fec90d73ca09731b4393be6981
2024-01-09 16:09:45 +01:00
Szymon Kłos add3b76eb5 IdleHandler: bring back idle timeout for view
This fixes regression introduced in
commit 86e8491707
For .eslintrc change, see: https://github.com/typescript-eslint/typescript-eslint/issues/1824

Where per_view.idle_timeout_secs and out_of_focus_timeout_secs
settings didn't have any effect.

<out_of_focus_timeout_secs desc="The maximum number of seconds before dimming and stopping updates when the browser tab is no longer in focus. Defaults to 120 seconds." type="uint" default="120">120</out_of_focus_timeout_secs>

<idle_timeout_secs desc="The maximum number of seconds before dimming and stopping updates when the user is no longer active (even if the browser is in focus). Defaults to 15 minutes." type="uint" default="900">900</idle_timeout_secs>

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Iff3b1c26ec07c67fd9be0fb7264468b0be479978
2024-01-09 15:28:35 +01:00
Szymon Kłos bfc4b1599d IdleHandler: move message strings inside
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I91da2fda73967d11673f59a4c29fb94f2e12f5a0
2024-01-09 15:28:35 +01:00
Szymon Kłos e9cf81f29e Check for comments in isAnyDialogOpen
As described in the comment there was problem with
userinactive command. This is now solved due to:
commit fa006fc3af
Don't make view inactive when dialog is opened

Comment was from commit 6550e713c4
annotation: calc scroll vertical to make selected comment visible

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ica947cc743292ce3610f52011396ec5f9a73593c
2024-01-09 15:28:35 +01:00
Szymon Kłos 845f4a377b Reuse isDimActive function
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I6e5b4eff3006335f9ff368273c8e508ec0ade4be
2024-01-09 15:28:35 +01:00
Miklos Vajna 973d12b2a7 admin: improve error handling on bad json for updateroutetoken
terminate called after throwing an instance of 'Poco::JSON::JSONException'
...
    #11 0x7f70540e006a in Poco::JSON::ParserImpl::parseImpl(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&) (/usr/lib64/libPocoJSON.so.92+0x4206a) (BuildId: 149b3c1772e35fcbe5692d435f1b06820707bad3)
    #12 0x556a70a9511b in Poco::JSON::Parser::parse(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&) /usr/include/Poco/JSON/Parser.h:202:9
    #13 0x556a70a9511b in JsonUtil::parseJSON(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&, Poco::SharedPtr<Poco::JSON::Object, Poco::ReferenceCounter, Poco::ReleasePolicy<Poco::JSON::Object>>&) /home/vmiklos/git/collaboraonline/online-fuzz/./common/JsonUtil.hpp:37:50
    #14 0x556a70a7edde in AdminSocketHandler::handleMessage(std::vector<char, std::allocator<char>> const&) /home/vmiklos/git/collaboraonline/online-fuzz/wsd/Admin.cpp:325:13

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: Iebe0f5d689032a8b3c1e5d38c5ee80d344d1cbed
2024-01-09 14:13:46 +00:00
Szymon Kłos 4c70df511b Fix uncaught TypeError in Comment.isAnyEdit
Steps to reproduce:
1. open empty spreadsheet
2. see error in the browser console:

Uncaught TypeError: Cannot read properties of undefined (reading 'getSectionWithName')
    at Comment.isAnyEdit (CommentSection.ts:991:42)
    at IdleHandler._activate (Control.IdleHandler.ts:57:89)
    at NewClass._onSocketOpen (Socket.js:256:19)

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I3584c63ae42e6e64b730907bbd33a7b0876da01a
2024-01-09 14:17:48 +01:00
Neil Guertin 0dad48ad18 Fix failing test multiuser/writer/annotation_spec.js
Wait for animation after annotation save

Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: Id1be5607e15ac23596e527c3e27fca83c91ee380
2024-01-09 07:58:12 -05:00
Michael Meeks ea6551ff2b spdx: improve machine and human readability of headers.
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I2432e3c437f3a68c361da55d3aaf7a53c3f37838
2024-01-09 11:49:11 +00:00
Gökay Şatır 10fc559c63 Take the socket messge change back when in readonly mode.
In readonly mode, mouse events are sent from the browser side. I had changed it.
It may cause unexpected behaviour when it is activated for Calc. So i am taking it back.

Now readonly mode is sending one more event (readonlyclick) on click.

Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I8af51afe0e07164d065ad0fbbc1452b364bc2dee
2024-01-09 13:06:15 +03:00
Gökay Şatır e8277a7d30 Add condition for notebookbarUI.
In readonly mode notebookbar is not enabled.

Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I4fe67a1990e5a847f6c61c171979f0de2ba3ea81
2024-01-09 13:06:15 +03:00
Mike Kaganski fa4e7ab95e Fixes: #6956 Escape payload strings sent in JSON
Not only quotes must be escaped; JSON.stringify does it correctly.

Signed-off-by: Mike Kaganski <mike.kaganski@collabora.com>
Change-Id: Idd7deca3cb9154eaece48ef3b197eb75d975f252
2024-01-09 10:26:20 +01:00
Caolán McNamara 49361bb06f _debugGetTimeArray not found
since:

commit dbc4227fa3
Date:   Tue Jan 2 12:37:45 2024 +0000

    debug menu: initialize state on enabling debug.

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I600583b670a0cd5846c95d297703c9d79f98a71a
2024-01-09 09:41:27 +01:00
Szymon Kłos a5032aa54a Prevent from errors when palette doesn't exists
- in case we will remember in localStorage old name which is no longer
  present
- also add support dor DocumentColors when it will arrive
  from core

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I9d4b5d91f424c8295da072836331e459d79c96d1
2024-01-09 09:40:46 +01:00
Szymon Kłos 7a36a8ea1a Add color palette selector to Calc and Impress
It will be possible to use "theme colors" then.
It requires core part: https://gerrit.libreoffice.org/c/core/+/161771
sc: announce theme colors with lok callback

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I74552027f57086910358e589ff3130655a236c53
2024-01-09 09:40:46 +01:00
Miklos Vajna d6822cd4d2 test, UnitUNOCommand: also accept json payloads for statechanged
The JS code does the same at
browser/src/layer/tile/CanvasTileLayer.js:3074.

In preparation of picking core.git
51d8a2ef54751403fa707816e27ddb4e7faa8231 (cool#7492 sfx2 lok: fix bad
view id / statusbar string on async binding update, 2024-01-08) to
core.git co-23.05: this online.git commit should go in first to avoid
breakage.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: I652e5c738b7e137970a820de2d71f9c03ba6df7e
2024-01-09 08:36:29 +00:00
Rash419 81fc2d296d release: sign helm chart with gpg signature
Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I8cfcaf477ccd78a7bf1c9e5dac349d3d6d5b4d59
2024-01-09 07:20:21 +01:00
Miklos Vajna 28665d45d2 wsd, DocumentBroker: check for missing child process
wsd/DocumentBroker.cpp:2861:32: runtime error: member call on null pointer of type 'WSProcess'
    #0 0x55cbce63d7d9 in DocumentBroker::disconnectSessionInternal(std::shared_ptr<ClientSession> const&) /home/vmiklos/git/collaboraonline/online-fuzz/wsd/DocumentBroker.cpp:2861:32
    #1 0x55cbce66c74d in DocumentBroker::removeSession(std::shared_ptr<ClientSession> const&) /home/vmiklos/git/collaboraonline/online-fuzz/wsd/DocumentBroker.cpp:2764:13
    #2 0x55cbce944614 in ClientSession::_handleInput(char const*, int) /home/vmiklos/git/collaboraonline/online-fuzz/wsd/ClientSession.cpp:886:24
    #3 0x55cbced66255 in Session::handleMessage(std::vector<char, std::allocator<char>> const&) /home/vmiklos/git/collaboraonline/online-fuzz/common/Session.cpp:271:13

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: I2a6f830de82ec8189312e57e6554a57909a0aaaa
2024-01-08 09:13:27 -05:00
Miklos Vajna 08ecc20a90 CanvasTileLayer: allow empty string as payload of the state changed callback in json, too
Once core emits JSON format for the LOK_CALLBACK_STATE_CHANGED callback
for the .uno:RowColSelCount uno command, select 2 cells in Calc ->
status bar is updated correctly, now select a single cell again in Calc
-> status bar is not updated. We want to emit JSON format for more uno
commands in the future, for example that is meant to allow testing the
fix for the statusbar part of
<https://github.com/CollaboraOnline/online/issues/7492>.

CanvasTileLayer's _onStateChangedMsg handles a mix of plain text and
json payloads, and the plain text case already allows an empty payload,
while the JSON one does not.

Fix the problem by assuming the intention in commit
403fe10c9d (jsdialog: handle graphic items
updates, 2019-11-28) was to make sure the json key is not missing, not
to block empty string values for the 'state' key.

Once this is in, core.git can emit JSON for .uno:RowColSelCount, can say
which locale was used to generate the payload and we can assert the
correct language in a test.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: I145a552e88fdc869a151a0bd07e8b42474ffd6b8
2024-01-08 10:11:17 +00:00
Ashod Nakashian 61cf7b9601 wsd: clean up unused header includes
Clang-tidy recommendation driven header
include clean-up.

Change-Id: I30c32866b7798e70df0463ee6bc7a0bcc3de5049
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-01-08 08:38:48 +01:00
Michael Meeks 4dc2cd4e16 logging: reduce excessive logging noise re: tiles-on-fly.
Also better explain that we dump sessions twice.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: Iec3ad5b9f78f0572d43cfba1191bcec3584c0092
2024-01-08 08:32:12 +01:00
Michael Meeks 29db7db278 logging: calm down dropping of on-the-fly messages.
These tend to be sent at small increments of time, so have some
hysteresis to aggregate drops. Stalled JS such as in a debugger
or a client not responding can cause this for quite some tiles.

Change-Id: Ia807d4ba0ac26a95cad435cba9ed191f22706041
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2024-01-08 08:32:12 +01:00
Andras Timar 890cda88a7 do not display 'Go Offline' button when WASM is not enabled
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I02bde8b9f6ca5cfadc036ae930e7f6eeb23c2587
2024-01-06 19:03:13 +01:00
Andras Timar 57f5ee5025 enable l10n of 'Go Online' and 'Go Offline' labels
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ibc9cb62047c2bd7c8082ea4a222417e9c6247c54
2024-01-06 19:03:13 +01:00
Andras Timar 6c24a501cf for mobile apps 'Save As' is the correct label
Download does not mean much in mobile app context.
It's an offline tool. We can save (or export) the
document in a different file format.

Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I7b5cd8cd49258803c21bd21ff087008fe715c613
2024-01-06 19:03:13 +01:00
Neil Guertin 0dd5dd6f60 Rename getFrame() to cframe()
Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: I1f220687eb972d4b3d65cb26fe0201b1ccd24993
2024-01-05 07:12:17 -05:00
Andras Timar 71f8939c98 Update l10n files for Weblate
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I742bb762df3448fab70428ae575f6616f2d6d71a
2024-01-05 13:07:52 +01:00
gallegonovato a5eb4d8224 Translated using Weblate (Spanish)
Currently translated at 78.8% (368 of 467 strings)

Translated using Weblate (Spanish)

Currently translated at 100.0% (554 of 554 strings)

Co-authored-by: gallegonovato <fran-carro@hotmail.es>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/es/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/es/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I04039a166f235b4becfc0a4f263564c8d1db0abe
2024-01-05 13:06:32 +01:00
Alexander Gabilondo ec148473a3 Translated using Weblate (Basque)
Currently translated at 78.8% (368 of 467 strings)

Co-authored-by: Alexander Gabilondo <alexgabi@openmailbox.org>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/eu/
Translation: Collabora Online/Help
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ic6a36fdd21e58f5c9d5b1be73de5ced722f73002
2024-01-05 13:05:12 +01:00
Sveinn í Felli 92747be523 Translated using Weblate (Icelandic)
Currently translated at 97.6% (541 of 554 strings)

Co-authored-by: Sveinn í Felli <sv1@fellsnet.is>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/is/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I71c75b5bd1830ed7418a8e88f83c9ea48ba46637
2024-01-05 13:05:12 +01:00
Stanislav Horáček fa1f8779a3 Translated using Weblate (Czech)
Currently translated at 100.0% (467 of 467 strings)

Translated using Weblate (Czech)

Currently translated at 100.0% (554 of 554 strings)

Co-authored-by: Stanislav Horáček <stanislav.horacek@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/cs/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/cs/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I19dd29ea5c45d9658d9bd9775b1b64706d94f1f4
2024-01-05 13:05:12 +01:00
Ayhan Yalçınsoy e814cdf183 Translated using Weblate (Turkish)
Currently translated at 85.8% (401 of 467 strings)

Translated using Weblate (Turkish)

Currently translated at 98.0% (543 of 554 strings)

Co-authored-by: Ayhan Yalçınsoy <ayhanyalcinsoy@pisilinux.org>
Co-authored-by: PhD. Ayhan YALÇINSOY <ayhanyalcinsoy@pisilinux.org>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/tr/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/tr/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I466698cf528448833e0042a141f49bbd2668c553
2024-01-05 13:05:11 +01:00
Martin Srebotnjak 730e9a3d0b Translated using Weblate (Slovenian)
Currently translated at 100.0% (467 of 467 strings)

Translated using Weblate (Slovenian)

Currently translated at 100.0% (554 of 554 strings)

Co-authored-by: Martin Srebotnjak <miles@filmsi.net>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/sl/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/sl/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I0d687f46e979aa49ebf7fc0ccf8b50f97305e5c4
2024-01-05 13:05:11 +01:00
Rob Pearson c69d955514 Translated using Weblate (English (South Africa))
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% (554 of 554 strings)

Translated using Weblate (English (United Kingdom))

Currently translated at 100.0% (467 of 467 strings)

Translated using Weblate (English (Australia))

Currently translated at 78.5% (367 of 467 strings)

Translated using Weblate (English (United Kingdom))

Currently translated at 100.0% (554 of 554 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_ZA/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/en_GB/
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: I5ba18be10ffd151f12c53a6023106e1b606b180b
2024-01-05 13:05:11 +01:00
bittin1ddc447d824349b2 6e526f0128 Translated using Weblate (Swedish)
Currently translated at 100.0% (467 of 467 strings)

Translated using Weblate (Swedish)

Currently translated at 100.0% (554 of 554 strings)

Co-authored-by: bittin1ddc447d824349b2 <bittin@reimu.nl>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/sv/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/sv/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ica06508526c0abbf644204205ac2b71f9ec11f6b
2024-01-05 13:05:11 +01:00
Ettore Atalan e64464412f Translated using Weblate (German)
Currently translated at 99.1% (463 of 467 strings)

Translated using Weblate (German)

Currently translated at 99.2% (550 of 554 strings)

Translated using Weblate (German)

Currently translated at 98.5% (460 of 467 strings)

Translated using Weblate (German)

Currently translated at 98.0% (458 of 467 strings)

Translated using Weblate (German)

Currently translated at 97.8% (457 of 467 strings)

Translated using Weblate (German)

Currently translated at 93.3% (436 of 467 strings)

Co-authored-by: Ettore Atalan <atalanttore@googlemail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/de/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/de/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I828e5ef8e9ac572c696970c42eec333c16a87092
2024-01-05 13:05:11 +01:00
Milo Ivir c9eabdd464 Translated using Weblate (Croatian)
Currently translated at 100.0% (467 of 467 strings)

Translated using Weblate (Croatian)

Currently translated at 100.0% (467 of 467 strings)

Translated using Weblate (Croatian)

Currently translated at 100.0% (554 of 554 strings)

Translated using Weblate (Croatian)

Currently translated at 100.0% (110 of 110 strings)

Co-authored-by: Milo Ivir <mail@milotype.de>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/android-app/hr/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/hr/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/hr/
Translation: Collabora Online/Android app
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I4caa22b84638934e6f8474cbdad5ecd9e5ffc51e
2024-01-05 13:05:11 +01:00
Ihor Hordiichuk 841a70940d Translated using Weblate (Ukrainian)
Currently translated at 100.0% (554 of 554 strings)

Translated using Weblate (Ukrainian)

Currently translated at 100.0% (467 of 467 strings)

Co-authored-by: Ihor Hordiichuk <igor_ck@outlook.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/uk/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/uk/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I373c4bce7a32783a9d405731fa8c0158278bf6f2
2024-01-05 13:05:11 +01:00
Sebastiaan Veld 63ac4c305b Translated using Weblate (Dutch)
Currently translated at 100.0% (467 of 467 strings)

Translated using Weblate (Dutch)

Currently translated at 100.0% (554 of 554 strings)

Co-authored-by: Sebastiaan Veld <sebastiaan.veld@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/nl/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/nl/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I7e6d0470da2758a1d98ed45ce2b3d1e8f2a6acfa
2024-01-05 13:05:11 +01:00
Matthaiks 083f0b06f3 Translated using Weblate (Polish)
Currently translated at 100.0% (467 of 467 strings)

Translated using Weblate (Polish)

Currently translated at 81.1% (379 of 467 strings)

Translated using Weblate (Polish)

Currently translated at 100.0% (554 of 554 strings)

Co-authored-by: Matthaiks <kitynska@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/pl/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pl/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ic5af4a7980c51e36c6b5b5af9e1eaf173f23d09d
2024-01-05 13:05:11 +01:00
Andras Timar c9a4aa15b1 Translated using Weblate (Hungarian)
Currently translated at 100.0% (554 of 554 strings)

Co-authored-by: Andras Timar <andras.timar@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/hu/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I7785f45c500aa8c2a4bb5c447bc3fa09de9b766d
2024-01-05 13:05:11 +01:00
Andras Timar 93e937fd51 Add src/control/Control.UIManager.js to list of localizable files
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ifb6795647332b6f2dfb208e9b426f788759e325a
2024-01-05 13:03:55 +01:00
Rash419 fb2615c735 fix: tiles not getting updated after migration
- when migrating document from one server to another using indirection
  server tiles were not getting updated
- _resetClientVisArea should be called even if there are no changes to
  the client because the server needs new data even if the client is
  unmodified.
- changing wireId and invalidFrom values to 0, 0 to force a keyframe
  b1f0834ac4/browser/src/layer/tile/CanvasTileLayer.js (L7266)

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I9aa0b34c3b1f157f3e4494568802588e00376d7e
2024-01-05 17:26:36 +05:30
Szymon Kłos fa006fc3af Don't make view inactive when dialog is opened
If user opened any dialog and we got blur event on
map - it was doing the view inactive by sending
userinactive message to the server and ignoring any
meesages we tried to send. Because of that it was
impossible to test in cypress dropdown dismiss by
click outside popup (due to losing focus from map).

This is regression from rework:
commit 86e8491707
For .eslintrc change, see: https://github.com/typescript-eslint/typescript-eslint/issues/1824

where we changed:
- if (!this._active || isAnyVexDialogActive()) {
+ if (!this._active || isAnyVexDialogActive() || this.map.jsdialog.hasDialogOpened()) {

Make more precise condition so we check if the dialog is a dim one.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ic200bd3f0327e4c43d80fb8cf7c2fbd176485b82
2024-01-05 12:48:47 +01:00
Szymon Kłos 5ed163faa1 cypress: autofilter dismiss by click outside popup
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ib5a447c9ba772fdc8441b22e98e531505424a6f1
2024-01-05 12:48:47 +01:00
Pranam Lashkari 3cb395959b annotation: fix Uncaught TypeError
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: Ice2ab2198640b30ca75bc5e088b0187e34dd6422
2024-01-05 15:37:15 +05:30
Pranam Lashkari fcffb218ac annotation: make sure calc comment visibility is set correctly
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: Ie2563fd99b8a1eba33681dcea69077db66e1db0b
2024-01-05 15:37:15 +05:30
Pranam Lashkari f649d1e6a6 annotation: calc scroll editing comment with sheet/view
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I1306a45a9308226b197b044c47cadd3e5cc4bf17
2024-01-05 15:37:15 +05:30
Pranam Lashkari 8a45ea51f6 annotation: in writer select comment forcefully to modify
problem:
if comment is already selected and has replies,
then if we try to modify it may not rearrange replies to make comment editing fully visible

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I1c563e5a728dcaa3fdd93cd3612f59a3518e887e
2024-01-05 15:37:15 +05:30
Pranam Lashkari 6550e713c4 annotation: calc scroll vertical to make selected comment visible
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: Iaac78e7a61acd3600a4e6f88f222a60eb232f9d8
2024-01-05 15:37:15 +05:30
Pranam Lashkari 2bf93e34c3 annotation: writer scroll to make selected comment visible
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: Ifc76f83ef1cca6cf6113f63bcb50312523ffbf52
2024-01-05 15:37:15 +05:30
Michael Meeks 82bca03b2a spdx: improve machine and human readability of headers.
Change-Id: Id0127edf671a1751ba6cbda3ed36515bd09c84ac
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2024-01-05 10:01:10 +00:00
Henry Castro 2949e94584 browser: adjust initial annotation height
It is a bug from Firefox, according to records
https://bugzilla.mozilla.org/show_bug.cgi?id=292284

The vertical scroll bar requires minimum height to render.

Change-Id: I93b06c625bc98c307dde0c1d6331d457ff99baa5
Signed-off-by: Henry Castro <hcastro@collabora.com>
2024-01-05 09:40:29 +00:00
Henry Castro 35a6791260 browser: fix triple click event
The 'addMultiClickListener' fires 2 times
'triple click', because it also registers
for 'quadruple click' too.

Change-Id: Iee7565163e64373c87016743c06fe1cc084b80f4
Signed-off-by: Henry Castro <hcastro@collabora.com>
2024-01-05 09:32:51 +00:00
Andras Timar fc63b1218c Bump version to 23.05.7 for iOS app
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I2e10552fdcfa0c73fbc6593fe11ec5425e042ab4
2024-01-04 20:32:06 +01:00
Neil Guertin fc6fe42ab7 Add automated user debug tools
Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: Ib6cb1080780f75dc0ea75930c757567e90c46bd8
2024-01-04 10:54:26 -05:00
Ashod Nakashian b1f0834ac4 wsd: do not upload unmodified document
When always_save_on_exit=true we should
still not upload the document when it
isn't modified.

In this case, because we now always
save the document (forced) when
always_save_on_exit=true, and because
saving always generates a new file on
disk, with a new timestamp, we couldn't
detect that there are no modifications.

We now still force save, but ask Core
to skip it if the document is unmodified.

This is safe since we now always issue
the save, but rely on Core to do the
right thing. When the document is saved,
we do the normal upload as in that case
we know we have a new version of the
document, which must be uploaded.

Worth noting that the closedocument
command doesn't trigger the same path.
To reproduce the issue, we need a new
test that disconnects, instead of the
graceful closedocument command.

Change-Id: Iaa4e0363ed2eca124f2d1943393e65c0c187aa18
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-01-04 05:29:32 -05:00
Ashod Nakashian 7f2f946aec wsd: logging and cosmetics
Change-Id: I777db7d1879e84f341f11a90fce7abf8241f5ced
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-01-04 05:29:32 -05:00
Michael Meeks b5d6ed1ea6 remove unused code.
Change-Id: Ib6ee8fa4b99c2adef4268283b8e622c305fc8f1a
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2024-01-04 09:26:55 +01:00
Michael Meeks b3a2d55194 remove unused code.
Change-Id: I328cf6783deae0a9be3aab10634b8d76e7efe965
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2024-01-04 09:26:55 +01:00
Patrick Luby 8a9f8f0127 Reenable debugging from Safari
The new WKWebView.inspectable property must be set to YES in order
for Safari to connect to a debug version of the iOS app whether the
app is running on an iOS device or on macOS.

Signed-off-by: Patrick Luby <guibomacdev@gmail.com>
Change-Id: I873a25a149e3ec967ab0775ba8105ecce26f07ac
2024-01-04 09:24:02 +01:00
Andras Timar 00278bc5a9 Set window.savedUIState to false in Android app, too
Similarly to the iOS case seen in #7908 the %SAVED_STATE_UI%
does not get replaced. In mobile apps there is no fileserver
that can replace these variables.

Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Icb7f9d7550b0990cc0ad1d65253773b49ff97795
2024-01-04 09:13:33 +01:00
Andras Timar bd649e2d40 Enable grouped 'download as' for mobile apps to save space on notebookbar
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ib2388139e0214c9f244796546a362b56cca986ed
2024-01-04 09:13:33 +01:00
genofire b3530563c9 fix(helm): improve alerts many viewer on document with metadata
Signed-off-by: genofire <geno+dev@fireorbit.de>
Change-Id: Ie85e76ae7813ae44d2e4748feac5b8962562abcb
2024-01-04 13:15:10 +05:30
Szymon Kłos de1de28fdd jsdialog: simplify dropdown closing
This is partial revert of "jsdialog: use open/close instead of toggle for dropdowns"
commit 0833ec6489.

Which introduced "state" variable which was desynchronised with core in
some cases. Now directly call desired close command in closePopover.

This fixes bug:
1. Click on the sidebar's Paragraph's "Ordered list" dropdown arrow;
2. Click on any kind of the list (so that the current paragraph gets the chosen list style);
3. Click on the drop-down arrow again, expecting the drop-down to open.
Result: you need to click two times to open menu again

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ief49d4aff45bc58a6c02fcdcd8cb2b3f1ec6e691
2024-01-03 22:11:18 +01:00
Michael Meeks b10b9276b8 Use /proc/self/smaps_rollup for improved perf #7927
Using the aggregated file saves a hundred+ system-calls per
pid we're getting data for, and presumably also lots of time.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I41c40982ebbec44aba72a1d15dabf24a8986f59e
2024-01-03 20:20:02 +00:00
Gökay Şatır 147275ddbd Core side handles the right click with mouse down event.
It internally handles the mouseup. So we don't send it again.

Without this change, context menus can't behave normal. Because mouse pointer is set to somewhere else with the mouse up event.

Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I719565b1ce192045250f9217e971725d8cc1003b
2024-01-03 18:15:35 +03:00
Szymon Kłos 8c6e2ecbdc Improve logged message: setclientpart syntax error
Don't show error to the user as it is not critical
but put in the logs more meaningful message so we can debbug
later.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I7b27a19ac7af845de74d7a4fb65682dfe03c042d
2024-01-03 16:02:59 +01:00
Szymon Kłos eef78a5c5a Improve logged message: cache miss
so it doesn't sound that serious like previous message
and is less generic and more easy to find in the code

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I3eb746af8aef39b566d3213ab2935372219e8d98
2024-01-03 16:02:59 +01:00
Hubert Figuière 738505c4de framed.doc: Added postmessage for Get_User_State
This was introduced in https://github.com/CollaboraOnline/online/pull/7514

Signed-off-by: Hubert Figuière <hub@collabora.com>
Change-Id: I98b9b5b04742541904afa2361ac961498a54c29d
2024-01-03 15:55:37 +01:00
Michael Meeks 7b20e351ae spdx: improve machine and human readability of headers.
Change-Id: I474287bd87d07b9e4a63f0afdfccb40d73e40e1b
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2024-01-03 14:42:02 +00:00
codewithvk 9179f0d2f3 Mobile: Insert comment layout is too narrow and doesn't occupy full height
Change-Id: Ibb6beff5659f5240ff2b49897e8a491f08933691
Signed-off-by: codewithvk <vivek.javiya@collabora.com>
2024-01-03 15:01:05 +01:00
genofire 189f1866e2 fix(helm): improve alerts
Change-Id: Ib25de5189cd9942f95603cbc19e7635a4d7ffbad
Signed-off-by: genofire <geno+dev@fireorbit.de>
2024-01-03 15:14:03 +05:30
Michael Meeks dbc4227fa3 debug menu: initialize state on enabling debug.
Maintaining the state is cheap & easy compared with rendering it,
so toggle rendering - but maintain state in debug mode as now.

Change-Id: I06b29c8a2a8652a63e9ca1e4b7dc31bfe7cafc1e
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2024-01-02 16:32:14 +00:00
Michael Meeks 63d43baee1 traceevent: remove redundant code.
Change-Id: Ib4bf216d191220979d99b78efbd6d84838d42ed4
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2024-01-02 16:32:14 +00:00
Ashod Nakashian 7a327c337b wsd: force autoSave on always_save_on_exit
This forces autoSave when always_save_on_exit
is true. This is needed so we can guarantee
that we don't have modification and that
we upload if there has every been one.
The latter case is checked in
DocumentBroker::needToUploadToStorage(),
which is called from
DocumentBroker::checkAndUploadToStorage().

A new test reproduces the issue and defends
the fix.

Change-Id: I0b2105a57cfd7049ba7b1f63e62a700fdc3744c2
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-01-02 08:17:01 -05:00
Michael Meeks 4b12e22e68 traceevent: re-factor and cleanup trace event emission.
Share a single emission function. Events are re-parsed and
emitted and adjusted in ClientSession; JSON escape event names.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: If489d516bf20d5ec34cfe61f7e4fb09cf2e14bf2
2024-01-02 12:05:01 +00:00
Szymon Kłos e8f77a6b06 Don't pass invalid hosts for lok_allow #7885
Fixes #7885

Be more flexible and allow to run service with configured
hosts which doesn't work with lok_allow (invalid regular
expression for std::regex which is used in core).

This change instead adds error report in the logs, without
it it was crashing when any host was not compatible.
For example when using domain like:
"*.example.com" which should be ".*\.example\.com"

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Id664df95899bda866b9179a3941280626a2c0299
2024-01-02 11:57:32 +01:00
codewithvk 6d0b8e7bb1 Make 'File > Repair' date and time human-readable
Signed-off-by: codewithvk <vivek.javiya@collabora.com>
Change-Id: Ib8b745fd10aca2eea2e829ad42cf1d91f7ff2129
2024-01-02 11:55:49 +01:00
Ashod Nakashian 29cfaa7682 wsd: quarantine: absolute-path and better logging
The quarantine path should be an absolute path.

Unfortunately, because we had relative=true in
the path config, we couldn't detect empty configs.
This is because with relative=true the getter
would create a path based on the current directory
and the config value, which would default to
"quarantine" when empty.
This would result in /opt/cool/quarantine or
/usr/bin/quarantine when in fact the path is
really empty.

Now, the config has relative=false and
there is no default. In addition, we
warn if the path is no absolute.

Change-Id: I1b3eb5e76866a12d214b47e6556942715a210e54
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-01-02 10:57:20 +01:00
Ashod Nakashian fb067faae4 wsd: quarantine: isQuarantineEnabled -> isEnabled and log it
As this is a member of the Quarantine class,
there is no need to have "Quarantine" in the
name. This was a hang-up from the time when
it was a static.

Now we can log the enabled-state.

Change-Id: Iab1cec4d90671cda175c1d320e4f3318dd7b89a1
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-01-02 10:57:20 +01:00
Darshan-upadhyay1110 798bb55143 Add more cypress test in Autofilter (Calc)
Below cases are covered in current patch
- `Filter by Color` in autofilter should have radio buttons.
- Changes should be applied whene we select any option from `filter by color` submenu.
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: I1a757e09be81df934b46d48f71e8be28fc48c984
2024-01-02 10:16:49 +01:00
Ashod Nakashian 21513603b4 config: correct the description of always_save_on_exit
Change-Id: I8a15ef06e5a6c8a9f246cb9520f277357d6fc43f
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2024-01-02 09:56:46 +01:00
Darshan-upadhyay1110 365689f804 Refresh tollbar only if `editbar` and `actionbar` object exists
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: Ie6eeb45f31b855443288829105df7a7a4cadd76d
2024-01-02 14:25:01 +05:30
Darshan-upadhyay1110 7fbf58cb35 Do not supress ChnageTheme event in readonly mode for any document
- allowed `ChangeTheme` event in readonly mode
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: Ic64bc61011a9e053c105e5c7540dddd4eb530681
2024-01-02 14:25:01 +05:30
Patrick Luby bb6fea0bea Set window.savedUIState to false in iOS app
When building the iOS app, the %SAVED_UI_STATE% does not get
replaced with a quoted string during the build and the resulting
unquoted string causes document loading to stop.

Also, eliminate warnings when running in Xcode by adding missing
CFBundleTypeRole entries in the iOS app's Info.plist.

Signed-off-by: Patrick Luby <guibomacdev@gmail.com>
Change-Id: Ie398955241a078be45af28e54c49387ff673870b
2024-01-01 09:59:40 +01:00
Ashod Nakashian 373c04fe4e wsd: admin: use the cgroup limit as available memory
This applies the cgroup memory limit, if set,
such that if it is lower than the configured
memproportion percentage, we do not exceed it.
Otherwise, we risk running out of our cgroup
limit and by then it is too late to do anything
but die due to OOM.

This also moves the logging of the cgroup memory
stats from COOLWSD into Admin, to avoid duplicate
logging.

Also updated the description of memproportion
config entry to account for the cgroup logic.

Change-Id: I870ae61c1260eb2b3275bd2fa1a4c48ff30957a2
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-12-30 10:36:44 +00:00
Ashod Nakashian a44e9411a8 wsd: admin: minor clean-up of memory-tracking members
Change-Id: If06545a097cd13318870f0e6f675367985035a12
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-12-30 10:36:44 +00:00
Neil Guertin 30480c53db Debug menu improvements
Split tools into categories,
Make Tile Overlay toggleable,
Adjust which tools start enabled,
Comment out non-functional tools,
Adjust some names

Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: Ic973671a3c323f10d7f95918459ffc91a2f5c35d
2023-12-28 13:26:19 -05:00
Gökay Şatır 9fdbe7eec8 Don't send mouseup for right mouse button.
Core side seems to handle the mouseup event automatically for the right mouse button.
When we send another mouseup event, selected text can get unselected and context menu can't find a selected text.

Issue is:
* In Impress, select a text in a textbox and right click.
* Context menu cut operations doesn't work.

Cause:
* We send the right mouseup twice, the second event unselects the text and sets the cursor position to somewhere else.

Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: Idae749da42443ccdd7ef2fc795b042536fae0db6
2023-12-28 17:25:07 +03:00
Gökay Şatır 39bebfacbe Save the cursor rectangle and visibility variable into app.file variable.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I9c0529984cd01a14565b882b68baae4f74e245e0
2023-12-28 17:25:07 +03:00
codewithvk 5fa0d9b69a Android: Insert Cells Menu Misaligned Radio Buttons
Signed-off-by: codewithvk <vivek.javiya@collabora.com>
Change-Id: Ie6bdb2423f92b5959a2233ee0dccc6f8e2e5dc35
2023-12-28 15:23:25 +03:00
Neil Guertin 80a2f4cca6 Replace cy.cGet with cy.getFrame in document load
And other changes to reduce logs by about
20 lines per test (15% of total)

Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: Ia6a1c96752816c5cd9fb11368cf921bdce9936ff
2023-12-28 14:58:06 +03:00
Rash419 d4918c7998 improve error message on invalid WOPI host
- before this patch when socket connection failed, we used to show the
  same error for socket connection failure and send the
  'Action_Load_Resp' with same errorMsg
- now we show/send different message for unauthorized and loading
  failure

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I71b1b7f8e2eca93790d068583370787825911a41
2023-12-28 16:50:04 +05:30
Szymon Kłos a4add51e93 calc: avoid jumping on large cell selection
If we had very long or tall cell - maybe bigger than a screen
on every selection we tried to show it on the screen what
caused view to jump. If cell is bigger and partially visible
left view at the same position to avoid "jumping".

Steps to reproduce:
1. merge many cells - longer than one screen width
2. scroll in the middle of merged cell
3. select the cell
Result: jump to the begining
Expected: no jump if it is paritally visible

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I04da5cd346f175728222888a039a796b271e00d1
2023-12-27 20:09:27 -05:00
Szymon Kłos 74d78d287a Calc: don't stop dragging the selection on quick move
This fixes view jumps in the Calc when some user tried
to drag a selection but did it very quickly so it was
interrupted by the _mouseOverTimeout callback.

Timer was introduced in commit 72c407e0ed
loleaflet: support mouse cursor calback

But we noticed the issue recently. I remember that dragging
the selection was not working some time ago, it is
possible that it was fixed and because of that we experience
this bug.

What it does is that it stops dragging mode in half-done state
so then other views sometimes use the leftover data.
To be 100% fixed it should be also protected on the core side.

Steps to reproduce:
1. Open calc in 2 sessions
2. A selects some range of cells (for example 3x3)
3. A clicks inside selected range and holding the mouse
   button does rapid move to drag the selection (move
   the content of cells) - it has to be done very quickly
   < 100 ms after initial click
   It is done properly when you see on the screen selected
   range and cell selection, but the two are not overlapping
4. User B goes somewhere far in the sheet and:
   - changes font size
   - or selectes some rows, deletes them, then opens right-click
     "row height" dialog, press ok
Result: User B jumps to the selection of user A
Expected: no jump

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ia35377771df6b04584eebb76c25290482b7a4b93
2023-12-27 20:08:03 -05:00
Neil Guertin 6dcfc85f4f Refactor debug menu
Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: I6e2520035d54b9de2b4cf8e015741aaae517fee1
2023-12-27 16:45:54 +00:00
Ashod Nakashian c4470a9687 wsd: do not remove quarantine files explicitly
Let clearOldQuarantineVersions() remove quarantined
files only when necessary and per the config settings.

Change-Id: Ie1fb18c02d61a710546e9b5962ab8b7973c2066e
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-12-27 06:10:17 -05:00
Neil Guertin f4c855792f Use new custom command cy.getFrameWindow()
Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: I4f54b35f01b41bfb47a1d5d359de5cdab4cb9640
2023-12-27 10:06:05 +03:00
Gökay Şatır 924f13f106 Changes for handling readonly mode click events:
* These changes are made primarily for reading the hyperlink data from the document in readonly mode.
* Added readonlyclick event.
* Added readonlyhyperlinkclicked event.
* And the handlers for these.

When user clicks on document in readonly mode, a readonlyclick event is sent to the server.
Childsession checks if there is a hyperlink at the clicked location.
If so, the information of the hyperlink is sent to the client.

Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I9c104a1ec770491725337b9bbb1e2d1c2851321b
2023-12-27 09:24:28 +03:00
Pranam Lashkari fbf22535a0 annotation: remove redundant condition
it did not make sense to check for selection if we are unselecting before selecting

problem:
when already selected comment try to modify,
it will not rearrange replies in the thread this caused
overlapping of the comments and bad user experience

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I276c34301b45951a7051018770e21b4970603861
2023-12-26 13:00:24 +03:00
Pranam Lashkari 4ee246a336 typescript: use defined types for CommentSection properties
use strict datatypes for the properties where possible,
also allow to add new properties dynamically

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: Ia2eb850f61031f91b0e37339475e1ca4e768dad1
2023-12-25 16:45:08 +05:30
Pranam Lashkari 1bd26addd1 annotation: if comment is not initialised its not in editing mode
this caused problem when new doc is loading and we are settings up comments,
but they are not initialised and marked as being in editing.
i.e: this will cause problem with showing reply count(in collapsed view) initially

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: Ia688ca0bfc37dd925bd74dc5826d43fdb37c81db
2023-12-25 13:35:50 +05:30
Neil Guertin 5979eb9a1f Add cy.getFrame() custom command
The intent is to eventually replace cy.cGet and some other helper
functions with getFrame, which is cleaner and has better logging on both
pass and fail.

Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: I911a5552d69634495a9036d020754351665419cf
2023-12-25 10:51:37 +03:00
Caolán McNamara 24a401c967 the std::ceil inputs are already ints
So std::ceil isn't doing anything useful since:

commit dce6c18fb4
Date:   Thu Aug 30 17:40:42 2018 +0200

    Calculate tiles-on-fly limit a bit more precisely

Leave this case unchanged.

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I6d11c9b912facc26ad775fc916012b529ed5b0fa
2023-12-22 14:29:44 +00:00
Caolán McNamara b1ff60ace3 missing tiles in multi-pane spreadsheets
here std::ceil is operating on the result of an int divided by an int
so the input is already an effectively floor-ed int result of the
division so the ceil doesn't do anything

so we end up filtering out some of the invalidates for tiles in frozen
panes.

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Ibfb25fdfdfb84735ca9410f8250d2e5b9fa1070e
2023-12-22 14:29:44 +00:00
Darshan-upadhyay1110 434fffa5bb Fix text in font and style dropdown types dark in Dark mode
- in Compact/Classic mode typing text are dark in darkmode

To reproduce:

- change to dark mode and select Compact mode
- type in input field of Font or in Font size
- without this patch color will be dark in dark mode
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: I4510001cfdf26acf8419eb0aa4ee3611b0a51b09
2023-12-22 16:12:28 +03:00
Neil Guertin f86ab6ae9a Remove inadvertent it.only to re-enable tests
Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: Ia9f2a35f0e334c97565edc4334df943723a958d7
2023-12-22 12:56:02 +03:00
Andras Timar 05fa3f35d0 Update l10n files for Weblate
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I1cfac01456a62a09068397d6ff6ff6506acf31ae
2023-12-21 21:05:09 +01:00
Rob Pearson 050adfdbaf 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/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/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Id596babd7d044968f14ea47136600f8c273ccbb5
2023-12-21 20:51:19 +01:00
Pranam Lashkari 31ece2a8fc cypress: enable all slide operation tests
test got disabled in e81b53a

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: Ie40dc67d7f45dac702d69d7222c2bc32a4c89dd0
2023-12-21 23:35:26 +05:30
Szymon Kłos 78a4ed13ff calc: don't make app inactive on drag and drop
When Pivot table dialog was used and we drag and drop
elements from list to other list in Firefox - then
we sent userinactive message because we lost focus of
a window. Don't do that.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I03f1b8a72e4f318034569d4fffe496f32c5a8a51
2023-12-21 14:16:13 +01:00
Neil Guertin fa87fb803e Better logging for cy.cGet()
Signed-off-by: Neil Guertin <neil.guertin@collabora.com>
Change-Id: I587415c7601fd6bb10f3aa6e708109fd7ccd3b81
2023-12-21 08:10:34 -05:00
Andras Timar 7c440409e3 Update Helm Chart with new release 23.05.6.4
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I0d0f553a11e1a78d4160cdd0fd8c5ae1c959399a
2023-12-21 00:44:23 +01:00
Szymon Kłos 2190cbdc20 Remove protocol when adding to lok_allow
We automatically add allowed wopi hosts to lok_allow.
But we expect to have plain host names, we need to remove
protocol if it is present.

Example:
wopi - group - host: https://.*\.mydomain.com
we need to add: .*\.mydomain.com to lok_allow list.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I80bf3b7c25c0df15e422cd8369eceaddbb588e26
2023-12-20 19:58:43 +00:00
Szymon Kłos 6961f16539 Add warning for blocked external image insertion
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I8d7456b0cef68a086aae854c9828d83a29f1b3b6
2023-12-20 15:55:12 +01:00
Szymon Kłos c354fa3101 Allow localhost name in lok_allow
This can be useful for debug purpose

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ifa0abea77040046e1656e7469b402935ab762dd2
2023-12-20 14:25:35 +01:00
Szymon Kłos 394ab1f6f3 Add explanation for invalidatecursor with different viewId
I noticed that it directly modifies this._visibleCursor
which should be our own cursor. So it was not clear if
modifierViewId === this._viewId check if something left
from the past or that message can be received with
different viewId...

It seems that received viewId only tells us who "triggered"
the cursor movement, but position in the message is still "our".
It is used with different viewId in Writer but not in Calc.

protocol.txt comment about the message:
The payload contains a rectangle describing the cursor position
and the id of the view which triggered the invalidation. JSON payload.

and seems to be introduced in:
commit ffd7151443
Date:   Sun Apr 8 00:00:53 2018 +0200
Writer: View jumps to cursor position even if it is moved by an other view.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Idf2598221845e15effe576a94bb1d39759ae7d58
2023-12-20 13:10:33 +00:00
Darshan-upadhyay1110 330033076b Filter by color options should have radio buttons insted of Checkboxes
- Fixed filter by color options which had Checkboxes
 - it should have radio buttons same as we have in LO core
 - it also makes sense because we only need to apply on filter by setting at a time

Steps to check patch

    - Open .ods file
    - add some dummy data in diffent rows but column should be the same
    - click on the top cell of dummy data
    - got to `DATA` tab and apply `AutoFilter`
    - open auto filter popup and select filer by color
    - compare previous version with the current patch
    - check same thing in LO core
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>

Change-Id: I00b4d84e5117b3c1f05fbc37c61331d2c3bc2a31
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
2023-12-20 12:32:48 +01:00
Rash419 1c3fc8dadf helm: push chart to github container registry with
supports OCI specification

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I5bc031552fe2eb6940f068dcef82fe71f640585c
2023-12-20 17:00:38 +05:30
Darshan-upadhyay1110 5403d885a3 Fix view pushed up in Calc for autfilter popup
- fix view jump by display hidden for auto-filter popup
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: I4e48fd2d7363db53d4bf3a1d85f9897de3b1e91a
2023-12-20 10:16:28 +01:00
Andras Timar dca44d2952 Bump version to 23.05.6.4
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I4729e17e8408ef7724df393e2cf1aa00b4b036b6
2023-12-20 09:19:07 +01:00
Pranam Lashkari e81b53ab29 cypress: check if comments are duplicated with slides duplicate
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: Ie776fadfaf52b6424a83bd8aa0bdeea78e004309
2023-12-20 06:35:57 +05:30
Pranam Lashkari eb1925f140 annotation: refresh annotation on part updates
problem:
1. Duplicating slide with comment will not have any comment
2. Rearranging slides, causes comments to stay with its previous slide location,
i.e: if earlier comments were on the first slide and they are rearranged to be nth slide,
comments will be displayed on the first slide
3. Deleting slide, displays comment on the next slide

all these problems are just display problems in online, if you reload the document,
comments are displayed correctly.

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: Ie494761802f133f5f433053456edfd7d55d1312a
2023-12-20 06:35:57 +05:30
Skyler Grey 1adece89d6 Make eslint in make check fail on eslint warnings
As discussed [on Matrix](https://col.la/suppresseslintindevelopment) the
set of things we want to pick up in CI and development are different.
Specifically, there are some things that only get in the way during
development but should not be allowed in merged code. Examples are
'debugger' statemens, dead code (e.g.  resulting from 'if (false)') and
unused variables.

After #7822 there are no more eslint warnings, so we can use it as a
separate state for these issues that should only block in CI.

This commit make make check run eslint and fail if it receives any
warnings, and changes those 3 errors so that they only emit warnings.

It's expected that there are more annoying warnings which I've missed,
if you have any please make a followup change!

This commit explicitly does not deal with formatting-related
issues (e.g. requiring single quotes for strings in eslint) as though
they can be annoying there's no reason why they should change between
development and master... another followup to improve linting experience
could be to use an autoformatter so the computer fixes the formatting
for you, however that's out-of-scope for this commit

Change-Id: I036afac5ef5056a9cc2effc21e31165aa1436ad2
Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
2023-12-19 20:25:43 +00:00
Bayram Çiçek 07da51cc55 Calc tabs: remove drop zone indicator after drop
- we need to remove 'tab-drop-area-active' class
after a sheet tab is dropped, otherwise drop
zone indicator will still be shown after dropping

- this fixes the bug from f8433d323d
Calc: improve drag&drop functionality of sheet tabs #7846

Signed-off-by: Bayram Çiçek <bayram.cicek@collabora.com>
Change-Id: Iff7ea455452c431907cc7534cbd111e7b4f037d8
2023-12-19 18:51:54 +01:00
Miklos Vajna 458c23e5aa autogen: conditionally invoke configure at the end
This is backwards-compatible and core.git autogen.sh executes
configure, so it eliminates a pointless difference.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: I897bd2f6464201a19e26e55006cd52727abdfc41
2023-12-19 15:00:34 +01:00
Skyler Grey a31e6597cc Stop onscreen keyboards closing when used to move
This relies on core change I5e6c93c64af0d201a8ec045fea5546e189baca74
(https://gerrit.libreoffice.org/c/core/+/160313) as the logic to keep
the cell focused is from there.

Here we set the new option when there is an onscreen keyboard hint given
by ui_defaults or a postmessage. As ui_defaults are set at page load, we
need to wait to send our message until we're initializing everything
else to set our options. Additionally, we need to use the socket
directly rather than sending this through the map so that this bypasses
things like readonly mode

Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
Change-Id: Ie6d80c0e1ebca607b9d705b673ab8008fae39260
Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
2023-12-19 10:50:52 +00:00
Pranam Lashkari 039283733e formulabar: trigger mouseleave event only after mousedown event
problem:
mouseleave was triggered by hovering and leaving formulabar,
this caused formulabar gabbing focus unwanted

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I0c0e75b2025e69d425351d9ff75ceccf385d6326
2023-12-19 10:32:57 +01:00
Bayram Çiçek a72a8536c6 Calc: improve drag&drop functionality of sheet tabs
- drop zone indicator added to the left of all tabs
- additional drop zone indicator added to the right
of the last tab
- added drop zone container at the end of tabs
for the last drop zone indicator

- div#drop-zone-end-container element also adds
a space to the end of the tabs so that the last
tab can be seen easily after scrolling to the end

Signed-off-by: Bayram Çiçek <bayram.cicek@collabora.com>
Change-Id: I25a87bc1798b94c5f294532d308cd46292ef1795
2023-12-18 21:11:06 +01:00
Julius Härtl 9db5f421cf fix: Use proper command + c keyboard shortcut for copy actions on snackbar
Signed-off-by: Julius Härtl <jus@bitgrid.net>
Change-Id: I24d9e01bc23a1dc32a1362f48775c6890f5a77c8
2023-12-18 17:01:27 +01:00
Skyler Grey 61aa037ad9 Fix several regressions from touch unification
Touch unification (b3bff28bed, change ID
I9016fc15ad3ccb3664af348fdcdca006495b0778) was a rework of the input
system to better support touch devices, but unfortunately it caused some
fairly serious regressions. This commit fixes the following:
- Triple/Quadruple clicking was no longer recognized on non-touch
  devices.
- There were some issues recognizing wrapped events
- Pens were considered to be touch devices, but this broke some
  remote/virtual machine setups. It's possible that this change will
  cause a regression for apple pencil users. I plan to get an Apple
  pencil to test whether preventing pens from being touch devices breaks
  the Apple pencil workflow instead
- manualDrag was taken to mean "is on a touch device". This is only
  almost true, causing some input to be incorrectly ingnored when it was
  not
- manualDrag and _manualDrag were confused. They affect different
  things, and we now recognize this

Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
Change-Id: Iab0d3bcca588eaed14469597868a9c4e2dcf8488
Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
2023-12-18 15:28:13 +01:00
Jaume Pujantell 1ce9f834a0 added coolwsd-inproc executable
Added build rules for coolwsd-inproc and some run command to use it.

Signed-off-by: Jaume Pujantell <jaume.pujantell@collabora.com>
Change-Id: I4138ff7337bc354b0221070105dd34ea9ef19691
2023-12-18 10:34:10 +00:00
Jaume Pujantell 35d6e2925f use isKitInProcess() instead of KIT_IN_PROCESS
Removed all uses of KIT_IN_PROCESS, used Utils::isKitInProcess()
when necessary. Also removed the now unused parameter 'limit' from
forkLibreOfficeKit.

Signed-off-by: Jaume Pujantell <jaume.pujantell@collabora.com>
Change-Id: I068d3f55ab49076590f111847c87b3188f4d25d0
2023-12-18 10:34:10 +00:00
Jaume Pujantell eca990920a add logic to sapwn threads intead of processes
Added code that spawns forkit and lokit in threads instead of new processes.

Signed-off-by: Jaume Pujantell <jaume.pujantell@collabora.com>
Change-Id: I6b6ad6dccfedaf28ebd0d68851205c540b9a0317
2023-12-18 10:34:10 +00:00
Jaume Pujantell 8f178ef6cd extract some functions to extra files for in process mode
Extract some functions from ForKit.cpp and COOLWSD.cpp to new files
so we can do a kit in process mode without using ifdef directives.

Signed-off-by: Jaume Pujantell <jaume.pujantell@collabora.com>
Change-Id: I7529f8f46a8026318244666b27d1ce72ed5ad4ca
2023-12-18 10:34:10 +00:00
Andras Timar a1e08c1aab Update Helm Chart with new release 23.05.6.3
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ie44e132dd230dcb8028aafd9ab249f60c9502a91
2023-12-18 11:49:34 +05:30
Michael Meeks c2e3a83001 spdx: improve machine and human readability of headers.
Change-Id: I84c93d81f0aea1f79e2ede9186b2864bf11f723a
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2023-12-16 19:49:05 +01:00
Hubert Figuière 85e36b3bb7 postmessage: Added Action_Fullscreen and Action_FullscreenPresentation
They allow respectively to switch to fullscreen, or to start the
presentation in impress in fullscreen
Action_FullscreenPresentation can get the following arguments:
- StartSlideNumber: the slide to start at
- CurrentSlide: start at the current slide
The options are exclusive to each other. StartSlideNumber takes precedence

Signed-off-by: Hubert Figuière <hub@collabora.com>
Change-Id: I4d97eadf8c119e70e5738df4063d209feb5db793
2023-12-15 09:47:54 -05:00
Pranam Lashkari a85dd12e94 annotation: avoid exiting edit comment on autosave
show() can hide modify textbox, this broke comment autosave in impress,
but as precaution show doesn't need to be called on newly added autosaved comments

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I13fdeb265f46cb9b8786f62a2d6e7e5c4e492f00
2023-12-15 20:12:23 +05:30
Szymon Kłos 37079fb53c annotations: move auto saving properties into CommandSection
To not depend on external objects to store information.
Also use more typing.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I410b6679ef5e2a7c4f5e73217d5062864a73bc4c
2023-12-15 20:12:23 +05:30
Szymon Kłos bc281382e7 annotations: revert animation change
This reverts part of commit 93bdcc349b
Annotation: revamp comment autosaving

Let's keep it less changed from the previous stable version.
This doesn't seem to have any impact.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I5261b4c8e78a9310884017bf314d720265892fbd
2023-12-15 20:12:23 +05:30
Szymon Kłos 66b814e60b annotations: isAutoSaved helper
- we need to check if received comment is "our" autosaved one
- without that we were showing comments from others on the
  screen when we were in "autosaved mode"
- remove "interval" to make it more deterministic

This fixes regression from commit 93bdcc349b
Annotation: revamp comment autosaving

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I0319de0eea16e715e799a6ac1163d78cc1a07654
2023-12-15 20:12:23 +05:30
Andras Timar 049daef3dd Bump version to 23.05.6.3
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I421dbd689fa0d901b359d457d8dc09ca15b26e7b
2023-12-15 10:05:31 +01:00
codewithvk 367f618689 Fix: Many Icons Not Inverting Color In Dark mode cool-help
Signed-off-by: codewithvk <vivek.javiya@collabora.com>
Change-Id: I3015e6a40030d40fe11d2db85703b8be1eefbed1
2023-12-14 15:16:34 +01:00
Szymon Kłos 842fb9b612 Update viewId also if equal 0
if (command.viewid) will not allow set to 0.

This is fillowup for commit f3baeb25b1
Update viewId in Writer after recover from idle

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I4b8d40c2b7aa122e0f4710261d10314a25d521fe
2023-12-14 13:56:33 +01:00
Caolán McNamara fe32aeffe4 Sometimes we only request two rows of tiles in writer on an initial load
Sometimes we only request and only get two rows of tiles in writer on an
initial load. Most frequently I see this with a non-debug online server
via nextcloud of the default "Welcome to Nextcloud" docx in firefox in
the 2nd or 3rd tab of opening the same document. While the page doesn't
visually resize there is a resize delivered after the initial request
of tiles.

clientvisiblearea x=-8160 y=0 width=28785 height=1575 splitx=0 splity=0 Socket.js:272:10
clientzoom tilepixelwidth=256 tilepixelheight=256 tiletwipwidth=1920 tiletwipheight=1920 Socket.js:272:10
tilecombine nviewid=0 part=0 width=256 height=256 tileposx=0,1920,3840,5760,7680,9600,11520 tileposy=0,0,0,0,0,0,0 oldwid=0,0,0,0,0,0,0 tilewidth=1920 tileheight=1920 Socket.js:272:10
...
tile: nviewid=1001 part=0 width=256 height=256 tileposx=0 tileposy=0 tilewidth=1920 tileheight=1920 oldwid=1 wid=72 ver=92 Socket.js:272:10
tile: nviewid=1001 part=0 width=256 height=256 tileposx=1920 tileposy=0 tilewidth=1920 tileheight=1920 oldwid=1 wid=73 ver=93 Socket.js:272:10
tile: nviewid=1001 part=0 width=256 height=256 tileposx=3840 tileposy=0 tilewidth=1920 tileheight=1920 oldwid=1 wid=74 ver=94 Socket.js:272:10
tile: nviewid=1001 part=0 width=256 height=256 tileposx=5760 tileposy=0 tilewidth=1920 tileheight=1920 oldwid=1 wid=75 ver=95 Socket.js:272:10
tile: nviewid=1001 part=0 width=256 height=256 tileposx=7680 tileposy=0 tilewidth=1920 tileheight=1920 oldwid=1 wid=76 ver=96 Socket.js:272:10
tile: nviewid=1001 part=0 width=256 height=256 tileposx=9600 tileposy=0 tilewidth=1920 tileheight=1920 oldwid=1 wid=77 ver=97 Socket.js:272:10
tile: nviewid=1001 part=0 width=256 height=256 tileposx=11520 tileposy=0 tilewidth=1920 tileheight=1920 oldwid=1 wid=78 ver=98 Socket.js:272:10
...
tileprocessed tile=0:0:0:0:1920:1920:1001,0:0:1920:0:1920:1920:1001,0:0:3840:0:1920:1920:1001,0:0:5760:0:1920:1920:1001,0:0:7680:0:1920:1920:1001,0:0:9600:0:1920:1920:1001,0:0:11520:0:1920:1920:1001 Socket.js:272:10
...
DEBUG: sizeincreased CanvasTileLayer.js:5702:11
...
tilecombine nviewid=0 part=0 width=256 height=256 tileposx=0,1920,3840,5760,7680,9600,11520 tileposy=1920,1920,1920,1920,1920,1920,1920 oldwid=0,0,0,0,0,0,0 tilewidth=1920 tileheight=1920 Socket.js:272:10
tile: nviewid=1001 part=0 width=256 height=256 tileposx=0 tileposy=1920 tilewidth=1920 tileheight=1920 oldwid=1 wid=71 ver=99 Socket.js:272:10
tile: nviewid=1001 part=0 width=256 height=256 tileposx=1920 tileposy=1920 tilewidth=1920 tileheight=1920 oldwid=1 wid=79 ver=100 Socket.js:272:10
tile: nviewid=1001 part=0 width=256 height=256 tileposx=3840 tileposy=1920 tilewidth=1920 tileheight=1920 oldwid=1 wid=80 ver=101 Socket.js:272:10
tile: nviewid=1001 part=0 width=256 height=256 tileposx=5760 tileposy=1920 tilewidth=1920 tileheight=1920 oldwid=1 wid=81 ver=102 Socket.js:272:10
tile: nviewid=1001 part=0 width=256 height=256 tileposx=7680 tileposy=1920 tilewidth=1920 tileheight=1920 oldwid=1 wid=82 ver=103 Socket.js:272:10
tile: nviewid=1001 part=0 width=256 height=256 tileposx=9600 tileposy=1920 tilewidth=1920 tileheight=1920 oldwid=1 wid=83 ver=104 Socket.js:272:10
tile: nviewid=1001 part=0 width=256 height=256 tileposx=11520 tileposy=1920 tilewidth=1920 tileheight=1920 oldwid=1 wid=84 ver=105 Socket.js:272:10
tileprocessed tile=0:0:0:1920:1920:1920:1001,0:0:1920:1920:1920:1920:1001,0:0:3840:1920:1920:1920:1001,0:0:5760:1920:1920:1920:1001,0:0:7680:1920:1920:1920:1001,0:0:9600:1920:1920:1920:1001,0:0:11520:1920:1920:1920:1001 Socket.js:272:10
...
clientvisiblearea x=-8160 y=0 width=28785 height=12075 splitx=0 splity=0 Socket.js:272:10
...
...no tile requests...

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Id263adbbd98ad0a7c6143d241d0d91e1c28eaac5
2023-12-14 10:28:45 +00:00
Pranam Lashkari c0527a2cea annotation: only don't hide comments which are editing
now as we only allow one comment to edit at a time,
we don't need to check if any comment is being edited,
we can hide all comment except the one being edited

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: Ibee2b61fc6ba873231a05e5e1d2dab210491c68f
2023-12-14 08:55:55 +01:00
Pedro Pinto Silva 094b2ce884 Dark mode: Fix icon's opacity and color on shortcuts component
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I992936919e26c135a05c29d44c62dc07e1c49d04
2023-12-14 08:47:52 +01:00
Rash419 4ea31bfebe jfix: tiles not updated after reconnection
from idle

The following scenario was affected:
- user A and B both goes idle
- user B starts typing
- user A reconnects, all tiles updated by user B were not getting
  reflected for user A

Mismatch of canonical ids was causing the issue. On reconnection,
tilecombine messages were sent before uno:ChangeTheme can update the
canonical id on server side, therefore the received tile cache from server were
from old canonical id 4a8974d107/wsd/ClientSession.cpp (L1379)
4a8974d107/wsd/TileCache.cpp (L482)

By reseting the previousTheme on connection we make sure there after
canonicalidchange we invalidate all the tiles

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I874bfe0bd71d176bacf0c7aa768e49613535ebd5
Signed-off-by: Rash419 <rashesh.padia@collabora.com>
2023-12-13 21:20:33 +00:00
Pranam Lashkari ee93a34f0c eslint: resolve all eslint warning
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I3b0764021f579d79443622d13b39ff4f705d0688
2023-12-13 20:04:16 +05:30
Gökay Şatır ba536c3051 Make sure to set the correct normalized view id for the tiles.
When user switches to dark theme, previously requested tiles' normalizedViewIds may need to be updated.

Issue:
Users sometimes were getting tiles from the wrong theme.

Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: Ie3324eb3f4879da5bfd0738513409e190422a9c0
2023-12-13 14:05:22 +00:00
Pranam Lashkari e42d9d8fe2 annotation: restrict reply and modify while other comment is editing
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I3422b7d8d1a29b42d51eae69cee576a5ca2653a7
2023-12-13 14:18:17 +01:00
Pranam Lashkari 489b58b15b annotation: don't change slide/sheet while editing comment
comments can not be committed when user is on different slide/sheet
then comments origin.

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I5c2a92da1a8e9788fcc3abc72f697873c7100993
2023-12-13 14:18:17 +01:00
Darshan-upadhyay1110 8822bbfaa2 Refactor changes for update clac Header on mode change
- Update only row or cloumn section based on isColumn value
- it will not update both section if there is only need to refresh only row or only column
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: I7d614528195f0d7b0dfd0a1afa865cc890a35c2c
2023-12-13 16:04:49 +03:00
Andras Timar b9153c63ef js/global.js contains localizable strings
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I3c4317a7766ad179cf38e4d0d972e6a5c4adab11
2023-12-13 13:03:29 +01:00
Ihor Hordiichuk c362e229cf Translated using Weblate (Ukrainian)
Currently translated at 100.0% (539 of 539 strings)

Co-authored-by: Ihor Hordiichuk <igor_ck@outlook.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/uk/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: If15fba6ddf804c8b5e4e1673bc2f2a497a931f06
2023-12-13 12:40:44 +01:00
Zeki Tuman af7298e0ae Translated using Weblate (Turkish)
Currently translated at 100.0% (539 of 539 strings)

Added translation using Weblate (Adyghe)

Co-authored-by: Zeki Tuman <ztuman@gmail.com>
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: I43ac5e7787921284f5e25963f4edb45a7a06d9a3
2023-12-13 12:40:44 +01:00
Leif-Jöran Olsson b1e5576f8a Translated using Weblate (Swedish)
Currently translated at 100.0% (539 of 539 strings)

Co-authored-by: Leif-Jöran Olsson <info@friprogramvarusyndikatet.se>
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: Ib469e8b3149996fc1f76d0b12ce7e64267a172e9
2023-12-13 12:40:44 +01:00
Gökay Şatır 1353bd3882 Fix bug in undoing deletion of a parent comment.
Bug:
  When a parent and a child comments are removed then user reverts the action respectively:
    * Child comment is revived first and it cannot find its parent.

* Add a possibleParentCommentId to use in case also the parent comment is revived.
* Consider the child comment as a parent until parent appears.

Other changes:
* Remove duplicate call to updateIdIndexMap.
* Remove duplicate call to unselect.
* Remove duplicate call to adjustParentAdd.
* Reorder the 'remove' operation's rows: To avoid unselecting the comment after it is removed.

Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I2247b23c710236c578b5b5c78d2b7bb45f7a51b4
2023-12-13 13:22:25 +03:00
Pranam Lashkari 099da020cf calc header: avoid selecting row/col while resizing them
problem:
while resizing row/column it would select all the rows and column user hovers over

regression from: 87a55af

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: If786c57222b9bb89ac3faa1e645acc223a8dcd7e
2023-12-13 10:25:38 +01:00
Caolán McNamara c231b3b2ec wasm: limit threads using for scaling
disable this with VCL_NO_THREAD_SCALE for wasm

"Yacht.odt" document with lots or large images fails to
render:

Tried to spawn a new thread, but the thread pool is exhausted. This
might result in a deadlock unless some threads eventually exit or the
code explicitly breaks out to the event loop. If you want to increase
the pool size, use setting `-sPTHREAD_POOL_SIZE=...`. If you want to
throw an explicit error instead of the risk of deadlocking in those
cases, use setting `-sPTHREAD_POOL_SIZE_STRICT=2`.

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I8b2f994d2d3d23f8a0043f0c7fefa4d5e250b8bc
2023-12-12 20:24:26 +00:00
Caolán McNamara de9dd4f0a6 wasm often doesn't get tiles after invalidates
ClientSession::handleTileInvalidation returns early with _tileWidthPixel
(etc) of 0 because _tileWidthPixel (etc) never get set

These are supposed to get set from 'clientzoom' which the javascript
side sends. clientzoom arrives, but the attempt is made to dispatch via
a thread and during startup there are enough messages dispatched via
threads to overwhelm wasm

bundle.js:56376 ================ handle_cool_message(): 'clientvisiblearea x=-3915 y=0 width=20640 height=7980 splitx=0 splity=0'
bundle.js:56377 Tried to spawn a new thread, but the thread pool is exhausted.
This might result in a deadlock unless some threads eventually exit or the code explicitly breaks out to the event loop.
If you want to increase the pool size, use setting `-sPTHREAD_POOL_SIZE=...`.
If you want to throw an explicit error instead of the risk of deadlocking in those cases, use setting `-sPTHREAD_POOL_SIZE_STRICT=2`.
bundle.js:56376 ================ handle_cool_message(): 'clientzoom tilepixelwidth=256 tilepixelheight=256 tiletwipwidth=1536 tiletwipheight=1536'
bundle.js:56377 Tried to spawn a new thread, but the thread pool is exhausted.
This might result in a deadlock unless some threads eventually exit or the code explicitly breaks out to the event loop.
If you want to increase the pool size, use setting `-sPTHREAD_POOL_SIZE=...`.
If you want to throw an explicit error instead of the risk of deadlocking in those cases, use setting `-sPTHREAD_POOL_SIZE_STRICT=2`.
bundle.js:56376 ================ handle_cool_message(): 'tilecombine...'

The 'clientzoom' never get processed and so
ClientSession::handleTileInvalidation returns early with _tileWidthPixel
(etc) of 0 because _tileWidthPixel (etc) never get set.

this std::thread dispatching of messages is similar to seen in
gtk/mobile.cpp in similar code, and also existed in
android/lib/src/main/cpp/androidapp.cpp before getting replaced
in:

commit 155718796e
Date:   Fri Jul 19 16:43:44 2019 +0200

    android: Fix a threading / ordering issue.

follow the same simpler android model here.

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I3b5e57b3d91bb80fbae90b269300581825518d7f
2023-12-12 16:23:00 +00:00
Darshan-upadhyay1110 34993ad462 Fix filter by color in Calc (auto-filter)
- We should fire `active` state call back for selected color value in filter by color
 - it will directly apply filter to columns
 - this change is consistent with LO
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: I90977cff67cda1bca78c7d60c132bd0685cadbaa
2023-12-12 14:20:33 +01:00
Szymon Kłos 43823a60ff Refresh cell cursor after recover from idle in Calc
We were using old cursor data after recovering the
view from idle state. For the user there was impression
that view jumped at some point - caused by other user
action. But it was just an update to real cursor position
which scrolled view to it, because previously we were showing
some other place in the spreadsheet.

Steps to reproduce bug:

1. Open spreadsheet with 2 views
2. B should have cursor in the bottom part of sheet, let's say row 600
3. Wait for idle in both sessions
4. Open the same spreadsheet with some other user C
5. C does some action on row 300 and goes away (closes tab)
6. User B activates view and selects row 600
7. User A activates view (he should be at the top still)
8. User B changes font size using dropdown in notebookbar, or double
   clicks on any row header

Result: view A jumps to other place

When we initially connect to the spreadsheet then
requestCellCursor is called in onAdd. Also
_gotFirstCellCursor is not set.

Let's do the same on reconnect so we will have similar
effect to clean startup.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I84c6ab705bc83d5c0d5c80325ec67c3f55aa19d8
2023-12-12 13:04:37 +01:00
Mike Kaganski 5e13f40780 Do not scroll the view outside of page bounds
Since core commit 690d4eb71509649ad147cfe60f5b97e2cfaaa519 (tdf#43100
tdf#104683 tdf#120715 sw: cursor on spaces over margin, 2022-07-04)
the cursor travels outside of text body area in Writer. Desktop view
doesn't follow the cursor in that case; the problem in Online was
that its view did follow the cursor. This resulted in the following
scenario:

1. Have a document with a thousand of trailing spaces in some line,
   before a word that would appear on a next line;
2. Put cursor to the beginning of that following line;
3. Press backspace (or left arrow key)

This resulted in the view jumping far to the right, with the page
being completely out of the view; the user only saw an empty screen
without any text, which was highly confusing.

Fix this by limiting the coordinates in _onUpdateCursor; use known
document size for that. This could still be problematic in case the
document has different-sized pages: the current page bound could be
narrower than document width. Yet, this seems to not be a big deal:
the view will likely still include part of a document, giving the
user a clue. An alternative would be to pass current page size with
invalidatecursor message from core.

Signed-off-by: Mike Kaganski <mike.kaganski@collabora.com>
Change-Id: I4d6cba7105d5aa2d1847bcb3994f93248b3f5ec6
2023-12-12 14:45:06 +03:00
Rash419 63a7871957 fix: can't insert mention on pressing 'Enter' key
Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I2002721dbd92fc44e9b924e67107b627e7176b87
2023-12-12 15:04:28 +05:30
Henry Castro 409478383a browser: fix sidebar height when the resize is triggered
Adjust height values of the slide sorter content element

Change-Id: I04fdb5f89f70b703385e61253bf8ea8a387a65ea
Signed-off-by: Henry Castro <hcastro@collabora.com>
2023-12-12 08:21:19 +00:00
Andras Timar 9c88df9162 Bump version to 23.05.6.2
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: If6665aba498e4e130891b7c325c36b225cb83c45
2023-12-11 21:59:12 +01:00
Caolán McNamara 3d6838e300 serve wasm metadata
[ websrv_poll ] ERR  FileServerRequestHandler: File not found: Invalid URI request: [/browser/515f66e2bc/soffice.data.js.metadata].| wsd/FileServer.cpp:738

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I6e4bb8a5a617f4ff8921430eae1f23147fd1a8cd
2023-12-11 19:28:18 +00:00
Szymon Kłos 515f66e2bc Update viewId in Writer after recover from idle
There was a bug in Writer not allowing to successfully reconnect
after idle state if we were not a first view in the initial document.
Let's update view id even if document size wasn't changed.
Added also additional error logging to be sure we never use -1 viewId which is
a default "bad value" when we enter some unwanted state in the core.

Steps to reproduce:
1. set per_document.idle_timeout_secs to something small, eg. 30, so sessions time out quickly,
2. Open a document with 2 sessions (remember which one was loaded first - A, important!)
3. wait for it to idle out in both sessions
4. activate SECOND session (B) by click on the document area

Result:
in the browser console you can see an exception:
Exception TypeError: this.map._viewInfo[this.map._docLayer._viewId] is undefined emitting event viewinfo: [{"id":0,"userid":"2","username":"LocalUser#2","readonly":"0","color":411298}] cool.html:359:37

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I23775230e169f61cb816b819f2dea56e293b20e1
2023-12-11 13:04:59 +00:00
Caolán McNamara e903234ec4 cid#336278 COPY_INSTEAD_OF_MOVE
and

cid#318879 COPY_INSTEAD_OF_MOVE
cid#318863 COPY_INSTEAD_OF_MOVE

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I4a2313bd23a0a9b7134d004ebc29db5caebbb17d
2023-12-11 09:25:59 +01:00
Caolán McNamara 5a01a21e27 cid#336285 Dereference null return value
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Ia0506d22a928fc810110895f3b00db33e3c28c5c
2023-12-11 09:25:59 +01:00
Michael Meeks eeea000242 Re-use the current time for a small efficiency win.
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I1183a02c5b41554a059cc222f9de82b592ac6322
2023-12-09 21:56:01 +00:00
Michael Meeks 7382a56591 latency: switch tileprocessed to track wire-ids per-connection.
To manage latency, we need to keep the amount of data-in-flight
manageable, this was previously done per-tile - however this is
less useful in the era of small deltas, and seems over-complicated.

Instead track processed tiles by their wire-id to save time,
space & bandwidth.

Change-Id: I1039d8d4ca96fb172278a824fe1ffd55d9fff23e
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2023-12-09 21:56:01 +00:00
Michael Meeks a9c0db4bcb Significantly simplify tile rendering on invalidation.
Accurate per client tracking of wire-id and avoidance of duplicates
is vital for good delta application, and is done precisely by the
ClientDeltaTracker class.

The inaccurate, _oldWireId tracker imperfectly tracked wireids of
the last tile per session, and used this integer for the boolean
oldWireId used to determine whether to create a delta; in an
un-necessarily complex way.

Instead we more accurately use the TileCache to determine if we
already have a key-frame, and if so use this to encourage Kit to
generate a delta if possible. there seems to be a potential race
though between the Kit's delta-cache size, and what keyframes
we have in the TileCache requiring further investigation, but
this is not a new issue.

Change-Id: If6cec4c1da31f7b715336c60d1dd6f358e1ef6a4
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2023-12-09 21:56:01 +00:00
Michael Meeks 0e1972faba latency: don't throttle wsd -> kit rendering on render queue size.
Instead throttle rendering only based on the number of tiles on
the fly down the coolwsd <-> browser socket.

It is almost certainly better to let the Kit process sort and
prioritize rendering with a more holistic view of all rendering
requests, and to elide duplicates - rather than to stack-up some
requests in coolwsd.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I566959306815ddc2742a0fe2694df6a1371c6852
2023-12-09 21:56:01 +00:00
Michael Meeks 395b44b6be remove unused code: ClientSession::clearTilesOnFly.
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: Ie5d8212766afb58d19690b607bea6572407e1adf
2023-12-09 21:56:01 +00:00
Michael Meeks dbcf3218c1 welcome back to the 'break' statement - all is forgiven.
Change-Id: I9c64530ce12861ea63f0b6bc2c5d04743d5672b6
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2023-12-09 21:56:01 +00:00
Ashod Nakashian e836637aae wasm: wsd: coolwsd remembers disconnected mode preference
Switching to disconnected mode works.

Change-Id: I653b282af41bac483c76564fdcf72a83a79065e1
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-12-09 19:22:24 +00:00
Ashod Nakashian 9deaf06fb5 wasm: wsd: client handler to switch to disconnected
Change-Id: I678ebfae7ed3d9b877a0fe0af6f6ee3add44cb2d
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-12-09 19:22:24 +00:00
Ashod Nakashian 1653d48a4f wasm: wsd: switch modes handlers - check and save
Change-Id: I7eef953aff077f20c50568b180ab7a1833655533
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-12-09 19:22:24 +00:00
Ashod Nakashian fd5c130d2d wasm: wsd: make switching wasm-only
Change-Id: I13386d60a469ec05c5b15369c32c5b3ccdffa232
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-12-09 19:22:24 +00:00
Ashod Nakashian 20508cf5a3 wasm: wsd: switch modes handlers
Change-Id: Ic56186baf54a51630f3d902175bee23b118a31f3
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-12-09 19:22:24 +00:00
Ashod Nakashian d9b020237b wasm: browser: add UI button to switch modes
Change-Id: I8e1f7e40a04b5b9eb5be935ecfa6f37ad0e96c9a
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-12-09 19:22:24 +00:00
Ashod Nakashian 6a42339640 wasm: log to stdout instead of stderr
Change-Id: I747945635c749127d2851cab1f738f4fa58d99f7
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-12-09 19:22:24 +00:00
Ashod Nakashian 4879049d9e wasm: disable file and color logging
Change-Id: Id9d13552af7e963739e6c30e5faa97519ddec76a
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-12-09 19:22:24 +00:00
Ashod Nakashian 8d49d33da4 wasm: truncate string only if will log
Change-Id: I7bcc420633563abb858354a7cdb6c4a74c79b548
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-12-09 19:22:24 +00:00
Ashod Nakashian 87fdb4a185 wasm: header include cleanup
Change-Id: Ia6396d9e10b9597602a88fced932c27c329b394b
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-12-09 19:22:24 +00:00
Ashod Nakashian a96f8a0f92 configure: WASMAPP is now defined for WASM targets
This is in line with MOBILEAPP and GTKAPP and
is independent of __EMSCRIPTEN__.

Replace all application-specific cases, leaving
only toolchain-specific ones (such as include
protection).

Change-Id: Ic44288aa5ace51e0a8b54566170c19120f7bf0dd
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-12-09 19:22:24 +00:00
Ashod Nakashian 1954f9abcb wsd: reduce includes where possible
Change-Id: I99f489e57cb9391ea819d52b49b0d0034a289cf9
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-12-09 19:22:24 +00:00
Ashod Nakashian 2255238711 configure: enable rtti with sanitizers on C++ TUs only
We now have at least one C TU and enabling rtti for
the sanitized build breaks things. So we don't enable
rtti for C sources, which was done in error.

Change-Id: If7624993ceb9e7af7aa8ffe3df69069ea4dd153a
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-12-09 19:22:24 +00:00
Bayram Çiçek a04b0c4201 Calc: make grouping responsive for each group level
Signed-off-by: Bayram Çiçek <bayram.cicek@collabora.com>
Change-Id: I68572eb126acf4a00ed96af870c1f908083aec8b
2023-12-08 16:23:24 +01:00
Caolán McNamara 1bd1e5a828 wasm is derived from the mobile, but doesn't have on-screen keyboard
There's a bit of a mobile/wasm munge with wasm considered a subset
of mobile in some places which should be unwound a bit, but for the
purposes of usable wasm by default, don't assume that wasm has an
onscreen keyboard so we don't lose keystrokes on assuming that
there will be an onscreen keyboard appearing when we lose and regain
focus.

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I0baae0d414ce9aafd1c27d74bcdad2276d104ee5
2023-12-08 14:17:27 +00:00
Caolán McNamara cf33d0bdd0 update wasm.README for distro-config
the default suggestion uses --enable-qt5 which isn't needed for
LOKit and breaks finding custom notebookbar widgets so online
notebookbar doesn't work with it.

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I644924a0f8cdb01d4ec20d70ff7aedb27a2c899f
2023-12-08 14:08:30 +00:00
Rash419 169567b3cc fix: persistent snackbar after the document get idle
- previously, when document was getting idle, it was
  showing a snackbar "The server is disconnected" which
  unnecessary plus the snackbar was persistent even
  after reconnection.
- There are two scenarios to be tested,
 1. It shouldn't show snackbar on idle
    - Set per_document / idle_timeout_secs to something small, eg. 30,
    - Open a document, and wait until it idles out.
    - make sure it doesn't show "The server is disconnected" snackbar
 2. It should show "The server is disconnected" snackbar when you shutdown
    the server, when you start the server again snackbar should disappear

Change-Id: I4ccc93dabb4dd260338d5a941b18ebaf8e42b1ad
Signed-off-by: Rash419 <rashesh.padia@collabora.com>
2023-12-08 18:56:34 +05:30
Pranam Lashkari 009cb14c07 cypress: added multiuser annotation tests
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I9afae096d7a9e925e01e0c9faee57254ed1d074d
2023-12-07 22:38:59 +05:30
Pranam Lashkari 0c0fcd57db annotation: avoid wheel event handling for comments
it was previously required to handle comment scrolling separately but not anymore
it was introduced in a3e59d1

current problem:
when a comment is very long that it overflows and has a scroll bar,
it is only possible to scroll using the scroll bar and mouse wheel didn't work

fixes #7735

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I6d9f85c61b837f86e021a795e8af43b375a318d1
2023-12-07 22:06:08 +05:30
Pranam Lashkari 6ccb1a8d98 annotation: only allow to edit one commit at a time
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: Iaa021be2327294e5e34bf6b56de35894f36f263c
2023-12-07 15:38:13 +01:00
Pranam Lashkari 93bdcc349b Annotation: revamp comment autosaving
Original approach before comment autosave:
When we save a new comment, original DOM element which user was editing
is removed from the DOM and new comment DOM element is created from the data and message sent by core.

Previous comment autosave approach:
When we save a new comment, original DOM element which user was editing
is not removed but kept in editing mode. We register the comment message sent by the core
but react and create new comment DOM element only after user clicks on save or cancel.
This lazy initialization caused many regression due to juggling of the new and old comment DOM element.
All these problems were in JS side only, reloading doc would bring comment in correct state.
This approach gave smoother transition between different comment states without any flickers.

New comment autosave approach:
Simple as the original approach, when comment loses focus we save it as normal comment.
When new DOM element created via core comment message, we immidietly set it to edit mode.
This approach may have a little flicker when we replace old comment DOM element with new comment DOM element.
Overall this approach requires less condition checking which makes it easy to maintain and hopefully reduces any regression from previous method.

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I4098085825ede65cdbf2e2243fc4d2bb1f63c716
2023-12-07 15:38:13 +01:00
Pranam Lashkari 3916a443fc Revert "annotation: avoid saving comments on losing focus"
This reverts commit 51d19dd60e.

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I60ecf1cc7f9b61c41b95ddd5ceb6caaf72036e3e
2023-12-07 15:38:13 +01:00
Pranam Lashkari ca64805e23 Revert "annotation: autosave comments when lose focus without exiting editing"
This reverts commit a022212381.

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I6431fc2500fe44a8d97364aa89412206179c7aba
2023-12-07 15:38:13 +01:00
Pranam Lashkari 630a2e74d2 Revert "annotation: fixed autosaved comment cannot be closed"
This reverts commit dda49b0af6.

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I0be7ff41777eece8a0bbe5a52219c076d78ac3be
2023-12-07 15:38:13 +01:00
Pranam Lashkari 05f4fa9564 Revert "annotation: make sure comment list is fetched correctly"
This reverts commit a373b6e121.

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: Iaae5932eeb29f90a0d22439dba53897ef7b4fafa
2023-12-07 15:38:13 +01:00
Pranam Lashkari 70ad32d885 Revert "annotation: avoid trying autosave empty comments"
This reverts commit 6a4cd7eea5.

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: Icc20b9e055ccb8d7a1d78635f0c659696110d0a6
2023-12-07 15:38:13 +01:00
Pranam Lashkari a92342c86e Revert "annotation: avoid marking comment autosave if its not saved"
This reverts commit 2c720a6a87.

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I99869bfa017e704053589264242a17add727ce74
2023-12-07 15:38:13 +01:00
Pranam Lashkari ae523fc611 Revert "annotation: forcefully reselect comment before modifying"
This reverts commit 4d7df8ae9c.

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: Ia3770347cec0d3949e6459b4c412c52c5e0f1116
2023-12-07 15:38:13 +01:00
Pranam Lashkari 3fc486a131 Revert "annotation: fix parent comment being deleted if reply cancelled"
This reverts commit 91cbc8c404.

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I0e995f1b2eb1451943d56f86829e4f09860a43e6
2023-12-07 15:38:13 +01:00
Pranam Lashkari 108987e3e5 Revert "annotation: fix cancelled modification of autosaved comment"
This reverts commit 30f6c14b9f.

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I87e3e3a6732c3d182f0724ece52fca2cbbd8dc99
2023-12-07 15:38:13 +01:00
Pranam Lashkari c0a0160644 Revert "annotation: fix parent comment being deleted if reply cancelled"
This reverts commit 5c965044ec.

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I4157cffe38beccd675b33f2417617025b226eafe
2023-12-07 15:38:13 +01:00
Pranam Lashkari e079ac34cc Revert "annotation: fixed impress disappearing comments on autosave"
This reverts commit d7e07b773f.

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: Ifafef55b97871aa01c851abb6a1c87edb84b9862
2023-12-07 15:38:13 +01:00
Pranam Lashkari f0e68b7590 Revert "browser: fix duplicate comment reply on autosave"
This reverts commit 4ba4c61aad.

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I39bee7e5b2033e7fed1ab8a3066ebf43aa1be4da
2023-12-07 15:38:13 +01:00
Pranam Lashkari 8a592db923 Revert "annotation: reset comment id if autosave is cancelled"
This reverts commit 3c1ac04b0e.

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I842f8fc7feac01685785af72929974fc4fa397af
2023-12-07 15:38:13 +01:00
Pranam Lashkari bdbe2dfa51 Revert "annotation: make sure parent-child relation is established"
This reverts commit ab064bacc7.

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I073bc9045e68ed78424681a3c9c70696cbfece3f
2023-12-07 15:38:13 +01:00
Szymon Kłos b9e5a51315 Update network access error strings
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: If44683da69ce05b8271117338f2e059bad15182d
2023-12-07 14:58:42 +01:00
Szymon Kłos 675afcf60b jsdialog: introduce JSDialog.showInfoModalWithOptions
Helper that is easier to use as has "options" parameter
not a long list of possibly optional ones...
It is first step to refactor old UIManager.showInfoModal
helper, which is less flexible.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I34eae39cab583985ad3d940aa025aee0a374e25e
2023-12-07 14:58:42 +01:00
Szymon Kłos bbcf9053b9 Show info modal on network access error
If administrator doesn't allow some URLs in the coolwsd.xml
under net.lok_allow then when pasting webpage with images
- it might result in missing pictures. We should show the
user what happened.

User can click "don't show this again" to avoid annoying
dialog on every paste.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Iec9035860b1c6a332420defd539000e8854447c9
2023-12-07 14:58:42 +01:00
Andras Timar af36021b6f Do not refresh notebookbar when we start in read-only mode for txt and csv
This is a workaround for the bug, when a txt or a csv file was opened,
and there were both the classic menu and the menu of the notebookbar
at the same time at the top of the window. This bug occurred because
regardless of the user's UI mode setting, the read-only mode has the
classic menu. The fix also have a side effect, that is better than
the original symptom. Now when a txt file is opened, and user starts
editing it, the Zotero buttons won't be on the References tab. I
think it's a good trade-off, but FIXME.
Eventually, when we won't have the classic UI mode any more, this
problem would be solved better, for all corner cased (txt. csv, pdf,
read-only shares etc.)

Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ic3f95c02a0b75136a0b8069fa8297ed129b63865
2023-12-07 14:34:23 +01:00
Caolán McNamara facd87b866 enable window.logging before dumping delayed log
otherwise the carefully retained startup log message don't appear
in a non-debugging online version

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Ie4caf3462539e07f14f6c84bccab47fcbe9d5203
2023-12-07 10:57:08 +00:00
Szymon Kłos eaca5e32bd notebookbar: don't send events to core
switching tabs should not send events to the core
notebookbar is online-only widget

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I39c487d3c91f1fe858438e03fd9369f3dc571f52
2023-12-07 11:38:04 +01:00
Caolán McNamara 9daba64dc1 use of gseparate-dwarf can block some optimizations
with in in place the sizes are

-Os for core and online
  du -h online.wasm 155M

-Oz for core and online
  du -h online.wasm 145M

and a warning of:

em++: warning: running limited binaryen optimizations because DWARF info requested (or indirectly required) [-Wlimited-postlink-optimizations]

without gseparate-dwarf the sizes are:

-Os for core and online without -gseparate-dwarf
  du -h online.wasm 133M

-Oz for core and online without -gseparate-dwarf
  du -h online.wasm 119M

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I91586abe0e52f6de20d0f04636bb5a2be93d92be
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2023-12-06 12:39:46 +01:00
Darshan-upadhyay1110 e70b9d719f Change checkbox state by click on checkbox label
- Now we can check/uncheck by clicking on label
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: I03c5e866d89f61a93b07dbbd1f5bd7752f5c723f
2023-12-06 11:41:09 +01:00
Caolán McNamara 5f1c943a98 add hasWASMSupport to capabilities
so the launching site can query if wasm is enabled to see if it needs to
insert the required headers, so we can then in turn make it optional on
those being set to also require matching headers.

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Icd73081809abb8098c21bc61a8357869db45ff6c
2023-12-06 09:58:57 +00:00
Hubert Figuière fa268b8e0e framed.doc: if entering bad message data, recover
Signed-off-by: Hubert Figuière <hub@collabora.com>
Change-Id: I6337029fe1eeffb7f20acaa100602ea44a0dbc63
2023-12-06 08:53:29 +00:00
Darshan-upadhyay1110 8b28c8cc12 A small typo in Class name which is cause for `FontColor`
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: Ifa40864a332718f9c58335e6d950149673d03f10

A small typo in Class name which is cause for `FontColor` icon not working in dark mode. it is not fully related here but pushing that as a commit in this PR :)
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: I516220240d204302074f72e20d98df7591cb00cb
2023-12-06 09:26:13 +01:00
Darshan-upadhyay1110 f3948aa30b Fix icon wrong url caused by data.icon property
- there are 3 cases we need to consider
   - 1) data. Icon if present, then set Icon based on its value.

      - Here 2 child cases 1) data.Icon can be direct an image URl in that case we will not perform and operation directly use `buttonImage.src = data.icon `

      - if values is just an image identifier like lc_save.svg then will call setImage method as we do in many other case
  - 2) data.Image if present the we directly go with data.Image URl
         - `buttonImage.src =  data.image;`
         For ex:
      In ODP file => sidebar => Line (section) => width (property name)
      Here we are setting the icon based on `data.command`  instead of `data.image` that makes icon different

  - 3) If both above case is not valid then byDefault we will go with data.Command
        - `L.LOUtil.setImage(buttonImage, builder._createIconURL(data.command), builder.map);`

Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: Ia112202fdebec2f3529f3bbd19d46084d4e0dc1a
2023-12-06 09:26:13 +01:00
Caolán McNamara 7f2b8c0aef duplicate jsdialog messages seen in UnitBadDocLoad
debugging some intermittent failures in UnitBadDocLoad I see that there
are some duplicate jsdialog messages appearing which is easily
reproducible by just opening test/data/corrupted.odt in online.

probably has been like this since:

commit 7f70197723
Date:   Mon Dec 28 11:37:27 2020 -0400

    kit: enable input process when early dialog show

and possibly not the problem I was originally trying to chase

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I7aa342e86ad9ae73082cb71f1b2c9b2bf0f212b9
2023-12-05 11:38:24 +00:00
Rash419 f203a4d68f admin: indirection add new command for sanity check
- routetoken_sanity_check

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: Ieaabcd044b65ad0620089ae6413e3f626ff68c4c
2023-12-05 10:46:31 +05:30
Hubert Figuière aa43f7e43b wopi: Added DisableInsertLocalImage
This allow being able to disable pick up of a local image. Handle the UI as well.
To be used with EnableInsertRemoteImage.

Return DisableInsertLocalImage: true as part of the WOPI CheckFileInfo reply
Default value is false (enabled)

Added an 'insertremotegraphic' button to the classic toolbar for use when
it's the only option.

Signed-off-by: Hubert Figuière <hub@collabora.com>
Change-Id: I1925f804433a7bda6025cb65b0943d78927bea15
2023-12-04 20:36:13 +00:00
Michael Meeks 9de0b02e7b Refactor: move tile limit accounting into ClientSession.
Also add state dumping of tile on the fly statistics per session.

Change-Id: I8413cdfd489be3c238738f95d9d5c4aa177ff262
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2023-12-04 17:45:12 +00:00
Miklos Vajna 2659983faa wsd: fix missing session handling in DocumentBroker::forwardToChild()
To reproduce:

	./clientsession_fuzzer -max_len=16384 fuzzer/data/crash-32e5136d2291e6c5fa99aa5942acded42b66a528

Failed with:

    #7 0x7f1aeb9c9cf1 in __assert_fail (/lib64/libc.so.6+0x42cf1) (BuildId: f732026552f6adff988b338e92d466bc81a01c37)
    #8 0x55a9f13968a5 in DocumentBroker::forwardToChild(std::shared_ptr<ClientSession> const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&, bool) /home/vmiklos/git/collaboraonline/online-fuzz/wsd/DocumentBroker.cpp:3613:5
    #9 0x55a9f1676a9a in ClientSession::forwardToChild(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&, std::shared_ptr<DocumentBroker> const&) /home/vmiklos/git/collaboraonline/online-fuzz/wsd/ClientSession.cpp:1414:23
    #10 0x55a9f166f96a in ClientSession::_handleInput(char const*, int) /home/vmiklos/git/collaboraonline/online-fuzz/wsd/ClientSession.cpp:1100:20

The reproducer was originally added in commit
aefc65465b (wsd: fix crash when downloadas
has not enough parameters, 2020-02-21), but now it also triggered this
assertion failure problem as well.

The brave assert was added in commit
b2aff3e817 (wsd: pass ClientSession to
forwardToChild, 2022-11-26).

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: I4a0adda49aa2d24925d448fa5753509917d2585a
2023-12-04 16:15:16 +00:00
Hubert Figuière 3fc8bdffe3 framed.doc: Allow switching app on the fly
Signed-off-by: Hubert Figuière <hub@collabora.com>
Change-Id: Idad883f566a02b1e777c8c7af6b9b52da3a62e69
2023-12-04 11:10:15 -05:00
Hubert Figuière abf7b2bd70 postmessage: Add a show/hide command
New postmessage `Show_Command` and `Hide_Command`.
Pass a command name (uno or otherwise) in `Values.id`.

Will hide the corresponding toolbar, menu and notebookbar items.

Signed-off-by: Hubert Figuière <hub@collabora.com>
Change-Id: Idaa86f7a936a282c636fa0532ab165c6977db873
2023-12-04 10:45:19 -05:00
Andras Timar e29934b944 Bump version to 23.05.6.1
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: If3f6bd3a6b1418d0d1f96308a9356549922ba972
2023-12-04 16:39:02 +01:00
Sebastiaan Veld 4a8974d107 Translated using Weblate (Dutch)
Currently translated at 100.0% (539 of 539 strings)

Co-authored-by: Sebastiaan Veld <sebastiaan.veld@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/nl/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I1139d90d5a2a293631a14ba7fdf94997c4542c8e
2023-12-04 08:27:10 +01:00
bittin1ddc447d824349b2 ca8374c050 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: Ic90ceedfe9c21323adea5ef16f3cb22abc29a7cc
2023-12-04 08:27:10 +01:00
Sveinn í Felli 1ce9f18975 Translated using Weblate (Icelandic)
Currently translated at 99.6% (537 of 539 strings)

Translated using Weblate (Icelandic)

Currently translated at 71.0% (332 of 467 strings)

Translated using Weblate (Icelandic)

Currently translated at 99.2% (535 of 539 strings)

Co-authored-by: Sveinn í Felli <sv1@fellsnet.is>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/is/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/is/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ib8efb2ada68af1b958b2b72f023dcc2ff5900bb1
2023-12-04 08:27:10 +01:00
Stanislav Horáček 82a6f0cc82 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: If0bfe9c40255da91d5a3836ed2f14de89ce07208
2023-12-04 08:27:10 +01:00
Martin Srebotnjak 8f14c0cde5 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: I5510fc92a6875782d125a42d4ae9785f5c9a1710
2023-12-04 08:27:10 +01:00
Matthaiks abfd0238ab Translated using Weblate (Polish)
Currently translated at 100.0% (539 of 539 strings)

Co-authored-by: Matthaiks <kitynska@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pl/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I4278cbbd92f2e3913e740de53eaf0d2bc0c6fa64
2023-12-04 08:27:10 +01:00
Andras Timar 5c5a96af82 Translated using Weblate (Hungarian)
Currently translated at 100.0% (539 of 539 strings)

Co-authored-by: Andras Timar <andras.timar@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/hu/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I94026e1da64b38026e455e79b911575d965282f8
2023-12-04 08:27:10 +01:00
gallegonovato 0534e1ce3a Translated using Weblate (Spanish)
Currently translated at 100.0% (539 of 539 strings)

Co-authored-by: gallegonovato <fran-carro@hotmail.es>
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: I6ef9cddb30aab347175e0a4ae45a94ff57bef13c
2023-12-04 08:27:10 +01:00
Rash419 d118874bee wsd: fix: failed to load passwordprotected and csv files
- send blockingcommandstatus after document is loaded
- also fix odd nodocloaded dialog

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I8f0ae405ffa77b47e09c01caf51ddc4fd5e1d862
2023-12-04 11:23:32 +05:30
Michael Meeks 39f95d3a56 calc: split pane mis-rendering.
Invalidations were not cropped to the split pane, such that large
invalidations that crossed from the mane pane over another top/left
split pane, would cause partial re-render, flicker and other problems.

Regression from: 0453140f61

Potential fix is to have a complex multi-rectangle clip region, or
to only do this for simple cases, which are common: of invalidation
within a single split pane, doing a complete re-render elsewhere.

Change-Id: I255806286f6c80a233d4c6ade2bcb4e12f2bf753
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2023-12-02 11:14:15 +00:00
Caolán McNamara c33a372876 wasm attempt to download file that doesn't exist with reverse proxy enabled
Handling request: /wasm/https:%252F%252Fwhatever%252Fnextcloud%252Findex.php%252Fapps%252Frichdocuments%252Fwopi%252Ffiles%252Fwhatever%3Faccess_token=ozxpkBByLTd9XnWaWHdrTVhMp3Exf1mt&access_token_ttl=0| wsd/COOLWSD.cpp:4093
[ websrv_poll ] INF  #22: Starting GET request handler for session [032] on url [https:%252F%252Fwhatever%252Fnextcloud%252Findex.php%252Fapps%252Frichdocuments%252Fwopi%252Ffiles%252Fwhatever%3Faccess_token=ozxpkBByLTd9XnWaWHdrTVhMp3Exf1mt&access_token_ttl=0].| wsd/WopiProxy.cpp:37
[ websrv_poll ] DBG  #22: Getting info for wopi uri [https://whatever/nextcloud/index.php/apps/richdocuments/wopi/files/212272_ocbizrjb36ht?access_token=whatever&access_token_ttl=0]| wsd/WopiProxy.cpp:120
[ websrv_poll ] ERR  Invalid URI [] to http::Session::create| net/HttpRequest.cpp:664

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I8471ee4247ecab62284e06330bd157aa126b9cd8
2023-12-01 21:02:35 +00:00
Miklos Vajna 89f080ba45 wsd: check for nullptr channel in AdminSocketHandler
This can happen like this:

    #8 0x7f14fdf4ec86 in std::terminate() (/usr/lib64/libstdc++.so.6+0xb7c86) (BuildId: c74eca671e2dd0f063706372d103f8acef88f1e3)
    #9 0x7f14fdf4eee7 in __cxa_throw (/usr/lib64/libstdc++.so.6+0xb7ee7) (BuildId: c74eca671e2dd0f063706372d103f8acef88f1e3)
    #10 0x55ddc5b906d2 in Poco::AutoPtr<Poco::Channel>::operator->() /usr/include/Poco/AutoPtr.h:232:4
    #11 0x55ddc5b7eb07 in AdminSocketHandler::handleMessage(std::vector<char, std::allocator<char>> const&) /home/vmiklos/git/collaboraonline/online-fuzz/wsd/Admin.cpp:236:13

Note how LOG_ANY() assumes that Log::logger().getChannel() is not
nullptr (so the caller has to check for it), while the more typical
variants with a log level like LOG_TRC() already do a similar check via
LOG_CONDITIONAL().

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: I5e1379f33e6640fd07de673ef0d07b1d4d611c89
2023-12-01 15:35:39 +00:00
Szymon Kłos a243bc9f49 Add list of allowed data sources
- uses new lok_allow setting to provide such list
- for backward compatibility uses also all post_allow and storage.wopi
  entries
- Used for example in: PostMessage Action_InsertGraphics,
  =WEBSERVICE() function, external reference in the cell

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ib930e0119d4ea124b9cd565f6b3683310b1b3ced
2023-12-01 15:25:47 +00:00
Darshan-upadhyay1110 f798be095c modified the setImage method for icon
- now setImage method will handle the refresh of icons when theme change to Light/Dark
- added listner to setImage method
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: I0529588487c2436d53585e63a2467fe0a917adee
2023-12-01 13:32:37 +01:00
Darshan-upadhyay1110 9769a0f97d Make icon structure consistent
- All Icon HTML structure shoulb be same as other icons
- Most of the places we have this way to add icon in DOM
  - <Button> <img/> <Button>
- This patch is to change for some icon with drop down which is not consistent with above structure
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>

Change-Id: I1a82bc4b3dfbca15f62bfe111e36804c754da539
2023-12-01 13:32:37 +01:00
Pedro Pinto Silva 414b8b5f09 menuItemHandler: add additional identifier as css class to ui-header
Before it was impossible to correctly target one dimensional menu
entries such as Help, About, Feedback and Latest updates.

This affects places such as Mobile: hamburger menu where now menu entries
get automatically assign an additional css class based on its data.id.

Note: we could also employ the same thing within explorableEntry if
needed. But that's outside of the scope of this change.

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ib50cf1e29f4fae072b8739c76e7facaa540c0ad5
2023-12-01 13:24:57 +01:00
Szymon Kłos 30ccc1ef2e Avoid duplicated / in paths
Also use some allowed path for HOME and XDG_CONFIG_HOME so we start correctly.
Setup Work path for pdf/epub export.
Enable osl allowed paths for nocap only.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I4fa058fe5fabc5eafdff7630dfcc72dedfe22e4a
2023-12-01 12:31:33 +01:00
Michael Meeks f11cad502b Use the OSL sandbox as well: belt + braces.
Also move the nocaps TMPDIR into the jail folder, to sandbox better.

Change-Id: I161695b4585a2c6003779caa88152b744d36266b
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2023-12-01 12:31:33 +01:00
Miklos Vajna dc149702ae doc broker: handle no _storage in uploadToStorageInternal()
Similar to commit eb5c86a4d3
(DocumentBroker::saveToStorage: guard against nullptr _storage,
2020-10-26), with the same input.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: I17ac2bc12ba086d16ccbf3d5c758e081a32cbf5a
2023-12-01 09:17:36 +01:00
Rash419 67aac9424b indirection: change request interval from 10s -> 3s
Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I43c3bc5e1725f9d364c44638364f836e94f38290
2023-12-01 13:04:40 +05:30
Gülşah Köse aa6fdeaa55 Fix the thickness dialog is shown cut
Thickness dialog has an image in. When the image render is delayed we
are getting image size 0x0. That wrong size caused wrong resizing of the
parent containers. To show better result, we need to get image's actual
size from core.

Signed-off-by: Gülşah Köse <gulsah.kose@collabora.com>
Change-Id: I207fd2fcca63deee21f51ef34c1ad670e15afd87
2023-11-30 20:04:23 +01:00
Hubert Figuière 44b92e18af postmessage: don't send ready message unecessarily
Signed-off-by: Hubert Figuière <hub@collabora.com>
Change-Id: Ia57d19298615fe4cd5b95c60c6b097631d54e4b4
2023-11-30 11:49:39 -05:00
Rash419 2c78023630 Revert "wsd: disable ctrl+s when HideSaveOption is true"
- fix: disabled 'Action_Save' postmessage when HideSaveOption is true

This reverts commit 34f3dd4a62.

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I5e6425621550153547278a61a936ba9dc7e4aad1
2023-11-30 14:00:03 +01:00
Caolán McNamara 48002c5d40 allow testing wasm in non-debug mode
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I583a8104f590e26a76837bef00814684e2015c7a
2023-11-30 12:58:42 +00:00
Gökay Şatır bb2df24d1b Initialize parent for red lines.
Lack of "parent" property was causing inconsistent behaviour for redlines.

Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: Iaa2424aeee160a9b28d6b0a29b456ddbc3a1b620
2023-11-30 17:16:19 +05:30
Gökay Şatır 13db34021d Refactor some parts in commentListSection.
Use new functions for querying the properties of comments.

Added new functions like setAsRootComment, getChildrenLength etc.

Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I9b655f0e6d50050f9e509ba4f822e1d8681a4a69
2023-11-30 17:15:38 +05:30
Gökay Şatır 25b01762fa When a parent comment is removed, child comment is disabled.
* When a parent comment is removed, the children of that comment are not informed.
* We have adjustParentRemove function.
** Function wasn't handling the "parent is removed" case.
** Function was handling the "child is removed" case in a wrong way. Children list has pointers, not indexes.

* When a parent is removed, child wasn't shown. Now we re-set the display property in case it was set to 'none' before.

* getSubRootIndexOf function was trying to continue with index=-1.

On mobile, a reply was added twice, fixed.

Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: Id8f95bbe1cb78bf93bf35fe73a6e86203455691c
2023-11-30 17:15:38 +05:30
Miklos Vajna 07db53bb6e wsd: handle Poco::URISyntaxException in AdminSocketHandler::handleMessage()
terminate called after throwing an instance of 'Poco::URISyntaxException'
    #8 0x7f014e70dc86 in std::terminate() (/usr/lib64/libstdc++.so.6+0xb7c86) (BuildId: c74eca671e2dd0f063706372d103f8acef88f1e3)
    #9 0x7f014e70dee7 in __cxa_throw (/usr/lib64/libstdc++.so.6+0xb7ee7) (BuildId: c74eca671e2dd0f063706372d103f8acef88f1e3)
    #10 0x7f014dcea45b in Poco::URI::decode(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&, bool) (/usr/lib64/libPocoFoundation.so.92+0x15145b) (BuildId: 32601204eb877c998d0122c4bef1c7c08c8d0285)
    #11 0x56496c48320b in Util::decodeURIComponent(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&) /home/vmiklos/git/collaboraonline/online-fuzz/common/Util.cpp:800:9
    #12 0x56496bb21ec0 in AdminSocketHandler::handleMessage(std::vector<char, std::allocator<char>> const&) /home/vmiklos/git/collaboraonline/online-fuzz/wsd/Admin.cpp:84:20

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: I07551d92be5ae677d1cf63f0f0092fb838583337
2023-11-29 15:41:00 +00:00
Miklos Vajna 1e125c7bdc Fix fuzzers build
- the HttpEcho build broke with commit
  08d9081280 (net: don't try to set
  TCP_NODELAY on local Unix sockets., 2023-10-30)

- fix an unused variable error from commit
  0631593c96 (wasm: proxy wopi documents,
  2023-11-06).

- the undefined reference to COOLWSD::ForKitProcId probably went wrong
  in commit 3f46c1db44 (kit-in-process:
  pure re-factor to a run-time function to flag this., 2023-11-20)

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: I0cf06d188860bdb2f795485a91c7634b596255aa
2023-11-29 15:41:00 +00:00
Hubert Figuière 2afa6db0ca postmessage: Added Show_StatusBar and Hide_StatusBar
Signed-off-by: Hubert Figuière <hub@collabora.com>
Change-Id: I86d507f6aad7f3acbc69e82f366e14b4ea78824a
2023-11-29 09:27:52 +00:00
Hubert Figuière c1f9da92a1 framed.doc postmessage: Hide/Show the ruler
Signed-off-by: Hubert Figuière <hub@collabora.com>
Change-Id: I1b2f7c4ee0e4faebad4050167ce7aabb6adce275
2023-11-29 09:27:52 +00:00
Henry Castro 60e4552ca4 cypress: add unit test to check slide pane height
Change-Id: I9aacf3dcf123348e9e2b6308695a44bd14cd079b
Signed-off-by: Henry Castro <hcastro@collabora.com>
2023-11-29 09:22:47 +00:00
Henry Castro 439ed9ee14 browser: fix slide pane height container
The container '#presentation-controls-wrapper' element should
adjust height value when '#presentation-toolbar' is shown.

Change-Id: Ia44006e5b99f0ec08632cc171a8e23e9b6f67614
Signed-off-by: Henry Castro <hcastro@collabora.com>
2023-11-29 09:22:47 +00:00
Hubert Figuière 1ef0ffeb76 framed.doc postmessage: Hide/Show Save work with the notebookbar
Signed-off-by: Hubert Figuière <hub@collabora.com>
Change-Id: Ie0b58528d1545948fbf50d095093fd837ef913cd
2023-11-28 16:03:33 +00:00
Hubert Figuière 79e33ab76c framed.doc: Relayout the post message test harness
Signed-off-by: Hubert Figuière <hub@collabora.com>
Change-Id: Idbd1b5d89ea53d4f9925b727e8db2854ac23b17f
2023-11-28 16:03:33 +00:00
Skyler Grey fbb756075c Unrevert "Stop onscreen keyboard when panning calc on tablet"
This reverts commit 9b3e115fb5. It was
meant to have been dropped without being merged, but #7619 was merged
with it in

Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
Change-Id: I698c7a0aa680a1b8155c08c8d292f609522fe347
2023-11-27 13:00:55 +00:00
Szymon Kłos a0f36adf41 jsdialog: close dropdown properly
Make sure we don't expect response from server for online-only component: dropdown which doesn't have corresponding widget in the core

fixes regression on close from:
commit a23adac78c
browser: fix undefined property 'isPopup'

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I005647c77da3a866cec88a78f03dd409a098a469
2023-11-27 12:53:39 +01:00
Caolán McNamara 74b9c72814 need this even if we want to not serve wasm if the headers exist in richdocuments
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I310894e5a72002406eff77b07af76c2b048ffacc
2023-11-27 10:48:44 +00:00
Caolán McNamara afc28b9e69 we want %ACCESS_TOKEN%, etc to exist for wasm
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I58f187c28c158e80fbe97290bb802b3481a44de9
2023-11-27 10:48:44 +00:00
Caolán McNamara 5232e3d735 hack to get this up and working
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I6d3d273f59f58a0c3b2027039dcc7de95ad971b9
2023-11-27 10:48:44 +00:00
Ashod Nakashian 0631593c96 wasm: proxy wopi documents
Change-Id: I3104ac9a6fd180f11aef06b9d4f516a392e021a9
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-11-27 10:48:44 +00:00
Ashod Nakashian 7abeb96cd1 wsd: add StorageConnectionManager::createHttpRequest
Change-Id: Ie690e9c4ea33ae8cea8355d414ed137e7d5130ba
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-11-27 10:48:44 +00:00
Ashod Nakashian a624a704ac wsd: add StorageConnectionManager
StorageConnectionManager centralizes the
connection creation and management of
Storage sockets and related bits.
This is needed as we move to a more async
model of communicating with the Storage.

Change-Id: I7a44c95c113bbc536e922b5aa3f7cf9b71917c22
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-11-27 10:48:44 +00:00
Ashod Nakashian a7d6d1debc wasm: pass the docURL to the wasm app
Change-Id: Ie0933d2def50370cfd43cb7e7b70d9408bedb25a
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-11-27 10:48:44 +00:00
Ashod Nakashian 94d213c39e wsd: cache files that need no compression separately
Change-Id: I7b46becd330a7a09a05b7973b18c92679104f597
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-11-27 10:48:44 +00:00
Skyler Grey 9b3e115fb5 non-calc: Revert "Stop onscreen keyboard when panning calc on tablet"
This ignores the hints from commit
f62f365a0e when not using calc. This is
because they were causing an undefined reference in WASM.
(window.keyboard.guessOnscreenKeyboard). To me, this looks like a bug in
our WASM implementation, as I think WASM should get window globals, but
as it's blocking us we're partially rolling this commit back.

I expect to revert this revert as soon as it no longer breaks WASM.

Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
Change-Id: I91bab273d400bf7925e338631e74dabc8a01e529
2023-11-27 10:48:44 +00:00
Ashod Nakashian c2c0fe6f51 wasm: accept url as command-line argument
Change-Id: I005cd45ed0c6bfbf20bf74c84c670d2f9a0b289e
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-11-27 10:48:44 +00:00
Ashod Nakashian 3a0a4c1225 wasm: readme update
Change-Id: Ie3f1fb3800597f719f2764ec1ee2cad0ba48e62f
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-11-27 10:48:44 +00:00
Ashod Nakashian b045c2a7b4 wsd: fix compiler warnings
Change-Id: I9ffa81d97c3b04b4c0608466892f9b59a896e509
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-11-27 10:48:44 +00:00
Jan Holesovsky 9d8e00312d Kill some copy/paste
Signed-off-by: Jan Holesovsky <kendy@collabora.com>
(cherry picked from commit 1ca42964447b6f25acaa63d754f5f42320bea047)

Change-Id: I30fe4421c2305af0da677ebc3731c682e21dae22
2023-11-27 10:48:44 +00:00
Darshan-upadhyay1110 578dd1e780 Add rename document icon for dark mode
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: I6fd72056ffee0d060c3b6d66b4ce70d0ec4bce08
2023-11-25 11:50:25 +05:30
Subham Jena 601352b1f0 Translated using Weblate (Odia)
Currently translated at 11.8% (13 of 110 strings)

Co-authored-by: Subham Jena <subhamjena8465@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/android-app/or/
Translation: Collabora Online/Android app
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I922df944b00c8be79157b25e079e9a22c7923171
2023-11-24 19:24:20 +01:00
Andras Timar 0ec3b7dae7 Update l10n files for Weblate
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I413eb3ece54d09f4a3defe6eb013e20aa88a84d2
2023-11-24 19:21:53 +01:00
Pranam Lashkari a2b2b1f9a8 formulabar: select formulas on mouseleave event
problem:
In a spreadsheet, click on a cell with content,
In the formula bar, select the content in a way that the mouse key is lifted outside the edit field
Note how the formula bar doesn't get into edit mode, but you can still edit the content

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: Ib4f193b897d57e0ffa9c3bfdd598e0c3c4201195
2023-11-24 20:22:50 +05:30
Pranam Lashkari 87a55af7b1 calc: select whole row/column on mouse drag
problem:
In Calc click on a row header and drag the mouse. The selection does not follow the mouse,
selection only appears when you release the mouse button

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I510f35d9f61fca63a619e83c04ff340f9578f5d2
2023-11-24 20:21:48 +05:30
Pranam Lashkari cfc6874c22 cypress: refector mismatching parameter in function call
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I8fa8e4b1e20de0af16368cb23ca641b8d7186bfc
2023-11-24 18:36:26 +05:30
Rash419 ccdedbaab1 chart-releaser: fix 422 Validation Failed
- from the logs Error: error creating GitHub release
helm-collabora-online-1.1.5: POST https://api.github.com/repos/CollaboraOnline/online/releases:
422 Validation Failed [{Resource:Release Field:tag_name Code:already_exists Message:}]

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I7b10e972564eae2cd6ad2146470d16fd05401361
2023-11-24 12:14:12 +01:00
Rash419 851ef435cf browser: don't show socket error message if we are reconnecting
- specifically a case where coolwsd is cleaning up the document
  we don't want to give up on clientside and show the error message to
  user

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: Ie75fa3e19f97ca18acc8e881813d6c617fc9f7b7
2023-11-24 15:51:02 +05:30
Darshan-upadhyay1110 de4fe0dfd8 Fix downlaod options in read only mode
- Allowed downlaod options for PDF/PDF as /EPUB
- PDf/PDF as/EPUB will be downlaod in read only mode
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: Ic6e0c4a16fa5dffc61e61fd4ece9aeeaec1450b9
2023-11-24 09:26:59 +01:00
Rash419 a398569025 fix helm chart releaser
- from the logs Error: error creating GitHub release
helm-collabora-online-1.1.5: POST https://api.github.com/repos/CollaboraOnline/online/releases:
422 Validation Failed [{Resource:Release Field:tag_name Code:already_exists Message:}]

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I16d0fa54c0dd9ef5bd96b96366c93037ed7de56e
2023-11-24 11:45:43 +05:30
aarsh21 85e5ba4807 fix:navigator hyperlinks line-breaking on chrome and firefox
Signed-off-by: aarsh21 <aarshpersonal21@gmail.com>
Change-Id: Ic91e1cb017b82fd21ba942d54ddc277c9cc7d3cc
2023-11-24 10:21:09 +05:30
Andras Timar d7a65fb050 welcome: remove version number from image
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I3890f0ca051d200c9c557a17930b4745ed29f78b
2023-11-23 17:44:00 +01:00
Hubert Figuière c56451ee6c notebookbar: handle show/hide button
- We now have a state for hidden buttons in UIManager
- Shortcut bar makes use of it instead of maintaining its own.

https: //github.com/CollaboraOnline/online/issues/5957
https: //github.com/CollaboraOnline/online/issues/7517

Signed-off-by: Hubert Figuière <hub@collabora.com>
Change-Id: I719f27063f01e4d76742358189b080087881ab7c
2023-11-23 09:36:17 -05:00
Andras Timar 3a439c4e27 add missing css class to dark mode icon in Calc
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ic5f69b64221ca9890794b1b3dcb5dbe069992459
2023-11-23 14:32:28 +01:00
Andras Timar 70e960b564 disable spell check for document name input field
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I23e03ba381aa320511aacf24196aba1ff934fc52
2023-11-23 14:32:13 +01:00
Andras Timar af8ad8a9d6 Translated using Weblate (German)
Currently translated at 100.0% (539 of 539 strings)

Translation: Collabora Online/UI
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/de/
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I5a545aeca500bcc3e42b72080d91c3abfc289eb5
2023-11-23 11:24:18 +01:00
Alexander Gabilondo 9758c06b44 Translated using Weblate (Basque)
Currently translated at 100.0% (539 of 539 strings)

Translation: Collabora Online/UI
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/eu/
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I1593b50502563882090f0b70a7557fa00ee2c063
2023-11-23 11:24:18 +01:00
TUCAOEVER5023416dba724da7 7fb051eb44 Translated using Weblate (Chinese (Simplified))
Currently translated at 67.8% (317 of 467 strings)

Translation: Collabora Online/Help
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/zh_Hans/
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ief9b5abeb8a15c3a72c06955d4b1f01bacfdce5d
2023-11-23 11:24:18 +01:00
SC aae7aab14c Translated using Weblate (Portuguese)
Currently translated at 100.0% (467 of 467 strings)

Translation: Collabora Online/Help
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/pt/
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I8b1e8a997d280e4d6ef757394908a6449ff294be
2023-11-23 11:24:18 +01:00
TUCAOEVER5023416dba724da7 5d3fd13114 Translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (539 of 539 strings)

Translation: Collabora Online/UI
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/zh_Hans/
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I010f3c207300eae6af999a034de54de8a9546a15
2023-11-23 11:24:17 +01:00
SC 880e666111 Translated using Weblate (Portuguese)
Currently translated at 100.0% (539 of 539 strings)

Translation: Collabora Online/UI
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pt/
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I2501232f08b7fec026a9fb32e69a2ca052d32f08
2023-11-23 11:24:17 +01:00
Sebastiaan Veld e478c678ae Translated using Weblate (Dutch)
Currently translated at 100.0% (539 of 539 strings)

Co-authored-by: Sebastiaan Veld <sebastiaan.veld@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/nl/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I5aeee8a88ad3555a393360e226c2423ea74d1c10
2023-11-23 11:24:17 +01:00
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
Marco Cecchetti a5f56ce12d NC: Accessibility toggle button not set to the right state on doc load
When a document is loaded the Accessibility Support toggle button was
not set to the right state.
The problem affeced Online when integrated in Nextcloud.

Moreover the button label has been renamed to 'Voice Over' in
accordance with what suggested by NGI audit

Signed-off-by: Marco Cecchetti <marco.cecchetti@collabora.com>
Change-Id: I5bc7d8348397691f469b6274af58e18a8d6d603c
2023-11-13 14:34:42 +01:00
Andras Timar 95815d385e helm: update appVersion
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I5ea432e2409213ea204639651244c2fef4f4a8d2
2023-11-12 23:32:42 +01:00
Skyler Grey ff1e4eeb57 Add a ui_defaults hint for touchscreens
At the moment, we try to detect whether the browser is running with a
touchscreen, however this is very imperfect. It's possible an integrator
may have more information about whether COOL is running on a device with
a touchscreen, so this ui_defaults option allows us to specify. Touch
mode binds inputs for touchscreen devices (long press for menu, pinch to
zoom, etc.) and does not bind the normal inputs (right click for menu,
etc.), so it's crucial to get it on all touch devices and no desktop
devices, as input is severely hampered if they are the wrong way round.

The option is called TouchscreenHint. Setting it to 'true' will enable
touchscreen mode, setting it to 'false' will disable touchscreen mode.
Leaving it undefined will keep our detection active.

This option must be set at page load so we can register the right
events at creation time. Therefore, ui_defaults is perfect as a method
to override this.

This is not a long-term solution. Instead, "The right thing" is to look
specifically for touch events and specifically for mouse events, rather
than using the default hammer.js behavior which is to look for both...
that should be an eventual followup to this. However, this was a lot
faster to implement and helps with the most pressing issue: not being
able to override our detection when it goes wrong.

Change-Id: Id28a156fe352fe6565ce6b472b7aa54d0869c48e
Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
2023-11-10 23:20:22 +00:00
Andras Timar 82162e5c54 Bump version to 23.05.5.4
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I260232a287acbcc3585ac0dbd23f4a5b560dfd48
2023-11-10 18:19:27 +01:00
TUCAOEVER5023416dba724da7 f5d6bd2962 Translated using Weblate (Chinese (Simplified))
Currently translated at 75.3% (406 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: If303e554b778aed38694f3c5e454e18655d3656a
2023-11-10 17:40:43 +01:00
Matthaiks 5be9424948 Translated using Weblate (Polish)
Currently translated at 100.0% (539 of 539 strings)

Co-authored-by: Matthaiks <kitynska@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pl/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I580cc2809510dd71cea487491d3addb5eb06b22c
2023-11-10 17:40:43 +01:00
Milo Ivir b37063e1a7 Translated using Weblate (Croatian)
Currently translated at 100.0% (539 of 539 strings)

Co-authored-by: Milo Ivir <mail@milotype.de>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/hr/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Iff1ff65a4c1adc06a76a54b27b45965257c527ff
2023-11-10 17:40:43 +01:00
Louis Chance 32ffd98655 Translated using Weblate (French)
Currently translated at 100.0% (539 of 539 strings)

Co-authored-by: Louis Chance <contact@louischance.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/fr/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ib0962d3f1e9ce7e24aac63e9d76faa31e089a1ab
2023-11-10 17:40:43 +01:00
gallegonovato 2c75ad9e00 Translated using Weblate (Spanish)
Currently translated at 100.0% (539 of 539 strings)

Co-authored-by: gallegonovato <fran-carro@hotmail.es>
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: I064cfeff7ab8c59373d3e7a5149f87c52ffc8a21
2023-11-10 17:40:43 +01:00
Miklos Vajna 83f2d1aaf6 context menu: allow frame properties for Writer text frames
This is now safe to show, as it'll trigger the frame insert/properties
dialog, which was converted to jsdialog in core.git commit
355681eead2411d70caf4f52f1b802cf8c61a981 (sw floattable: make Insert
Frame dialog async and mark it as a jsdialog, 2023-11-06).

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: I910012286416231d607cf79cc9b3811803c52768
2023-11-10 13:49:25 +00:00
Caolán McNamara 55901bc15a 'Tileprocessed message did not arrive in time' for slide preview
A slide preview tile falls into the special case with early return and
no tileprocessed is sent back to the server, so eventually a
'Tileprocessed message did not arrive in time' will be reported

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Iab85e5eca535ce377508e91cf67f1435e9242bc4
2023-11-10 13:20:03 +00:00
Pranam Lashkari b05390fc94 clipboard: do not put formulas into client clipboard
problem:
when user copy cell with formula and paste it outside of online,
formulas are pasted instead of values.

Ideally we should always put real value in client clipboard

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I93af2fffa501c3cdc3d8ecc78d3c44121784d3e8
2023-11-09 21:35:21 +05:30
Andras Timar 381bc95773 Update uno command translations (InsertFrame)
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I76ef379fe8a7082c64c48297bda804000e3a1c6b
2023-11-09 15:33:05 +01:00
Andras Timar 0e2e1cc769 Translated using Weblate (Hungarian)
Currently translated at 100.0% (539 of 539 strings)

Translated using Weblate (German)

Currently translated at 100.0% (539 of 539 strings)

Co-authored-by: Andras Timar <andras.timar@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/de/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/hu/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ie3f8f1ff8623a3f753aa4e25b06959c5908f9686
2023-11-09 13:50:07 +01:00
Andras Timar d94d4ddbbd Update l10n files for Weblate
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I6f116c02e5691fd13ef6c4bd10e740ac1e72925d
2023-11-09 13:43:03 +01:00
Andras Timar 23574cd6b6 missing continue keyword
Caused log ERR on startup:
[ websrv_poll ] ERR  unknown UI default's component UITheme| wsd/FileServerUtil.cpp:99

Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I82f036e393cfb271e2dec2c52c5dc512aed265c8
2023-11-09 13:36:45 +01:00
Andras Timar 78d4fe22b3 fix log date, tm.tm_mon is 0-11
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I93f7ac7a83c9724537b9b214cd8b54e5132c54e4
2023-11-09 13:20:07 +01:00
Andras Timar ee48dc7451 src/docstate.js contains localizable UI strings
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I3a09891900ff0c22e9f133d9032a2625ef47e6a8
2023-11-09 13:19:44 +01:00
Gökay Şatır c9616f8d54 Provide better tracking of focus in-out events for comment containers.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: If27a60d73454ec69912b91b17128aa62b209cf6d
2023-11-09 15:10:33 +03:00
Miklos Vajna a605e53716 notebookbar: add Insert Frame to the Insert tab
This allows the creation of floating tables when an entire table is
selected by the time we dispatch .uno:InsertFrame.

Also add a matching entry in the menubar.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: Ia0614d47275eb8d9127c496a0b06a8993c5f9989
2023-11-09 12:43:58 +01:00
Szymon Kłos cafdf447fa Avoid TypeError in getCorePxDocBounds
It was reported on some iOS devices that we fail with TypeError
in getCorePxDocBounds - missing this.options.docBounds.

getCorePxDocBounds is used in Cursor class, check if we have
docBounds before use so we don't try to update without valid
data

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ia48738edac33ab272e338e23f0d71f7ec4f54086
2023-11-09 13:42:10 +03:00
DPE bbb05dcff4 Translated using Weblate (Norwegian Bokmål)
Currently translated at 63.3% (340 of 537 strings)

Translated using Weblate (Norwegian Bokmål)

Currently translated at 61.6% (331 of 537 strings)

Translated using Weblate (Norwegian Bokmål)

Currently translated at 100.0% (5 of 5 strings)

Translated using Weblate (Norwegian Bokmål)

Currently translated at 59.4% (319 of 537 strings)

Translated using Weblate (Norwegian Bokmål)

Currently translated at 100.0% (22 of 22 strings)

Co-authored-by: DPE <danpe_jobo@hotmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/android-lib/nb_NO/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ios-app/nb_NO/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/nb_NO/
Translation: Collabora Online/Android lib
Translation: Collabora Online/UI
Translation: Collabora Online/iOS app
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Iaabb7ffb88433e624d58dad43f3fbadd5aacd681
2023-11-09 10:56:54 +01:00
Ihor Hordiichuk 33e32d288d Translated using Weblate (Ukrainian)
Currently translated at 100.0% (537 of 537 strings)

Co-authored-by: Ihor Hordiichuk <igor_ck@outlook.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/uk/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I86f136461963c0e242acc0befd0daa158390a812
2023-11-09 10:56:54 +01:00
Besnik Bleta 4ed5ad8f21 Translated using Weblate (Albanian)
Currently translated at 99.0% (109 of 110 strings)

Co-authored-by: Besnik Bleta <besnik@programeshqip.org>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/android-app/sq/
Translation: Collabora Online/Android app
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: If11e2026ad132aa9311b74b32605c470cad2c06e
2023-11-09 10:56:54 +01:00
Sebastiaan Veld c25fa9ab7f Translated using Weblate (Dutch)
Currently translated at 100.0% (537 of 537 strings)

Co-authored-by: Sebastiaan Veld <sebastiaan.veld@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/nl/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I55319ad8576563b0a695ec40c154294c03de784a
2023-11-09 10:56:54 +01:00
Martin Srebotnjak 4fe1f6bb56 Translated using Weblate (Slovenian)
Currently translated at 100.0% (537 of 537 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: I8f3a15b9509f674ab4ee5a38b743d7806a12b606
2023-11-09 10:56:32 +01:00
m4skedbyte 7260c93c22 Translated using Weblate (German)
Currently translated at 100.0% (537 of 537 strings)

Co-authored-by: m4skedbyte <weblate@m4skedbyte.xyz>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/de/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I870f9d717ddf6fdb49db4b8eed0fd14ee37e14da
2023-11-09 10:56:32 +01:00
Ettore Atalan f0aad101be Translated using Weblate (German)
Currently translated at 100.0% (467 of 467 strings)

Translated using Weblate (German)

Currently translated at 100.0% (537 of 537 strings)

Co-authored-by: Ettore Atalan <atalanttore@googlemail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/de/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/de/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I403a775bd520f801a20067ea3b7a6872562adadd
2023-11-09 10:56:32 +01:00
Qiao Yifeng 3f48891dd1 Translated using Weblate (Chinese (Simplified))
Currently translated at 67.8% (317 of 467 strings)

Translated using Weblate (Chinese (Simplified))

Currently translated at 68.7% (369 of 537 strings)

Co-authored-by: Qiao Yifeng <qiaoyifeng@promc.cn>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/zh_Hans/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/zh_Hans/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I0fcc83324100e94a3676ccaa14755c9013866ecd
2023-11-09 10:56:32 +01:00
Ayhan Yalçınsoy 19f73c5d1d Translated using Weblate (Turkish)
Currently translated at 100.0% (537 of 537 strings)

Co-authored-by: Ayhan Yalçınsoy <ayhanyalcinsoy@pisilinux.org>
Co-authored-by: PhD. Ayhan YALÇINSOY <ayhanyalcinsoy@pisilinux.org>
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: I08a9229f7bb55d8fddcc4dca4d5541dab4ae234f
2023-11-09 10:56:32 +01:00
bittin1ddc447d824349b2 56dd007741 Translated using Weblate (Swedish)
Currently translated at 100.0% (537 of 537 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: I9a4c500dfe3a4dc7ca2ce8901127caa51698baa4
2023-11-09 10:56:32 +01:00
SC c971e44a48 Translated using Weblate (Portuguese)
Currently translated at 100.0% (537 of 537 strings)

Co-authored-by: SC <lalocas@protonmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pt/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Idd62203324365bc656e3a2e85b062bb12b7813ac
2023-11-09 10:56:32 +01:00
Milo Ivir fea63dba29 Translated using Weblate (Croatian)
Currently translated at 100.0% (537 of 537 strings)

Translated using Weblate (Croatian)

Currently translated at 99.8% (536 of 537 strings)

Co-authored-by: Milo Ivir <mail@milotype.de>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/hr/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I72997ea8388b0047305b9b77ca73cf29b0333f27
2023-11-09 10:56:32 +01:00
Rob Pearson 90f7ebba89 Translated using Weblate (English (South Africa))
Currently translated at 100.0% (537 of 537 strings)

Translated using Weblate (English (New Zealand))

Currently translated at 100.0% (537 of 537 strings)

Translated using Weblate (English (United Kingdom))

Currently translated at 100.0% (537 of 537 strings)

Translated using Weblate (English (Australia))

Currently translated at 100.0% (537 of 537 strings)

Co-authored-by: Rob Pearson <rob.dunedin@gmail.com>
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/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ia684a12a100ea15712373246cb66a7629d2de191
2023-11-09 10:56:31 +01:00
Stanislav Horáček 24035cfcf7 Translated using Weblate (Czech)
Currently translated at 100.0% (537 of 537 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: I0c3db6b7251224b112e858e14cee4519f319d2c6
2023-11-09 10:56:31 +01:00
Darshan-upadhyay1110 2aa28a324c Fix Format > Columns Menu Has Dark Icons
- Added missing data-theme = dark for #valueset-img
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>

Change-Id: Ibddeaa28089ba21250753f121af4746e3947cf38
2023-11-09 07:41:49 +01:00
Darshan-upadhyay1110 924ff4213d do not allow check uncheck for disabled checkbox
- This will fix not to check or uncheck if a checkbox is disabled by clicking on a lable of a checkbox
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: I3c6f770058ae1409f56d6bd12f5e7a8cd2441941
2023-11-09 12:07:49 +05:30
Darshan-upadhyay1110 ff3761aa57 Change border color of ContentControlSection when theme changes
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: Idd080e20370648623a4d01cecde69914addeecfc
2023-11-09 11:19:54 +05:30
Darshan-upadhyay1110 10d1c946af Fix Content control "down arrow" cannot be recognized in dark mode
- add missing image path for data-them dark
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: If6850770548d35eb95125ce0be1c52a557f5b344
2023-11-09 11:19:54 +05:30
Hubert Figuière 00050a59c2 browser: Add ui_default to hide the toolbar
Signed-off-by: Hubert Figuière <hub@collabora.com>
Change-Id: I189224581451c9f5d534593696b060c8efb23414
2023-11-08 23:34:17 +00:00
Pranam Lashkari 7ab2938761 cypres: enable impress comment autosave tests
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I2197b1d485c612cbf1dd3ab712181d75c0f6ae98
2023-11-09 04:20:28 +05:30
Pranam Lashkari d7e07b773f annotation: fixed impress disappearing comments on autosave
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I8feba6907b2899a19dcda3ecf56c673801e27487
2023-11-09 04:20:28 +05:30
Gökay Şatır d2ec258837 Copying the hyperlink issue:
* Add a paragraph.
* Select the whole paragraph and add comment.
* Add hyperlink to a word in the paragraph.
* Try to copy the hyperlink via its menu.
* It sometimes doesn't copy the hyperlink.

We are checking if a comment has focus or not before doing the copy operation. This check is for another issue.
I changed the check with "app.view.commentHasFocus" which seems reliable.
Then tested the previous fix.

Also commented out code is removed.
White space change is automatic.

Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: Ibc2c5e550eb8a3e24b734e0371c87dac44b2ff6d
2023-11-08 23:06:58 +01:00
Skyler Grey 7175c7841b Add a ui_defaults option for onscreen keyboards
The new ui_defaults option OnscreenKeyboardHint is a tristate denoting
whether the device accessing Collabora Online has an onscreen keyboard

If unset, Collabora Online will do its best to guess. At time of
writing, this is the same as checking if the device is a mobile phone
or a tablet (note: only tablets which have the browser registered as a
"mobile" browser will be detected, e.g. the Microsoft Surface tablets
would not be detected)

If "true", Collabora will assume the device has an onscreen keyboard.
This will change when we trigger the keyboard, for example in calc if we
know of an onscreen keyboard we will not automatically focus a cell for
editing when it is selected, as this would pop up the keyboard.

If "false", Collabora will assume the device does not have an onscreen
keyboard, effectively doing the inverse of the "true" option above.

This is a followup to #7580 (0bf054c9a3)
which had Hint_OnscreenKeyboard and Hint_NoOnscreenKeyboard as
postmessage IDs to do the same thing.

Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
Change-Id: I5deeb87a410c135d4cabda7ed24dc37e791800cd
2023-11-08 16:20:49 +00:00
Caolán McNamara 41d78e5fd2 fix; error TS2304: Cannot find name 'TilesSection'
doesn't happen in ci, but is happening in tinderbox and for some
users.

Seeing as ScrollSection doesn't have the problem, follow the export
and namespace pattern used there.

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I4c4916ba7a3ad19275bd8b0f5bc53111b3b30cd5
2023-11-08 15:32:59 +00:00
Hubert Figuière 1114af585a default-ui: Allow skipping the UI state saved in local storage.
Pass SavedUIState=false to the ui_defaults

Signed-off-by: Hubert Figuière <hub@collabora.com>
Change-Id: I2cceffed338440d1fee5b0818e072ecc02379468
2023-11-08 10:12:42 -05:00
Darshan-upadhyay1110 5c8e3e4d5c Fix select row icon
- SVG for lc_fromrow is not compatable and it was not loading properly in browser
- fixed svg syntex to properly load by browser
- removed unused css class from mobile wizard
- that fixes the icon remain light in mobile view as well
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>

Change-Id: Ifa1e2e5397e48d33ede8a6081808cd0051d9059a
2023-11-08 15:58:18 +01:00
Skyler Grey 13e3846ffe Add touch detection for pointer:course media query
matchMedia allows you to check matches for CSS media queries from
JavaScript. By checking if the primary pointer is 'course' we have a
pretty good shot at guessing that it's a touch device (mice, etc. are
'fine' instead). This expands our current touch detection so it detects
more screens, while making sure it doesn't detect devices which have a
touchscreen but also a mouse/touchpad/whatever. This non-detection is
important, because our touch support currently breaks things like the
rightclick menu on calc.

Touchscreen detection is useful for devices that are being used as touch
devices, because it enables some features like pinch-to-zoom and
hold-for-rightclick-menu which improve usability when you are using a
touchscreen. These are particularly important without a mouse.

Some devices are 2-in-1 laptops, which have a touchscreen and a
touchpad, but can be collapsed so only the touchscreen is active. These
devices will be detected as touch only when they are in their 'tablet'
form. *As we setup parts of the page differently, the page will need to
be refreshed if they change from tablet form to laptop form and
vice-versa*. Hopefully in the future we will make a followup so that
both input schemes can be enabled at the same time and extend this media
query detection to (any-pointer: course)

Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
Change-Id: Ied4f61a1ffb06bd63359bc6d81c6a6c23436cc23
2023-11-08 14:39:47 +00:00
Caolán McNamara 83f5f18d6c make this test more robust if partial page 1 is still visible when on page 2
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I6f5cc5a1d22b77fe3f9adebdb5fde086fa8e2a3b
2023-11-08 13:13:56 +01:00
Andras Timar 3e8fe642b2 rpm: BuildRequires - those python packages have different names on differenct OS versions
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Iebc83dcb8d5efd368850a816dc1dec6d159df6e1
2023-11-06 12:07:33 +01:00
Szymon Kłos dea8d754e8 formulabar: reduce overhead of scrolling to the cursor
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: If8a90ec9720caecd372186c737fb2b8de50306d6
2023-11-06 09:38:17 +00:00
Szymon Kłos 76938641de perf: do not call addEventListener on every header update
This helps with performance of typing into spreadsheets.

Regression from commit 46c1248c77
Prevent right mouse button up event to click on menu item.

Do not add new event listener on every header update what
happens often but rather apply right click blocker when
context menu is opened. Original commit was trying to prevent
menu items activation on right click.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: If468703a4728d12238c5748f182453cd2b8812c9
2023-11-06 09:38:17 +00:00
Szymon Kłos 451b255450 formulabar: modify DOM only when content is complete
createDocumentFragment creates out of the DOM nodes
which we can use while building the new content of the formulabar.
This reduces reflow and similar operations on node insertion.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ie0791af517a018241222efa2031af673d97c9e6b
2023-11-06 09:38:17 +00:00
Andras Timar 54ac274dd7 rpm: BuildRequires
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ib0c71a65216c7dd437800647a0f9c924ddf117ee
2023-11-05 18:34:07 +01:00
Darshan-upadhyay1110 808dc0a118 Add missing icon SPIN_DOWN/UP for dark mode
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: Ib96915f7fcd372f50e75c3d25ac7b000c1ef1ca3
2023-11-02 16:43:35 +01:00
Caolán McNamara 72b2ce4bb6 we don't need to round-trip through core to reposition notes
we know where they are by cell addresses, so defer getting
the screen positions until we need them and we don't need
to get core to trigger recalculating them. When we redraw
the comments after the new geometry arrives then we can place
them via the address.

When adding a new note we want to know the range of the
potentially merged cells we are inserting into.

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

https://gerrit.libreoffice.org/c/core/+/158560 needs to be
applied to solve the problem described there that becomes
apparent when this is in place.

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I3228dc8fa8d47ba4e796e50427c125d7f78fe5fc
2023-11-02 12:28:53 +00:00
Gülşah Köse 46c1248c77 Prevent right mouse button up event to click on menu item.
In some case[*] when we right click on row/col header and release mouse button,
first element of the context menu is invoked accidentally. To prevent this,
just prevent the right mouseup event on context menu item.

[*] 1920x1080 resolution with %75 browser zoom

Signed-off-by: Gülşah Köse <gulsah.kose@collabora.com>
Change-Id: I28299e7a7cf83eaed27ef4ed6c3555fb2cc80682
2023-11-02 12:40:25 +01:00
Ezinne 557f191da7 Updated the icon for Twitter handle
Signed-off-by: Ezinne <nnamani.ezinne@gmail.com>
Change-Id: Iff04c41135f8c5523f8dc12ae46c14209575bb13
2023-11-01 17:50:54 +05:30
Ezinne fdf1b6e6ac Updated the Help screenshot for English
Signed-off-by: Ezinne <nnamani.ezinne@gmail.com>
Change-Id: I06cfad9a9aea51eb0c069880196490144c5d1211
2023-11-01 09:38:04 +01:00
Michael Meeks 08d9081280 net: don't try to set TCP_NODELAY on local Unix sockets.
Change-Id: Ic0f720554080a01b7a46abbffda023834016c0ea
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2023-11-01 08:06:53 +00:00
Rash419 112fefa86e browser: wireId out of sync on reconnect
- regression from 762ce28e22

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I86b913213135982031d33b4b29f54df2e8320ea4
2023-11-01 13:10:01 +05:30
Caolán McNamara 0453140f61 We don't always need to redraw the entire canvas
If we end up dirtying only due to a series of TileRange reasons then we
only need to redraw the bounds of those tiles.

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

checked: split calc sheets and rtl calc sheets

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: If468b735bdff85408155fb23ebf6db891a449d5e
2023-10-31 20:47:55 +00:00
Skyler Grey 0bf054c9a3 Stop onscreen keyboard when panning calc on tablet
Before this change, panning a calc spreadsheet would cause the onscreen
keyboard to pop up when in tablet mode. Dismissing the keyboard would
not stop it from being popped up the next time you panned around. This
made it very difficult to pan around spreadsheets in calc without either
using an external keyboard, the mobile app or another device altogether.

This commit introduces a known regression: when you are on a tablet and
have a physical external keyboard, you could previously select the cell
and start typing. Now you must tap into the cell in the same way you
would if you have an onscreen keyboard. This matches the behavior on
mobile devices. I consider this regression a reasonable tradeoff, so
notwithstanding I believe this should be merged.

Additionally, this commit adds 2 POST messages, "Hint_OnscreenKeyboard"
and "Hint_NoOnscreenKeyboard". These can be used to override our guess
if you know more about whether the device has an onscreen keyboard than
we do.

Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
Change-Id: I8f3683ccb9e57f0c4a5bf8e415f9aabef917dd78
2023-10-31 16:32:33 -04:00
Pranam Lashkari 82e76d8cb0 cypress: introduce impress comment autosave tests
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I40b2dac1e87ca465ca92bbf64b2a6ee556c23c7f
2023-10-31 20:43:58 +05:30
Pranam Lashkari 517f3fa760 cypress: introduce calc comment autosave tests
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I9e3f406938689321ac2df9f87f308466e9d5b19b
2023-10-31 20:43:58 +05:30
Pranam Lashkari e71f082412 cypress: introduce writer comment autosave tests
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: Ic79e9cf935f29ac407a8c5ff3900f2ad1f7449a6
2023-10-31 20:43:58 +05:30
Szymon Kłos 56327b8f56 jsdialog: open submenu on hover in dropdowns
- showsubmenu event on hover
- hidedropdown event on leave
- submenu is inserted into the same overlay as parent dropdown
- don't destory overlay if submenu is closed, do that only for root
- works on tablet / touch device

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ibb4a747555e172dd4e040950cdfd309560f214a7
2023-10-31 12:22:39 +01:00
Szymon Kłos d87c718a84 css: pivot table dialog separator fix
vertical separator was overlapping other widgets

can be found in: Calc -> Insert -> Pivot Table -> next

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I818fc4a8bb9b44b48fe43c911182c37e3cbc0d8c
2023-10-31 12:22:29 +01:00
Michael Meeks 47b89b32ef spdx: improve machine and human readability of headers.
Change-Id: I1b6dcd2ec1fbef6556d70b8af3ccfd5d6a95c59a
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2023-10-31 10:33:07 +00:00
Szymon Kłos 40f0008422 jsdialog: fix id for buttons with menu #7548
- fixes regression from Accessibility commit 1a2500c
- it fixes formulabar control of AutoSum button #7548
- removes useless commit a7ece5d:
  jsdialog: reduce warnings in console for formulabar
- id with ":" contains "id : menuId", so we can identify
  menu which should be used, let's not use whole string as
  HTML element id - we don't want ":" there

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I44adde54b852f1e6593fb660612d8116aadf3b39
2023-10-31 09:55:54 +01:00
Szymon Kłos ef66c84eec Fix Uncaught TypeError in combobox selection
TypeError: Cannot set properties of undefined (setting 'selected') emitting event jsdialog: { "jsontype": "sidebar", "action": "action", "id": 0, "data": { "control_id": "applystyle", "position": "-1", "action_type": "select"}}

When selecting whole column in Calc

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I3598ef988b16b3efa29920ba7dd40a0f3cbc5df3
2023-10-30 16:11:55 +00:00
Szymon Kłos e92bd4bbfd Fix Uncaught TypeError in col/rows headers selection
Uncaught TypeError: Cannot read properties of null (reading 'index')
    at RowHeader.onMouseUp (bundle.js:24879:87)
    at CanvasSectionContainer.propagateOnMouseUp (bundle.js:14350:24)
    at CanvasSectionContainer.onMouseUp (bundle.js:14442:6)

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Iba44bfae33679d978641e334e9b46cf05a414d4a
2023-10-30 16:11:55 +00:00
Rash419 acb08e4235 fix helm chart releaser
- from the logs Error: error creating GitHub release
helm-collabora-online-1.1.3: POST https://api.github.com/repos/CollaboraOnline/online/releases:
422 Validation Failed [{Resource:Release Field:tag_name Code:already_exists Message:}]

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I434963728bf935204a4dc6e533aaa1b5a8408350
2023-10-30 21:37:40 +05:30
Hubert Figuière 8ca2adcb16 postmessage: added message to collapse / extend notebookbar
The new messages are: Collapse_Notebookbar and Extend_Notebookbar
As a side effect they also hide the classic toolbar the same way

Signed-off-by: Hubert Figuière <hub@collabora.com>
Change-Id: Ic9d04876acb06f2885a6be1e171df7f87e513ed8
2023-10-30 11:40:52 -04:00
Caolán McNamara 5b14c128e3 apply delayed messages after docLayer.viewid is set
which is done by docLayer._onStatusMsg(), otherwise its possible to handle a
onViewInfoMsg before viewid is set

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Id68dba5f5cdc8efd0b5f6ed429ac4f105cef4866
2023-10-30 12:40:44 +05:30
Pranam Lashkari 5c965044ec annotation: fix parent comment being deleted if reply cancelled
part 2

fix from #7552 stopped working, this patch amends it

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I8c1227199112599fc2ade4e425452709e9cd05e5
2023-10-30 12:27:17 +05:30
Pranam Lashkari 30f6c14b9f annotation: fix cancelled modification of autosaved comment
problem:
when a user modifies a comment and its autosaved,
if user then cancels the modification they were still added

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I26c872f0957f0815882c4b1aedae83fe6736b7a2
2023-10-30 12:10:54 +05:30
Pranam Lashkari 91cbc8c404 annotation: fix parent comment being deleted if reply cancelled
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I080f817a3020249de4eefd12b3d23af1141a273d
2023-10-30 04:12:57 +05:30
Pranam Lashkari 4d7df8ae9c annotation: forcefully reselect comment before modifying
select and unselect usually updates the layout but,
in case if it failed we manually do the layout update

problem:
when already selected comment try to modify,
it will not rearrange replies in the thread this caused
overlapping of the comments and bad user experience

fixes: #7527

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: Id56a5c35795e1ff75e8c3a92032afce6b8585fcb
2023-10-30 04:12:11 +05:30
Pedro Pinto Silva d6375f838b Menus (dropdowns) with separator: Fix hidden keyboard focus
When opening a menu as in Calc > Home > Conditional menu and then
press tab: we can successfully cycle through the elements but for some
elements user cannot see the focus.
 - The focus was being set but under the separator. So, better to
 assure that the immediate separator neighbor is set to transparent.

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Icb87b3173144356efad101f5e2b9b77e0e8dcd06
2023-10-29 21:02:28 +01:00
Pedro Pinto Silva 2b5eb98296 Multi-level menus (dropdowns): Fix chevron elements
Chevron (Arrow)

- Use existing icon and re-use it instead of a text character
  - sing text depending on font size and the width we were giving
  - could be dangerous
- Fix alignment: before this commit the chevron was almost glued to
the edge
- Make the hover state less dark so the chevron is visible at all times

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I3b79c6b9df324727fd0c217f869d9bb8a4df2d72
2023-10-29 21:02:28 +01:00
Pedro Pinto Silva 9e286c817d JSdialog: Fix ui-separator visual importance
Before this commit separators were being rendered in quite dark color
and thickens make them standout more than the actual interactive
controls surrounding them

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I96c3eaf476cd947f804d855e0fd242a5ab42ee9b
2023-10-29 21:02:28 +01:00
Michael Meeks 4423770c52 cowasm: disable werror for now for dlopen detection:
otherwise generated:

| int
| main ()
| {
| return dlopen ();

wasm-ld: warning: function signature mismatch: dlopen
>>> defined as () -> i32 in /tmp/emscripten_temp_6nz4f0ww/conftest_0.o
>>> defined as (i32, i32) -> i32 in /home/builder/emsdk/upstream/emscripten/cache/sysroot/lib/wasm32-emscripten/libc.a(dynlink.o)
em++: error: running limited binaryen optimizations because DWARF info requested (or indirectly required) [-Wlimited-postlink-optimizations] [-Werror]

and erroneously claims that dlopen is not present, and
configure fails.

Change-Id: Ie54db7c2099787a0b63b76b0b6e3e44750c9046e
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2023-10-29 11:05:18 -04:00
Marco Cecchetti 09c18a4a44 a11y: keep a11y disabled on executing cypress Calc tests
This patch is a temporary workaround for fixing CI failures.
In fact on CI with a11y enabled cypress fails to load spreadsheets.

Signed-off-by: Marco Cecchetti <marco.cecchetti@collabora.com>
Change-Id: Ic661358cd47600ec9c3a329bef361b8087483017
2023-10-29 09:46:40 +00:00
Michael Meeks 08f60bc72b cowasm: parameterize masses of paths included in command-lines.
Change-Id: I2a73e876290c10ee34385f807364ca4dd5b52063
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2023-10-27 20:49:26 -04:00
Andras Timar 8a5a1b7e7c docker: remove unnecessary perl-base package from image
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I50321d563eff98bd6102a9ec4fa2ab2fdacf6dea
2023-10-27 14:33:40 +02:00
Pranam Lashkari 123bf5cbb8 UI: avoid changing back to original name after renaming
problem:
filename textbox will revert to original name after user confirms the name
and then again changes to new name after its processed

fixes: #6131

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: Ibb1645e5e6517b391d475add7b7d421a260e0ba8
2023-10-27 09:49:23 +02:00
Pranam Lashkari 2c720a6a87 annotation: avoid marking comment autosave if its not saved
problem:
After entering the comment modify mode and clicking somewhere else,
to lose comment focus, comment cannot be closed by clicking cancel.

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I05ce2b4f6dcba47d40095bb16fdb56ce5b9c20cf
2023-10-27 12:13:36 +05:30
Caolán McNamara c1db537978 apply delayed messages after docLayer.map is set
which is done by addLayer, otherwise its possible to handle a
onViewInfoMsg before map is set

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: If6e6d15c90de129614bcc2b64705d0b51b5c4e83
2023-10-27 11:52:40 +05:30
Ashod Nakashian 8728cd5ea1 wsd: config cleanup and warning fixes
Change-Id: Idb66227d98f8fcca35307c3598a1fcc6b69e38c6
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-10-26 20:31:45 -04:00
Andras Timar d00b80d929 Bump version to 23.05.5.3
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I35e28c37a0677d0b6fcf9797103f5bd73ce51083
2023-10-26 22:24:31 +02:00
Matthaiks 7b6c5fc332 Translated using Weblate (Polish)
Currently translated at 100.0% (537 of 537 strings)

Co-authored-by: Matthaiks <kitynska@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pl/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I512441369c629a9b9547f0c4487b82ff88842f7c
2023-10-26 22:21:29 +02:00
gallegonovato be188fb5a2 Translated using Weblate (Spanish)
Currently translated at 100.0% (537 of 537 strings)

Co-authored-by: gallegonovato <fran-carro@hotmail.es>
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: Idd02a2b0e292ae881ef71d6c2f2328c9411fc266
2023-10-26 22:21:29 +02:00
Andras Timar f986507d12 Translated using Weblate (Hungarian)
Currently translated at 100.0% (537 of 537 strings)

Translated using Weblate (German)

Currently translated at 97.9% (526 of 537 strings)

Co-authored-by: Andras Timar <andras.timar@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/de/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/hu/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I85d4b372890b10a33573f38e0053febe1fa1996d
2023-10-26 22:21:29 +02:00
Marco Cecchetti 24159ac987 a11y: calc: make possible to enable/disable a11y for spreadsheets
Signed-off-by: Marco Cecchetti <marco.cecchetti@collabora.com>
Change-Id: Iec00a71ad86e5d6114be9dc6864953284f66a0b0
2023-10-26 22:19:16 +02:00
Pedro Pinto Silva dd4cb30d39 Mobile: Mobile-wizard: fix paragraph panel layout
We now have a new nice separator widget in online so we can render
separators that are coming from core. However in some cases, such as
mobile, we don't want to clutter the mobile wizard. On top of that we
already have separators.

Also: add comment to the jssidebar.css so it can be found when using
grep, blame etc

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I02a5831eff566367664ed022687ffeea6d7d3a81
2023-10-26 21:27:40 +02:00
Szymon Kłos e8f31ca649 sidebar: fix paragraph panel layout
This fixes regression from commit c77f1041a5
jsdialog: implement horizontal separator

Where horizontal separator widget was implemented
and now it appears in the sidebar, but as we have grid
layout there - it occupies only half of the sidebar
because we have 2 columns.

Previously there was no separator - hide it.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ie65626011f98ded52e57306fc41d94fc58829d8f
2023-10-26 21:27:40 +02:00
Marco Cecchetti f6f5325f8d a11y: impress: help screen reader to report shape selection
Avoid screen reader to wrongly report text when a shape or image is
selected:
- Got editable area to be made empty when user is not editing text
- Got default for any input to be prevented (except for some special
cases) when user is not editing text so editable area is kept empty

The selection action and the selected object name (e.g. "Rectangle",
"Presentation Title", etc.) are sent to the client.
That allows screen reader to report: "Presentation Title selected" or
"Rectangle unselected", according to the action type.
Selection text content is reported too when available.

Something alike is reported on cell navigation in a spreadsheet.

Signed-off-by: Marco Cecchetti <marco.cecchetti@collabora.com>
Change-Id: I75a8b66ef8cb7b24b28d749f0b24afe2587de45e
2023-10-26 20:35:20 +02:00
Pedro Pinto Silva b58d46b450 Calc: Notebookbar definitions: add missing class for collapse tabs
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I9d8729830470c23dd3cb03c7ce0ca75f05b9c249
2023-10-26 16:34:34 +02:00
YadlaMani cdb9b8da6c Update README.md
Fixed Typos

Signed-off-by: YadlaMani <yadlamaniymn2005@gmail.com>
Change-Id: I2b237d15f3f70541ccddf1be68c57223e7ad1c69
2023-10-26 16:30:17 +02:00
Andras Timar 86fa67c5f5 remove extra ~
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Iceea26abbf5b25e4b61b1323d9efc1f21044456c
2023-10-26 13:19:24 +02:00
Andras Timar e1c17111bf Update l10n files for Weblate
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Id6bf34a0e5734e60d634db56c650313e8762e5ca
2023-10-26 09:37:22 +02:00
Rob Pearson b26d54cfb0 Translated using Weblate (English (South Africa))
Currently translated at 100.0% (530 of 530 strings)

Translated using Weblate (English (New Zealand))

Currently translated at 100.0% (530 of 530 strings)

Translated using Weblate (English (United Kingdom))

Currently translated at 100.0% (530 of 530 strings)

Translated using Weblate (English (Australia))

Currently translated at 100.0% (530 of 530 strings)

Co-authored-by: Rob Pearson <rob.dunedin@gmail.com>
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/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ie623c4118e067b5cd367ceff61e6bf0cd27bd17c
2023-10-26 09:35:50 +02:00
Szymon Kłos 393867f25e notebookbar: a11y: cond format submenu focus & navigation
- focus when opened
- add focus cycle
- convert to grid view

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I86592abb23c1dbe2e7e36d09b46fe0c23957539f
2023-10-26 09:19:24 +02:00
Szymon Kłos 4e0a2a86b0 notebookbar: add more cond format styles
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I57a3e0aaf35a91b1d307b43c90758dd483e6996e
2023-10-26 09:19:24 +02:00
Szymon Kłos 5c449425aa notebookbar: add data bar cond format submenu
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I8151a9bf3d5befc0c36a4849f149c348b3ee7e80
2023-10-26 09:19:24 +02:00
Szymon Kłos 82abf2f3b1 notebookbar: add color scale cond format submenu
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I90f403abaf381d9b4afe93d62bebb3e5b888c381
2023-10-26 09:19:24 +02:00
Szymon Kłos 9a9e856c28 Make cond format submenu reusable
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I208efec5ff08ff5af062a367d9a3e335cb9c5fd3
2023-10-26 09:19:24 +02:00
Szymon Kłos b08a2526ed jsdialog: convert icon set popup in notebookbar
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I51d4f99e0f28a3b1689099d4620c3587cc162430
2023-10-26 09:19:24 +02:00
Szymon Kłos c28dcea3c1 jsdialog: custom dropdown anchor
submenus should be opened next to the previous level
on the right side in LTR mode. without that change
we had submenus just under previously selected entry.

anchors "top" and "end" were implemented

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I5b3b677c2347664f4ab97aab3a04da5fe72e3bff
2023-10-26 09:19:24 +02:00
Szymon Kłos 4950f3e8a2 jsdialog: multi-level dropdowns
It is possible to make submenus:
{text: _('Condition...'), items: [
   .... sub-menu entries ....
]}

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I0a6687c0a6bc19b4cd6616005571b75ad41eb444
2023-10-26 09:19:24 +02:00
Szymon Kłos c77f1041a5 jsdialog: implement horizontal separator
it is used in dropdowns eg. conditional formatting in Calc

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I19554c74de2fa861686469acbf2c3025633d0687
2023-10-26 09:19:24 +02:00
Szymon Kłos ab0867069a jsdialog: use dropdown util for conditional formatting
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I2cccfc34be1293934611457cbb05cb200f369cc4
2023-10-26 09:19:24 +02:00
Szymon Kłos b377353af3 jsdialog: allow to call uno when dropdown is opened
Don't count dropdowns to the number of opened dialogs.
Use special type to indicate that "dialog" is a dropdown.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I38fa3c303d24601fc76606b994b7398f12dc7d38
2023-10-26 09:19:24 +02:00
Szymon Kłos 4c98fe54f0 jsdialog: move dropdown to separate util
so it can be reused

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I9f7940bd9f25a837d673dce20b5ded3a70d134ad
2023-10-26 09:19:24 +02:00
Szymon Kłos cdc0b71262 Add easy conditional formatting notebookbar menu options
w2menu in our version doesn't have submenus...

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I788a214c71ed880fdbc51dc026f00b82549c3361
2023-10-26 09:19:24 +02:00
Szymon Kłos 937264e5cf jsdialog: treeviews should have full width
but entries have to be max-content to not wrap,
only main container has no width set to be automatically
resized to the needs

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I0dc2487b56700b1cc87f5f7ce1fcda8e91855269
2023-10-26 09:19:24 +02:00
Paris Oplopoios b75e222897 Add easy conditional formatting compact menu option
Signed-off-by: Paris Oplopoios <paris.oplopoios@collabora.com>
Change-Id: I750b0edfc5662db8bd617b933e5d0657250d090e
2023-10-26 09:19:24 +02:00
Pranam Lashkari 7434cb0e65 UI: fix rename dialog flickering
problem:
rename dialog sometimes flickered in Firefox
it flickered when the button label was clicked,
it made the event bubble and triggered the click event multiple times.
trying to open dialog when already opened makes it flicker intentionally

fixes: #7479

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I290c905ac321650bd7979495c78de7d66f188ffd
2023-10-26 08:41:50 +02:00
Hubert Figuière 83c490b08f postmessage: Don't output error for handled UI message before ready
Signed-off-by: Hubert Figuière <hub@collabora.com>
Change-Id: Id357c54bce57464334a24115175087e4bbfa4aea
2023-10-26 08:40:20 +02:00
Rash419 2485dab996 browser: use 'Error_Messages' postmessage call to
override error messages
- send App_LoadingStatus msg with Intialized status once map is
  initialized so that integrator can start to send postmessages

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I96e0c1471cbabe15b0e61711defe15f4e5298ab3
2023-10-25 22:21:40 +02:00
Rash419 294c2da6de browser: show error msg when socket connection is closed unexpectedly
Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: Ib654d0e81d0796ba379e9482ad90e6cb8af5901d
2023-10-25 22:21:40 +02:00
Pranam Lashkari 6a4cd7eea5 annotation: avoid trying autosave empty comments
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I45bbfc7095bf94d9d68faae054ab96287dfc62b8
2023-10-25 22:10:34 +02:00
Gökay Şatır 10f0953f86 Translated using Weblate (German)
Currently translated at 99.5% (465 of 467 strings)

Translated using Weblate (German)

Currently translated at 99.5% (465 of 467 strings)

Co-authored-by: Gokay Satir <gokaysatir@gmail.com>
Co-authored-by: Gökay Şatır <gokaysatir@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/de/
Translation: Collabora Online/Help
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I1522c1941b3b7d23476ab9ef12ae74383e866a2a
2023-10-25 20:21:32 +02:00
Ayhan Yalçınsoy 1ec288d808 Translated using Weblate (Turkish)
Currently translated at 100.0% (530 of 530 strings)

Co-authored-by: Ayhan Yalçınsoy <ayhanyalcinsoy@pisilinux.org>
Co-authored-by: PhD. Ayhan YALÇINSOY <ayhanyalcinsoy@pisilinux.org>
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: I1ac614376342a1dba0f85d14b4d606435fe33675
2023-10-25 20:21:32 +02:00
bittin1ddc447d824349b2 75774e9152 Translated using Weblate (Swedish)
Currently translated at 100.0% (530 of 530 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: If1b6396bc1c349423f80b2a50e4f76d03bedac80
2023-10-25 20:21:32 +02:00
Matthaiks bd51e09b11 Translated using Weblate (Polish)
Currently translated at 100.0% (530 of 530 strings)

Co-authored-by: Matthaiks <kitynska@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pl/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I6ad75b1ca9b6161727e6ecda94e278928e05de4b
2023-10-25 20:21:32 +02:00
Andras Timar 0312cb7d3c Translated using Weblate (Hungarian)
Currently translated at 100.0% (530 of 530 strings)

Co-authored-by: Andras Timar <andras.timar@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/hu/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I9da78f73b06e1b97616944de115d094a00dbdc50
2023-10-25 20:21:32 +02:00
gallegonovato 5b5bc9ffcc Translated using Weblate (Spanish)
Currently translated at 100.0% (530 of 530 strings)

Co-authored-by: gallegonovato <fran-carro@hotmail.es>
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: I7c9ba061ece158d18d70dac4dd3a9ade0adbd29b
2023-10-25 20:21:32 +02:00
Caolán McNamara e0c161c17b These warnings are frequent but harmless
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Id2517f310a1df71dc1357d103ea074bdd12e7e65
2023-10-25 20:08:20 +02:00
Rash419 09d2413df9 browser: fix readonly document menubar not working
- regression from 8607aa7

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: Id94b98c832d8801dd9c05cdd6223bad17d202d71
2023-10-25 20:07:59 +02:00
Hubert Figuière fd329c353c postmessage: Add field to allow sending arbitrary postmessages
Signed-off-by: Hubert Figuière <hub@collabora.com>
Change-Id: I13976c21ebea018150469dd56f93b3b1ab2105cc
2023-10-25 10:31:04 +02:00
Andras Timar 4ee6f7f310 Fix wrong label on Draw UI: ModifyPage
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I4697ea48e1a10fb3e442102c3ad97a35c8a6e3ea
2023-10-25 10:22:53 +02:00
Areg Nakashian 8a735d4faf Remove unused requestloksession command
This removes the unused requestloksession command
and all references to it, including protocol documentation.

Signed-off-by: Areg Nakashian <ss4crifice@gmail.com>
Change-Id: I8c410460a5f500f724996fbcbf8f9650028daaf9
2023-10-24 21:35:38 -04:00
Ashod Nakashian d9d13d7092 wasm: support serving wasm files
Updates README with instructions.

Change-Id: I5188d3ca267ff88a956dc17f302a70bda1046266
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-10-24 21:33:02 -04:00
Ashod Nakashian 184a4a522e killpoco: replace HTTPResponse in sendFileAndShutdown
We now use our http::Response in HttpHelper::sendFileAndShutdown.

Change-Id: I77503fce7a66a11435bad896d3d5d6df611544be
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-10-24 21:33:02 -04:00
Ashod Nakashian c3fb1d0dde wsd: helper to serialize pairs
Since we don't want to propagate Poco types
as well as our pair containers, it's best
to have these are named functions rather
than as operator<<.

Change-Id: I9772b8f314262147b6c445464bf3ce8cb598b56d
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-10-24 21:33:02 -04:00
Ashod Nakashian bd056aef91 wsd: test: proper parsing of http header in UnitHttp
This removes the literal string comparison of the
received http header with proper parsing and
comparison.

Change-Id: I383794aa1dc791632ec9d5ed2191880a57d457ee
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-10-24 21:33:02 -04:00
Ashod Nakashian 6ed5dc9a64 wsd: http: no need to pass the mime-type explicitly to sendFile
Since we already have an http response instance (in all but
one case, prior to this change), there is no need to pass
the mime-type explicitly to the sendFileAndShutdown
function, only to set it on the http response.

There are already too many arguments and the mime-type
is surely redundant.

Change-Id: Iab64074dc111573b87fb8fa9b907c26a4160910c
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-10-24 21:33:02 -04:00
Ashod Nakashian 0c59eda780 wsd: http: use named HTTP status-code instead of naked int
Self-documenting, less error-prone, and searchable.

Change-Id: Ifc21d7cf5512d9a63c5d5bc10ebc003fcccc93c1
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-10-24 21:33:02 -04:00
Ashod Nakashian f978b0146c browser: add wasm.html to load documents via wasm
This is of course for testing locally and as a demo.

This expects the wasm build browser/dist to be located
inside at browser/dist/wasm (which currently is done
manually).

Change-Id: I285177b4f08591cffe772acba531cf1a3434178b
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-10-24 21:33:02 -04:00
Marco Cecchetti 83fb699f7f a11y: on Firefox delete key doesn't work in some specific case
The problem occurs when accessibility is disabled
Exactly when the editable area is not empty and the cursor inside the
editable area is at the end.

Signed-off-by: Marco Cecchetti <marco.cecchetti@collabora.com>
Change-Id: Ia69e0f56233497e91babf9e33080701e1f1adad2
2023-10-24 21:39:08 +02:00
Szymon Kłos 6d7198c0b8 postmessage: handle Get_User_State
Get_User_State postmessage is used to query user status.
If user is active or idle and how many seconds ago there
was registered last activity.

{
    State: 'idle',
    Elapsed: 2.3
}

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I354c329b48d61df380455ce3c4a4732e78b138ab
2023-10-24 17:39:00 +05:30
Szymon Kłos cd32c129ad postmessage: send User_Active when become active again
We send User_Idle when user become idle, but there was no
similar message when user become active again.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: If0fe48456dc5ba24357bde792254c11c14517170
2023-10-24 17:39:00 +05:30
Szymon Kłos 465210ad27 jsdialog: add warning for actions in not used widget
we replace comboboxes on mobile with listboxes
but when we will want to use that widget again
we need to implement missing actions

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Iabf9506bbb13c67a0caf9aee31d24c1d0732a657
2023-10-24 10:36:12 +02:00
Szymon Kłos e2f9d51552 jsdialog: build correct structure for mobile combobox
so it correctly opens list of entries in goLevelDown

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I8c071908f4aa8ed9e47720dabfbb4060c495fbb6
2023-10-24 10:36:12 +02:00
Szymon Kłos 135f1263b2 jsdialog: move mobile combobox widget to separate file
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Id9e5aff092e5f9ac039017041033253d6146c9ef
2023-10-24 10:36:12 +02:00
Szymon Kłos f42f502e86 jsdialog: select & setText action for combobox #7488
Fixes #7488
calc perf: switching sheets spams font bits

requires: https://gerrit.libreoffice.org/c/core/+/158345

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Id6665ee6d28433ad1651983ac78f8e98a28e365c
2023-10-24 10:36:12 +02:00
Caolán McNamara 3a9089ea95 cid#318929 Big parameter passed by value
this is called from only one place where the arguments are already
passed by const reference, i.e.
void AdminModel::addDocument(const std::string&, ...  const Poco::URI& wopiSrc, ...)
so might as well forword as const reference and construct the copies in
this ctor.

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I4fe0ed4a4dd8cb71aa970798760d8488be68f82b
2023-10-24 09:23:47 +02:00
Caolán McNamara 80566a9bfe cid#318836 silence Resource leak
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I57255fe9fd13558a4edf2edd06681c7f08b25e51
2023-10-24 09:23:47 +02:00
Ashod Nakashian 9ad6a69086 wasm: improved build instructions in readme
Change-Id: I420891a555ef4b51304cff26fdcab2ba0bc5fbdd
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-10-24 09:20:32 +02:00
Ashod Nakashian cacbaae014 js: update package.json sorting
Change-Id: I7abf8adfc235d410823014c0a91131492498fa90
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-10-24 09:20:32 +02:00
Ashod Nakashian 7e1a23f47a wsd: test: helper to wait for any of the given messages
Change-Id: Ice48f59202306134dbafb411b8078f416e56b1c0
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-10-24 09:20:32 +02:00
Ashod Nakashian 90a7c26535 wsd: clang tidy fix
Change-Id: I983b25e11cdf2a535a826449ad23601cb0960ff7
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-10-24 09:20:32 +02:00
Ashod Nakashian 44cc7145c2 wsd: helper to concatenate streamable elements together
Change-Id: I0d989b54d5eebbd3efee2502d84a82281ebf62a7
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-10-24 09:20:32 +02:00
Ashod Nakashian 6de46d746e wsd: test: better run_unit.sh
Unfotunately, if our custom test driver run_unit.sh
fails, the report isn't generated at all.

So, instead, we have to go back to parsing the trs
file to detect success and failure.

We now make fast-fail an option instead.

Also fixes a typo in run_unit_standalone.sh.

Change-Id: I337c2a3edceda01df5f9c13c83eb176930b07e34
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-10-24 09:20:32 +02:00
Ashod Nakashian 7e105e1651 wsd: log TCP_NODELAY error only once
It seems that when TCP_NODELAY fails to be set,
the failure is permanent. As such, there is no
point in filling the logs with the same error.

This patch logs the error only once, per process,
and supresses further logs from Socket::setNoDelay().

Change-Id: I52c6b8cca35a8c281b4c4639d61a7e2521775d49
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-10-23 21:22:15 +01:00
Szymon Kłos 8819e0b52f jsdialog: change icon theme without reloading whole components
Previously we reloaded sidebar or notebookbar on theme change because
we wanted to load icons to match new colors. This change makes
icons aware of theme change so they automatically switch the URL.
Reload of notebookbar or sidebar is not needed then.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Iae0faa904e386765abebbdb8cc6cf3a156605706
2023-10-23 19:35:30 +01:00
Andras Timar 686f9d7ccb Update l10n files for Weblate
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I6c360ab81289646bf134df12a3f64c47ddb52aab
2023-10-23 14:43:28 +02:00
m4skedbyte 5021a0622d Translated using Weblate (German)
Currently translated at 98.4% (517 of 525 strings)

Co-authored-by: m4skedbyte <weblate@m4skedbyte.xyz>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/de/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I81d1aa4375c0617e8c49128eead598bbbd75a8fb
2023-10-23 14:37:37 +02:00
Andras Timar 02ca6afb5e dark mode improvement of UI images
- Calc - Autofilter - Two image buttons
- Writer - Insert tab - Page Number page preview
- Writer - References tab - Table of Contents and Index - Columns preview

Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I035ac128123fee81d6ea18b0882a7170f19b199f
2023-10-23 13:14:00 +02:00
Szymon Kłos 7aedb714ca jsdialog: a11y: space key should expand TreeGrid entry
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I29a3218b106376a134d5ccc8190c16817789a569
2023-10-23 13:10:14 +02:00
Szymon Kłos 2e10823246 jsdialog: don't add margin to flat list entries
in case of list view without levels we don't need
margin in first cell

detect that based on presence of aria-level property

use width: max-content to be sure we don't wrap entries
if not needed

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ica98e90dffd1e2b7330eb962cfc8141fa6fe01a1
2023-10-23 13:10:14 +02:00
Szymon Kłos f0e1eea2db jsdialog: build treegrid without additional cells in table
Use pure CSS to make margins for different levels.
Inspired by: https://www.w3.org/WAI/ARIA/apg/patterns/treegrid/examples/treegrid-1/#ex_label

- reuse arrow from tree view and expander widget
- center verticaly entries in the tree grid / list view
- add pointer cursor for expander arrow
- do not allow to sort tree grid - it makes no sense

Tree grid is a kind of table with headers but rows can be expanded
and have subentries with different "level" in the tree

It can be tested in Writer -> Review -> Manage Changes

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I4d0719a35cf852127378525153eb5b1e5d9961a7
2023-10-23 13:10:14 +02:00
Szymon Kłos ac47dd8c5f jsdialog: better layout in Manage changes dialog
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ia709cfe49717568f4ab81a33e3aa65f587dc9379
2023-10-23 13:10:14 +02:00
Szymon Kłos 26fb76cf4c jsdialog: update treeview JSON documentation
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I29c32f8c95dff68b2811d506b73b1c3ace659efb
2023-10-23 13:10:14 +02:00
Andras Timar 251177fd15 helm: update appVersion
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Icf02670c5f76b33a7c2efa903d58f08bdf636e34
2023-10-22 13:15:04 +02:00
Ezinne bab79ecd49 Added the images for the Help guide in German language
Signed-off-by: Ezinne <nnamani.ezinne@gmail.com>
Change-Id: Iff34a6d00cacfc0cb4597cc987e2bb8b3427b15f
Signed-off-by: Ezinne <nnamani.ezinne@gmail.com>
2023-10-21 15:11:12 +02:00
Szymon Kłos bebf6eb52d jsdialog: detect when scrollwindow has drawingarea inside
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I5e9e586cad14ae56f01abd7f16bbaf46b6540db3
2023-10-20 20:42:05 +02:00
Pedro Pinto Silva 2c800928a6 JSDialog: Set max height for Calc: Data: Sort dialog
To avoid 2 scrollbars in this dialog better to set a max-height to
this element so it never surpasses the main dialog height

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I939fd5fa3cafb3fcc0721aa2864b262535f622a7
2023-10-20 20:42:05 +02:00
Pedro Pinto Silva 2a432c9de7 JSDialog: Calc: Sort dialog: fix width without breaking spelling dialog
This fixes regression introduce in: Fix Spell checker js Dialog
- fd630d427f

By reading the code, it seems there was a fix for the spelling
suggestion (that comes as an image from core). It fixed the width,
before that the image was being resized to fit the parent's width.
- This fix still works but it ended up affecting any other
.ui-scrollwindow (that is not .formulabar)
	- which means that (for **any** text content) the content will not
	wrap at all even if it causes overflows and it will occupy
	only as much space as it needs and not the full parent's
	width.
	- Affected dialogs: Sort dialog's ui-scrollwindow was occupying
	only enough space to display its contents, leaving a big white
	space on the side

The present commit applies the max-content (that should never be
applied to text) solely when we have drawing-area child

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Iaf461663508a70a6a599cbe3e9411026b54531f0
2023-10-20 20:42:05 +02:00
Szymon Kłos 8332790984 jsdialog: fix scrollbars inside dialogs
This fixes side effect from commit a1b2091ae6
JSDialog: Dialogs shouldn't be taller than viewport

As mentioned in the above commit, we seemed to have children that are
always bigger than the parent even if there is no elements to be
displayed and to fix that we enforce in multiple places the overflow
hidden: afbf052bb5
	- Ideally we wouldn't do this and just let the web browser
	figure out if a scroll bar is needed or not. However this
	would be a quite risky thing to do without enough testing...so

Best to ensure that other dialogs that have hidden items in the
DOM don't get scrollbars. Examples:
	- Writer -> Format -> Character
	- Calc -> Data -> Validity

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ia2625bd7e45214aa43ae96e95a149e0f78c9cd7c
2023-10-20 20:42:05 +02:00
Andras Timar 2ed09707e7 Help window was too narrow
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I245e0979cd069f13eb8237eb155aa1760289a180
2023-10-20 17:36:56 +02:00
Caolán McNamara 03782fff83 cid#318932 Structurally dead code
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I7dc171a701825c67abf1df9b13c5df689e1d0921
2023-10-20 17:01:47 +02:00
Caolán McNamara 7c9c0f487e cid#321979 Big parameter passed by value
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Id514b14c6bfda08cd561d5c75ab2430b933a8919
2023-10-20 17:01:47 +02:00
Caolán McNamara 3d942b4d09 cid#318905 Untrusted allocation size
rearrange so coverity can see the size check

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Ifad60b1a2aba2cf9c6cfbf4ea8e450b9846de576
2023-10-20 17:01:47 +02:00
Szymon Kłos 181cb7fe78 Fix media request error
It fixes richdocumentscode case when trying to request media:
[ websrv_poll ] ERR  #-1: Failed to open file [.../9a2gf9.ogg] for uploading| net/HttpRequest.hpp:1603

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ia326f46a4a1aae28dbf03519ca88c03f499c281c
2023-10-20 11:40:07 +02:00
Caolán McNamara 6c67b072fa cid#318855 Unchecked return value from library
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I9572414e3cfc8426ca6b25872231470f072c5aad
2023-10-20 08:25:07 +02:00
Caolán McNamara df1cb7164c cid#318873 don't pass object by const reference
Poco::JSON::Object::Ptr anonObject(object) is effectively a
const_cast and the comment in the header warns that object
may be modified, so just pass it by non-const and drop the cast
and merge the resulting duplicate stringify call

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I9701ae95ff991b0dece854f295ba76ac9b3c2fa5
2023-10-20 08:25:07 +02:00
Gülşah Köse 81c2f16302 coolwsd.xml.in: Add possibility to disable overwrite mode
It seems large groups of people don't have a use for overwrite mode
- Would like to avoid enable it by default

This is just the first step on improving the user experience here.

------

The whole plan would be to:
- 1st Follow up PR
  - Where we disable the overwrite mode when enableExperimental is true
  this we will be able to see if community likes that change or not before making it everywhere
- Other possible improvements
  - Triger a snackbar for the first time the user press the Insert key
    - If the feature is disabled we would show snackbar with timeout
      "Overwrite is disabled. Please contact admin."[Dismiss]
    - If the feature is enabled we would show snackbar with timeout
      "Overwrite mode is now enabled" [Disable] (Disable here means the same action as pressing again the **Insert** does)

Signed-off-by: Gülşah Köse <gulsah.kose@collabora.com>
Change-Id: I060b3d2d9d1e7e29a18f5ea1d619c9349eae67c3
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
2023-10-20 06:39:18 +02:00
Caolán McNamara 7d37ba6a41 we can remove this unconditional wait by conditionally waiting for enabled state
on the table toolbar items

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Icb2ea52f95c32a8163d93a7fb772d60c932a1621
2023-10-19 17:16:45 +01:00
Caolán McNamara 9ae85964db use table-delete-rows-button instead of table-delete-rows
table-delete-rows-button is inside table-delete-rows so right not
it doesn't make a difference if table-delete-rows is clicked, but
in follow up we want to check if table-delete-rows-button is enabled
not table-delete-rows

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I7f21dd6a423192ba80791bc94bf63ff39d12f0c6
2023-10-19 17:16:45 +01:00
Attila Szűcs fd49092e1c Added Icons to Manage Changed dialog
Not sure if all of them can be used now, but these 5 i tested:
insertion, deletion, cut, paste, format

Signed-off-by: Attila Szűcs <attila.szucs@collabora.com>
Change-Id: I4a6c974817d58455f01f106232c9baa66fe9d58c
2023-10-19 15:04:20 +02:00
Frankie McEyes 8fe1f0fe2c Translated using Weblate (Italian)
Currently translated at 97.7% (513 of 525 strings)

Co-authored-by: Frankie McEyes <mceyes@protonmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/it/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I57bbb753644605e4f6b8afe841c2a1a0fe6a8668
2023-10-19 11:20:40 +02:00
Rysertio 3bb594020b Translated using Weblate (Bengali)
Currently translated at 8.5% (45 of 525 strings)

Co-authored-by: Rysertio <hortoki51@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/bn/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: If525523fe7511a99921fdc81859721af59ca1b02
2023-10-19 11:20:40 +02:00
Martin Srebotnjak 871a2aabcf Translated using Weblate (Slovenian)
Currently translated at 100.0% (525 of 525 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: Ie4b262261f5bfe7aa90c8f81925eb22b44a63502
2023-10-19 11:20:40 +02:00
Yaron Shahrabani fe6bc91609 Translated using Weblate (Hebrew)
Currently translated at 100.0% (525 of 525 strings)

Co-authored-by: Yaron Shahrabani <sh.yaron@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/he/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: If916882d717b0eaba96cb7cbfdbbe403868c35d1
2023-10-19 11:20:40 +02:00
Rob Pearson 5d2ad69d52 Translated using Weblate (English (South Africa))
Currently translated at 100.0% (525 of 525 strings)

Translated using Weblate (English (New Zealand))

Currently translated at 100.0% (525 of 525 strings)

Translated using Weblate (English (United Kingdom))

Currently translated at 100.0% (525 of 525 strings)

Translated using Weblate (English (Australia))

Currently translated at 100.0% (525 of 525 strings)

Co-authored-by: Rob Pearson <rob.dunedin@gmail.com>
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/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I11d64eb01c3c26ca7ee67c173f0fc64edbbcec14
2023-10-19 11:20:40 +02:00
Sebastiaan Veld 3450976df6 Translated using Weblate (Dutch)
Currently translated at 100.0% (467 of 467 strings)

Co-authored-by: Sebastiaan Veld <sebastiaan.veld@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/nl/
Translation: Collabora Online/Help
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I6361984ec444756f859ecf879c9e2bb217aba059
2023-10-19 11:20:40 +02:00
Ihor Hordiichuk ff18c36b3a Translated using Weblate (Ukrainian)
Currently translated at 100.0% (525 of 525 strings)

Co-authored-by: Ihor Hordiichuk <igor_ck@outlook.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/uk/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ibe42ae7af50b9ab3065396cb5c4e5c9e0b136555
2023-10-19 11:20:40 +02:00
Milo Ivir a03e751e31 Translated using Weblate (Croatian)
Currently translated at 100.0% (525 of 525 strings)

Co-authored-by: Milo Ivir <mail@milotype.de>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/hr/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I7e33a3c85fb8ae3f0844ced131edc2e56d6471fa
2023-10-19 11:20:40 +02:00
Andras Timar bd3f197aa8 Bump version to 23.05.5.2
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I90ce9d6c8a59b8f498ef6fc11368eb1c6e170ca8
2023-10-19 11:19:50 +02:00
Szymon Kłos 5927fe1773 Avoid using undefine in custom button insertion
If postmessage to insert custom button will arrive
early before we initialized notebookbar it could
fail in insertion into compact mode toolbar due to
not existing toolbar.

This prevents us from that error. It will be not added
at the time of postmessage execution
but we remember all the custom buttons in special
array, so when UI will be initialized it will be added there.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I07d86db49a50be70b0c091a66cf5e4be049211ce
2023-10-19 10:44:38 +02:00
Szymon Kłos 7df4101713 postmessage: add more logging for debugging issues
Without that integrator doesn't know what happened.
We were silently ignoring messages.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I897a95b343a1b436745816ccbef7656f30981112
2023-10-19 10:43:40 +02:00
Caolán McNamara 0ed831dfae restore TileCacheTests::testTileProcessed
with the original 25 expected results from 25 requests

from cid#318925 Structurally dead code

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I236876fadd5b5c82ecdbcc52a13fc58e8513aa12
2023-10-19 09:59:02 +02:00
Caolán McNamara c4e973ee5e cid#318817 avoid Uncaught exception
and

cid#318819 Uncaught exception

take a reference in the COOLWSD/DocumentBroker ctor, so indicating it
exists before the calls in the COOLWSD/DocumentBroker dtor, and so the
Admin ctor doesn't throw during the COOLWSD/DocumentBroker dtor.

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I8190cc3594a5f81fedd355aeadcca45e532bda90
2023-10-19 08:45:23 +02:00
Pranam Lashkari 31d207f520 UI: Prefill rename dialog with the current document name
resolves: #7468

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: Icb6563f76cc0f9c7d81eac96fedc6e476dfdad46
2023-10-19 03:55:50 +07:00
Gökay Şatır d5cda35530 Fixed the name of the new comment.
With this fix, user can open a new commen popup without closing a previous new comment popup.

Without this, a new comment section lingers at the background and new comment command fails until user refreshes page.

Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: If7f151eb11d3f5d26dae2ca6331eb5dc0dfd9881
2023-10-18 18:38:08 +03:00
Cosmin Humeniuc 7dae294a71 Avoid logging messages when anonymization is on
Signed-off-by: Cosmin Humeniuc <cosmin.humeniuc@1and1.ro>
Change-Id: I5bcf615521d13758b2b70a0c9466a3bbc1a0a918
2023-10-18 16:22:31 +01:00
Caolán McNamara 53d84b4382 raise quarantine logging to WRN and include more information
scraping the logs with:

if line.find('Backtrace ') != -1:
    pid = re.findall(r'Backtrace ([0-9]+?) -', line)
    if pid:
        for file in os.listdir("/opt/cool/quarantine"):
            if file.find(pid[0]) != -1:
                ...

shows an unexpected lack of hits

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I63b5e62a5d46627146763cb0f847b976017f6c4b
2023-10-18 16:55:53 +02:00
Darshan-upadhyay1110 9c994882f1 Fix Format Cell broken with custom text
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: I27cf86972e70d956b9005fc1ea0b65a622e898d7
2023-10-18 17:08:28 +05:30
Darshan-upadhyay1110 90cfa44b55 Fix spinfield doesn't adjust the value
- Condition modified for getPrecision.
    - it was not handling the cases for dot value less then 0.
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: I740f86e9477656d371ba3b8793bff99671444d7c
2023-10-18 17:08:06 +05:30
Szymon Kłos 707a577c56 jsdialog: make mobile border style control compatible
- jsdialog requires to create in the handler single root node
  with id of the widget
- remove old style update by _refreshSidebar

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I8ce6e832b2d27d25f54e9bf636572b8c97d3a7c1
2023-10-18 12:17:48 +02:00
Gökay Şatır 6ecdcf557b Fix JS error on translations.
queryselectorall('something').queryselectorall('something else') fails.

^ This JS error is fixed.

Also we don't have specific images for German help page. So we removed the "de" from that language list.

Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I69b56e8f4bd2b92835c4aca9c2284750f3df9455
2023-10-18 12:50:37 +03:00
Szymon Kłos bde5ee533f Enable duplicate checker
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: If08ceb5dd6ca83b6c1bd5e8bd1d8028a61f4296f
2023-10-18 11:47:02 +02:00
Rash419 20f1429896 browser: fix white document background on reconnect with darkmode
Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: Ic853ba5108a1f6f9db2a7f8ab5310fe77357b07c
2023-10-18 14:00:03 +05:30
Szymon Kłos f78fed8165 notebookbar: we use core widgets in all apps
for font selector and font size...
this makes us sure we initialize everything in Impress and Draw
too in case of reconnect

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I67ee15f470fa43965f6fbd91ae45cd330ea449aa
2023-10-18 13:52:16 +05:30
Szymon Kłos f861ac7056 notebookbar: encapsulate _isNotebookbarLoadedOnCore
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I3328b7bcc5036ed81dc757398dfabe71ba861044
2023-10-18 13:52:16 +05:30
Caolán McNamara 5acb4138e3 cid#318873 silence bogus Double free
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Ie4b0753e305f2232673837bcf7a376ad7622c120
2023-10-18 08:31:41 +02:00
Caolán McNamara acbea27acf cid#318979 Big parameter passed by value
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Iae9f67cf8bd71d8df51409e91606c68b51244ac2
2023-10-18 08:31:41 +02:00
Caolán McNamara d52dc848bb cid318968 Calling risky function
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I81717e28f64cfe70a598363ca4723b177209d99f
2023-10-18 08:31:41 +02:00
Caolán McNamara f86d894eb1 cid#318862 Dereference after null check
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Idf2a678a56531b7e3c3a51f6e86582bb9ac69dc7
2023-10-18 08:31:41 +02:00
Pranam Lashkari 93b5bdfd79 feature-locking: send lock/restriction status from client session
problem:
earlier restriction/lock status was sent to kit via browser,
now client session send this status directily to the kit.
this design will require less communication between server and browser

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I6b830f30fb326a5e6637e345250893cbba101de6
2023-10-18 03:05:40 +07:00
Caolán McNamara 395d6c9f12 Assertion in DocumentBroker::sendRequestedTiles fails on running cypress impress tests
make -C cypress_test check-desktop

asserts seen in cypress_test/cypress/wsd_logs/coolwsd_output.log of:

coolwsd: wsd/DocumentBroker.cpp:3134: void DocumentBroker::sendTileCombine(const TileCombined&): Assertion `!newTileCombined.hasDuplicates()' failed.

If we check for, and don't reuse, an old request with a different
NormalizedViewId then we could end up with multiple requests with
different NormalizedViewIds that end up in the same final tilecombine.

similarly there was no check for different modes ending up in the
same tilecombine.

just split out the logic we have to see if two tiles have the same
properties that appear as a shared set of properties for tilecombine
and use that in the two relevant places.

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Ieb2ee0e85f124dd57c6b050e5b669dd808cf6bbf
2023-10-17 17:05:24 +01:00
Rash419 bb246318fe helm: update appVersion
Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: Iac2823f4055f4489555b28e989f31be1f23f14e7
2023-10-17 19:28:10 +05:30
Rash419 40d97df58e k8s: update readme
Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I5c145bc2c5b718266caa40f9177e0b0591ab3522
2023-10-17 19:02:52 +05:30
Szymon Kłos 0b2b048620 jsdialog: fix error in frame label getter
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Idbdb8bc8b895e800450b0f8b7b4b564627c99890
2023-10-17 16:30:23 +03:00
Szymon Kłos 9730d473b5 jsdialog: avoid error when container is missing
TypeError was noticed where container was undefined.
This was case where snackbar was closed.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Id465723e01bc2cec2e20056103a918e53abf6d09
2023-10-17 16:30:23 +03:00
Pranam Lashkari a373b6e121 annotation: make sure comment list is fetched correctly
problem:
this caused problem in autosaved comments,
when comment list is empty autosaved comments may be closed when focus is lost

partial fix: #7421
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I1fc2d087828ce44495001f97b5323dffb8adb2ef
2023-10-17 18:25:03 +07:00
Rash419 11a0e78ed4 admin:log activities irrespective of logging.level
- It logs activities like when admin logged in, authenticated
  metrics endpoint accessed, external monitor getting connected
  and admin actions like kill the document etc

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I059f6b6ee0d8269aec7e3f521622773e348304a3
2023-10-17 14:57:10 +05:30
Caolán McNamara 7233bce6c2 cid#318978 silence Using invalid iterator
for coverity always assert even if a previous test was to fail

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Ic48654d828a5311e043f412d9c30139e25b40262
2023-10-17 09:48:02 +02:00
Caolán McNamara c6b0eebbf8 cid#329408 Unchecked return value from library
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Id034ba2e1ca9d4d3d7f7722b929063cee2f7d4e3
2023-10-17 09:48:02 +02:00
AIlkiv b2e87c4f45 Shortcuts for different keyboard layouts
Signed-off-by: Andrii Ilkiv <a.ilkiv.ye@gmail.com>
Change-Id: I27d7478e234f06edbf53fd2cee6fd800230bcb0e
2023-10-17 09:36:36 +02:00
Gökay Şatır d3d5bdf269 Hide the newly added comment.
Also add a check for failed attempts of new comments.

Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I50a9981cf51475d6008e936e6e28573156a8383a
2023-10-17 05:33:31 +07:00
Gökay Şatır 84cc6dc329 Add guard for applyDrawingOrders function.
It's required only for spreadsheets.

Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: Iae3694cca16cb51d4e3e9b20f3a337fd2e0a4c12
2023-10-17 05:33:31 +07:00
Marco Cecchetti 5680f3dc6e a11y: accessible description to describe how to turn on accessible mode
Set up accessible text through aria-description for describing how to
enable accessibility support for text content when it is disabled.

The description is reported by the screen reader on document load and
on explicit request to read current text content.

Signed-off-by: Marco Cecchetti <marco.cecchetti@collabora.com>
Change-Id: I439b7703c15d3b38c39181d27c11da438834c414
2023-10-16 19:09:54 +02:00
Andras Timar 41fce2572b restore the original install-data-hook in case of debug builds
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I45dc86b7473babba723a873e4a21c8021797fb07
2023-10-16 17:21:56 +02:00
Andras Timar af8ba81943 Fix CSS selector: make checkboxes visible in light mode
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I6e8194ea456e4af3104754cf9219be22f135c042
2023-10-16 16:56:03 +02:00
Caolán McNamara 8afe3dc922 different tile widths in requestedTiles on switching calc tabs
if we zoom in calc quickly that can result in still unfulfilled requests
for the first set of tiles from the earlier zoom in requestedTiles when
the new requests are compared with the existing one for duplicates, but
they are of different tilewidth/tileheight and shouldn't match as a
duplicate.

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Ifc3f905c5304feb6c05696835dcb4eaed7f1e546
2023-10-16 14:35:53 +02:00
Caolán McNamara e95489864b keep quarantine files on SIGABRT too
AdminModel::cleanupResourceConsumingDocs uses SIGABRT as first
attept to kill misbehaving documents, we should give
DocumentBroker a chance to quarantine documents killed off by
SIGABRT as we do SIGSEGV/SIGBUS

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Ic3a703572393050379b5a1444a5380bbeafcf2d3
2023-10-16 14:27:27 +02:00
Szymon Kłos 5f9b8cab6c jsdialog: reduce warnings in console for sidebar
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ibe3c82bde06eb96fe08ea977472c776be4132de1
2023-10-16 10:52:14 +02:00
Szymon Kłos 88b5f508e8 jsdialog: simplify sidebar action code
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I49a5ce3b2667c49475ebbc45d49e00915ad9e4b9
2023-10-16 10:52:14 +02:00
Szymon Kłos a7ece5d0d6 jsdialog: reduce warnings in console for formulabar
we emit lots of warnings which are not important

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I59027c4d848a98ba3d9e8f4a3feafd3fcb62dec2
2023-10-16 10:52:14 +02:00
Szymon Kłos 1b4883877c jsdialog: move mobile border selector to separate file
to make main JSDialogBuilder shorter and easier to read.
And move handler to mobile builder as control exists only
on mobile.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I9a14c7050711658638d22f0fd7b47e038b5952a1
2023-10-16 10:52:14 +02:00
Caolán McNamara d6c1916cb2 cool#7374 very little delta threading
We only run one task in each thread when run() is called, then complete
the remainder of tasks in the main thread while the other threads wait.

https: //github.com/CollaboraOnline/online/issues/7374
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Id4fc0a620d98b0bb55310b495eeff7411a4544b5
2023-10-16 09:26:32 +01:00
Caolán McNamara 724c0ca7a6 cid#318860 Unchecked return value from library
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I765e71d76ff4be8ef7a92b060af026e3c26f669b
2023-10-16 09:37:01 +02:00
Caolán McNamara 960938e000 cid#318957 Unchecked return value from library
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I5bd471f86668d9fbd72cfb050fb67df6d70bdc9f
2023-10-16 09:37:01 +02:00
Caolán McNamara 54c63f6cc1 different 'parts' in requestedTiles on switching calc tabs
if we switch calc tabs quickly that can result in still unfulfilled
requests for the first tab in requestedTiles when the new requests are
compared with the existing one for duplicates.

It doesn't make sense to replace a request for a new tile with an old
request from a different part. But tilecombines are intended to share a
'part', so a single tilecombine shouldn't be synthesized from multiple
requests for different parts.

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Id8d40f0a7e7f9d32fed67a415756284d7f6a53d4
2023-10-15 19:28:43 +01:00
Andras Timar db553e3edf Remove ellipsis (…) char at the end of notebookbar button labels
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ie110bc895d7a639266affb9ba3129a5a831d6e2c
2023-10-15 16:35:28 +02:00
Szymon Kłos b35c4f5a1d jsdialog: move frame handler to separate file
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I36640680eb2e0594eb336353deba6c34d1d933e7
2023-10-15 11:43:07 +02:00
Pranam Lashkari 9be1e9261d jsdialog: make sure all elements in frame are displayed
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: Ie0b949c8dcd820de380f9ee6b497631e594114f3
2023-10-15 11:43:07 +02:00
Szymon Kłos 1d48bff888 Disable failing impress/editable_area_spec.js
this was failing on CI recently

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I0332a1ea47298059ba2dac4fcc7af70738431a5c
2023-10-14 19:29:19 +02:00
Caolán McNamara 8d42849156 ProcSMapsFile might not be a valid file descriptor
in which case don't send it, which then implies we might have
an empty shareFDs which we can treat the same as a nonexisting
shareFDs

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I80a78a01c69dbee5ee28a64442a5069a6c2b4dbe
2023-10-14 12:56:15 +01:00
Pedro Pinto Silva a1b2091ae6 JSDialog: Dialogs shouldn't be taller than viewport
Don't allow dialogs to grow taller than the web browser's viewport
instead,
 - Set (for dialog's content) a max of 90% of the View height and subtract the dialog's
header. This way the header with the close button stays always visible
 - Set overflow accordingly so it can be  scrollable
   - Needs to have !important because it seems we need by default
   "overflow: hidden;" set to every  ".jsdialog-container
   .lokdialog.ui-dialog-content.ui-widget-content"
      - introduced in afbf052bb5
      possibly due to hidden elements that are part of DOM

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I61a2a41d8b1198fe00b939427cde43d247dc08bb
2023-10-13 13:52:11 +02:00
Szymon Kłos ede848b2b3 Update file headers in jsdialog related components
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I347ebde789495d852c091cefb1c84ab9f1c7ebdb
2023-10-13 10:01:31 +01:00
Marco Cecchetti da59a84935 followup: no copy event is emitted by hitting CTRL+C with no selection
This is still occurring also in Firefox 118.
Anyway it seems to never occur on Windows.

Signed-off-by: Marco Cecchetti <marco.cecchetti@collabora.com>
Change-Id: I0e5c643912f2276c60bdba1b2ad1ed801785193f
2023-10-12 17:25:52 +02:00
Caolán McNamara dffef0e99b reduce onStatusMsg retry timeout to 10ms
https: //github.com/CollaboraOnline/online/pull/7390#discussion_r1351943503
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I0a32933d54fa44486c6807c4d0b01e2029700271
2023-10-12 09:09:25 +01:00
Darshan-upadhyay1110 2586e04148 Fix export as options on android app
Some of the options seems to not working on mobile app
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>

Change-Id: I934e446dfeeab46f26e95898522cb0b7c1cc64a2
2023-10-12 07:33:26 +02:00
Andras Timar 1fea2274fb Bump version to 23.05.5.1
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I54981e3b8ff71be9d47f5ce39ec435ea7a382ab3
2023-10-11 20:29:43 +02:00
Pranam Lashkari b39a0bba79 browser: notify user for unsupported video
detect if video is able to play via checking if any frames are decoded,
in other cases(i.e: file not found or corrupted file) check for the errors in source and video

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I22bfc836a98ec0eb2caa58b89332b2531d69d18f
2023-10-11 20:23:37 +02:00
Cosmin Humeniuc 4fca649079 Re-set id of 'selectbackground' to 'layout-selectbackground'
Signed-off-by: Cosmin Humeniuc <cosmin.humeniuc@1and1.ro>
Change-Id: Ifdb843b3337ddc1ad64191485335bdcf0ac79478
2023-10-11 18:30:36 +02:00
Cosmin Humeniuc 89db8cf5d4 Enable "Set Background Image" button in tabbed view
Signed-off-by: Cosmin Humeniuc <cosmin.humeniuc@1and1.ro>
Change-Id: I9e6c5f3070683e1949d66355d8e0cf832580b912
2023-10-11 18:30:36 +02:00
Skyler Grey 237d9c084a safari: workaround SVG position bug
This commit fixes videos rendering in the wrong place on Safari (and all
iOS browsers). Note that it will still need the server fixes contained
in https://github.com/CollaboraOnline/online/pull/7367 for Safari to
play video

To reproduce, load a document with an mp4 video in Safari (this may also
work with other formats, but we know of unrelated bugs with non-mp4
videos) and click on the place where the video should be.

Before this commit, you will see a white rectangle where the video
should appear. After this commit, you will see the video. If you have
this commit but not #7367 you will see a play button with a "broken
video" strikethrough. In non-Safari/iOS browsers you will see the video
both before and after this commit.

This commit does not include detection for the upcoming Layer-Based SVG
engine <https://wpewebkit.org/blog/05-new-svg-engine.html>. This means
that this commit will *break* video if this is enabled in Safari debug
mode.  If this commit is merged as-is we need to make a followup to fix
this as soon as possible or we will end up with a similar-but-opposite
bug when that flag is toggled on by default.

Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
Change-Id: I205e692e7027ad917bd6f29aa96b0ac70a4c9e04
2023-10-11 16:25:47 +00:00
Oğuz Ersen 99b83417d1 Translated using Weblate (Turkish)
Currently translated at 100.0% (525 of 525 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: Ie2db76bce482a3557f790a2e7a5392f75692e077
2023-10-11 18:24:02 +02:00
Leif-Jöran Olsson 03f0d80d8a Translated using Weblate (Swedish)
Currently translated at 100.0% (525 of 525 strings)

Co-authored-by: Leif-Jöran Olsson <info@friprogramvarusyndikatet.se>
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: Ifb2674e4a0f0b3dbf5d466734558d00292d1396a
2023-10-11 18:24:02 +02:00
Matthaiks 6754c74991 Translated using Weblate (Polish)
Currently translated at 100.0% (525 of 525 strings)

Co-authored-by: Matthaiks <kitynska@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pl/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Id708a7b627d80f9783ed36e0f2f98a07d0dfb11a
2023-10-11 18:24:02 +02:00
Sebastiaan Veld f1b703bf10 Translated using Weblate (Dutch)
Currently translated at 100.0% (525 of 525 strings)

Co-authored-by: Sebastiaan Veld <sebastiaan.veld@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/nl/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Iccba3f92080bb0c0a626491636ce214441e22684
2023-10-11 18:24:02 +02:00
Andras Timar 0608b3e808 Translated using Weblate (Hungarian)
Currently translated at 100.0% (525 of 525 strings)

Co-authored-by: Andras Timar <andras.timar@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/hu/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Icdaa800456e29f7f923b65d4a39346f6d8e3ab0b
2023-10-11 18:24:02 +02:00
Milo Ivir 01922e6c55 Translated using Weblate (Croatian)
Currently translated at 99.8% (524 of 525 strings)

Co-authored-by: Milo Ivir <mail@milotype.de>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/hr/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I6ce5be9af96f7298f48a88c6e22ed46cc22e87df
2023-10-11 18:24:02 +02:00
gallegonovato 0626607d9e Translated using Weblate (Spanish)
Currently translated at 100.0% (525 of 525 strings)

Co-authored-by: gallegonovato <fran-carro@hotmail.es>
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: If739719ada0d1ef7ca67c75c2b54ace9b07a91f0
2023-10-11 18:24:02 +02:00
Pedro Pinto Silva 54348fb2ca Translated using Weblate (Portuguese (Brazil))
Currently translated at 100.0% (525 of 525 strings)

Translated using Weblate (Portuguese)

Currently translated at 100.0% (525 of 525 strings)

Translated using Weblate (French)

Currently translated at 100.0% (525 of 525 strings)

Translated using Weblate (Czech)

Currently translated at 100.0% (525 of 525 strings)

Co-authored-by: Pedro Silva <pedro.silva@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/cs/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/fr/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pt/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pt_BR/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I7834a95d77c55037d72b4afee337eb831df6c09e
2023-10-11 18:24:02 +02:00
Skyler Grey 2666063040 Allow http Range header for media files
The range header allows a client to specify that they would like only
part of a file, e.g. only the first 1000 bytes of a video. When playing
video on Apple devices (Macs, iPads, iPhones etc.) this is required to
avoid Safari rejecting the video as broken. This is the first part of a
fix to embedded videos on Safari.

This commit does not implement specifying multiple ranges at once (e.g.
bytes=0-9,-100 to get the first 10 and last 100 bytes).

This feature is necessary to play video on Apple devices, but it is not
sufficient. In particular, I believe some further client-side fixes will
be needed to make the video play properly.

Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
Change-Id: Id89a06d374b7d0efbf2b3184d8618df61684dcb6
2023-10-11 15:09:15 +00:00
Andras Timar 0cfdb87362 exclude debug/dev files from production packages
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ic9b49a401b63af65f4e53e3eb2584b8258575c2a
2023-10-11 16:45:26 +02:00
Rash419 762ce28e22 browser: make reconnnect experience smoother
- don't invalidate the tiles
- don't reload the document if serverId changes
- writer: fix cursor jumps to top the document

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: Ie42850e77f9011cd1c820115919f10283407f216
2023-10-11 16:54:06 +05:30
Andras Timar 6eb60acffd Change the local storage setting name 'CompactMode' to 'compactMode'
We want to re-force the choice, i.e. people who mistakenly set
their UI to compact mode, now will get tabbed mode and can
decide, if they like it better or not.

Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ic5810321abf2cbc3996478816fe153d848c66c71
2023-10-11 11:54:06 +01:00
Marco Cecchetti 022e32e5d2 a11y: impress: screen reader support for text shape editing
Now accessibility support can be enabled in Impress.
Created cypress tests for editable area in Impress

Signed-off-by: Marco Cecchetti <marco.cecchetti@collabora.com>
Change-Id: Ia2fd4e55bce3785320ec0cc9f31a6d7550ca3a82
2023-10-11 10:18:46 +02:00
Pranam Lashkari dda49b0af6 annotation: fixed autosaved comment cannot be closed
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I504df4738054076b35e36b878d8f8651af4543eb
2023-10-11 08:44:57 +02:00
Pedro Pinto Silva 9a6b877190 Snackbar hasProgress: Set to double column grid
Use new id for snackbar with progress and style it

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I24a1647f0f629b7b079aa65601f4309c339a06e8
2023-10-11 08:29:43 +02:00
Pedro Pinto Silva 37bc01a730 Snackbar: fix pushbutton padding
Before this, the padding-right was being set to 0 (probably to save up
space) but this is not the way to do it. It looks weird when the focus
is set to that button.

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ib60b32cd9d0f5f42444cadef121be32c15941483
2023-10-11 08:29:43 +02:00
Szymon Kłos 8f188a543a clipboard: show 100% progressbbar on completed download
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I55762e03a31ceca379514f422c8100b5ac1edd9d
2023-10-11 08:29:43 +02:00
Szymon Kłos a3c841236b clipboard: update messages
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I247e5e802265aef6d423e5049a3b4a43ac03618c
2023-10-11 08:29:43 +02:00
Szymon Kłos 5aac0203c5 clipboard: don't show full warning on paste
if complex selection was copied in one window
then we try to paste in other document, then
the same dialog appeared. this commit shows
only progressbar step for "paste" operation
as we don't need to do anything else.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Id9c33261dbdfb282d142cdfdf2217b30111263b1
2023-10-11 08:29:43 +02:00
Szymon Kłos c247b20509 snackbar: make progress visible
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I3f1022c4680d749f80116b7480e58e14e2bce5b1
2023-10-11 08:29:43 +02:00
Szymon Kłos 27c72ca4d0 clipboard: set equal width for progress dialogs
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ib0dde8d856c0358d9c5ec7ecb128b458221bb70f
2023-10-11 08:29:43 +02:00
Szymon Kłos 9d65a03e5b clipboard: complete dialog shows 100% progressbar
Reusing progressbar dialog allows us to show it's the
same process for the user. So even if it is instant he
will see 100% progressbar and that button become enabled.

Create new file for functions which manipulate existing
modal dialogs.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I765483b940f47bdfbcf8a488ea7d0ab9569ccda9
2023-10-11 08:29:43 +02:00
Szymon Kłos a451cc4de8 clipboard: make dialogs more unified
- use the same id so we can apply common styling

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I0fb567fd5b77e3ca57b5ba5cd8d6e1fa29e46fc1
2023-10-11 08:29:43 +02:00
Szymon Kłos c1d0ec909c snackbar: use ESC to dismiss sidebar
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I8f198ec3fd1ce459f9f9cce02755548224e5c721
2023-10-11 08:29:43 +02:00
Szymon Kłos 19bf03ab5c clipboard: use ctrl+c to confirm copy
This will provide easy to use flow for the user:
ctrl+c has to be clicked 3 times to copy, download and confirm

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I745963744cdff552c37f7a5ffee5c0f737fb67ba
2023-10-11 08:29:43 +02:00
Szymon Kłos 9cbbeb98ae clipboard: hide download dialog when changed selection
user changed selection - it means we no longer want to download
content but we do something else

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I5df0a63baa1bf1ae85567430d531dd7800ad6cd0
2023-10-11 08:29:43 +02:00
Szymon Kłos 4ab1f7f165 clipboard: keyboard shortcuts for snackbar messages
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I65f83901ebb7d25a2fb7d9203952601d44c7a4b6
2023-10-11 08:29:43 +02:00
Szymon Kłos c605b7a3d2 snackbar: a11y improvements
- add relation label - button
- make action button focusable and possible to click using
  keyboard
- allows to use keyboard shortcuts on snackbar when event is
  handled

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Iaea53f7d74d547a42e6c7096fde3b9136a3bb968
2023-10-11 08:29:43 +02:00
Szymon Kłos b412adaeb9 snackbar: limit to 80% of screen or wrap
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ie25794f55d9ccaf502d9189c096c8029a3698226
2023-10-11 08:29:43 +02:00
Szymon Kłos 451a9bc7cb clipboard: add dialogs for download progress and complete
used for the first time user copy-pastes

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ie01c32ed394d4231c9eb0c64e661ffa2cdee1a74
2023-10-11 08:29:43 +02:00
Szymon Kłos f1a962c89a clipboard: move all dialogs to Control.DownloadProgress
- this will allow to share common strings
- use shorter messages

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ie21dfaf17b76c79e6ced83b439e67feae4dac009
2023-10-11 08:29:43 +02:00
Szymon Kłos eb093b21e6 snackbar: don't close with timeout from previous instance
when we create new snackbar it has the same id and sometimes
it happens that timeout from previous instance closes the
new one, because timeout wasn't cleared

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I52dbb2c1a297012fc686fc044c5b3b7263c83543
2023-10-11 08:29:43 +02:00
Szymon Kłos 689c6fa063 clipboard: use snackbar for interaction with user
Instead of leaflet popup we use now snackbar.
- control is not removed and added again for next copy-paste
  but we keep single instance for all the time
- added download error message
- simplified close snackbar code

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I804a82c4f589b029a42fc2800958ff2b46b7df50
2023-10-11 08:29:43 +02:00
Szymon Kłos 585e00a1ee snackbar: vertical alignment of items
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ia1fb616170497ad32e2db85111a7dc5b07e90f5d
2023-10-11 08:29:43 +02:00
Szymon Kłos d0c3d09fb2 snackbar: with progressbar
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I8a3231a0f61eb97c9daeff3e92afb7d3b640a957
2023-10-11 08:29:43 +02:00
Szymon Kłos 91d5a23d76 jsdialog: snackbar without timeout support
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I7f44192b4ff3b2314a621fb735e4f4192fc93fd7
2023-10-11 08:29:43 +02:00
Szymon Kłos 8c7b638bb8 jsdialog: move progressbar widget to separate file
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I3a489340df101d7a672762a7a259cd92514f5f53
2023-10-11 08:29:43 +02:00
Gökay Şatır 2e94d4a998 Add simple progress bar control and a showProgressbar function.
Can be modified again for more specific purposes. First version is simple.

Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I8ad929ffa841c3c2c282f72058ab07882d6a4465
2023-10-11 08:29:43 +02:00
Gökay Şatır 5204f81110 Add shortcuts to copy paste warning dialog.
Also change the description to a shorter version.

Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I81e4b6b58de9b81071b48634ccb282c30590dacf
2023-10-11 08:29:43 +02:00
Caolán McNamara 71e43ebe35 delayed messages can be applied when _map._docLayer becomes available
without a need for an additional timer to poll when that is possible.

this._map._docLayer is set in _onStatusMsg only when _isReady() is
true so if this._map._docLayer is non-null _isReady() is true

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Ia019d8d8516f8c9156f3e96be262138a16343983
2023-10-10 19:57:13 +01:00
Caolán McNamara 4ec1a37715 cid#318830 help coverity see assert
and

cid#318839 Explicit null dereferenced
cid#318838 Explicit null dereferenced

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I34685ea04722aeccc21910283fa4819dbf45c012
2023-10-10 12:08:51 +02:00
Gökay Şatır 679241b4f9 Enable drawing even if the first cell cursor message is empty.
Reason:
Sometimes cell address is at the end of a merged cells block.
That kind of cell address is invalid. Example:
Merged cells: A1-A5.
When example merged block is selected, cell address should be A1.
If it is A5, cell cursor is not drawn.
If cell cursor is not drawn "EMPTY" message is sent from core side.
And we cannot enable drawing in this case.
So we enable drawing even if the cell cursor message is "EMPTY".

Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I456bc757725c9bfaede20068cf165310712488e7
2023-10-10 12:43:17 +03:00
Pedro Pinto Silva 87ac1f7e9a Update l10n files for Weblate
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I9c94dace88f1211491d4b8285df9d0f3653ff8f0
2023-10-10 11:31:28 +02:00
Nguyễn Hoàng Minh 0cfbdff642 Translated using Weblate (Vietnamese)
Currently translated at 100.0% (467 of 467 strings)

Translation: Collabora Online/Help
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/vi/
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Iaa8bd53765570700596eacf7c6d7c530456329ad
2023-10-10 11:27:37 +02:00
Nguyễn Hoàng Minh 9f9a520485 Translated using Weblate (Vietnamese)
Currently translated at 100.0% (526 of 526 strings)

Translation: Collabora Online/UI
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/vi/
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I706542c7e0f5b10d552ade642f8971cb88e25c0c
2023-10-10 11:27:28 +02:00
Martin Srebotnjak e38fe16951 Translated using Weblate (Slovenian)
Currently translated at 100.0% (526 of 526 strings)

Translation: Collabora Online/UI
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/sl/
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I22264a42e81b4824c2e6368fb9d7d412217b816a
2023-10-10 11:27:20 +02:00
Rizal Muttaqin addea61908 Translated using Weblate (Indonesian)
Currently translated at 100.0% (526 of 526 strings)

Translation: Collabora Online/UI
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/id/
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Iae1d21d0f2d85e6ad39958bbe1d1b445c8be3494
2023-10-10 11:27:10 +02:00
Yaron Shahrabani 99825d901c Translated using Weblate (Hebrew)
Currently translated at 100.0% (526 of 526 strings)

Translation: Collabora Online/UI
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/he/
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I52b71fb60a9dfaa9fc05addcbfe91c58cf6bf22e
2023-10-10 11:26:58 +02:00
Adolfo Jayme Barrientos 140bb00917 Translated using Weblate (Spanish)
Currently translated at 100.0% (526 of 526 strings)

Translation: Collabora Online/UI
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/es/
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I63719b2b2a3118d8adb3f72e3ee1823d1ed20254
2023-10-10 11:26:42 +02:00
Eloy Crespo 4529c2291d Translated using Weblate (Spanish)
Currently translated at 100.0% (526 of 526 strings)

Translation: Collabora Online/UI
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/es/
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I9409646d59a1139cfe63ee2944fb24b3a94e3236
2023-10-10 11:26:35 +02:00
Rob Pearson 6c6f6bc8fd Translated using Weblate (English (South Africa))
Currently translated at 100.0% (526 of 526 strings)

Translation: Collabora Online/UI
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/en_ZA/
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I5f4990980ecee17a5beb9b2edb39a33dffdecd14
2023-10-10 11:26:26 +02:00
Rob Pearson 28c60c03d3 Translated using Weblate (English (New Zealand))
Currently translated at 100.0% (526 of 526 strings)

Translation: Collabora Online/UI
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/en_NZ/
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ice7c509eab6e892d9c979b7e5c30f5a5bc818313
2023-10-10 11:26:17 +02:00
Rob Pearson f17fe3ca22 Translated using Weblate (English (United Kingdom))
Currently translated at 100.0% (526 of 526 strings)

Translation: Collabora Online/UI
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/en_GB/
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ic89da9ce4e47459f6628d0e203fd6edb33497029
2023-10-10 11:26:07 +02:00
Rob Pearson fe1d6ddbcc Translated using Weblate (English (Australia))
Currently translated at 100.0% (526 of 526 strings)

Translation: Collabora Online/UI
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/en_AU/
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Id3576206dece929eaa6c2f66743b19baf3c34baa
2023-10-10 11:25:58 +02:00
Stanislav Horáček 8418452876 Translated using Weblate (Czech)
Currently translated at 100.0% (526 of 526 strings)

Translation: Collabora Online/UI
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/cs/
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I183bd565756f8f147e86c0cab4f17e8ea7a687a2
2023-10-10 11:25:48 +02:00
Adolfo Jayme Barrientos dfbd5fd4a7 Translated using Weblate (Catalan)
Currently translated at 98.0% (516 of 526 strings)

Translation: Collabora Online/UI
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ca/
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ib887d3401404c5f4e7b9530888e5cf89bf4ff9cf
2023-10-10 11:25:33 +02:00
Gökay Şatır 717bc2ba0a Translated using Weblate (Turkish)
Currently translated at 100.0% (526 of 526 strings)

Co-authored-by: Gokay Satir <gokaysatir@gmail.com>
Co-authored-by: Gökay Şatır <gokaysatir@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/tr/
Translation: Collabora Online/UI
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I26c0c65582054188315033fd768f9e337d8554cb
2023-10-10 11:12:41 +02:00
Leif-Jöran Olsson c298f81d81 Translated using Weblate (Swedish)
Currently translated at 100.0% (526 of 526 strings)

Co-authored-by: Leif-Jöran Olsson <info@friprogramvarusyndikatet.se>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/sv/
Translation: Collabora Online/UI
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I85e961a29166bc6bfeb98c74d7eff053668b2e8b
2023-10-10 11:12:31 +02:00
Mike Kaganski 3e8b90b90b Translated using Weblate (Russian)
Currently translated at 100.0% (526 of 526 strings)

Co-authored-by: Mike Kaganski <mikekaganski@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ru/
Translation: Collabora Online/UI
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ia58f78785481bef64f6e9e417ed743950b27837c
2023-10-10 11:12:22 +02:00
Pedro Pinto Silva b13f25e043 Translated using Weblate (Portuguese)
Currently translated at 99.2% (522 of 526 strings)

Co-authored-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Co-authored-by: Pedro Silva <pedro.silva@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pt/
Translation: Collabora Online/UI
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I80968433b35ec5d9e32df4670c465290448514d0
2023-10-10 11:12:10 +02:00
Matthaiks d48856ad5e Translated using Weblate (Polish)
Currently translated at 100.0% (526 of 526 strings)

Co-authored-by: Matthaiks <kitynska@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pl/
Translation: Collabora Online/UI
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I22c4f1936dbb1aca7a0d65d32600daa140672a38
2023-10-10 11:11:55 +02:00
Sebastiaan Veld 3c6db2edd9 Translated using Weblate (Dutch)
Currently translated at 100.0% (526 of 526 strings)

Co-authored-by: Sebastiaan Veld <sebastiaan.veld@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/nl/
Translation: Collabora Online/UI
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Id58ef3bb4fa4a26a2ce0b80af38859a5f8b68656
2023-10-10 11:11:43 +02:00
Andras Timar 6067633c44 Translated using Weblate (Hungarian)
Currently translated at 100.0% (526 of 526 strings)

Co-authored-by: Andras Timar <andras.timar@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/hu/
Translation: Collabora Online/UI
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I554abec8d43e1ed0164251ec616000d018847c4d
2023-10-10 11:11:33 +02:00
Darshan Upadhyay 0f0fd78182 Translated using Weblate (Hindi)
Currently translated at 27.4% (128 of 467 strings)

Translated using Weblate (Hindi)

Currently translated at 30.4% (160 of 526 strings)

Co-authored-by: Darshan Upadhyay <darshan.upadhyay1188@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/hi/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/hi/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Icbbccaa4847a0ede18e0246354bebddd4a70fd96
2023-10-10 11:11:24 +02:00
gallegonovato d26310a866 Translated using Weblate (Spanish)
Currently translated at 100.0% (526 of 526 strings)

Co-authored-by: gallegonovato <fran-carro@hotmail.es>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/es/
Translation: Collabora Online/UI
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I91551233ae759aac9a4c2904b5b4901b65307627
2023-10-10 11:11:09 +02:00
Skyler Grey ee57d3af74 Fix tile dumping when /tmp is not temporary directory
On iOS, each app has its own sandbox which has a temporary directory.
The FileUtil::getSysTempDirectoryPath() method successfully gets this
directory and we create a tiledump directory under it. Sadly, we then
try to write to /tmp regardless of where the temporary directory is.

This commit makes us also write our file in the directory returned by
FileUtil::getSysTempDirectoryPath()

Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
Change-Id: Ic8425cb94d1d85ac9c77212eb84d0ca7c46cd34e
2023-10-10 08:24:21 +00:00
Rash419 3c20783ac6 admin: added id field in verifyauth msg
- this id will help to identify which adminClusterOverview socket
  has sent verifyauth message from controller

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: Ic09b33c9eb2c0072f84b7147acc673031dbac0d8
2023-10-10 13:10:44 +05:30
Pedro Pinto Silva f96622bcd4 Collapse tabs: Remove extra unused localized string
`command` has `Collapse Notebook Bar` that not only is incorrect (we do
not call tabbed view that name anymore) plus it's never used. So, no
need to give extra work to translators when this is not used in the
generated code.

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ic021a7f48ef653bebd65562f6d6b546947e406d4
2023-10-09 17:02:48 +02:00
Pedro Pinto Silva c2ce164edd Fix Pencil button's title and aria-label attributes
"Enter editing" what? Better: "Enter edit mode"

Even better, let's start with the action verb and make it shorter:
"Edit document"

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I41ea52532302fa903e9d31398baffdce904cf832
2023-10-09 17:02:48 +02:00
Rash419 812212d598 docker: cleanup
- remove start-collabora-online.pl from-source

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I4cc477733e8bd6a2c736e16bcb2d75aa295e9895
2023-10-09 19:06:51 +05:30
Caolán McNamara 9ae7c294bc cid#318975 help coverity see assert
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Ibf735e47362715d442c0122b9a29a0225d1cdc9a
2023-10-09 10:24:11 +02:00
Caolán McNamara 15c85f3b41 cid#318938 silence Unchecked return value from library
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Ic2770254b709fcadcbb551b8b37382541be06902
2023-10-09 10:24:11 +02:00
Andras Timar 9b426db674 Update l10n files for Weblate
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I709255950dc050b9a10fc36da1665fce5a5c41e3
2023-10-09 09:58:50 +02:00
BY feea22acb1 Translated using Weblate (Chinese (Simplified))
Currently translated at 71.4% (371 of 519 strings)

Co-authored-by: BY <alucard_118@163.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: I1495ffe3c0bdfb86e7244696ab368cb19e8d3f20
2023-10-09 09:56:06 +02:00
lpwxyz 69308ff09c Translated using Weblate (Portuguese (Brazil))
Currently translated at 95.3% (495 of 519 strings)

Translated using Weblate (Portuguese (Brazil))

Currently translated at 89.5% (418 of 467 strings)

Translated using Weblate (Portuguese (Brazil))

Currently translated at 94.6% (491 of 519 strings)

Co-authored-by: lpwxyz <lpw@tutamail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/pt_BR/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pt_BR/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I5643936930e886eedcbf59ae1f3f49a75119a3a0
2023-10-09 09:56:06 +02:00
Gökay Şatır 39a983ecfd Ignore temp file in the repo.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I9c3c315f13cb419ae4e51d962ca36c245d9dcdbd
2023-10-09 00:10:20 +01:00
Andras Timar 820930f8b2 Updated uno command translations
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I9093514c9cd1fb3eb0f885b8625fac7b349f4250
2023-10-08 18:25:33 +02:00
Gökay Şatır c3444b7a5e German keyboard shortcuts:
* Replace CTRL + SPACE with CTRL + ALT + S for search.
* CTRL + SPACE is used for resetting the character properties.

Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I99ed1e99cf7e1ea23344961d36cce42d72cbba5f
2023-10-08 18:35:18 +03:00
Rash419 246e0eb191 fix: docker failed to initialize when aliasgroups is passed
wsd-00001-00001 2023-09-07 06:57:38.412560 +0000 [ coolwsd ] FTL  Failed to initialize COOLWSD: Syntax error: Cannot convert to boolean: | wsd/COOLWSD.hpp:513
Syntax error: Cannot convert to boolean:
<shutdown>-00001 2023-09-07 06:57:38.413335 +0000 [ coolwsd ] SIG   Fatal signal received: SIGABRT code: 18446744073709551610 for address: 0x6400000001

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I446bc9b2c2172d820da2ea148eefd1d7f964be80
2023-10-07 16:33:54 +05:30
Caolán McNamara 1f9c1885b9 cid#323357 silence String not null terminated
it's a good catch, but inotify man page says it can't happen

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I350f8fad2aa8308563ccb4f9f3ec9b7850a72fa7
2023-10-07 08:35:04 +00:00
Caolán McNamara 01c3a71e6c remove stray libsimd.a
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I5a1f1d5c045bfc384248c2d2f6de8542bd428e0e
2023-10-06 22:10:00 +01:00
Rash419 e290d07edb indirection: use errorcode to map errormsg and translate it
Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I779bfc658c54255a675e3a047ed371e7e0586327
2023-10-06 15:52:21 +05:30
Michael Meeks 71213b675e logging: allocate temporary buffer on the stack.
Change-Id: I1805db7c9c6bc6c66afbb912a16e01f6bf0f2699
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2023-10-06 09:11:15 +02:00
Gökay Şatır b5af4e0c10 Add CTRL + ALT + O as open document shortcut.
* Sends "UI_OpenDocument" message to integrator.
* The post message needs to be handled by the integrator.

Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: If57bdd1f7db496766fbb7082ffeff855aba4e97c
2023-10-06 10:10:59 +03:00
Gökay Şatır aa0c4dbc7a Added CTRL + ALT + N shortcut.
* This sends the UI_CreateFile postmessage to integrator along with the document type.
* Integrator should handle the message.

Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I75d78a2d37876af7233025233ab7f1b3515442a3
2023-10-05 20:11:49 +03:00
Pedro Pinto Silva e2b64a71a7 CSS: Removed unused document-signing-bar
We no longer create that w2ui bar and we also have removed any element
with that id or parent from cool.html.m4 with that name. So, this can
be removed.

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I26c9e66de44fe8a8f8ad785031c640d32960a350
2023-10-05 15:07:24 +02:00
Andras Timar 4aff3d8be2 remove signing-identities.html
it belonged to the removed unused document signing code

Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Idf57b30a508381e02c8d62196de38c828cd77f2f
2023-10-05 15:07:24 +02:00
Pedro Pinto Silva 99b423eac2 Tabbed: Calc: Scroll indicator is 3 pixels misaligned
The scroll indicator set with an absolute position ends up being
positioned in the 0 y coordinate. Since the wrapper has a top padding
of 3 pixel it means the scroll indicator is not 3 pixel off.

Also, and since these measurements are set in the CSS (the height of
the wrapper and the padding of the other wrapper), better to just move
everything to the CSS and avoid unnecessary inline styles.

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Icc1e51b2590ee27b318f9e4c3d550183b08cb49d
2023-10-05 11:36:14 +02:00
genofire 1cd9c753f2 fix(ci): do not set helm to current github-release
Signed-off-by: genofire <geno+dev@fireorbit.de>
Change-Id: I2658fdefde7e40ab46cae2b9a3c0bfcac4ce626f
2023-10-05 14:50:36 +05:30
Rash419 72da1dccaf docker: fix all aliasgroup env variable values added to blocked list
Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: Id7480ab88564965cc7aba34c5020daaf18259815
2023-10-05 11:17:49 +02:00
Caolán McNamara 0ba51f81e7 promote quarantine log message from debug to warn
and tidy the message wrt crash after/before change

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Ie4b4b700e7b1e029d077e5726bd35ff4e769fb6d
2023-10-04 17:29:25 +01:00
Caolán McNamara 5b085dec8e quarantine document after an unexpected disconnection from kit
so we capture crashes that happen while a document loaded before
any modifications could take place.

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Id8b9ae3e6921aa0be770dbe1ad8fcf9b53a85e8d
2023-10-04 17:29:25 +01:00
Caolán McNamara 14d4d18701 don't immediately delete jails where there was a crash
skip deleting those jails for a few minutes to allow
the DocumentBroker to quarantine the document

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I781eeb77d491fe82a0bfe42eb09439c88f2454b7
2023-10-04 17:29:25 +01:00
Caolán McNamara ec10114f2f quarantine of unmodified original file doesn't succeed
Error while copying from foo.ods to /opt/cool/quarantine/1696408774_5231_blah_foo.ods: Failed to open src foo.ods| common/FileUtil.cpp:162

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I49143f4d7df0c4c1494f28f8f6fe03d8cb045ab0
2023-10-04 17:29:25 +01:00
Caolán McNamara 3e67acd361 cid#318942 Unchecked return value from library
use a more standard way to zero the _sb stat struct

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I98973affe6b96a5779cfc3eef3c349019c34d0a0
2023-10-04 09:57:39 +02:00
Caolán McNamara cceebfed94 cid#323636 Uninitialized pointer field
and use online standard member prefix

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Ia7681870128185ecba27da0e344912e393e9114b
2023-10-04 09:57:39 +02:00
Caolán McNamara d1e00dbe1b return false early on 'null' origin
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I9cdb26c3d2787beac6e2344d5f768e0fa6993bd8
2023-10-03 18:03:43 +01:00
Caolán McNamara 9a28f5ef71 Fix JSON syntax error for some Hebrew strings
same fix as:

commit 4ab2810fa5
Author: Tor Lillqvist <tml@collabora.com>
Date:   Tue Apr 5 16:20:35 2022 +0300

    Fix JSON syntax error for some Hebrew strings

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Ic25bffa209cb7875756f3474547585ae7e69e4ba
2023-10-03 16:10:28 +02:00
Caolán McNamara 672f3cee2c rework URP to use a dedicated channel
Instead of fighting the SolarMutex to get the messages
processed by the main loop. Simple and no additional
threading, mutexes etc.

messages from the external uno client are just
written to URPtoLoFD and the core reads from that

messages to the external uno client are written
to URPfromLoFD by core, that fd is in poll, and
activity there triggers a read by the DocBroker
to send it to the external uno client.

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Ib1f0a0d5fb5ab22eee476d5d740b290c51de59dc
2023-10-03 10:15:55 +01:00
Skyler Grey e6d9c1f87c Add support for URP messages in COOLWSD
- Allow COOLWSD client sessions to forward messages with the prefix
  'urp' to the child, and return messages with 'urp:' to the client,
  communicating with binary
- Make COOLWSD child sessions use the FunctionBasedURPConnection from
  https://gerrit.libreoffice.org/c/core/+/155100
  (core change ID I2bda3d0b988bef7883f9b6829eeb5b7ae8075f27) to start a
  new URP session
- Make COOLWSD child sessions submit messages to this URP session,
  stripping and adding the 'urp' and 'urp:' prefixes so the Java client
  from https://gerrit.libreoffice.org/c/core/+/154680
  (core change ID I91ee52922a24688a6b94512cb7e7bc760bf25ec9) can
  use the connection (and to avoid interference with any other websocket
  messages)
- Add a COOLWSD option for enabling/disabling URP given the security
  implications around allowing anyone to write URP (e.g. URP lets you
  run shell commands so a mallicious actor can take over the child
  session)

Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
Change-Id: Idadfe288a78cfd72b01253dfdade150d506e3f05
2023-10-03 10:15:55 +01:00
Andras Timar e591b1e08b Update translations from LO core
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ie7f99deb55a7c1fcfffcb6fd05423b66a7eeb7a5
2023-10-03 11:07:44 +02:00
Cosmin Humeniuc 1d25188821 Adapt locorestrings.py for Python 3
Signed-off-by: Cosmin Humeniuc <cosmin.humeniuc@1and1.ro>
Change-Id: I0328dc4cb97aa143fc2911255817b7cc636b5bec
2023-10-03 10:58:39 +02:00
Gabriel Masei bd9266f6fa Calc: fix Format->Sparkline menu items in notebookbar
Signed-off-by: Gabriel Masei <gabriel.masei@1and1.ro>
Change-Id: Ic51d3d020568e4c9488cc8be71ea446e66227a25
2023-10-03 04:26:13 -04:00
Balázs Varga (allotropia) 99c14f99e1 WASM: fix wasm build errors
Signed-off-by: Balázs Varga (allotropia) <balazs.varga.extern@allotropia.de>
Change-Id: I104e98ae1ddc64af55e4df0ccb301d5e88e0288d
2023-10-03 10:18:46 +02:00
Skyler Grey a8e97f6220 Fix tablet-mode tabs due to read-only mode change
After 5520965b15, tablets no longer had
the context menu registered as they always start in read only mode. This
commit moves the check for tablets so it is when the long-press is being
triggered.

Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
Change-Id: I60da2482b711c90676ae49c8b3134d02a6cd1b02
2023-10-03 09:40:03 +02:00
Skyler Grey 0dcb6e04c7 calc: Show tabs context menu on a tablet's press
Previously, tablets were treated as desktop devices for the purposes of
the calc sheet context menu. Unfortunately, this requires a right-click
to open the menu: a long press won't do.

To reproduce before this commit:
- Open calc on a tablet
- Open a spreadsheet
- Long press on one of the tabs at the bottom
- Notice how there's no menu, so no way to rename/move sheets/delete
  sheets etc.

On a proper mobile device (i.e. a phone) a mobile wizard opens allowing
you to perform these operations.

This commit makes calc trigger the context menu if you're on a tablet
and long press on one of the sheet buttons. Notice how it wouldn't be
right to simply apply the mobile behavior to tablets as everywhere else
they use regular dialogs and context menus rather than mobile wizards.

Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
Change-Id: Ibf25b0d76d8487e582ed6a6cf1f82467869453f6
2023-10-03 09:40:03 +02:00
Miklos Vajna a0944a0b5e Fix the --enable-fuzzers build
Failed with:

	fuzzer/HttpEcho.cpp:111:17: error: 'removeSockets' is a private member of 'SocketPoll'

And:

	kit/Delta.hpp:208:(.text._ZN14DeltaGenerator14DeltaBitmapRow7initRowEPKjj[_ZN14DeltaGenerator14DeltaBitmapRow7initRowEPKjj]+0x127): undefined reference to `simd_initPixRowSimd'

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: I6d980698b43ca3545d9eae5f40eabaf4e442ca17
2023-10-02 20:15:42 +01:00
Ashod Nakashian 7d0276c394 killpoco: replace LocalDateTime
This replaces Poco's LocalDateTime, which
took a lock, called tzset each time, and
did unnecessary Julian-to-Gregorian conversion.

The result is a standards-compliant implementation
that is about an order of magnitude faster (0.3 us
vs 3 us on average).

Change-Id: Iced73056a9f9e6497106224c351110113e21d8d6
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-10-02 20:14:53 +01:00
Ashod Nakashian c5d47b4b20 wsd: log: verify that all threads are stopped
This verifies that in debug-builds the log
thread-local buffers are destroyed, and
therefore the threads are gracefully stopped.

This is necessary to make sure no log entries
are lost by the time we exit the process.

Change-Id: I0db20835109e92d8758a5c4eec6845cd240da025
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-10-02 20:14:53 +01:00
Ashod Nakashian 483a602f93 wsd: log: BufferedConsoleChannel with thread-local buffer
This gives each logging thread its own buffer.
We then guarantee that all threads exit clearly
and flush their buffers.

For now, we don't flush buffers when fatally signaled,
primarily because of technical complexities.
Specifically, we don't know if we have a Poco logger
or our Buffered Logger, and there are a host of
threading and signal-safety concerns. To be revisited.

Change-Id: I39674a25feeee3aabd87c8b707ea1adf3c039817
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-10-02 20:14:53 +01:00
Ashod Nakashian 150663cc28 wsd: stop the rendering thread pool before exiting
Change-Id: I8a084ee1fd583f6c37ba4ca8c1ebf8abe74288a2
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-10-02 20:14:53 +01:00
Ashod Nakashian 370b649b3e killpoco: own implementation of ColorConsoleChannel
This replaces Poco's ColorConsoleChannel with our
own, which is simpler and more efficient. It also
doesn't break log entries arbitrarily (only when
the entry is exceedingly long).

Change-Id: I46ba58d35bc913ca83fe97aaaa958c03b81ae44e
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-10-02 20:14:53 +01:00
Ashod Nakashian 066af307ba killpoco: own implementation of BufferedConsoleChannel
This is a buffered version of our ConsoleChannel.

Change-Id: Ie1728e136376fdf82ec28010b67d8344fd812768
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-10-02 20:14:53 +01:00
Ashod Nakashian 57a9cf053a wsd: support EnableExperimental in Log
Now that we depend on EnableExperimental in Log.cpp,
we must define it in the standalone binaries that
otherwise don't define it.

Change-Id: Ic56032eaf6df7d0d5d707a60eeddf2d75c9041ac
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-10-02 20:14:53 +01:00
Ashod Nakashian a00fbae7c5 wsd: log: retry on write failure and flush
Change-Id: I7417a74959a52e2a079bfe4502ed238d1517ea60
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-10-02 20:14:53 +01:00
Ashod Nakashian 56fd825187 killpoco: our implementation of ConsoleChannel
This replaces Poco's implementation of ConsoleChannel
which has a horrible issue with writing the new line
in a separate syscall. This often results in multiple
log entries on the same line and other horrors.

This implementation does no buffering.

Change-Id: I8d18de1313d8f160270ec04552ba7e7b69d2363e
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-10-02 20:14:53 +01:00
Ashod Nakashian c936f0e713 wsd: set up signal handlers early
There are very rare cases (with unit-tests)
where due to early race-conditions a signal
is raised. This helps us catch those early
cases, before the Poco config and init are
executed.

Such a case exists with tzset() and setenv().
While getenv() is thread-safe, setenv() is
not. When tzset() calls getenv(), it can
race with setenv() from a different thread.

Since we only call setenv() during
initialization, this risk is only at startup.

Change-Id: I5e3e593a5d93dd9335d8dfde932f764a45c975c1
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-10-02 20:14:53 +01:00
Caolán McNamara 131d503b93 reduce cost of TileCombined::parse
perf reported 1% of time in collaborative multi user test
on 2023-09-14 was spent in TileCombined::parse.

generic-ize and reuse the TileDesc::parse approach for
TileCombined::parse to avoid need for std::unordered_map

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Iadfc2001e298d8f4d46200c8488f0eb4cd8734c2
2023-10-02 20:05:07 +01:00
Szymon Kłos c713e0b728 mobile: allow scroll outside data area
mobile screen is very small and there was not
enought space to scroll to the place where we "extend"
scrollable area, this caused that in spreadsheets we
were not able to scroll outside last used cells

- this patch make us able to scroll few lengths of screen
  outside data for non-desktop devices to fix that issue

- add threshold for automatic pan after bounds has been changed
  to avoid jumping of the screen back

- use twips everywhere

regression commit 48ec2f5925
Limit scrollbar range to used area in the spreadsheet

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Idf5890764462947d895df7f65b30a1d82dd64067
2023-10-02 19:44:09 +02:00
Caolán McNamara 3b3b62c95c remove unused used method
which is a little dubious anyway

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: If12bd7807ca5f2cff0ca05cad4948962b0cf6688
2023-10-02 17:33:14 +01:00
Timur eee4203bac Translated using Weblate (Bosnian)
Currently translated at 13.8% (72 of 519 strings)

Co-authored-by: Timur <timur@libreoffice.org>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/bs/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I9d4bed1e7e144bca1f5b1a7c6439240c7b3725bb
2023-10-02 16:56:49 +02:00
Gökay Şatır 6bf3c11c0c Impress shortcuts:
* Add CTRL + HOME and CTRL + END for selecting the first or last slide when slide sorter is focused.

German shortcut updates:
* F12 for save-as.
* SHIFT + F9 for showing / hiding the grid.
* SHIFT + F3 for changing the character cases.
* SHIFT + F5 for starting the slide show with the current slide.

Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: If9eb59377af29bebfe89fa42ea9d5afdd1bf2335
2023-10-02 17:56:27 +03:00
Szymon Kłos 18c02410e6 mobile: fix snackbar button position
This fixes regression from:
commit 07c3538589
mobile-wizard: create separate window container

The snackbar with action button like "leave feedback | ok"
or "we can reconnect | reload" had buttons below text
what looked bad and it was not possible to click

We introduced separate windows inside main
mobile-wizard-content container which have class
.mobile-wizard-content - let's use the same rules
as before for popups

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I506aaf34741fb1ff879c0c5c44a5958d6be9912c
2023-10-02 14:55:23 +02:00
Szymon Kłos 1f11d328a1 mobile: fix snackbar text
This fixes regression introduced in:
commit b6c26bee91
Mobile sidebar header layout #6861

- remove additional top border
- make line height regular so text will fit into snackbar
  without scrollbar

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I72a1e7121d58a7583bd4efce9728c25231c7d8de
2023-10-02 14:55:23 +02:00
Szymon Kłos 39399a93c5 Fix typeerror on key event in interaction handler dialog
This fixes error:
Map.Keyboard.js:364 Uncaught TypeError: Cannot read properties of undefined (reading '_docType')
    at NewClass._globalKeyEvent (Map.Keyboard.js:364:3

When we open document which requires some interaction from user before
load and we press any key - that error appears. It can be seen with
macro warning or broken file warning.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ib7b3681d047dd61ffde0364ad40a4d542a5fd548
2023-10-02 13:23:25 +02:00
Gökay Şatır 67bde47cee Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I4dd197666db5f85e6ba750857eba4ef6eb51d646

German shortcut changes for Calc:
* F12 for save as.
* SHIFT + F3 for function dialog.
* SHIFT + F2 for new comment.
* F9 for re-calculate.
* F5 for focusing on address input.
* ALT + 0 for format cells dialog.
* CTRL + SHIFT + L for auto filter.
* CTRL + F1 for expanding / collapsing notebookbar.

Change-Id: If9bcf4f696f4575061443423645726860d14eafe
2023-10-02 11:45:45 +03:00
Rash419 9d6b1d148b don't request new tiles unnecessarily on canonicalidchange
- it applies for 2 cases:
1. when document is loaded for the first time document already has
tiles of respective theme
2. when Kit loads the document it sends canonicalidchange  unconditionally
(5520965b15/kit/Kit.cpp (L1708))
we don't need to request new tiles for that also

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I42cdc5a03e70c3d3d653f3124d3d5ed9382e22c0
2023-10-02 13:29:25 +05:30
Patrick Luby 4b71e988b4 Fix compiler warnings when building on macOS Sonoma
Signed-off-by: Patrick Luby <plubius@neooffice.org>
Change-Id: I7e88e0ba272fc00892059c96a2cd0237657e23b9
2023-10-02 08:50:52 +01:00
Caolán McNamara b25d7617d6 cid#318824 avoid Calling risky function warning
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I871035b7879157467b97e5610a38d0b53f934766
2023-10-02 08:30:42 +02:00
Caolán McNamara ed59e9e3b0 cid#318948 Unchecked return value from library
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I543f7150c23fe6a6cffc3333754e413ee4c190a4
2023-10-02 08:30:42 +02:00
Caolán McNamara dd2f0e26f6 cid#318881 Unchecked return value from library
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I6c02e392a96717c4ebc6f50e56bcec553aa328bb
2023-10-02 08:30:42 +02:00
Caolán McNamara 14dce568f0 cid#318836 Resource leak
in error branches dlclose unusable dso, leave it open on success

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I3a2eafceb573cc59ada922d98ae6a9b421d6accc
2023-10-02 08:30:42 +02:00
Andras Timar 16306b4966 Translated using Weblate (Portuguese (Brazil))
Currently translated at 91.5% (475 of 519 strings)

Co-authored-by: Andras Timar <andras.timar@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pt_BR/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I7b5d91997166b81d7a5bc608df80f8ee5b1a7474
2023-10-01 13:42:25 +02:00
Aron Budea c068bce4cc Translated using Weblate (German)
Currently translated at 99.4% (516 of 519 strings)

Co-authored-by: Aron Budea <aron.budea@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/de/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I363c27e2dcea196f43fab2dfa5dae611359716dc
2023-10-01 13:42:25 +02:00
ButterflyOfFire 05eecc19c0 Translated using Weblate (Arabic)
Currently translated at 58.1% (64 of 110 strings)

Co-authored-by: ButterflyOfFire <boffire@users.noreply.hosted.weblate.org>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/android-app/ar/
Translation: Collabora Online/Android app
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ia53b05b21e1841b31724e1063d41fcf0c5f26c6b
2023-10-01 13:42:25 +02:00
Skyler 9ab75b549e fix broken forum link in README
The forum link in the README is missing https://. This commit fixes that

Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
Change-Id: Ica0a29ecba69e68b201c07b76ef6fd57822fc3ac
2023-09-29 18:12:05 +02:00
Gökay Şatır dc75c1e8bf Add note for the CTRL+SHIFT+L combination.
Use sendUnoCommand insted of sendmessage.

Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: Id123864d897a2838066c97bb649c1a355b44dde1
2023-09-29 17:14:09 +03:00
Gökay Şatır 6d65c4db70 German shortcuts:
Assign CTRL+F3 to change upper/lower case letters.

Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: Ib612ba69ec19abce0164d6273f8ee83124c0c455
2023-09-29 17:14:09 +03:00
Gökay Şatır 48eb5f5811 Assign GoToPage function to F5 in Writer for German.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: Ia82d191d9445bfd8cf08e8011f9a47a17876235a
2023-09-29 17:14:09 +03:00
Gökay Şatır 131586f757 Assign save-as shortcut to F12 for German.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I94dd9ebe21be34d94db6b950174098ab1a56d799
2023-09-29 17:14:09 +03:00
Gökay Şatır f4577f91b6 German key bindings (Writer):
* Seperate ctrl+k and ctrl+shift+k.
   * Add ctrl+space for search.

Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: Iee5f60ded801505aef11962e5950607dca29b431
2023-09-29 17:14:09 +03:00
Gökay Şatır 1520d8ba67 Add navigator shortcut to keyboard handler.
We are adjusting the sidebar when we send sidebar commands. So i couldn't add the .uno:Navigator command to core side.
It tries to open the navigator but our side should also be ready.

In the future, we can make adjustments to allow to use core side shortcuts directly.

Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I273b7c2cacce6ed0c8f20f672ba9ba7daa29cfd5
2023-09-29 17:14:09 +03:00
Pedro Pinto Silva b7a4b13970 Fix main-nav elements being treated as generic primary, secondary btn
With the recent (and very welcoming) changes to steer away for generic
elements such as div and instead use more appropriate/semantic
elements such as button we ended up applying new rules to main-nav
buttons. These rules were only intended to be apply to classic
buttons (rectangle + text inside). Result:
	- userlistheader even if invisible was getting a background
	on mouseover
	- all <button> elements were getting extra padding and margin

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ic774fd342df5483cd7210b85c4847688914b28f2
2023-09-29 10:26:23 +02:00
Pedro Pinto Silva 0a7e0fe65d userListHeader: remove legacy padding and margin
userListHeader, element present in compact and tabbed view to display
users present in the document (avatars), seems to suffer from a odd
alignment and duplicated usage of white space.

Best to remove any hard coded pixel that seem to come from legacy css
and rely on flex if necessary. Also the surrounding elements (doc name
and sidebar icon) already have save space around so they will never touch

on top of that this was having different result than "expected" when
using a different RTL system (since we were not using logical css properties)

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Iab0869080231ac734c087afeee97d9cd0243030d
2023-09-29 10:26:23 +02:00
Pedro Pinto Silva d0b4229aff Tabbed view: Fix main-nav for small screens
Make tab's size dynamic
 - Font-size
 Instead of using always a font size that looks nice in a wide screen
 but that  will look cramped and  without space in a narrow window:
   - change it's size depending on  viewport within a safe range
   - new css vars added and respective comment in the code
   - Also we use clamp css function but we also add a fallback for old
   browser using the generic calc css function
 - Padding: allow to get lower levels when the viewport is reduced

Hide document-header when the window is narrower than 800px
- this frees up space and also benefits tablet us case where user uses
2 apps side by side

Document-title bar
 - Hide document name if the window is too small. This makes it
 possible to fit all buttons without horizontally scrolling the main-nav
 - Note user can always access the rename feature by going to File > Rename button
 - Remove any hard coded pixel positioning and instead rely solely on
 flex layout

Main-nav
 - should always occupy (width wise) 100% of the viewport. We want
 always the far left icons be always at the end of the viewport

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I58843f40e21d26f955422d6159b5777144b684fd
2023-09-29 10:26:23 +02:00
Pedro Pinto Silva 86623afddd Fix tabbed view top bar not being scrollable sometimes
Before this, when using a narrow window, the top bar wouldn't be
scrollable until we would press the avatar list. Also when switching the
modes it would becomes unscrollable yet again.

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I01b2afcb125a2addf9847e2581f9498105b54b00
2023-09-29 10:26:23 +02:00
aarsh21 5520965b15 calc: hide spreadsheet context menu in readonly mode
Signed-off-by: aarsh21 <aarshpersonal21@gmail.com>
Change-Id: I541d076a457daa0e01b660e5cd91e468a22aa09d
2023-09-28 10:57:37 +02:00
Andras Timar 2e86ea467e docker: use env vars to configure the container
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ib6267c05e687a64d5a2e4df2a1d42c33e001f999
2023-09-28 10:54:14 +02:00
Andras Timar cc628feda7 docker: do not generate WOPI proof key, it's better to mount it externally
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I4141546c4ab281dfe749b16b119eb9de46fd9e67
2023-09-28 10:54:14 +02:00
Andras Timar 6789c663d2 docker: use internal inotify implementation instead of inotifywait command
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I74e16827bd7033fe3a2282da562b35cc9bfc3eb4
2023-09-28 10:54:14 +02:00
Andras Timar 28737d8272 docker: we do not have to set SAL_LOG here, because it's set in coolwsd.xml
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I80bdc3a2b8fa6f571624395ed8c1917eb241b0cd
2023-09-28 10:54:14 +02:00
Pedro Pinto Silva 9a116dd6d0 Calc: clone formatting cursor has misaligned hotspot
Before:
"When I use the "clone formatting" tool, I have to point the handle of
the brush icon to the cell I want to clone rather than the
brush. Logically I would expect to point the brush part to the cell I
want to clone, but because the handle seems to be the point at which
cloning occurs, I end up cloning the cell above and not the actual
cell I want to clone."

Fix vertical coordinate so the bottom of the hotspot is in the brush
and change the outdate comment WRT the png in question.

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I69e0935542c068016366a26d8100866c23ca17dc
2023-09-27 19:44:54 +05:30
Szymon Kłos 75cbb26305 Correctly extract file name for exported file
We assumed in the code that LO will return in a
LOK_CALLBACK_EXPORT_FILE url starting with "file:///tmp/"
But that is not true for all the cases. Let's use
more generic approach to extract file name.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ib415f129b10c7e54172536f43a820e4bd3e9bfd2
2023-09-27 15:44:23 +02:00
aarsh21 d9ecc40ee9 fix: close userListSummary popover on click
Signed-off-by: aarsh21 <aarshpersonal21@gmail.com>
Change-Id: Idc467c33e690c6e13023ad022b7cf57380d32ff3
2023-09-27 14:01:35 +05:30
Caolán McNamara 2f9b0f8d62 cid#323356 Resource leak
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: If04703571b2e20c59bd5cd5fa271cb6859fb9887
2023-09-27 10:25:28 +02:00
Caolán McNamara c28dd7f08a cid#323355 Logically dead code
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Ie2909237e604a4815ba110281335f039c7d792da
2023-09-27 10:25:28 +02:00
Caolán McNamara 6208b37a32 cid#318945 Unchecked return value from library
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I37cb5ddd7a1ce2dd1357738130f62950e76bbc6a
2023-09-26 16:08:09 +01:00
Szymon Kłos 1ac8e8f276 postmessage: fix Get_Export_Formats
This fixes regression in Get_Export_Formats where we
didin't report possible formats when in coolwsd.xml
option "group_download_as" was set to false.

Regression comes from:
commit 939a7a0301
Simplify notebookbarwriter and tab page containers.

Where JSON for File tab was incorrectly built and
some of the entries were skipped.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I10c06f28dd2b3884bdab8389ea121c94d0ba92d8
2023-09-26 16:45:16 +02:00
Szymon Kłos e81f795abe Add test button for Get_Export_Formats PostMessage
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I07bec21cce481d72f628d860937953a9e4bd1e91
2023-09-26 16:45:16 +02:00
Rash419 4dce44846c persist slide number in impress and sheet number
in calc on reconnect

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I7dafcd5f8d57ae79952153faf90b682f17a33cfd
2023-09-26 16:33:05 +05:30
Caolán McNamara 0f5c171433 do init_gather_lut at start if simd::init succeeds
and avoid local static in simd_initPixRowSimd

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Idb89d5069da5ff10b346b5e4d767374d4529a96f
2023-09-26 08:39:20 +01:00
Ashod Nakashian 3d93e69e49 wsd: use a smaller value when trimming after inactivity
This is to differentiate between a complete
trimming when idle compared to trimming
when inactive.

Change-Id: I61b309968e0a5199fe4f0fb445437a953c0e468a
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-09-25 19:29:12 -04:00
Ashod Nakashian b58ca4be5c wsd: test: remove duplicate uninit
Change-Id: Idc6aa0f7edfdcb7f6cf0fc3e92ff830215f6c1da
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-09-25 19:29:12 -04:00
Ashod Nakashian 4865eff4a0 wsd: improved assertion
Change-Id: I8d65850415f62a6b1680d6638b0639f2642d95e8
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-09-25 19:29:12 -04:00
Ashod Nakashian 21889aca26 wsd: add LOG_ASSERT to replace assert with extra logging
In NDEBUG builds, where there is no assert macro,
we log at debug level to still find issues without
adding noise to the logs.

However, in ENABLE_DEBUG builds not only do we assert
but we also log at error level.

Change-Id: I773dbf7bb2b459e505e73d91505b13d8ed2ed6d8
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-09-25 19:29:12 -04:00
Ashod Nakashian 692fcdc401 wsd: test: wait for 'statusindicator: find' instead of 'ready'
This returns from the connect helper sooner,
shaving some time from each connection.

Change-Id: I29e2637c16b9e2574cbfb99779551d7ae1c8c2f0
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-09-25 19:29:12 -04:00
Ashod Nakashian 96bc73ea17 wsd: simpler string appending in readDirToHash
Change-Id: I13c741bd5cae3cfe4ffb1a71ddc2de650356ac4b
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-09-25 19:29:12 -04:00
Ashod Nakashian 4bf309d136 killpoco: serve the Welcome file using http::Response
Change-Id: Ia29a881f8ec53aa1d48c20240ecc0e01b58ef2b6
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-09-25 19:29:12 -04:00
Ashod Nakashian 7aed4c0461 wsd: const correctness
Change-Id: I1be6a2055d906b590d7801f9873a48d510c78a0b
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-09-25 19:29:12 -04:00
Ashod Nakashian 2a58fcaa93 wsd: utility to read small files in memory
Change-Id: I9b98f8706c0c32ed59c4f49844570225532a1a59
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-09-25 19:29:12 -04:00
Ashod Nakashian d2ebd4cff7 wsd: FileServerRequestHandler instance
This encapsulates and manages the lifetime of
file-serving cache in an instance of
FileServerRequestHandler. Previously, it was
all done through static functions and explicit calls.

Change-Id: I1b0bf0e3c25e6ae82c398bf5d0de255a6fec42a1
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-09-25 19:29:12 -04:00
Caolán McNamara 5c5e1c41d6 use spaces instead of tabs
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I3c7c474d10e500d662fc0e697f8e2b298799d795
2023-09-25 16:55:04 +01:00
Caolán McNamara 654cb1ae05 add DeltaSimd to android/iOS
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Icad55a047ea505d81e50ae634e38d8301fb3b21e
2023-09-25 16:55:04 +01:00
Caolán McNamara ff2bd955c8 add Simd.[c|h]pp to ios build
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I03971f023ba3bb7c51872fd4179da8b5fb8128a1
2023-09-25 16:55:04 +01:00
Caolán McNamara 6f984b042a don't check for SIMD in mobile case
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Ib4ec551bd3c3c662c0e39aa0df292920c7afac08
2023-09-25 16:55:04 +01:00
Caolán McNamara 77d1424b8d rleMask->rleMaskBlock in non-simd branch
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I09d0c900535eba6b274e294ff39ea71a9d9c323f
2023-09-25 16:55:04 +01:00
Caolán McNamara aa59f57285 add Simd.cpp to android CMakeLists
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I577bbe203a940e1d2f38fa4d1f86cc6d8f8d1f33
2023-09-25 16:55:04 +01:00
Michael Meeks fde98db394 Factor out CPU RLE into a function with similar signature.
Performance testing suggests that:
 + dense text this is 2x faster.
 + 'hello world' text this is 1.7x faster.

Change-Id: I4ff940663c44d0b22c9187deb4ee397a9d9953b0
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2023-09-25 16:55:04 +01:00
Michael Meeks 8f2c7f4de7 Add idea to save an instruction by masking at the same time ...
Change-Id: I9ecd35c1655bd72994a297b8897db473a921bc20
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2023-09-25 16:55:04 +01:00
Michael Meeks 2e1e0c1260 Save another variable and rename.
Change-Id: I279df2615f972acd3f8107b236d67232c3d6015f
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2023-09-25 16:55:04 +01:00
Michael Meeks 81a8bb4589 Switch to a single loop to reduce branching.
Simply calculate our loop variables from the iteration we're on.

Change-Id: I0bb73302fb09963b2a1f5b3d93ef302316ef1d4f
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2023-09-25 16:55:04 +01:00
Michael Meeks ad768d2337 Handle only 256 pixel runs, to drop another variable.
Change-Id: I5e28b4f86ae191b181a69b82511d3393b5fc8c20
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2023-09-25 16:55:04 +01:00
Michael Meeks 0153ddb554 First cut at getting aligned loads and simpler loop structure.
Remove the special case for the first pixel, and instead have a
previous pixel run initialized to zero.

AVX2 has no effective shift for the while si256 so use permutation
to shift the last pixel of the previous run into the right place,
mask it and combine.

Saves a second un-aligned load of the same data, and branch.

Change-Id: I77c9cdead13d37aaf4d9f31d98cbd5c4a9c5ce24
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2023-09-25 16:55:04 +01:00
Michael Meeks 743fa7d91f Use a LUT and SIMD packing logic to accelerate RLE pixel copy.
Change-Id: I6874f1b33acf6f0f3c72c86f9fbe232e1f5a560a
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2023-09-25 16:55:04 +01:00
Caolán McNamara 42e98bb2e4 experimentally bootstrap something using avx2 to generate bitmap
just enough to get the same results as before

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

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I109c9b8f1e7935782c72e0179aa0ed48712eadb6
2023-09-25 16:55:04 +01:00
Michael Meeks 6d6425336d SIMD - first cut at building LUT for vpermd gather.
Change-Id: I6ae13be0a36b4e30b3d535029313d8402da7de1d
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2023-09-25 16:55:04 +01:00
Michael Meeks cce3767ba8 First cut SIMD wrappers / separation to accelerate RLE code.
Split it out as a C file, to avoid accidental C++ header inclusion,
and C is a cross-platform assembler anyway so a good match.

Change-Id: I6c042781713aecaf143b9663af8377659a7deaf1
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2023-09-25 16:55:04 +01:00
Szymon Kłos 1d6d3806b7 cypress: autofilter: test autofilter on mobile
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I63f05af3f618f150bf6550b03a25ff83dfa9d3b4
2023-09-25 16:41:11 +02:00
Szymon Kłos 5acab9c966 autofilter: don't show hidden popup
Autofilter dropdown has submenus which are created at the same
time as main menu. These submenus are hidden but send jsdialog
message with "popup" type. We ignored that message on desktop
so do the same for mobile to not show them instead of main dropdown.

Added also warning about unhandled messages.

Removed old style "autofilter" type handling which is not used anymore.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I18d0c9078b88d6d24290e44179594a8eebd1c2e4
2023-09-25 16:41:11 +02:00
Darshan-upadhyay1110 507c272c80 Mobile: buttons with text color discrepancies
Will not create `<u>` element for mobile wizard
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>

Change-Id: Iaca88ac4be2c95dc4781180019ba8fede9cdc81a
2023-09-25 20:08:17 +05:30
Rash419 9b5b8c85c5 don't reload the tab if reconnected by indirect socket
Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: Ia75d085d17c49a64e56f0dc5c9494fd88d846bfa
2023-09-25 07:07:33 -04:00
Ashod Nakashian 2bf9665d45 wsd: test: enable experimental features in tests
Change-Id: Idc5b838d241e734af8b404dbf2052a69b376540d
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-09-25 08:58:39 +02:00
Ashod Nakashian 4407ac9136 wsd: test: improved single-test runner
The test now runs as many times as requested
and doesn't stop on first failure. Instead,
it reports the number of passing vs failing
runs.

Also simplifies the detection of the test
result by using the exit code instead
of grepping the output file.

Change-Id: Ie458b2963411632d566cd87d2dfb9137044d2b4b
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-09-25 08:58:39 +02:00
Ashod Nakashian 48918f9b3b wsd: test: fix typo in test name
Change-Id: Ifbc0c8dd6609fc55e86867c44e0e3ef62fb592f7
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-09-25 08:58:39 +02:00
Ashod Nakashian 3a91ff3e4e wsd: test: exit on failure to load unit-test lib
We now exit immediately with error code when
we are given --unitlib argument but fail to
load the given library.

Change-Id: I4eb5f3a37b9838ecf83bdceef4d09f888afcca83
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-09-25 08:58:39 +02:00
Ashod Nakashian d7a56a2747 wsd: test: exclude readonly sessions from modification indication
New unit-test that reproduces the corner-case
with disconnection. With graceful unloading
a previous unit-test verified that it worked
as expected.

This is restored from e6798e9062
after it was reverted (due to a PDF comment saving regression).
Since the issue is fixed separately in
0b27e85fc5, these tests can
now be restored.

Change-Id: Id84cda4f4599c559018247c32ea1205e154e4984
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-09-25 08:58:39 +02:00
Ashod Nakashian 3bbb1761cb wsd: test: improvements to unit-load test
This disables the unreliable reload test.

On a slow box, sometimes the load takes
a little longer than 5 seconds. Waiting
a bit longer doesn't hurt in these cases.

Also, remove duplicate test and give each
test case its own testname.

Change-Id: I556f6da9e49a7fa4cd9917bc9964dd9561b93817
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-09-25 08:58:39 +02:00
Ashod Nakashian ee41b51cfc wsd: test: new UnitWOPI Overload test
This test is currently disabled, as it is only
useful for stress-testing

Change-Id: I803d8d5818f004afa72bbf2dfe5c9d90b41e1133
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-09-25 08:58:39 +02:00
Ashod Nakashian 24264d6d9c wsd: test: better OwnerTermination Test
Change-Id: Iab417f7209c325ec363b5e7bc8648c610b9e32bf
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-09-25 08:58:39 +02:00
Ashod Nakashian 968ab3e529 wsd: test: move File-Serve whitebox tests to own file
Change-Id: I4e659f28636cc78beca3c05ed7f23ef714d32063
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-09-25 08:58:39 +02:00
Ashod Nakashian d011656aa0 wsd: test: correct usage of string::find
Change-Id: I3768f74548e69cd8b14c352e7adf67ac210a34c1
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-09-25 08:58:39 +02:00
Ashod Nakashian fc6380c31a wsd: test: better UnitWopiLockReadOnly
Fixes a race-condition due to having multiple
views, we will get multiple onDocumentModified.

Change-Id: I806a3cc31f768c9f159e599c69fd1d31755e6cd1
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-09-25 08:58:39 +02:00
Darshan-upadhyay1110 1f094a7b9d View tab for all other apps in mobile
- Added view option to all other apps on mobile view.
 - previously only text contains the view option in mobile view. ( click on hamburger menu)
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: I04e06e346d398d947e637bd71e4134bc3e901c4d
2023-09-25 08:54:36 +02:00
Szymon Kłos 81c033df93 Fix UnitBadDocLoad test after repair dialog is enabled
commit	413e7a2e6f0c363938a0a5ee5bd6eb5d56d5a8d8
lok: add broken package interaction handler
https://cgit.freedesktop.org/libreoffice/core/commit/?h=distro/collabora/co-23.05&id=413e7a2e6f0c363938a0a5ee5bd6eb5d56d5a8d8

in core added dialog which asks user if file should be repaired.
This requires tests adjustment.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I4e7f9de8b05dc8077447832e59b4e23ec02ccf4c
2023-09-24 20:18:01 -04:00
Cosmin Humeniuc 2b53099b2d Translated using Weblate (Romanian)
Currently translated at 30.4% (158 of 519 strings)

Co-authored-by: Cosmin Humeniuc <cosmin.humeniuc@1and1.ro>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ro/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ie7f9626344564b0cbbc84f71d81ab8a7f993d389
2023-09-24 16:38:05 +02:00
Jérôme Herbinet c724225429 Translated using Weblate (French)
Currently translated at 98.2% (510 of 519 strings)

Co-authored-by: Jérôme Herbinet <j.herbinet@protonmail.ch>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/fr/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I2e3d710bc7da514885c0168eb73ab2dc3c90ccf4
2023-09-24 16:38:05 +02:00
Ettore Atalan d889e75b33 Translated using Weblate (German)
Currently translated at 99.5% (465 of 467 strings)

Co-authored-by: Ettore Atalan <atalanttore@googlemail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/de/
Translation: Collabora Online/Help
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I00fa8b82f1d10a2633fe13bf04b08b2901094530
2023-09-24 16:38:05 +02:00
Sebastiaan Veld 04ea467290 Translated using Weblate (Dutch)
Currently translated at 100.0% (22 of 22 strings)

Co-authored-by: Sebastiaan Veld <sebastiaan.veld@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/android-lib/nl/
Translation: Collabora Online/Android lib
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ic2691bfbe3f30a3acaa8dd8b0c945562f1e1778d
2023-09-24 16:38:05 +02:00
Skyler Grey 1b3218df04 Add cli option to use settings from env variables
Currently [in docker it is possible to do configuration through
environment variables](https://col.la/dockercodeconfigviaenv), which
works using the start-collabora-online.sh start-collabora-online.pl
scripts. This commit lets COOLWSD listen to the same environment
variables directly

Change-Id: I75762ad620132037523fa82167a3ff17075c7027
Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
2023-09-23 12:44:50 +02:00
Skyler Grey d94dbf8c32 Option to stop coolwsd when configuration files change
- This patch only adds an option to enable this feature. It is off by
  default
- This allows you to, say, have a docker container and --restart=always
  to restart when you update the config
- This patch only listens for "/etc/coolwsd/", so if you specify a config
  file that isn't there then you're out of luck... An improvement for a
  followup patch will be make it listen to wherever your config files
  actually are
- The current docker scripts only listen for modifications, so this
  matches that behavior

Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
Change-Id: I674756b0188893f5d192885bb436256aa827e7b5
2023-09-23 12:42:21 +02:00
Miklos Vajna fb5aab4693 scripts: add a simple script to invoke a single unit test
And also allow automatic re-trying to decide if this is a reproducible
failure or an unstable test.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: I254d83cc1acc6b80ec3978e26e5fd64e676ff2a9
2023-09-22 16:01:52 +02:00
Ashod Nakashian 0b27e85fc5 wsd: comments can be added to PDF files which otherwise are readonly
This fixes a regression where PDF comments were lost when
the document closed immediately after adding a comment.

Change-Id: Iac78ec13fdbaa7d1ffe25067ea0f41704abb3312
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-09-21 08:23:36 +02:00
Andras Timar 17c77bf059 Revert "wsd: exclude readonly sessions from modification indication"
This reverts commit e6798e9062.
Reason: this commit caused a regression. PDF comments were not saved.

Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I180ecb9e298e37bd5a989a8cd6d23d02c25a6929
2023-09-20 19:57:01 +02:00
Pedro Pinto Silva ffe501a114 Tabbed view: File tab: Save icon doesn't change on modified status
- Add or remove additional css class to the Tabbed view > File Tab >
Save button whenever the document is modified or saved.
- NotebookbarBuilder: onCommandStateChanged: Re-use existing state var
There seems to be no need to call again the object and its state when
we already have a variable for that.

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I3d0bee8903f4e7309d5d5e7389a824bf39e72651
2023-09-20 19:54:56 +02:00
Gökay Şatır 5039aa4797 Fix "modified state notifier" visibility.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: If4feb0806ce92fadeb90f6676809bcbefc51eb24
2023-09-20 19:54:56 +02:00
Gökay Şatır 2a32970c9b Update packages.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I554d2d272b5fb869027088d4a0b2d8284edc4c7c
2023-09-20 19:23:30 +02:00
Andras Timar 5d98af34f5 Update UNO command translations
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ia87bc96cca29edd8a362b4856f3eebb588a04a06
2023-09-19 22:06:55 +02:00
Andras Timar 0040ce2882 Bump version to 23.05.4.2
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ic4709d3fa68e84262a3ab72faeb175159fb058e6
2023-09-19 21:57:02 +02:00
Theo 673dcffb7e Translated using Weblate (Greek)
Currently translated at 77.6% (403 of 519 strings)

Co-authored-by: Theo <tbousiou@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/el/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I9bdd6b5cdf12b373f49d5dd794ea5b43a3dc7bdd
2023-09-19 21:57:02 +02:00
Pedro Pinto Silva 12149fdbd2 Translated using Weblate (German)
Currently translated at 99.2% (515 of 519 strings)

Co-authored-by: Pedro Silva <pedro.silva@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/de/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I7bff182aa7146b87bc3c71776b95655ba0518d2e
2023-09-19 21:57:02 +02:00
Pedro Pinto Silva c23d93357a Featurelock dialog (upsell): Fix layout and styles
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I18fc9d9b97a64be426d03744a5b707729447a1db
2023-09-19 21:56:52 +02:00
Pedro Pinto Silva 4802992cbe Featurelock dialog (upsell): Remove dialog header
This is **not** nonmodal dialog but it looks like. This is a modal:
user can’t interact with background content.

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I9e68afadca3d6ab04311f18d38a9dd43b9679522
2023-09-19 21:56:52 +02:00
Marco Cecchetti 97aec60766 Firefox 117 no copy event is emitted by hitting CTRL+C with no selection
The problem affects no-a11y case since the editable area is empty.
Since no copy/cut event is emitted, Clipboard.copy/cut is never
invoked. So we need to emit it manually.
To be honest it seems a Firefox bug. We need to check if they fix it
in later version.

Signed-off-by: Marco Cecchetti <marco.cecchetti@collabora.com>
Change-Id: I036414b5ffb5b35ff1ef1d7de1044e890832c673
2023-09-19 19:16:43 +02:00
Gökay Şatır e309e0ffee Update packages.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I4d90323dade99f325a9c3b6d46fd3b595030d1ce
2023-09-19 14:21:06 +02:00
Milo Ivir d53331d1e6 Translated using Weblate (Croatian)
Currently translated at 100.0% (467 of 467 strings)

Translated using Weblate (Croatian)

Currently translated at 100.0% (519 of 519 strings)

Translated using Weblate (Croatian)

Currently translated at 100.0% (22 of 22 strings)

Translated using Weblate (Croatian)

Currently translated at 100.0% (110 of 110 strings)

Co-authored-by: Milo Ivir <mail@milotype.de>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/android-app/hr/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/android-lib/hr/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/hr/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/hr/
Translation: Collabora Online/Android app
Translation: Collabora Online/Android lib
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I905b20a488324ac9bc462314e47f8883b6ba4284
2023-09-18 23:17:19 +02:00
Andras Timar 16928e2523 Translated using Weblate (French)
Currently translated at 98.2% (510 of 519 strings)

Co-authored-by: Andras Timar <andras.timar@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/fr/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I681dba08adcda53144ba3d0d9380615e830392ff
2023-09-18 23:17:19 +02:00
Darshan-upadhyay1110 a116d92758 Calc: Sheet tab context menu: Rename Sheet has extra padding
Fix extra adding for sheets tab on mobile view

Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: I5139e0072caabd7db7c4d1255b497cf24e1359e6
2023-09-18 13:31:31 +02:00
Henry Castro d39d2cd798 test: fix unit-load missing 'readonly=1' token
Change-Id: I064dc4017a31ed177439212240c0c1041554fc2b
Signed-off-by: Henry Castro <hcastro@collabora.com>
2023-09-15 10:21:53 -04:00
Henry Castro 414c3af734 browser: fire 'readonly' if status change
Change-Id: Id31dc8028b8308e11fb8dc8112769ba426db70e5
Signed-off-by: Henry Castro <hcastro@collabora.com>
2023-09-15 10:21:53 -04:00
Henry Castro a125259787 kit: add 'readonly' property to status message
Change-Id: I8068da5a28f3176023013c84eb6599a6cedbb3f5
Signed-off-by: Henry Castro <hcastro@collabora.com>
2023-09-15 10:21:53 -04:00
Caolán McNamara 94b4859bb6 add a script to make getting a flamegraph of a specific instance less fraught
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I17409bd96f1cccdc84a4aa5f0e372f1b1181ce59
2023-09-15 12:58:35 +02:00
Szymon Kłos b4efb460a1 Updated shrinkpack
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I0b9305e14581a2c75d0a3835e3532b9498a589b2
2023-09-14 12:26:53 +02:00
Szymon Kłos dc93ac9d2c Decrease code-duplication limit to 18 lines
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I98b398a9468ddc9e3087b7cf8d09c1015f325964
2023-09-14 12:26:53 +02:00
Szymon Kłos e3bcd092cd Ignore code duplication in ImpressTileLayer
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I98d37be139e6a9107fd958427205ef086af9cd41
2023-09-14 12:26:53 +02:00
Szymon Kłos 5162f198be Ignore duplication for MobileWizardPopup
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I0130a0e2a7bb55d0eb4766a43261ff3330073e69
2023-09-14 12:26:53 +02:00
Szymon Kłos 46511e59d9 Share code for toolbar uno action
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I24e3a46f7d14459bdb0446313d75429615dcf9d9
2023-09-14 12:26:53 +02:00
Szymon Kłos 93bc44d1bf Share code for keyboard popup prevention on click in toolbar
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I4955de2f1e3b60b7671317447d8f769e4f07f82a
2023-09-14 12:26:53 +02:00
Szymon Kłos f5c6255321 Share code for cancelSearch
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I61a0ba9b3da8ec7f7122580d850a6ee82c02ba2d
2023-09-14 12:26:53 +02:00
Szymon Kłos 76f0b11551 Detect code duplicates in make-check run
It uses jscpd project by invoking it using npm script
"duplication". For now set minimum lines to report
as 26, because we have some 25 line duplicates.
Later we can reduce that number.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I20e0ba9a07528e15a65f01d2247420da33339749
2023-09-14 12:26:53 +02:00
Andras Timar b3abc03d27 Translated using Weblate (French)
Currently translated at 98.2% (510 of 519 strings)

Co-authored-by: Andras Timar <andras.timar@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/fr/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I24e7417819ba5dd2dd1684f06e3b70ad20745bea
2023-09-13 22:15:36 +02:00
Aron Budea dbf170af8d Translated using Weblate (French)
Currently translated at 94.4% (490 of 519 strings)

Co-authored-by: Aron Budea <aron.budea@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/fr/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I851fcfc19aef54d0e112e68de30ef403e7e2dadc
2023-09-13 22:15:36 +02:00
Darshan-upadhyay1110 ad7c0eeeca Missing icon for show menubar
added fold svg icon which was missing for dark mode
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: I650a9adcdbbd768017d4ba0e17277de562e7d184
2023-09-13 08:32:39 +02:00
Andras Timar 938b8e318b Bump iOS version to 23.05.4
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ic77f62cd723dc3d03d7f95e8a7d6f9676646d980
2023-09-12 08:46:25 +02:00
Miklos Vajna 91f26ff453 Contriburing instructions: add a section on commit messages
It happens in many cases that it's not clear what are the steps to
reproduce the problem to be fixed, let's have some explicit instructions
on how to document these + the reasons for having these rules.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: I725f78dabd388fa85db0286e354527fd96e6d6be
2023-09-12 08:45:14 +02:00
Paris Oplopoios e5b7464bbf Invalidate canonical id unconditionally
Signed-off-by: Paris Oplopoios <paris.oplopoios@collabora.com>
Change-Id: I061e34af1a1676e5bba5d476ea9e7ff5758744a1
2023-09-12 00:49:18 +02:00
Patrick Luby 0898e05e3a Invalidate canonical ID for Draw and PDF files so that the slides
in the slide pane will render

Signed-off-by: Patrick Luby <plubius@neooffice.org>
Change-Id: I43f93c0c02d801391eaea9916ab1bd8e827249a9
2023-09-12 00:49:18 +02:00
Patrick Luby 805d0cec13 Handle special "direct-" formats
Signed-off-by: Patrick Luby <plubius@neooffice.org>
Change-Id: I73c2de73d60a444b6cdf3817d3e90e245f239075
2023-09-12 00:49:18 +02:00
Patrick Luby e7bd50c967 Fix minor iOS build and runtime problems
This patch contains changes to iOS and/or Android code only.

Signed-off-by: Patrick Luby <plubius@neooffice.org>
Change-Id: Ia1461b0b3ca374b682494a7e2e900b832c85ea9d
2023-09-12 00:49:18 +02:00
Andras Timar baec3ff60d Bump version to 23.05.4.1
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I73457e8b34bca25a243788622554ecf0d3b83edd
2023-09-11 22:45:27 +02:00
Alexander Gabilondo 5729f06e10 Translated using Weblate (Basque)
Currently translated at 100.0% (467 of 467 strings)

Co-authored-by: Alexander Gabilondo <alexgabi@openmailbox.org>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/eu/
Translation: Collabora Online/Help
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I0fca1a9f7e426a318ab72a17e465b53a0bf972ae
2023-09-11 19:06:42 +02:00
Leif-Jöran Olsson b3de7e9908 Translated using Weblate (Swedish)
Currently translated at 100.0% (519 of 519 strings)

Co-authored-by: Leif-Jöran Olsson <info@friprogramvarusyndikatet.se>
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: I2498a8ccaa6857dd6b87f5c398289e2f6eb509f0
2023-09-11 19:06:42 +02:00
Sebastiaan Veld db3eb22a88 Translated using Weblate (Dutch)
Currently translated at 100.0% (519 of 519 strings)

Co-authored-by: Sebastiaan Veld <sebastiaan.veld@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/nl/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ib989952fd44e28fe8e2a97685bbb419c09834deb
2023-09-11 19:06:42 +02:00
Martin Srebotnjak 85b541f301 Translated using Weblate (Slovenian)
Currently translated at 100.0% (519 of 519 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: I2dd2609be93976dce1d112e35a5a699cedccc3e5
2023-09-11 19:06:42 +02:00
Stanislav Horáček 5fc8cbb445 Translated using Weblate (Czech)
Currently translated at 100.0% (467 of 467 strings)

Translated using Weblate (Czech)

Currently translated at 100.0% (519 of 519 strings)

Co-authored-by: Stanislav Horáček <stanislav.horacek@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/cs/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/cs/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I94cf0007eafa9edc7fbc0bdb298a141035bd894b
2023-09-11 19:06:42 +02:00
Szymon Kłos 74059a040e jsdialog: create also combobox without entries
this fixes missing font name and font size comboboxes
when opened spreadsheet protected from editing

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I364fe345756549270cabafbe76d9a6b040a48ac3
2023-09-11 18:59:26 +02:00
Gökay Şatır 8ab9dd7e07 Fix the mobile comment issues of writer.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: Ia089ae8348c718f82fb39e80234a29a17e602a61
2023-09-11 19:47:44 +03:00
Andras Timar 0dee93c62d Updated UNO command translations
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I2617d5d413f3aa0f235950824eb024add5c239c7
2023-09-11 18:39:03 +02:00
Marco Cecchetti 39132e23ec a11y: improved screen reader caret tracking on text navigation
In order to allow screen reader to track caret navigation properly
even if there is some connection delay default behaviour for
Left/Right arrow key press is no more prevented in
Map.Keyboard._handleKeyEvent. In TextInput._onKeyDown, it has been
needed to handle some special caret position, such as when cursor is
at begin or end of a list item prefix.
When left/right arrow is pressed and text is selected, selection is
cleared and caret needs to be moved by one char left/right.
However, for an editable div the behaviour is different:
- when left arrow is pressed caret moves at start of previously
selected text
- when right arrow is pressed caret moves at end of previously
selected text
So we needed to prevent default behaviour and simulate the same
behaviour that occurs in LibreOffice.

Signed-off-by: Marco Cecchetti <marco.cecchetti@collabora.com>
Change-Id: Ifa5e9847bbbf77b934a3bcbd04545f4a55afd19d
2023-09-11 16:42:14 +02:00
Gökay Şatır eff4b6760a Add shorcutstoolbar to the integrator containers list.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: Ic101061ed8d39178c1dc0777350126c3fa545258
2023-09-11 17:27:30 +03:00
Gökay Şatır b370ba6e4a Change the insert > insert table command access key.
So it doesn't conflict with others.

Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I3f114aa007572cb40acff58f9d3b4a45f3d57988
2023-09-11 17:27:18 +03:00
Gökay Şatır f4ea5fc065 Re-position the accessibility info boxes.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: Ia812d8a8dd89e12b8c6f0d3d7f3586700b1e6ce3
2023-09-11 17:03:32 +03:00
Gökay Şatır d6d64b38d7 Resolve id conflicts between contents and the buttons.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: Id55c56e65cf27dd67bf6c88488b5f29b6e5dade8
2023-09-11 17:00:35 +03:00
Gökay Şatır 6ad69a7699 writer: add missing accelerator keys for file tab.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I10d821080a06b8bd93993e2ab6bf0fe212449b2d
2023-09-11 16:59:44 +03:00
Darshan-upadhyay1110 5f2ad3e5e6 Add option for print sheet
Added 2 options to print
    - Active sheet
    - All sheets
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: Ic4514648bd998575990bce877eda5d45884a8514
2023-09-11 14:24:33 +02:00
Darshan-upadhyay1110 6406aeac83 Enable autocorrect option to add bulltes
Will add bullets after pressing enter
 Example: press * then some sentence and enter
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: I63676eb3f725dba0d9fdb0a12cb31847fef8e663
2023-09-11 11:48:47 +02:00
Caolán McNamara 084e715dc6 TileDesc broadcast field is always false
apparently since:

commit b0a7532b08
Date:   Sat Nov 14 19:43:02 2020 +0300

    Turn off broadcast on presentation preview tiles

so drop this field from TileDesc and protocol.txt

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Ib4b1eca0d30911e13c245551cb3e3261afc99dd2
2023-09-11 09:38:49 +01:00
Caolán McNamara 3b7ef07997 getTokenString is another loop over the tokens that we already loop over
getTokenString(const StringVector& tokens...) loops over each
token and calls
getTokenString(const std::string&...) with token.getParam() on each
token. We already have a loop over each token, so we can merge those
loops here.

perf reports TileDesc::parse taking 3.68% of the time in a hour
of an interactive writer session with multiple participants

Though looking further, broadcast seems unused by anything now.

To be followed up on that topic.

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I244637043c58d90562001ec58fac494da54e55a8
2023-09-11 09:38:49 +01:00
Rash419 68f147679a indirection: fix ui flicker when migrating
Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: Ib435a08399179e33ee71736c1f36987e14fcaace
2023-09-11 13:38:11 +05:30
Miklos Vajna 790a19ab25 kit: improve date format of UNO commands in crashreports
Old format:

	kit-27634-02839 2023-08-30 11:08:43.590564 +0000 [ kitbroker_17a ] SIG   Fatal signal received: SIGSEGV code: 1 for address: 0x4f00000007
	      unoCommand(2552f) : ToolbarMode?Mode:string=notebookbar_online.ui - Wed, 30 Aug 2023 11:08:31

New format:

	kit-30199-30197 2023-09-06 14:30:21.417817 +0200 [ kitbroker_001 ] SIG   Fatal signal received: SIGABRT code: 18446744073709551610 for address: 0x3e8000075f7
	Recent activity:
		unoCommand(064) : ToolbarMode?Mode:string=notebookbar_online.ui - 2023-09-06 12:29:56

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: Idf62ea18c75c453d188d8c25723a43824d5fc147
2023-09-11 10:07:19 +02:00
Szymon Kłos fb79675c0f jsdialog: simplify intert hyperlink dialog
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I44bae5fd01a6d4c099af46742eb2069b5b6db7ab
2023-09-11 09:48:25 +02:00
Szymon Kłos 03cd99d6d2 cypress: adjust mobile insert hyperlink to new dialog
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Iab68d99e9f35a7a93152466103b23e5344eea72b
2023-09-11 09:48:25 +02:00
Szymon Kłos a6a08f4a21 mobile-wizard: unify combobox to listbox replacement
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I20d5014e1d0e96857d01ce29b2734b27e07efa3f
2023-09-11 09:48:25 +02:00
Szymon Kłos 4e91213b52 mobile-wizard: unify combobox to edit replacement
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ief95b914812e6598e101e2bd64646b1bcf3e5e9e
2023-09-11 09:48:25 +02:00
Szymon Kłos 84fadfe9d1 mobile-wizard: replace combobox with edit in hyperlink dialog
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ib87fbef220212ffeb14fa189122c3016085997b9
2023-09-11 09:48:25 +02:00
Szymon Kłos 5f4ceb1032 mobile-wizard: handle vertical tab control
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Iba97075ce663fa6d95eaf00716204da8be34e192
2023-09-11 09:48:25 +02:00
Szymon Kłos 8ba7d80025 mobile-wizard: avoid errors when content doesn't exist
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I82dac967ee490376c18934996089c9c4a83bbef5
2023-09-11 09:48:25 +02:00
Szymon Kłos a0fb57f22f jsdialog: replace combobox with edit in hyperlink dialog
calc -> insert -> hyperlink dialog has combobox which is
useless, let's replace it with edit field

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ifc5c10028fa55459a8433ae0b932c857aa883de8
2023-09-11 09:48:25 +02:00
Szymon Kłos 46763f6d05 jsdialog: fix tabs switching
we expected number in the id, but it has been changed in
commit f8e53bd851

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I5c8793facca03a586918f411d7e88066ac30dc16
2023-09-11 09:48:25 +02:00
Szymon Kłos da174cbb97 Use dialog from core in Calc Insert Hyperlink
introduce it in Calc only as it has better knowledge about
cell content and what should be edited

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Idc66e3380e83975b44ca88d47586de3bd0e7dee9
2023-09-11 09:48:25 +02:00
Szymon Kłos 9cb37bc439 cypress: make slide page format test more reliable
it seems we generate previews later now
it might be related to commit 04ac02b033
    Do not request tiles until we are sure a canonical id is set

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I250c37049ba62c4cdc06b16413767edafc362dc0
2023-09-10 18:46:39 +02:00
Szymon Kłos e47f959a0c cypress: skip failing mobile annotation test
regression introduced in commit d4dcc9e748
Correct the naming of highlightComment function.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ifdb4e821e7102d8efc480231aaa52aefea394b62
2023-09-10 18:46:39 +02:00
Szymon Kłos 08194fa06d cypress: skip failing switching sheet test
this is only desktop test that fails, let's skip
it until we fix the regression and not block others
from testing their patches

regression was introduces in:
commit 04ac02b033
Do not request tiles until we are sure a canonical id is set

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I1de44a94121648b381df67d926bbc33dd1044b76
2023-09-10 18:46:39 +02:00
Gökay Şatır d4dcc9e748 Correct the naming of highlightComment function.
Add new property to commentSection (children).

Update commentListSection for Writer comments.
Now the comments at the same position are separated.

The parent / child relations are set by "parent" attribute.

Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I0a8ab060c133a51f4d09e71777cc6233b78a6efa
2023-09-08 23:10:02 +03:00
Darshan-upadhyay1110 bec384c572 Add QR and Bar code generation option
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: I3fafb97e99df87f813562063192e6ae39b34c2d1
2023-09-08 20:40:13 +02:00
Paris Oplopoios 1b9a186c01 Turn canonical id assertion into warning for now
Signed-off-by: Paris Oplopoios <paris.oplopoios@collabora.com>
Change-Id: I7e332b5e5a0c6a8ce5a428caf4c23274b9be8d82
2023-09-08 14:46:21 +02:00
Gökay Şatır 0af836d4ad Add accessKey properties for save buttons of shortcuts toolbox.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I24d892e0618d7105062e794c032fb8f96f76ccf3
2023-09-08 12:17:25 +03:00
Caolán McNamara 8ba14ab5e2 if we can't call _onMessage yet, delay all messages until we can
and not just some of them discarding the others, so we
always apply all messages received in order the arrived
without omissions.

TODO: apply them when the conditions application requires become
true rather than depending on a timer poll.

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I265b6ccb45e211c15c5f4daf9d6572fa051b68eb
2023-09-07 14:15:24 +01:00
Rash419 855429dad5 admin: send serverId with migrate msg
Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I484620df234a1dcbedeba5b5102dacee7451015a
2023-09-07 18:35:32 +05:30
codewithvk e0ce56d2b2 Add Scrollbar onmouseover effect
Signed-off-by: codewithvk <vivekpatel7202@gmail.com>
Change-Id: I6d34151cc897f9cb97fbe8404694959c5ff4ca49
2023-09-07 11:10:01 +02:00
Paris Oplopoios 0621aa4825 Fix canonical id related unit tests
Signed-off-by: Paris Oplopoios <paris.oplopoios@collabora.com>
Change-Id: Ie4b965c3bac8cddd48a47343d2d1c5f387d8bd41
2023-09-06 10:28:26 +02:00
Paris Oplopoios 04ac02b033 Do not request tiles until we are sure a canonical id is set
Change-Id: Iee15388407ac644e498d3798e545de06038e4b5a
Signed-off-by: Paris Oplopoios <paris.oplopoios@collabora.com>
2023-09-06 10:28:26 +02:00
Paris Oplopoios 5409175a2a Add assertions for bad canonicalviewid
Change-Id: I2621e08123ca9cac30e027b0c018c0e9cc40750d
Signed-off-by: Paris Oplopoios <paris.oplopoios@collabora.com>
2023-09-06 10:28:26 +02:00
Paris Oplopoios cfd1d2e01f Revert "Give new sockets a canonical view id in tests"
This reverts commit a003126a65.

Signed-off-by: Paris Oplopoios <paris.oplopoios@collabora.com>
2023-09-06 10:28:26 +02:00
Paris Oplopoios e67fa117f6 Revert "Fix getting canonical view id of 1000"
This reverts commit 6448c8be0d.

Signed-off-by: Paris Oplopoios <paris.oplopoios@collabora.com>
2023-09-06 10:28:26 +02:00
Gökay Şatır 57ebf8c6e4 Update the comment property for writer.
to parent from parentId while importing the comments.

Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I2f8fa3eae995d894b33558a2fb67639c7af5f1a1
2023-09-06 00:00:03 +03:00
Pranam Lashkari a022212381 annotation: autosave comments when lose focus without exiting editing
how it is expected to work:
before this patch, whenever comment is saved,
editing comment box(DOM elements) is deleted and
a new comment(DOM elements) is created when we recieve the data from server about saved comment

This commit prevents the deletion of the original comment box which is being edited,
if comment loses focus it is saved. If user explicitly saves the comment then it
follows the routine which were used previously.

Many checks were added to prevent comments from getting unselected(select means it is highliting the text in doc)
or getting collapsed

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: If24ccbcd7a0287b659f790db486ada5d17608a32
2023-09-05 16:35:45 +02:00
Pedro Pinto Silva 5ada25b7c3 Tabbed view: Remotelink: Add missing CSS class
It seems the CSS class was only added to impress in
c582d75f57

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I4e8884004bbd1a4f6e4e62a841eb940e23065f50
2023-09-05 12:38:00 +02:00
Pedro Pinto Silva 4b2d29f004 Tabbed view: Add missing CSS class for simple search button
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I78a0adbf84fbea8e2a6c08b0b4eaded7309fa79a
2023-09-05 12:37:31 +02:00
Darshan-upadhyay1110 5f56c339d3 [WIP] : Bullet / Number List Keyboard Shortcut
Added support for keyboard shortcut to add
    - Numbered list Ctrl + Shift + 7
    - Bulleted list Ctrl + Shift + 8

Still type * (asterisk) then Spacebar to add list view not implemented
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: I097691edd81fdc95718d778fcac57c0b0d3e9fb5
2023-09-05 12:03:14 +02:00
Rash419 f9c865fcbe android: fix cannot open pdf
- regression after removing unused slide sorter from this patch 639068e3fe

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: Idc94f316d3e2b7d8ed23c8202c20b14252390b97
2023-09-04 19:16:29 +05:30
Rash419 52bbb7df9c mobile: fix icons not visible with branding
Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I7a3d430ddd96ccb3ea0605eb0a0f2523d66225ce
2023-09-01 17:50:48 +02:00
Rash419 a52bb5e193 fix: comment annotation table not aligned
- regression from 8379ae65dd713c30ac729ae10a2d78cfc98e9a6c

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I28edf882ce9efd586730a48a95f3bde555a63690
2023-09-01 17:26:07 +05:30
Ashod Nakashian e6798e9062 wsd: exclude readonly sessions from modification indication
Read only sessions cannot modify the document, so
we shouldn't consider input from such a session
as potentially modifying the document. This
becomes important during an abrupt disconnection
where we look at isPossiblyModified() as an
indicator for data-loss.

New unit-test that reproduces the corner-case
with disconnection. With graceful unloading
a previous unit-test verified that it worked
as expected.

Change-Id: Id84cda4f4599c559018247c32ea1205e154e4984
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-09-01 07:18:12 -04:00
codewithvk 8533175bd7 Fix: hover states on disabled
Signed-off-by: codewithvk <vivekpatel7202@gmail.com>
Change-Id: I64d291b87ccfbcb7a48b020d1d89fb77cefd8a01
2023-09-01 10:55:12 +02:00
Rash419 cc3f12926c indirection: get new routeToken if serverId mismatch
Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I0efb38b714894dffb44cb5e2ca06be12ccf43b89
2023-09-01 13:48:31 +05:30
Caolán McNamara 1d850c0b4b cool#7164 use existing delay queue for 'canonicalidchange'
https://github.com/CollaboraOnline/online/issues/7164

might be best to add everything to this queue, and not drop any
incoming message, and then process the queue when both
this._map._docLayer and _isReady become available/true.

But perhaps this serves as a reasonable safe checkpoint to return to
if it becomes necessary.

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Ib77a4126437689709e2ca0915667b5b9b2f2f207
2023-08-31 13:41:40 +01:00
Rash419 a02cde2565 android: fix lint errors
RecentFilesAdapter.java:76: Error: Value must be ≥ 0 [Range]
                  filename = cursor.getString(cursor.getColumnIndex(OpenableColumns.DISPLAY_NAME));
                                    RecentFilesAdapter.java:97: Error: Value must be ≥ 0 [Range]
                  length = cursor.getLong(cursor.getColumnIndex(OpenableColumns.SIZE));

file_explorer_grid_item.xml:42: Error: Inconsistent alignment specification between textAlignment and gravity attributes: was center_vertical, expected center_horizontal [RtlCompat]
              android:textAlignment="center"

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I663a89b0ecce03b067e1fa216a030a19fa578da5
2023-08-31 13:12:22 +02:00
Rash419 f0ea15a9b9 android: add ndkVersion in build.gradle
Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I7b7c716be067859e72c21e07716db7622a116bf6
2023-08-31 13:12:22 +02:00
Rash419 c0273e8574 android: use tasks.register in build.gradle
Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I1ab6908f333115247018a53f6e954751bb13fc8c
2023-08-31 13:12:22 +02:00
Rash419 2e29d67888 android: update dependencies
- update gradle plugin and version
- use mavenCentral instead of jcenter

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: Iffe41bd7d5ff3e6a6d1acbe70c25e21e5a856548
2023-08-31 13:12:22 +02:00
Szymon Kłos 2593713fe6 jsdialog: when we enter readonly mode close dialogs
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I01aaf1b4bf0e0071db439e6ebf65eae49e3b29bb
2023-08-31 12:56:10 +02:00
Szymon Kłos 049f8b16cc jsdialog: don't type into document on combobox entry click
There was a bug that when we selected entry and pressed enter
then removetextcontent event was trigerred.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ie0aae2fd24c69043d3133d6d257622a967d34cc1
2023-08-31 12:56:10 +02:00
Szymon Kłos 0ffb57a72c jsdialog: make combobox work with notebookbar shortcuts
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I8388ecb5db9ffa54eac2d4cc4f8eb9b81adf881d
2023-08-31 12:56:10 +02:00
Szymon Kłos f5cbf9236c jsdialog: focus map if last dialog closed
when we close last jsdialog then move focus into
map to avoid focusing document.body what causes
that user cannot type or move focus to the next button in
the UI

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I0f9d38ecbac476c769dd66b820deb373e3cc224e
2023-08-31 12:56:10 +02:00
Szymon Kłos faa0477332 jsdialog: combobox entries hidpi
we request entries with dpi scale factor to
generate bigger (higher resolution) previews

then entries are scaled down in CSS to keep
relative size to other components constant
but text become smooth thanks to bigger resolution

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I00c59be45a92667768385f7f70c1ccd8248095af
2023-08-31 12:56:10 +02:00
Szymon Kłos 5b221745cf jsdialog: mark selected entry in combobox
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Iefd57b37d6afa4480b8c3a7c36be7ab4a7f1e84c
2023-08-31 12:56:10 +02:00
Szymon Kłos 0741728a2f jsdialog: render combobox entires when visible
also make font previews persistent as they don't change

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ib68667e4b4f612a51932f24179e0ff197dde3c09
2023-08-31 12:56:10 +02:00
Szymon Kłos 2be200845d jsdialog: combobox dark theme fix
- invert colors of images in dark mode
- don't invert in style previews to show real effect

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I2005cd068b3f9a636e24307a3035728f4e139379
2023-08-31 12:56:10 +02:00
Szymon Kłos cb1c62eda6 cypress: adjust tests to new combobox
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ieb6982abbea68f5d2e8a8215d2a69f10f4123fac
2023-08-31 12:56:10 +02:00
Szymon Kłos 4ef2d4de39 jsdialog: dropdown should match combobox size or be bigger
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I42a95396b59d1428d88d67a29ccba1370ec297ba
2023-08-31 12:56:10 +02:00
Szymon Kłos f33d7e6dd3 jsdialog: don't leave gap between dropdown and button
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Iaadc953b5ecb66d45b55482f6d7a4ccead85db0d
2023-08-31 12:56:10 +02:00
Szymon Kłos c49edd2215 jsdialog: avoid ui-widget in tabs to not apply jquery styling everywhere
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I082079eba700f700d37f666d751522292e3d90b5
2023-08-31 12:56:10 +02:00
Szymon Kłos de2fef01a3 jsdialog: make combobox dropdown accessible using keyboard
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ib5ab0075b1ef8dfcc67b5850af4945ab4859d6d3
2023-08-31 12:56:10 +02:00
Szymon Kłos e90ab292b6 jsdialog: add edit field for combobox
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I5a1ab436c34a8406c6de4b08b3e55ee11a106d43
2023-08-31 12:56:10 +02:00
Szymon Kłos 9a6964ce7e jsdialog: crop popup when is bigger than screen
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I1a9484cddb69ab9fd3143c20e0dba840fc72bdd4
2023-08-31 12:56:10 +02:00
Szymon Kłos 0b0e21f576 jsdialogs: add dropdown with custom rendered entries in combobox
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I2c4b258fe37d1aef6c7de88443fc702bea60cbda
2023-08-31 12:56:10 +02:00
Szymon Kłos 4082e1e570 jsdialogs: custom combobox
Combobox will be real combobox (edit field + dropdown).
Adjust styling from old .select2 rules to our combobox.
Remove old code for select2 comboboxes in notebookbar.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Id3ea16bcb004675cb7d5743f394ac432e74918cf
2023-08-31 12:56:10 +02:00
Darshan-upadhyay1110 7db8d225ff Add access-key functionality to open userlist.
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: I7787aaa11e673f8701b9b94f85ce225c254e2ac6
2023-08-31 12:03:15 +03:00
Darshan-upadhyay1110 1a91e010c0 Open user list box using keyboard ( CTRL + ALT + P)
Added keyboard shortcut to see userlist in document
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: I8ac5043382ffe49fe2644c76c6b77af85e1e5937
2023-08-31 12:03:15 +03:00
Darshan-upadhyay1110 48007ccfe2 Fix: Mobile => insert list is misaligned #7137
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: I6b82e30dc1a6a77c347963ec9d6e7cb81a86ee37
2023-08-31 14:26:06 +05:30
Darshan-upadhyay1110 c1071943c1 Mobile : Add dark mode option to Calc,Impress & Draw
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: I83470c2b0f3ad6737ebd0648f4b89ffa24dd381a
2023-08-31 14:23:37 +05:30
Rash419 f87230761d mobile-wizard: fix textarea remains white in darkmode
- also fixes the misalignment in cool-annotation-table

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I58db4c6918c3a36a230c6f9317ddf39c3361bb24
2023-08-31 14:20:53 +05:30
Szymon Kłos ae2220cf4e a11y: don't focus map if focusBack is false
This fixes regression introduced in commit 2ac7183e44
Add Left or right arrow on a tab label should switch tabs

When we are in writer: Alt + H, K - opens spacing dropdown
Before this patch focus was stolen by the map even if the
spacing item has focusBack property set to false

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I2c510dc2aecbb1db846e0574c1b5f52b24d9114b
2023-08-31 10:12:04 +02:00
Attila Szűcs 7cebe0f041 ios: fix doubleclick in navi, with single clicks
dblclick seems not to work on ios, but click does.
We can simulate dblclick with single clicks.

Signed-off-by: Attila Szűcs <attila.szucs@collabora.com>
Change-Id: Ic9ae58a39122025c9947294ebfd2292ffe04ae5c
2023-08-30 14:29:02 +02:00
Miklos Vajna 9b3139d65a wsd: fix -Werror,-Wimplicit-const-int-float-conversion
wsd/ClientSession.cpp:520:32: error: implicit conversion from 'uint64_t' (aka 'unsigned long') to 'double' changes value from 18446744073709551 to 18446744073709552 [-Werror,-Wimplicit-const-int-float-conversion]
                    (counter < (uint64_t)(std::numeric_limits<uint64_t>::max() / 1000)))
                             ~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Which is a problem since commit e0b70657fa
(cid#318912 Result is not floating-point, 2023-08-23).

Let's make the conversion explicit, hoping that makes both Coverity and
clang happy at the same time. No change in actual behavior intended.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: Ib9727f0df4df65a9504d421654d519bee0733b80
2023-08-30 09:25:27 +01:00
Michael Meeks f34efeecd3 Add trimming to activity log in case of crash.
Also rename trimIfExcessive to trimAfterInactivity.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I62166a3ed5d70d1e6fd9804e91e07452978523fd
2023-08-29 20:18:23 +01:00
Gökay Şatır c582d75f57 Add forgetten classes.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: Id76723360ee1d2cd71cfa410fee9795de10e9981
2023-08-28 23:45:51 +03:00
Gökay Şatır 71e375a551 Fix typo.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I66062157325b44e37dcff0c18752894fb24b4ce0
2023-08-28 23:45:51 +03:00
Gökay Şatır c6fa5283e5 Add missing classes to notebookbar impress definitions.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: Id52d5bafc95245bbeb3160dbdcd43034f1b5b083
2023-08-28 23:45:51 +03:00
Gökay Şatır d03b2cb0bb Update Cypress tests.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: Ia0a89b93762a7cd589755408b9dd22ba6652bd73
2023-08-28 23:45:51 +03:00
Gökay Şatır 5f6960a396 Impress: Add remaining accessibility definitions.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I6efd18c834e1d3aa4d3ade7a94b84fc86c5e9e02
2023-08-28 23:45:51 +03:00
Gökay Şatır 28e594c0c4 Don't add info boxes for hidden items.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: Ie28dea5a406b1f1b5dbdc1fd7b0d89216d235807
2023-08-28 23:45:51 +03:00
Gökay Şatır e0604e18d7 Add definitions for tabs and 2 tabs.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: Id7641cccf696e81cfcd49907f4043b8887d8f115
2023-08-28 23:45:51 +03:00
Gökay Şatır 46bb8cce73 Correct the focusback check.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: Ia632e35a7dd1deb3634d291072cd40454de6663e
2023-08-28 23:45:51 +03:00
Gökay Şatır 89ac822b59 Simplify definitions.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: Ieb131caec471b832dae16a44487d64599c85d1d8
2023-08-28 23:45:51 +03:00
Gökay Şatır 68e283a9f4 Assign ids.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: Ia3879804811ffa607571d6fd0827143a32cc72e0
2023-08-28 23:45:51 +03:00
Andras Timar a719c0fd02 Bump version to 23.05.3.1
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I8ef60145a559efdc62971370ae867c14b225a50b
2023-08-28 21:59:15 +02:00
Pedro Pinto Silva 6ed9065bb5 Navigator: fix active element style on dark mode
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I7f7e2d48eedf0f204acefadccb36764f553d65f5
2023-08-28 21:52:51 +02:00
Luna Jernberg d40c8d2b4c Translated using Weblate (Swedish)
Currently translated at 100.0% (467 of 467 strings)

Co-authored-by: Luna Jernberg <droidbittin@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/sv/
Translation: Collabora Online/Help
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I6cde37550096969631cd6305f9ed9ebc9336fda5
2023-08-28 21:36:33 +02:00
Ettore Atalan e41f1b02a5 Translated using Weblate (German)
Currently translated at 98.9% (462 of 467 strings)

Translated using Weblate (German)

Currently translated at 99.2% (515 of 519 strings)

Co-authored-by: Ettore Atalan <atalanttore@googlemail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/de/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/de/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I51f974988cdc1995b14205447a67d3cc8fac53e4
2023-08-28 21:36:33 +02:00
Sabri Ünal 8de2e21869 Translated using Weblate (Turkish)
Currently translated at 100.0% (467 of 467 strings)

Co-authored-by: Sabri Ünal <libreajans@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/tr/
Translation: Collabora Online/Help
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I1e734f15e2400699b15fc62b10cc878d7882504e
2023-08-28 21:36:32 +02:00
Ihor Hordiichuk 878091ad25 Translated using Weblate (Ukrainian)
Currently translated at 100.0% (467 of 467 strings)

Translated using Weblate (Ukrainian)

Currently translated at 100.0% (519 of 519 strings)

Co-authored-by: Ihor Hordiichuk <igor_ck@outlook.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/uk/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/uk/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Icde645fb1c038faf867e3f1ba4f4b1024fa2948b
2023-08-28 21:36:32 +02:00
Gökay Şatır c1d477c051 Translated using Weblate (Turkish)
Currently translated at 100.0% (519 of 519 strings)

Co-authored-by: Gokay Satir <gokaysatir@gmail.com>
Co-authored-by: Gökay Şatır <gokaysatir@gmail.com>
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: I297fd2d94fcf4ca287e4460fe508cfe7a7459a47
2023-08-28 21:36:32 +02:00
Leif-Jöran Olsson 7f25814f1c Translated using Weblate (Swedish)
Currently translated at 99.1% (463 of 467 strings)

Translated using Weblate (Swedish)

Currently translated at 100.0% (519 of 519 strings)

Co-authored-by: Leif-Jöran Olsson <info@friprogramvarusyndikatet.se>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/sv/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/sv/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I517e8df4ca270315ff976a556b6ac92e6bfa2961
2023-08-28 21:36:32 +02:00
Martin Srebotnjak f4e952e8a8 Translated using Weblate (Slovenian)
Currently translated at 100.0% (467 of 467 strings)

Translated using Weblate (Slovenian)

Currently translated at 99.4% (516 of 519 strings)

Co-authored-by: Martin Srebotnjak <miles@filmsi.net>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/sl/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/sl/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ieb7b43042ee5a4ceeb708c1d96ccc38c7c5fb278
2023-08-28 21:36:32 +02:00
Mike Kaganski 0d08538bcc Translated using Weblate (Russian)
Currently translated at 65.9% (308 of 467 strings)

Translated using Weblate (Russian)

Currently translated at 100.0% (519 of 519 strings)

Co-authored-by: Mike Kaganski <mikekaganski@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/ru/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ru/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ic7337bb2d6197e6f7fe87673a88504349f8241ab
2023-08-28 21:36:32 +02:00
Matthaiks df2147f7d7 Translated using Weblate (Polish)
Currently translated at 100.0% (467 of 467 strings)

Translated using Weblate (Polish)

Currently translated at 100.0% (519 of 519 strings)

Co-authored-by: Matthaiks <kitynska@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/pl/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pl/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Idb8f8b514a6a2fa0ea49be8e1632c0366e8756a5
2023-08-28 21:36:32 +02:00
Sebastiaan Veld 5c3a83d2dd Translated using Weblate (Dutch)
Currently translated at 100.0% (467 of 467 strings)

Translated using Weblate (Dutch)

Currently translated at 100.0% (519 of 519 strings)

Co-authored-by: Sebastiaan Veld <sebastiaan.veld@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/nl/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/nl/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I9127207a95ee3354cde04488e888dd004f074614
2023-08-28 21:36:32 +02:00
Rizal Muttaqin 2b8fae103f Translated using Weblate (Indonesian)
Currently translated at 100.0% (467 of 467 strings)

Translated using Weblate (Indonesian)

Currently translated at 100.0% (519 of 519 strings)

Co-authored-by: Rizal Muttaqin <riz_17_oke@yahoo.co.id>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/id/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/id/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I5fcd155da41a668c08476778b926c51671d6ce24
2023-08-28 21:36:32 +02:00
Yaron Shahrabani b419b3d155 Translated using Weblate (Hebrew)
Currently translated at 70.2% (328 of 467 strings)

Translated using Weblate (Hebrew)

Currently translated at 100.0% (519 of 519 strings)

Co-authored-by: Yaron Shahrabani <sh.yaron@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/he/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/he/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I90dc2ad907a87b241eedbfc5fc1dd784384c798c
2023-08-28 21:36:32 +02:00
Alexander Gabilondo 3311fb8b01 Translated using Weblate (Basque)
Currently translated at 100.0% (519 of 519 strings)

Co-authored-by: Alexander Gabilondo <alexgabi@openmailbox.org>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/eu/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I351e052d56c1a129f9ff63eae5542d71761e1a65
2023-08-28 21:36:32 +02:00
gallegonovato f9186736d1 Translated using Weblate (Spanish)
Currently translated at 100.0% (467 of 467 strings)

Translated using Weblate (Spanish)

Currently translated at 100.0% (519 of 519 strings)

Co-authored-by: gallegonovato <fran-carro@hotmail.es>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/es/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/es/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I01803795e336457a36faf1f7d1141ae95e8d8594
2023-08-28 21:36:32 +02:00
Rob Pearson 2fc0cc607b 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% (519 of 519 strings)

Translated using Weblate (English (New Zealand))

Currently translated at 100.0% (519 of 519 strings)

Translated using Weblate (English (United Kingdom))

Currently translated at 100.0% (519 of 519 strings)

Translated using Weblate (English (Australia))

Currently translated at 100.0% (519 of 519 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: Idf4d3cad664ac8b975ecd5f682d867f01d12bdd5
2023-08-28 21:36:32 +02:00
Adolfo Jayme Barrientos a5d7d67cb3 Translated using Weblate (Spanish)
Currently translated at 100.0% (519 of 519 strings)

Translated using Weblate (Asturian)

Currently translated at 15.2% (71 of 467 strings)

Translated using Weblate (Catalan)

Currently translated at 98.2% (510 of 519 strings)

Translated using Weblate (Asturian)

Currently translated at 50.4% (262 of 519 strings)

Co-authored-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/ast/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ast/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ca/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/es/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I7365650e1c5fd12306d6fdafda8a371dd09ff006
2023-08-28 21:36:31 +02:00
Andras Timar 02818d9d4d Translated using Weblate (Hungarian)
Currently translated at 100.0% (519 of 519 strings)

Translated using Weblate (Hungarian)

Currently translated at 58.8% (275 of 467 strings)

Translated using Weblate (Hungarian)

Currently translated at 97.8% (508 of 519 strings)

Co-authored-by: Andras Timar <andras.timar@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/hu/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/hu/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ib9c07d24a03108258eac87fd4aab641aae1474fa
2023-08-28 21:36:31 +02:00
Andras Timar 3efc9ba1dd on-disk tile cache was removed in 2019, this config item is unused
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ia2a2b72027f7a107e06529d65bfebd94b4860047
2023-08-28 21:31:44 +02:00
Rash419 3ce8c1b224 feature_lock: fix unlock_image option not working
- regression from ec17f72fb5
- also removed the restriction to have "static" in unlock_image
  url

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: Ie4f1170fb6a12db5218fb28f21d78f88ebc61d56
2023-08-28 16:12:41 +05:30
Rash419 303001623f admin: use sendTextFrame for verifyauth msg
Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: Ib5c4144df168f5a649ce2a4a3a8690eb9de0f723
2023-08-28 10:29:29 +05:30
Rash419 319c6e4570 admin: add new command to verify auth token
- original auth command shutdowns the socket connection
  if the token is invalid
- in controller's case we just want to verify the token
  for adminClusterOverivew socket connection

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I2e640a746c839ea6f4494ddbdfcb8f924150906f
2023-08-28 10:29:29 +05:30
Tomaž Vajngerl 19e0fefbe4 add Theme dialog to the Draw and Impress notebook bar and menu bar
Signed-off-by: Tomaž Vajngerl <tomaz.vajngerl@collabora.co.uk>
Change-Id: I261706a8703fcbee8b477c1261ef6e44de764c52
2023-08-27 18:47:18 +02:00
Tomaž Vajngerl 84bec399f7 add Theme dialog to the Calc notebook bar and menu bar
Signed-off-by: Tomaž Vajngerl <tomaz.vajngerl@collabora.co.uk>
Change-Id: I690af33b132d1820e2ddebab195fb0efeb62b30a
2023-08-27 18:47:18 +02:00
Attila Szűcs ae9c868514 sc: set hyperlink MS interoperability true in online
The new option made by this gerrit:
https://gerrit.libreoffice.org/c/core/+/155079

This commit make that option true in Collabora online.

Signed-off-by: Attila Szűcs <attila.szucs@collabora.com>
Change-Id: I3bcb3092ab041e053db806ac704fc05b529e3950
2023-08-27 18:32:08 +02:00
Oli ba31ffb598 Make jsdialogs capture keydown events in Impress
JSdialog popups on Impress would have the keydown events not captured.
The events would be handled by the main document.
Now they will be captured by the correct element.

Signed-off-by: Oli <oli.baker@collabora.com>
Change-Id: I543e25ddbcb1766cc677f7fbc6629e8d04a5b394
2023-08-26 11:36:50 +02:00
Pranam Lashkari ec17f72fb5 feature-locking: fixed broken feature unlock popup
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I5ec30ef6be17aa18ff0ec8b4ff7c6a8da831fa04
2023-08-26 12:33:50 +08:00
Szymon Kłos 6e5852eb78 jsdialog: move IconView widget to separate file
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I812ca4f1b0db65078fc676fddce6b7a55b17676d
2023-08-25 08:48:15 +02:00
Cosmin Humeniuc 5fcdf5bf6d test for not to cut in the middle of a UTF-8 multibyte sequence
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Id13995ff7e775105882c726144f39aadaef76e64
2023-08-25 08:41:46 +02:00
Caolán McNamara 24317d555f ensure we don't split a utf-8 sequence when logging message
Given a well-formed utf-8 string 'message' of messageLen bytes and a
desire to truncate to approximately abbrevLen bytes return the shortest
string greater or equal to abbrevLen that does not split a utf-8
sequence.

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Ie623d8c1027bb4724485cab5b0bb6d3d1cd3d9ab
2023-08-25 08:41:46 +02:00
Caolán McNamara 3e7ae50ec1 messages to be logged might not end in a new line
they sometimes do, and sometimes not, we can't assume that the last
byte is a newline and can be discarded without truncating message
text.

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Ie5ea00f927a558b43b2ae38e1cac96c805e93fcc
2023-08-25 08:41:46 +02:00
Caolán McNamara a3b32c5203 use the same level of building blocks in each getAbbreviatedMessage impl
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Ia38dc3a8318c0d2adad9bf7f879b7b8a55e5ad77
2023-08-25 08:41:46 +02:00
Caolán McNamara a4e74dedab std::string variant of getAbbreviatedMessage would include trailing newline
for a short non-abbreviated message if it ended in a newline which the
more common variant would not.

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I4105fb8eb67b3a38aebc745dfb1e79aa99f2d878
2023-08-25 08:41:46 +02:00
Caolán McNamara a3f5ca0057 one of the getAbbreviatedMessage variants creates results 1 char longer
the std::string variant uses:

Util::getDelimiterPosition(message.data(), std::min<size_t>(message.size(), maxNonAbbreviatedMsgLen + 1),...

while the more commonly used const char* version has

getFirstLine(message, std::min(length, maxNonAbbreviatedMsgLen)

where getFirstLine is...

return Util::getDelimitedInitialSubstring(message, length,...

and getDelimitedInitialSubstring has

const size_t size = getDelimiterPosition(message, length, delim);
return std::string(message, size);

so the std::string variant's condition is one char longer for the same input

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I5b8c4523844501a43731ff3b4a939b76ebe472c3
2023-08-25 08:41:46 +02:00
Caolán McNamara ce56852851 clarify the meaning of the len arg to getAbbreviatedMessage
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I4bdcc8d2fbd5a2ee74b6743b369196825eeb4fb0
2023-08-25 08:41:46 +02:00
Caolán McNamara ca6044cd40 move max 500/501 len into a single place
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I71f44b88b62bd1d2daa7d5019e14e58cc15c7e02
2023-08-25 08:41:46 +02:00
Caolán McNamara afe6c1bed8 reduce cost of TileDesc::parse
perf reported 6.58% of time in collaborative multi user test
on 2023-08-24 was spent in TileDesc::parse and much of that
in std::unordered_map.

There are only 12 arguments in the map we care about here so
we can just used a sorted array, look by name on write, and
read by index.

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Iadfc2001e298d8f4d46200c8488f0eb4cd8734c2
2023-08-24 22:22:43 +01:00
Pranam Lashkari 576fb1b1d2 impress: fixed incorrect text box uno command
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I45f58cd043fc684457bde2e896c9032f71ee1962
2023-08-24 22:33:32 +08:00
Szymon Kłos 6ddbc4dd75 Fix regression in tab cycle in dialogs
this is regression from commit:
f8e53bd851
Assign tab ids while defining tabs.

When opened Format -> Page Style dialog in Writer.
There was "123" label next to the tabs.
Also when switching between widgets using tab key
it was moving focus outside window.

Core is sending id as plain number what is easy to duplicate.
Let's add some unique name.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Iebf70c7968f336761baf19442101ac98a948218c
2023-08-24 15:05:41 +02:00
genofire d40f6387bd fix(helm): improve error alerts
Signed-off-by: genofire <geno+dev@fireorbit.de>
Change-Id: I58dd66f04a05be2b4b0befd7e77bee0cc83d9558
2023-08-24 18:01:35 +05:30
genofire 30555545d2 fix(helm): hostaliases for statefulset
Change-Id: 948a00a8-90ae-4722-bcf0-f4e796c9fc0b
Signed-off-by: genofire <geno+dev@fireorbit.de>
2023-08-24 18:01:35 +05:30
genofire 6654665a99 chore(helm): easy format of hostalieses on deployment
Change-Id: f3edb041-f152-4b89-ab0f-466267aecc87
Signed-off-by: genofire <geno+dev@fireorbit.de>
2023-08-24 18:01:35 +05:30
genofire 978a62afef chore(helm): update annotations for community haproxy-ingress
add also blocking urls hinds

Change-Id: f9aa92b2-af70-4547-a55a-4cf65316c320
Signed-off-by: genofire <geno+dev@fireorbit.de>
2023-08-24 18:01:35 +05:30
Andras Timar 1117b6129e Update l10n files for Weblate
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I29b26adc5a2aa7d063b67f6a69bed0ce49896840
2023-08-24 09:26:53 +02:00
Ali Elminia 13c6fdf4df Translated using Weblate (Persian)
Currently translated at 96.6% (490 of 507 strings)

Translation: Collabora Online/UI
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/fa/
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ie547bafef942b8bf9c5c565c92a360cb5811808a
2023-08-24 09:23:29 +02:00
Fatemeh Komeily 00f4a748f3 Translated using Weblate (Persian)
Currently translated at 96.6% (490 of 507 strings)

Translation: Collabora Online/UI
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/fa/
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ib0951375b5d5d71e2be6fda1f236d672a98f1219
2023-08-24 09:23:29 +02:00
Fatemeh Komeily 3325741a8e Translated using Weblate (Persian)
Currently translated at 0.6% (3 of 463 strings)

Translation: Collabora Online/Help
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/fa/
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I0fd177abb207227240d76c653d8a2b20e274ac48
2023-08-24 09:23:29 +02:00
Fatemeh Komeily 9ebe27f533 Translated using Weblate (Persian)
Currently translated at 83.0% (421 of 507 strings)

Translation: Collabora Online/UI
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/fa/
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I6d6f6b5a258c17ac568cbdb8318437707a0db6d7
2023-08-24 09:23:29 +02:00
Ali Elminia 212ed8118f Translated using Weblate (Persian)
Currently translated at 80.2% (407 of 507 strings)

Co-authored-by: Ali Elminia <ali.elminia@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/fa/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I96b95cc39164d319b1dd175e1c4bc92f59f76a06
2023-08-24 09:23:29 +02:00
Fatemeh Komeily 1427838dfd Translated using Weblate (Persian)
Currently translated at 0.4% (2 of 463 strings)

Translated using Weblate (Persian)

Currently translated at 80.2% (407 of 507 strings)

Co-authored-by: Fatemeh Komeily <komeily.fatemeh@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/fa/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/fa/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ib5305dee30fac650a7ae4ad0b54024dadd572f05
2023-08-24 09:23:29 +02:00
Salif Mehmed b67a995cdd Translated using Weblate (Bulgarian)
Currently translated at 56.4% (286 of 507 strings)

Co-authored-by: Salif Mehmed <mail@salif.eu>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/bg/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I749f69aaa0ffaab746fd32b61c51a7eb8744a318
2023-08-24 09:23:29 +02:00
Влад 42e50ab165 Translated using Weblate (Russian)
Currently translated at 66.5% (308 of 463 strings)

Translated using Weblate (Russian)

Currently translated at 100.0% (507 of 507 strings)

Co-authored-by: Влад <integration.into.society@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/ru/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ru/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I737794ab9edd43affe92ce1ed946cb4b2d7108b2
2023-08-24 09:23:29 +02:00
Reza Almanda 0855e1763a Translated using Weblate (Indonesian)
Currently translated at 100.0% (463 of 463 strings)

Translated using Weblate (Indonesian)

Currently translated at 100.0% (507 of 507 strings)

Co-authored-by: Reza Almanda <rezaalmanda27@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/id/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/id/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ifb59ded2241915d631e226278457e1db84965dda
2023-08-24 09:23:28 +02:00
Joan Montané 1666970674 Translated using Weblate (Catalan)
Currently translated at 100.0% (463 of 463 strings)

Translated using Weblate (Catalan)

Currently translated at 100.0% (507 of 507 strings)

Co-authored-by: Joan Montané <jmontane@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/ca/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ca/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: If0102cbee5b03a841a0f981f5a058e81a412bc88
2023-08-24 09:23:28 +02:00
SC 9cd6980f76 Translated using Weblate (Portuguese)
Currently translated at 100.0% (463 of 463 strings)

Translated using Weblate (Portuguese)

Currently translated at 100.0% (507 of 507 strings)

Co-authored-by: SC <lalocas@protonmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/pt/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pt/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Iecfb11300ca7b88b9d5ac1e302a18d1911eda0f7
2023-08-24 09:23:28 +02:00
Alexander Gabilondo d2a91a640e Translated using Weblate (Basque)
Currently translated at 100.0% (463 of 463 strings)

Translated using Weblate (Basque)

Currently translated at 100.0% (507 of 507 strings)

Co-authored-by: Alexander Gabilondo <alexgabi@openmailbox.org>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/eu/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/eu/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I2fd7abb99512784d6a75e3568f0fcb12c0d11b06
2023-08-24 09:23:28 +02:00
Sveinn í Felli 7ceb2c5f96 Translated using Weblate (Icelandic)
Currently translated at 100.0% (507 of 507 strings)

Co-authored-by: Sveinn í Felli <sv1@fellsnet.is>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/is/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ie447bb45fac5f16d15dd3806facc3c8289ec8148
2023-08-24 09:23:28 +02:00
Rob Pearson d89eea5b98 Translated using Weblate (English (South Africa))
Currently translated at 100.0% (507 of 507 strings)

Translated using Weblate (English (New Zealand))

Currently translated at 100.0% (507 of 507 strings)

Co-authored-by: Rob Pearson <rob.dunedin@gmail.com>
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/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I7fa179ebc9393c8b35e8057f9e3610b5d0ffb9d3
2023-08-24 09:23:28 +02:00
Ayhan Yalçınsoy 5db9812a21 Translated using Weblate (Turkish)
Currently translated at 100.0% (507 of 507 strings)

Co-authored-by: Ayhan Yalçınsoy <ayhanyalcinsoy@pisilinux.org>
Co-authored-by: PhD. Ayhan YALÇINSOY <ayhanyalcinsoy@pisilinux.org>
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: Ia307ca5dfa45473dbe283102c5c98257fc0f9b00
2023-08-24 09:23:28 +02:00
Martin Srebotnjak 03e08379f2 Translated using Weblate (Slovenian)
Currently translated at 100.0% (507 of 507 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: Ib8471d45e5884e7ecfdf63b1394db0d302c2a5f7
2023-08-24 09:23:28 +02:00
Milo Ivir 0ea0739fd3 Translated using Weblate (Croatian)
Currently translated at 100.0% (507 of 507 strings)

Co-authored-by: Milo Ivir <mail@milotype.de>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/hr/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I9029d57117d182967f54a8a0e53de2b2208ac0bc
2023-08-24 09:23:28 +02:00
Caolán McNamara e3cfc935ff cid#318907 silence Uncaught exception
silence various of these in tests and utilities

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I4fcc95b1b5d5c95e5ac40782550f95c08a3467bd
2023-08-24 08:30:40 +02:00
Caolán McNamara e0b70657fa cid#318912 Result is not floating-point
we presumably want the current behaviour so silence with
an appropiate explicit cast

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Ibed4cb2cc31b26195e407f25f7f0a2ea7172c67d
2023-08-24 08:30:40 +02:00
Caolán McNamara da54b23538 cid#322632 COPY_INSTEAD_OF_MOVE
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: If53b75521fa07d89828aaff06834f741e2b64a5a
2023-08-24 08:30:40 +02:00
Pedro Pinto Silva 6d7efe9876 Add missing renamedocument button
The newly added button in 24ac74db4f was
only added to writer

Also add css class

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I630640d94884cb5e50559fbbd8298554deb0a651
2023-08-23 16:18:04 +02:00
Caolán McNamara 26934061b1 cid#318872 Improper use of negative value
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Ia76b677d466c67fc47760fdcb41459446c4c8e8e
2023-08-23 12:06:31 +02:00
Caolán McNamara 7163b2f9d7 cid#318896 AUTO_CAUSES_COPY
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I1d34ae9287e3c639255541584e3daf9209387bc5
2023-08-23 12:06:31 +02:00
Caolán McNamara 492f678996 add and use 'N_ELEMENTS' in lieu of std::size
which isn't available in the current android toolchain

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I5834adb7c6211c7aad38f5977a7e425d9ca257fd
2023-08-23 12:06:31 +02:00
Pedro Pinto Silva e7a314caa1 Notebookbar: introduce simple search button
This way we increase status bar discoverability ( fixes #7098 ) and
group both search functionality in one place in the home tab

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ia1fa8fe58903088aad37a560edd033a184d35e0e
2023-08-22 21:23:07 +02:00
Skyler Grey 2e07fcb1a3 Fix 'manage changes' dialog expanding infinitely
A regression in change ID I8551242fc2b987f00c67088caa0ed07ee8526a72
caused the manage changes dialog to continue expanding when new elements
were added, no matter how big it got. This would cause you to be unable
to see all the changes when there were a lot of them because you could
not scroll through the list. This patch fixes the scrolling, without
making the list area very small again.

Change-Id: Ib29fb161522773ea9893b7bc21d06aab19b74c52
Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
2023-08-22 19:04:29 +02:00
Oli 8eae2a0adb Prevention of triggering the autocompletion list
A box would appear when accessing the accessiblity mode.
This was because of the autocomplete feature.
This patch disables it when using the accessibility mode.

Signed-off-by: Oli <oli.baker@collabora.com>
Change-Id: I461956b591271b2d3513bce7f81d136da6ca37a7
2023-08-22 19:02:22 +03:00
Oli 9399fced21 Moved the up arrow key event to tab pages
Tab pages now hold responsibility for catching the event.
Events were previously assigned to each individual element.

Responsibility is on each page and not the "toolbar-wrapper" element.
This is to allow functionality to also exist in jsdialogs.

Signed-off-by: Oli <oli.baker@collabora.com>
Change-Id: I57681c3573d9931a79856fb8ed43f119bf019535
2023-08-22 19:02:22 +03:00
Oli 7cbeb987bb Removed use of tab pointers before tab selection
This was done to avoid using accelerator keys before a tab is selected.

Signed-off-by: Oli <oli.baker@collabora.com>
Change-Id: I4bc8a8cd8d885491624e8c769bcbab123104189b
2023-08-22 19:02:22 +03:00
Oli 08757d2b3f Fix accessibility up and down keys on first load
There was an issue where on first loading a document and pushing the alt
key to bring up the accessibility mode, the up and down arrow keys would
not move focus up or down in the notebook bar. This only occured on
first loading the document.

Signed-off-by: Oli <oli.baker@collabora.com>
Change-Id: I003b74ecbaae80a6baf33709fa16d47261a1ed2e
2023-08-22 19:02:22 +03:00
Oli a8a0ed20bb Make up and down arrows move focus in notebook bar
Previously when focus was inside the notebook bar you could not change
between having focus inside the tab pages or on the tab buttons. Now the
up and down arrow allows entering and escaping from the tab pages from
the tab buttons.

Resolves #6933

Signed-off-by: Oli <oli.baker@collabora.com>
Change-Id: I1cf696223ff5739e6a48095acbdf3fd778af1ffd
2023-08-22 19:02:22 +03:00
Rash419 ccb20f1ed3 android: enable webview localstorage
- priortize theme settings from SettingsActivity over savedState
- fix darkmode toggle button does not behave as expected

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: Idb884cba3af335edc0936736f35610e91cfd64e6
2023-08-22 10:20:27 +02:00
Darshan-upadhyay1110 1626281940 Update shortcut information for calc sheet
Added information in help tab (keyboard shortcuts)
 - About moving back and forth in between calc sheets using keyboard shortcuts
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>

Change-Id: I7ccbc194fe67fb36f9d68827dfa7c5636c9bc7e8
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
2023-08-22 10:08:02 +02:00
Caolán McNamara 205f6d3119 Related: #7079 handle tile requests inside viewport first
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Ie25c7711485f37ab4d038a1c1d1dc1e4d4a8dd4f
2023-08-21 20:48:31 +01:00
Caolán McNamara 6d5c78dec0 move "combined" bit inside TileCombined class
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I274c5844660acbf69e50587cce3f4ddcae414723
2023-08-21 20:48:31 +01:00
Szymon Kłos da75488a46 jsdialog: handle vertical tabcontrol
vertical tabcontrol has "vertical: true" property

for now just handle it as normal tab control,
it doesn't use tabpages but regular grids for
tab contents

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ie374f8c68cbbf1e3076ca884ab54568ee204f04c
2023-08-21 15:19:23 +02:00
Darshan-upadhyay1110 7ef605badd Switch tab using keyboard shortcut
LO is offering this using `CTRL`+`PageUp` or 'PageDown`.
- but there are some browser restriction related to security purpose some of the event we can not prevent.
- for an example CTRL + PageUp will not be prevented using JS in browser ( as per browser security rules )
- so i have tried to add this shortcut using Ctrl + Alt
- we can cycle through all sheets.

Adding this small enhancement  as part of this `HackWeek` :)
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: I4e76a0cc382fbe97f16037c8f9d78174e8663491
2023-08-21 14:44:37 +02:00
Skyler Grey de7d4335ff Fix failed starts when core is at a relative path
- Previously giving --with-lo-path as a relative path caused collabora
  online to crash with "component context fails to supply singleton"
  errors
- This patch uses readlink on the with-lo-path option, expanding it into
  its full canonical path
- I could probably have gotten away with realpath, but for consistency
  with --with-lokit-path I decided to use readlink -f

Change-Id: I16aacddbda9749451578fb7aded6c3c4e145ee26
Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
2023-08-21 13:48:21 +02:00
Maks Wolkowinski 31ae779d82 feat: Add tooltip to hide menu button (compact view)
Signed-off-by: Maks Wolkowinski <m.wolkowinski@beebuzziness.com>
Change-Id: I05011bf9ffec99af8558c7af06dce5e350511f7c
2023-08-21 10:45:13 +02:00
Rash419 8310af30f0 fix: empty mobile wizard when opened for the first time
- it was only affecting wizard with tabs

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I6172a3a1a498982927e63676c4743be8f2ff9d80
2023-08-19 10:14:40 +02:00
Pedro Silva 9ac61152e1 Fix Rename document button works only on tabbed view #7109
We forgot to dispatch it

Signed-off-by: Pedro Silva <pedro.silva@collabora.com>
Change-Id: If1ae87ee8029d469d092680437023d389efcdec7
2023-08-19 07:55:10 +02:00
Rash419 c9e7591add clusteroverview: send routeToken with auth message
Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I6412d68ef0c86d7a618eaf0ad252c16dee565d77
2023-08-18 23:27:04 +05:30
Gökay Şatır 6137636083 Add other missing classes.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I5fb6148e872776a3d6c3adc9f5c1421cf57ea2e8
2023-08-18 15:08:53 +03:00
Pedro Silva d45b307e3f Notebookbar definitions: add missing class for dark mode toggle
Signed-off-by: Pedro Silva <pedro.silva@collabora.com>
Change-Id: Ie720f4dc762623bff0682162385fda7d591ebe0c
2023-08-18 15:08:53 +03:00
Pedro Silva 1404686fde Notebookbar definitions: add missing class for show resolved comments
Signed-off-by: Pedro Silva <pedro.silva@collabora.com>
Change-Id: I1de88564a4bd588544801f66518b964afa253a18
2023-08-18 15:08:53 +03:00
Pedro Silva a1e916812f Notebookbar definitions: add missing class for collapse tabs
Signed-off-by: Pedro Silva <pedro.silva@collabora.com>
Change-Id: Ib9ca5fb61908cd2e5d621158478ab29aaff4b1c0
2023-08-18 15:08:53 +03:00
Gökay Şatır edafed2413 Add missing class names to notebookbar definitions.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I15fb9fdba0d019a865c1edf42f1ab7b2197b4136
2023-08-18 15:08:53 +03:00
Gökay Şatır 1fd4c05111 Add "class" property to JSDialogs items.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I130b28ff40f9adf6bf05e2aed433e8ecc92acb1d
2023-08-18 15:08:53 +03:00
Darshan-upadhyay1110 c3aaae077f Add missing dark mode toggle in mobile view
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: I89100d703444e8bfe2a8960d00c62a1e1ea88a84
2023-08-17 19:08:22 +05:30
Pedro Pinto Silva 3103ab5c66 Add missing rename document icon
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I219161ffc505c5093f3f8226960f7a7d35455d7e
2023-08-17 15:13:41 +02:00
Aron Budea a1a6817e4d unocommands.py: Treat JS/TS files as UTF-8
Otherwise eg. non-ASCII shortcuts appearing in files can cause
failures like this.

Traceback (most recent call last):
  File ".../rpmbuild/BUILD/coolwsd-23.05.2.2snapshot/scripts/unocommands.py", line 454, in <module>
    toolbarCommands = extractToolbarCommands(onlineDir)
  File ".../rpmbuild/BUILD/coolwsd-23.05.2.2snapshot/scripts/unocommands.py", line 163, in extractToolbarCommands
    for line in f:
  File "/usr/lib64/python3.6/encodings/ascii.py", line 26, in decode
    return codecs.ascii_decode(input, self.errors)[0]

Encountered after 1a2500c8d3.

This is not ASCII in browser/src/control/Control.NotebookbarWriter.js:
`'accessibility': { focusBack: true,     combination: 'AI',      de: 'ÖI' }

Signed-off-by: Aron Budea <aron.budea@collabora.com>
Change-Id: I72aac2809530c14b9440f73e5072db17770f438a
2023-08-17 11:55:34 +02:00
Caolán McNamara 89f283c676 cool#7102 fix 2nd presentation under chrome not appearing
On entering full screen the normal browser window goes "idle" on losing
focus. When the full screen presentation exits no "focus" events gets
sent to the normal window so clicking "presentation" again doesn't do
anything as idle inhibits anything getting actually sent to the server.

in:
commit 5f655a7555
Date:   Tue Oct 13 19:26:16 2015 +0300

    loleaflet: print handler tdf#94607

a similar _map.focus() is done after a similar L.DomUtil.remove()

and doing there same here gets this case to work.

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

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Iae44ba949af2a64bf669b9d5f1113c647a354af1
2023-08-17 09:47:11 +01:00
Caolán McNamara 851c232531 cid#318843 COPY_INSTEAD_OF_MOVE
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Icb757fdc094f428a351df5db6afa53da04be51d1
2023-08-16 15:15:59 +02:00
Caolán McNamara 62504735ea cid#318868 silence bogus Double free
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I4ef594a2274a6a2b646ce2a305cdab6263390ef7
2023-08-16 15:15:59 +02:00
Gökay Şatır a45b4e875f Add accessibility keys for insert and format tabs.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I575520db1c10abd46957912dd21e3a1362dc7ebb
2023-08-16 14:58:31 +03:00
Gökay Şatır 10b58a0a4f Add accessibility definitions to draw UI.
Also simplify definitions.

Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: Ieccb431ba66a25a4e35ea4c2cb59c4490b84986d
2023-08-16 14:58:31 +03:00
Gökay Şatır 9fd60f55e0 Update Cypress tests.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I7bc9bca411f8caade56a56e9de16ad31921db16c
2023-08-16 14:30:14 +03:00
Gökay Şatır b304644be4 Calc - Add remaining tabs' accessibility definitions.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I5dfad5ec68277ec5e45df2885afdea853318eb39
2023-08-16 14:30:14 +03:00
Gökay Şatır 9436512afb Calc File and Home tabs' accessibility definitions.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I3eef334e14b710ab306cea8b7a3e3f11b986e245
2023-08-16 14:30:14 +03:00
Gökay Şatır 33abd9c437 Initialize contentlist with empty array.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I58abed98dffecb5d819e8a75f68dbe9d38a0149d
2023-08-16 14:30:14 +03:00
Gökay Şatır 49354607e0 Re-enable multi-language support on accessibility definitions.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I5d376260d05f72ebd56a8d4313dcbb1845b5041c
2023-08-16 14:30:14 +03:00
Gökay Şatır 34635de5d4 Calc: Add ids to notebookbar definitons & simplify definitons.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I0b4e7b17f6d5e361e2cf493b39459493c0441df1
2023-08-16 14:30:14 +03:00
Szymon Kłos ac8440fea7 jsdialog: add minimal size for treeview
Without it in calc -> insert -> chart treeview
for chart type selection was invisible / 0px width

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Iaf28c4860adcd00591a638fa10838fe8719bee23
2023-08-16 09:16:51 +02:00
Rash419 c4183d2709 android: fix app crashes after closing the document
- It exits LOActivity when lokit thread finishes using lokit_main_mutex.
  But if we edit document and exit without saving lokit thread gets
  finished but COOLWSD is still running to clean up the docBrokers.
  It takes some time to clean up this docBrokers.
  We need to exit the LOActivity only after COOLWSD is finished
- for that I have added coolwsdRunningMutex again
    - it was removed in ad32888d7c

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: Ic9785f5aa55deafbac98efc4013bd3376d0ba62d
2023-08-16 12:44:37 +05:30
Rash419 6a7b98af8a fix: cell border preview in mobile wizard
Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I6b6049751d95af7c42d931666beed424fd4a208e
2023-08-16 08:58:39 +02:00
Rash419 639068e3fe impress: remove unused mobile-slide-sorter
- to show previews we use slide-sorter element
  and presentation-controls-wrapper as container

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: Iaed0892779d5016a565d556955305317129edea4
2023-08-16 11:29:54 +05:30
Szymon Kłos 03fa9d9c86 jsdialog: always execute close message from server
Block only close requests from the user clicking on
'X' button. We need to always process close messages
from the server.

Eg. Format -> Theme, click Add:
then close parent dialog using 'x' -> should not work
then close parent using 'cancel' button -> should exit dialog

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I2164f01acf47a67dc1e35b85b37142bc88dfedc4
2023-08-16 07:56:36 +02:00
Szymon Kłos 2eda4740ca Don't show presentation on iOS in small frame
Full screen feature is not available on iPhone,
only on iPad with iOS 12+ (https://caniuse.com/fullscreen).

Instead open svg directly in the browser as a fallback.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I047051e420a0d786ec084817b8fe19c34e086cf6
2023-08-16 07:54:38 +02:00
Szymon Kłos 9a0b34f8fb jsdialog: fix error on insert_button
When button is inserted using postmessage API
it can have no command property. Prevent us from
TypeError here.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I84f1f94befb57d0e18699052c881b90de55a1239
2023-08-16 07:54:02 +02:00
Caolán McNamara 42df0dac71 cid#318842 silence Unchecked return value
and

cid#318906 Unchecked return value

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I9033f43dbbbcae8f5a15980d6f7b844370d54c7f
2023-08-15 15:09:36 +02:00
Caolán McNamara ce0c11f09f cid#318866 can elide the temporary here
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I8a7bb1b6b8535ecbdae8deddc10f3c010db28897
2023-08-15 15:09:36 +02:00
Caolán McNamara 461fe6a630 cid#318940 Big parameter passed by value
newRequest is always called with a const Request& already so might as
well make this copy inside the function rather than passing a copy
by value and moving it.

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Ib572637d29590b8b470a42da3293065ed86d7dd0
2023-08-15 15:09:36 +02:00
Caolán McNamara eaa2b0cf2f cid#318821 COPY_INSTEAD_OF_MOVE
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I91e2fe0bcbf9ebe68917b0326425ac73bfa544fe
2023-08-15 15:09:36 +02:00
Caolán McNamara 5dcf65f5c6 cid#318893 COPY_INSTEAD_OF_MOVE
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Ia478c77645c49b8c5d976407fcf6780cace7f211
2023-08-15 15:09:36 +02:00
NickWingate 68135a4682 Rename with file default when given unspecified extension
When renaming file in writer use the original extension
to save the file if the user doesn't provide one

Signed-off-by: NickWingate <nick.wingate@collabora.com>
Change-Id: I6b6293bb7bf8ede38a8fa63995ad553d1e45ee1e
2023-08-15 11:23:04 +02:00
NickWingate 24ac74db4f Add rename document to notebookbar and menubar
Signed-off-by: NickWingate <nick.wingate@collabora.com>
Change-Id: Iec25de88aa3e7089af102dd9f4bda6507308c215
2023-08-15 11:23:04 +02:00
Caolán McNamara 478fd19ccc cid#318850 Unchecked return value
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Iacca79e45e4a7ba299be8705765ffefd3b7feb28
2023-08-15 08:21:44 +02:00
Caolán McNamara 3502e1d006 cid#318903 Dereference after null check
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I37eeff9afc12a27744a7178da58f4c9b71272c12
2023-08-15 08:21:44 +02:00
Caolán McNamara 6062342827 cid#318980 COPY_INSTEAD_OF_MOVE
iss ctor takes a const std::string& and constructs with a copy of str as content

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I2805c869cb034a9b87e6e95cc58419b54a078b63
2023-08-15 08:21:44 +02:00
Miklos Vajna 7d6619be90 wsd, coding style: document double review for security
Document that authentication changes need double amount of care,
compared to other normal functional changes.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: Ib1820581f7175957f08f5e080d542c7441a3ffa2
2023-08-15 08:20:05 +02:00
Rash419 41bdf1ece8 admin: remove fixed width and height attr from svg
Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I39df378a0bcba2199d625dd5bf7a202b15354b0f
2023-08-15 11:11:01 +05:30
Rash419 65f6f46093 admin: use humanizeMem in adminClusterOverview.js
Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I323735c989e3a4448f57d896ea635dcdeb6bbe8b
2023-08-15 11:11:01 +05:30
Pedro Pinto Silva 555a07db70 AdminCluster: Use proper card headers for title instead
and round cards

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I632ca5a3053247ce4d12c4e028e0322ee1545124
2023-08-14 21:38:32 +05:30
Ashod Nakashian efe874f89c wsd: simplify shutdown and termination flagging
With the use of a single flag for both, the
logic is now less ambiguous, as we cannot have
termination flagged without also implying
shutting down.
The assertions are no longer needed.

Now that setting the termination flag
explicitly implies having the shut down flag
as well, the checks are simpler. We only
need to check that the shutdown is not set
to continue running as normal, since having
the termination flag must perfoce mean shut
down is also set, there is no need to check
both.

Change-Id: I99e22f5668385182b0594040a8e3354b55e74642
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-08-14 16:32:50 +02:00
Ashod Nakashian 35dda35f9d wsd: move statics into anonymous namespace
Change-Id: I97b0cd7de96eced1a4023e55171b1e35b52a95c7
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-08-14 16:32:50 +02:00
Gökay Şatır e660bb8e66 When document layer is not ready and socket message is not delayed, message is lost.
Wait for doclayer to be ready in this case.

Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: Ib3e9427a89e8be7d97f7baf92bdcb6295c695ca2
2023-08-14 16:17:19 +03:00
Gökay Şatır 8570a03555 Correct menubutton control id calculation.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: Ief7692cbdc479a651d350d7beab2e558e6d27b4b
2023-08-14 14:24:46 +03:00
Gökay Şatır 3d1725ea44 Cypress updates.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: Ieefdcae70be0fce920e2e2b3d3b6ba1b179a6857
2023-08-14 14:24:46 +03:00
Gökay Şatır 7d084e40cb Update cypress tests.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I1c60f89d6ab68e4a61861d77383010dd7f22480a
2023-08-14 14:24:46 +03:00
Gökay Şatır a3d9abcc20 Move all accessibility definitions from notebookbaraccessibilitydefinitions into control.notebookbarwriter.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I8db815859e91a65dc5452a0c3c0307701088514c
2023-08-14 14:24:46 +03:00
Gökay Şatır 7d0f7d7378 writer insert tab keys are added.
Replaced id based checks with uno command ones.
Removed unnecessary function from notebookbaraccessibility. We don't use automatic id assignments any more.

Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I3ad69916dea72d0e7e37430e629d74763c79005c
2023-08-14 14:24:46 +03:00
Gökay Şatır 1a2500c8d3 Merge accessibility definitions with notebookbar definitions.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I752eb0a2f44a892ed2cb7b2fd770c4d3ab997830
2023-08-14 14:24:46 +03:00
Gökay Şatır 939a7a0301 Simplify notebookbarwriter and tab page containers.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: If923c06ffd6b7bca77d25008497c390b8f3dcac8
2023-08-14 14:24:46 +03:00
Gökay Şatır 2cc714705a Remove access key assignments from jsdialogs.
Tabs' access keys are defined by notebookbar accessibility definitions class.

Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: Ie04782aa5b747ea9f3b7bd3f84a33bf0554648dd
2023-08-14 14:24:46 +03:00
Gökay Şatır f8e53bd851 Assign tab ids while defining tabs.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I51dbadb5d168f7b7f762a20a445773c6d53a511e
2023-08-14 14:24:46 +03:00
Caolán McNamara 6682a2a527 cid#318900 Out-of-bounds write
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I18f30bbe7271a93a44ce798e358277add9876454
2023-08-14 12:31:55 +02:00
Caolán McNamara 307818ba1c cid#318834 Missing move assignment operator
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I798c0e6610afca9d0d503514b33e75c35a7ccb33
2023-08-14 12:31:55 +02:00
Caolán McNamara f7e121e2ea cid#318953 COPY_INSTEAD_OF_MOVE
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I863ce92808f93e98fecb6022324228b5acdba141
2023-08-14 12:31:55 +02:00
Szymon Kłos 4b9cbab33d jsdialog: fix spinfield precision detection
Use string based approach to avoid errors.
Eg. 36.37 was a problematic value when multiplied by 100.
This fixed indent spinfield in sidebar.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Iae25acbf59cedfd20cbcb0677fd87e08d06c3f6d
2023-08-14 12:30:02 +02:00
Szymon Kłos eee6e49e8a cypress: fix unstable alignment test
sometimes svg generation takes more time it seems

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I0e6ad493cb452a9725235f2c01c6792126b8de9c
2023-08-13 11:35:40 +02:00
Szymon Kłos 697f4a6109 cypress: fix failing table tests
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I6132ec3a794de75caa6d1ba0c94e730cda94ea0b
2023-08-13 11:35:40 +02:00
Szymon Kłos b85eb1b03f cypress: fix svg text-decoration detection
this was changed in the core:
commit 0a549b2c9595cd076e3b503b67df93bff380885a
svg: export text decoration for text run not paragraph

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I8906ee07c7ff88c9dcdbebe73d2c620e797a8b3a
2023-08-12 10:34:15 +02:00
Shehr Bano e6a06eae1c FIX #7037: JSDialog: label vs textarea vs input field inconsistent paddings
Signed-off-by: Shehr Bano <shehr.bano@collabora.com>
Change-Id: I53494733c47b35d59133979c456665b4174e393c
2023-08-11 12:15:19 +02:00
Pedro Pinto Silva 16b8bead39 Revert "Add action for detecting code duplicates"
This reverts commit 8ce751a3ca.

- Any PR coming from fork fails
  - User needs to manually go to:
  settings > Actions: General > "Workflow permissions" and allow write permissions
- Right now we have too big of a threshold (26 lines) to be as useful as we would hope

Probably best to remove this action for now and instead use directly
the npm package (https://www.npmjs.com/package/jscpd#usage). Advantages:
  - More control over what is analyzed
  - It can be add as a step in make check
  - User can run it locally using make check; CI can also use that.

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I3c112218a83fd6e56e7fb2f47b24315347a74cdd
2023-08-11 11:45:21 +02:00
Rash419 47f4305050 fix: cursor jump when hyperlink popup clicked in mobileview
Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I4c5f1f2923f894156f5f05382b0f54476dea8a56
2023-08-10 17:38:22 +05:30
Caolán McNamara 912dfcd08e autofill onMouseDown doesn't generate working event position for hidpi
so the autofill handle in hidpi didn't work

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I718d9a8d3954a441705849eba174fe6b5b2983c4
2023-08-10 11:41:24 +01:00
Ashod Nakashian a42adac98f wsd: add the web-server URL to the media-src list
We need to allow loading media sources from
the web-server URL. This seems to be necessary
at least on iOS.

Change-Id: Ic7b23c4f80b975460de9311a67f3c5cb51758d14
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-08-10 12:24:08 +02:00
Andras Timar 85ee03f98f CollaboraOnline#6546 enable automatic color in default paragraph style
use the xml token "use-window-font-color" to toggle auto color on.

https: //github.com/CollaboraOnline/online/issues/6546
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ib14b144ce6f593114a8130f5816f479d5cd4fe85
2023-08-10 12:22:26 +02:00
Pedro Pinto Silva c89cccfc7a Welcome: allow scroll bar
Otherwise content is not reachable.

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ibef06bd7ee18702674e41e8f942449ef49ffdd62
2023-08-10 11:48:36 +02:00
Marco Cecchetti 96a7cfb25e a11y: provide info about current table and cell to screen reader
When we get in one or more tables screen reader reports row and column
count.
When we get out one or more table screen report reports "out of table"
for each table.
When the fosused cell changes screen reader reports new row/col index.
Screen reader reports cell paragraph content, too.
Added also cypress tests for checking that the table/cell description
string is correct.

Signed-off-by: Marco Cecchetti <marco.cecchetti@collabora.com>
Change-Id: I078b29a2f76f91df479f75db76113c80405f7169
2023-08-10 09:29:09 +02:00
Darshan-upadhyay1110 7825f82ce1 Remove open_local_editor button in tablet view
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: I18908150ee537bfe7dd36b0b94f8baa11d2739ea
2023-08-10 12:51:40 +05:30
Caolán McNamara 5185b7bedf cid#318934 silence Untrusted loop bound
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Icd7a7d3394dda93045f97481b109498fca3c01c8
2023-08-10 08:47:25 +02:00
Caolán McNamara d79d86ed91 cid#318844 Dereference before null check
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Ie3b4da580b86f4f313825dabb6d73af1508432d9
2023-08-10 08:47:25 +02:00
Caolán McNamara 2a8910a941 addPollFor default arg is now always explicitly passed
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Ic9a822835ace44a1dee0c3dc4c8eb64d8e929b4d
2023-08-10 08:47:25 +02:00
Caolán McNamara c593a0bde5 replaySync is unused
since:

commit 96adaa15d1
Date:   Thu Apr 14 19:05:26 2022 -0400

    wsd: kill coolwsd_fuzzer

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Id4b2275fbb0680a82ae29848a182de06a2de0d04
2023-08-10 08:47:25 +02:00
Caolán McNamara b6f87b06e3 cid#322475 COPY_INSTEAD_OF_MOVE
configure currently requires a min of c++17

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I613dac6e66c3e77183d46623346969179bccc489
2023-08-10 08:47:25 +02:00
Caolán McNamara 1cd88f217e cid#321976 AUTO_CAUSES_COPY
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I2207cc530e1773f29cf540ea2ff9c6f44c4c237b
2023-08-10 08:47:25 +02:00
Rash419 5dcce1965e android: enable dark mode in documents
Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I108601f78f4d7bbf704b5f5f89b20c8f8a597355
2023-08-09 17:37:16 +02:00
Pedro Pinto Silva c2192b4a67 Screen reader doesn't properly report tab names in Tab View UI
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I0ebe938080fa0e6865d4bf18e5dd33b0eb6a1567
2023-08-09 17:21:58 +02:00
Caolán McNamara 0c611649e5 cid#318854 Unchecked return value
check this one like we check all the others

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Id8379c6873fe7dd6466dc265cea6847d120aa0ce
2023-08-09 13:39:23 +02:00
Caolán McNamara 6d873d6837 cid#318919 Dereference after null check
map is never null so make it a reference

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I9f6ad863d0a1102dd7e26a5668b1c6ba71249580
2023-08-09 13:39:23 +02:00
Caolán McNamara b1f88c4cb2 cid#318875 Dereference after null check
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I40c824e26183f0c0c17e1503dc1c438ba1d2ce5c
2023-08-09 13:39:23 +02:00
Caolán McNamara 2119a19881 cid#321981 AUTO_CAUSES_COPY
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I6c2d30c8db254beb6b20aae7891b089a986a4df8
2023-08-09 13:39:23 +02:00
Henry Castro a2b924033d admin: rename ACCESS_TOKEN -> JWT_TOKEN
To avoid confusion with the WOPI access token.
.

Change-Id: Ie38e0f11d0655e89eb1c7f1e20b73a9b8756ba21
Signed-off-by: Henry Castro <hcastro@collabora.com>
2023-08-08 08:27:30 -04:00
Gökay Şatır 441d064b7a Make insert shapes menu accessible.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I7421cbf8e745b0dd973c7f99b985e8bf98b4859f
2023-08-08 10:07:09 +03:00
Rash419 340bbb0328 admin: increase font-size of y-axis
Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I0439d79d487329bea8162762854430bac0b51448
2023-08-08 10:10:53 +05:30
Pedro Pinto Silva 3f0c9d5c55 admin: imprv ui sizes of adminClusterOverview.html
- Graph axis text is too small (10px) better to set it to 1em based on
parent div (16px). Good to also set any group within svg to 1em to
avoid any surprises
- Currently tablets from one card is spilling over to the next card
when there is not enough space. Better to allow scrolling.
- The left pane should be hidden even before reaching the mobile
size. This will fix the lack of space for cards and avoid everything
being so small

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I58c88385875469b56542703663e570ab4d63fbdc
2023-08-08 10:10:53 +05:30
Gökay Şatır c12885c6ec Make insert table popup accessible.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I8dfa71208e22bd26257f2133a85a407afb2fd364
2023-08-07 15:19:00 +03:00
Gökay Şatır 345c8c7d48 Fix js error - notebookbar accessibility.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: Ic17054cf6e195d8d1d6acb8b5c2a92112084e0de
2023-08-07 15:19:00 +03:00
Paris Oplopoios a003126a65 Give new sockets a canonical view id in tests
Signed-off-by: Paris Oplopoios <paris.oplopoios@collabora.com>
Change-Id: I0c8a534fccb8088ab303852304802b4926369058
2023-08-05 12:00:08 +03:00
Paris Oplopoios d0c5321aaf Fix getting canonical view id of 1000
Also tilecombine request now uses the canonicalviewid

Signed-off-by: Paris Oplopoios <paris.oplopoios@collabora.com>
Change-Id: Ib386edcf78de17cb4fc3d8c3c6ce65f6b52c8b5f
2023-08-05 12:00:08 +03:00
Rash419 0ed983d7a3 admin: refactor adminClusterOverview.js
- refactored special case for templating
  adminClusterOverview.html
- removed useless variable
- format the code, fix indent

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: Ib22cb481db7c7ef94b11f3044d0cd856e6d0eed5
2023-08-05 14:28:29 +05:30
Rash419 87bc8b10c4 admin: imprv ui of adminClusterOverview.html
- increased the sidebar length
- fixed html not covering fullscreen
- increase the number of card from 2->3
- remove unused property

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I86f6cf0225d4675bbd69dd0ebd7f77dbba6f9858
2023-08-05 14:28:29 +05:30
Rash419 8a879404ba admin: added podname to card
- if podname doesnot exist use serverId as title of card

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I7c09b7a8943b8a6a19bc6937ff180a06d82d12a6
2023-08-05 14:28:29 +05:30
Rash419 944f269926 admin: added new cluster overview page
- added DlgLoading class to show loading modal dialog
- upgraded the d3

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I8bd99bbadaa59a7de1e83bebde8db0dce920705d
2023-08-05 14:28:29 +05:30
Rash419 fc77e1a1ff admin: fix auth issue when switching between
multiple cool servers
- also good to check response first as client
  might use persisted cookies

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: Idcd85266a4cc5020aeaca7d7fb8428bc0a3d7d32
2023-08-04 21:25:37 +05:30
Caolán McNamara 718992e30a cool#6911 don't show notes in hidden cells
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: If29b9603b990479b538dcc62c1e0e924679a7275
2023-08-04 15:43:33 +02:00
Caolán McNamara 15422721b7 cool#6911 don't show off-screen notes from col/row 0
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Ib8281304568f8376ba01e14e360d6f174859851b
2023-08-04 15:43:33 +02:00
Caolán McNamara 7b51f8c22e cool#6911 draw the note indicator browser-side
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I175a5dc8f553c7e0eafef3a5e4aedff4796352e9
2023-08-04 15:43:33 +02:00
Caolán McNamara 4d7f7d67d0 cool#6911 calc comment positions are now cell addresses
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I0a70f1801f519df066ff5bc9dd57a5d485967b61
2023-08-04 14:15:06 +02:00
Caolán McNamara aaa61e44e5 allow tileprocessed to accept multiple comma-seperated tileids
and bundle them together when emitted from the browser-side

// i.e. FIXME: new multi-tile-processed message.

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I69916cbe30c26686fb44a2d8d229704c459b6601
2023-08-04 13:07:29 +01:00
Caolán McNamara 509c29421e split this hunk into reusable ClientSession::onTileProcessed
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I383542b6c9c3a888937e2f7e330ec7e77efaaa82
2023-08-04 13:07:29 +01:00
Caolán McNamara 040ee51ec9 occasionally testTileSubscription fails
sometimes the deltas arrive in a different order, later in the same test
we have "ordering is undefined tiles arrive in so swap if needed" for
a pair of later deltas, so do the same reordering for this
intermittently failing earlier test

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: If51edb9a4e22d469d9e029c38da7348c34b17832
2023-08-04 11:18:02 +01:00
Gökay Şatır 5485bea24e Add arrow key handlers for better accessibility support.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I3f6e81797c63dbe3cc5742ff39382a4052225541
2023-08-04 12:29:19 +03:00
Gökay Şatır 14c84ac453 Improve accessibility of w2ui drop down menus.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I9ff58eec19ccc7229c81b9d1f258bc8c4825634d
2023-08-04 12:29:19 +03:00
Caolán McNamara 8bb41ee775 cid#318947 Unchecked return value from library
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Ia8b96035d5038d82a55f68a751fdbda5806ec1d6
2023-08-04 10:17:58 +02:00
Caolán McNamara 9e0b0a0c85 cid#318909 Argument cannot be negative
and

cid#318961 Argument cannot be negative

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I4bae768a3c72361309b84b624c019a315b574d97
2023-08-04 10:17:58 +02:00
Caolán McNamara 1d179cdf76 cid#321981 AUTO_CAUSES_COPY
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I92d66a3d497d574d819f18960bff5b60e180b715
2023-08-04 10:17:58 +02:00
Caolán McNamara 7cb1dfd4eb cid#321977 AUTO_CAUSES_COPY
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I50f94b290e40b11d555c51448630835d71a62019
2023-08-04 10:17:58 +02:00
Henry Castro c56ebcc06d browser: remove hyperlink pop-up
Unfortunately, we cannot show the hyperlink pop-up,
in client side based on cell formula, because the formula
had not been evaluated.

=HYPERLINK(A1,A1);

The server should fire event "hyperlinkclicked".

Change-Id: Ie2b743812493e1790b9e54f0050974c585e61e00
Signed-off-by: Henry Castro <hcastro@collabora.com>
2023-08-04 08:52:59 +01:00
Pranam Lashkari cbeee7727e accessibilty: added accessibilty fields to the mobile edit button
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: Ifdb59ff3463a0354549316994f8e80b341e28133
2023-08-04 09:17:58 +02:00
Szymon Kłos e8b2ea5ca1 Deduplicate onInitialize method in Column/Row Groups
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I404b9de7159b410f922dd1a66991aadc5dae1c91
2023-08-04 08:12:03 +02:00
Szymon Kłos 8ce751a3ca Add action for detecting code duplicates
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I8a601aed33fbdc5654cd2e59f42307161e04e18b
2023-08-04 08:12:03 +02:00
Rash419 3831e6f4e2 docker: fix permission denied in archlinux
Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I6eac76976c6bd076f24c795b3eeec876bfef3e6b
2023-08-04 07:58:56 +02:00
Darshan-upadhyay1110 b38a91d1c5 Add check for Insert_buttons to display in tablet view
Added tablet check for Insert buttons to display on dom or not based on passed condition .
 - By default custom buttons will show up in tablet.
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: I103461b02405bc03d63671b885a31735668d4111
2023-08-03 18:45:50 +02:00
Shehr Bano 1428888afc Writer: Fix to issue #6977, extends vertical space of ui-treeview in Manage Changes
Signed-off-by: Shehr Bano <shehr.bano@collabora.com>
Change-Id: I8551242fc2b987f00c67088caa0ed07ee8526a72
2023-08-03 18:37:58 +02:00
Rash419 c9a9e5635d show copy/paste timeout warning
Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I438ca03c8122c6c85acac7dda141f685a94fdc53
2023-08-03 09:43:18 -04:00
Jaume Pujantell 63473360b1 save-as preserves document password
Signed-off-by: Jaume Pujantell <jaume.pujantell@collabora.com>
Change-Id: Ibaa00fbe4e83c8e4edfe2a70ede861f9adbd20bf
2023-08-03 11:09:35 +01:00
Ashod Nakashian 75ae9894b9 wsd: Util::make_unique -> std::make_unique
Change-Id: I1063913f91571ea6ad95386a3da6a4072574d155
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-08-03 08:40:20 +02:00
Ashod Nakashian 347b3c90e5 wsd: correct assertion
Change-Id: I07d6ec53c08a5f4d7d259224452db4d533e14689
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-08-03 08:40:20 +02:00
Ashod Nakashian 5b52f7d8eb wsd: smart pointer cleanup
std::make_shared and std::make_unique
are superior to explict smart pointer
construction. Where we have private
constructors, we can't use them.

Change-Id: I492122f58e958113c6e6d31445c6614ad98c89aa
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-08-03 08:40:20 +02:00
Ashod Nakashian 67dd4e4a9d wsd: test: new cool.html post request test
Using our own http library, we request
cool.html with realistic parameters and
validate many key values sent in the
request.

Change-Id: Ie3c0ac042f64bf5d6ed21354a33efac801b32846
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-08-03 08:40:20 +02:00
Ashod Nakashian 35605510aa wsd: include string_view
Change-Id: I85632cd6a9fece7d63ca2402c2cf924465df5e43
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-08-03 08:40:20 +02:00
Ashod Nakashian b8854ea2e9 wsd: decouple FileServerRequestHandler from COOLWSD
Change-Id: Ie121849a16bb84195d32e11a67e4aad5753aebfc
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-08-03 08:40:20 +02:00
Ashod Nakashian d47001267b wsd: reduce manual http header creation
We have http::Response specifically for
this kind of thing.

Change-Id: I57130754f95c06f5ab958ca373f21763e74cb6a2
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-08-03 08:40:20 +02:00
Ashod Nakashian 5e8707bce9 make: better clang detection
Change-Id: I979014429b0a09883d828acf5ba76105ac255632
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-08-03 08:40:20 +02:00
Ashod Nakashian 4f8d0fc4cb wsd: test: better UnitWSDClient interface
Change-Id: I4ed292bfccc57f5b41e2ce44a3c30bcad405ae09
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-08-03 08:40:20 +02:00
Ashod Nakashian c1725faac1 wsd: dump the last quarantined version with the status
Change-Id: I46e1d84ba46bea3bf6cfd9c043af247e8b37afc1
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-08-03 08:40:20 +02:00
Ashod Nakashian fbc4373ceb gcov: support cleaning coverage data and document
Change-Id: I9d309a9e551f2a110b71c773af10e65b60c07c9c
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-08-03 08:40:20 +02:00
Henry Castro b9a1254126 browser: admin: use access token
The GetCookie was removed due to sensitive
access data because the browser can block to
security concerns.

Change-Id: Ifaeb495202a53125bda9e3705b6e33b7e54e56df
Signed-off-by: Henry Castro <hcastro@collabora.com>
2023-08-02 20:23:42 +01:00
Henry Castro 47485adc3e admin: add access token
The access token will validate the session
when a websocket is connected to the server.

Change-Id: I008b04a499ab0d85fd6f95fc06a511f800c0bb2e
Signed-off-by: Henry Castro <hcastro@collabora.com>
2023-08-02 20:23:42 +01:00
Maks Wolkowinski 1f5919140d Collapse notebook bar from view tab
Signed-off-by: Maks Wolkowinski <m.wolkowinski@beebuzziness.com>
Change-Id: Ic15fb1723bff6861b1fc115ef161cf6caa1b70af
2023-08-02 18:25:37 +02:00
Marco Cecchetti d99aece12f Improve a11y support for tabbed UI
Provided support for screen reader to report key accellerators
description.

When <alt> is pressed screen reader says something like: "tab control
Home tab selected".
When an accellerator is typed such as "N" screen reader says: "N
Insert tab selected".
When an accellerator for a tab item is typed the screen reader says
the typed letters and the item name as set in the 'alt' attrinute for
the button element.
For instance by typing accellerator for bold style ("1"), the screen
reader says: "1 Bold"

Signed-off-by: Marco Cecchetti <marco.cecchetti@collabora.com>
Change-Id: I64b198f79cb9f7f13dcd1a4fe0890e4317e512dd
2023-08-02 16:43:21 +02:00
Gökay Şatır 7afe5dfe8b Remove tabIndex from container of color pickers.
Turn image buttons into actual buttons.

Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I51dc5c900bdcf2c06f9768526a9363f4539deb76
2023-08-02 15:18:30 +03:00
Gökay Şatır e414ac3c86 Rename conflicting accelerator keys.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I926dc7145991b5cb3c251cdba43d2bbd67363482
2023-08-02 15:18:30 +03:00
Gökay Şatır 54b16ea222 Make color buttons interactable with keyboard.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: Ibf35d6304a717a5870998fb761ca6630db5df4b2
2023-08-02 15:18:30 +03:00
Gökay Şatır fd7e041c90 Add focus loop to color control when keyboard is used.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: Ia860c055ac10b31d388bf159eb3dccc4ec101c7b
2023-08-02 15:18:30 +03:00
Gökay Şatır a73ae5a1a5 Focus on the color input popup when keyboard is used.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: Ibf189aaa6029b3de1e1b4233d583f42e07be21d6
2023-08-02 15:18:30 +03:00
Maks Wolkowinski 3a8ff4ef3d feat: Add hide menu entry in compact mode
Signed-off-by: Maks Wolkowinski <m.wolkowinski@beebuzziness.com>
Change-Id: Id40312f6731cddaab110dc5e55ee7115ce08d6fc
2023-08-02 14:06:13 +02:00
Gökay Şatır 325ef1be01 Add functionality for setting access keys of buttons which are added via insertbutton post message.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I6c5746c36b89f4ad4d6c383a2ee5144aecefc1ed
2023-08-01 10:35:14 +02:00
Gökay Şatır 429f895bbf Allow notebookbar insertbutton post message to specify accessKey.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I0693cae17a71810a1c957b5c5600700073b1242d
2023-08-01 10:35:14 +02:00
Darshan-upadhyay1110 76fc8f176a Add reset accessibilityKey
On focus away or if NotebookbarAccessibility is disabled then remove accesskey
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: I04310f7ee4ab599a0c53c7aceaba459dd7641681
2023-08-01 13:57:14 +05:30
Pedro Pinto Silva 498a02c522 Show userlist on tablets
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I7c3b45846e465b608f87fa0a0067828e3d276ecd
2023-08-01 09:26:35 +02:00
Pedro Pinto Silva 218583ce22 Tablet: Hide document file name input field
The input field is already being hidden for mobile. For Tablet and
with the increased amount of UI elements on the top bar best to hide
it also. Renaming the document is a quite rare used action when
compared to any of the other top bar actions (switching tabs, open
sidebar etc). Better to hide the #document-name-input when on tablets
instead of trying to fit everything (and end up obstructing tabs for example)

Tablet user can always:
- Use the integration (already used to do many other file manipulations) to rename the file
- Use the in-app Save as can still be used to save a copy of the current
document with a different name

----

Possible future improvements would be to add the possibility to rename
the file when using a tablet:
- Add menu entry and tabbed view button
  - Control.Menubar.js something like {name: _('Rename Document'), id: 'renamedocumentbtn'}
  - Control.NotebookbarWriter.js add bigtoolitem Rename Document
- Maybe in Control.UIManager.js add a renameDocumentBtn function that
  - Creates a JSDialog with document-name-input element + Cancel btn +
  OK btn
  - Ideally that input element would re-use the functionality from L.control.documentNameInput() -> Control.DocumentNameInput.js

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I968e806a4a9e0018b38b87fc249a57e5af099c78
2023-08-01 09:26:35 +02:00
Szymon Kłos cf545e8152 Don't steal focus from outside iframe on load Calc
When Collabora Online is inside iframe and we load
Calc spreadsheet, after few seconds we receive CellCursor
message. In case when user was typing outside iframe in
some textbox - we were stealing focus, what caused
that user started to type inside spreadsheet.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I12a5501be6f59f73830ff9bf25c98a00492b6caa
2023-08-01 09:22:01 +02:00
Michael Meeks 6c382f5415 rle: optimize inner loop bit-bashing.
Simplified code:

+ re-use the bit mask as an inner loop counter.
+ turn alpha only rows into zero length with agreed lastPix.
+ keep lastPix around on the stack.
+ handle odd widths in a duplicate slow-path

Change-Id: Ibc7630f7187ea5f4904c6fed14dda28cdfbf7523

rle: further optimize the pixel reading & de-compression.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: Ifcaaa45d1de6532b3fd43015c47a37daf56c2ea5
2023-07-31 21:31:13 +01:00
Caolán McNamara 8a715cb04c calc insert comment checks undefined tab field
and so this loop never finds anything, the intent is clearly to find
an existing comment in this cell so use the right field for that.

possibly a problem since:

commit 922ae4924a
Date:   Wed Jan 26 15:08:31 2022 +0300

    calc: Fix new comments do not check tabid on insert

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I11208493ef7eae6a01576d90129b25ed9f792d62
2023-07-31 09:05:23 +01:00
Michael Meeks 03d83ab6b8 paste: cleanup excessive debugging.
We don't want to dump the whole paste buffer as hex, or indeed any
large mis-encoded string - instead crop to the problematic section
for easier debugging, and no performance hit.

Change-Id: I30518beea436895a42b3429c3cb6e16e2093cca9
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2023-07-28 21:38:02 +01:00
Pedro Pinto Silva ec67c92264 Tablet: Non-functional sidebar button shown in read-only mode
Do not wrongly switch part of the UI to edit mode when on read-only
mode. Best to be only remove readonly css class when it's not needed as
opposed to removed it whenever refreshNotebookbar() is called.

Before this commit:
- We were showing tabs in wrong mode (readonly mode) -> every-time
refreshNotebookbar() was called. Thus, initial tablet mode was
appearing with icons and actions from edit mode.

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I6ad9c8c14e60d4c3513f63b75717db0a124b73ea
2023-07-27 16:44:09 +02:00
Szymon Kłos a56f034dc6 Share code for findTailsGroup
Introduce getTailsGroupRect method which will be
different in every implementation but share findTailsGroup logic
using above function.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I321abaa2579bfdff08c8cd4df2e781cd9a28c3d3
2023-07-27 16:01:40 +02:00
codewithvk 8b5df0c4b3 Fix : Menubutton should have disabled state styling different
Signed-off-by: codewithvk <vivekpatel7202@gmail.com>
Change-Id: I1cd97503e0d3ca4333b11552ca3571093cf10bfe
2023-07-27 12:25:26 +02:00
Tex2002ans 06f8ee610f Update feature_request.md to use Headings
I added Headings + updated some wording/examples in:

- Feature Request

so when users submit a "New Issue" to Github, it will look nicer.

Signed-off-by: Tex2002ans <Tex2002ans@users.noreply.github.com>
Change-Id: Ic7c5b0a841d39b2cd2b20c5d4a31846eba0c3f4e
2023-07-27 12:21:25 +02:00
Tex2002ans 6b79e52831 Update bug_report_smoke-test.md to use Headings
I added Headings + updated some wording/examples in:

- Bug Report (Smoke Test)

so when users submit a "New Issue" to Github, it will look nicer.

Signed-off-by: Tex2002ans <Tex2002ans@users.noreply.github.com>
Change-Id: Id72ed9ac10a6ae935fb5fa4b1001c11683f46672
2023-07-27 12:21:25 +02:00
Tex2002ans dcbc0208bb Update bug_report.md
I added Headings + updated some wording/examples in:

- Bug Report

so when users submit a "New Issue" to Github, it will look nicer.

Signed-off-by: Tex2002ans <Tex2002ans@users.noreply.github.com>
Change-Id: Ie32f2c9a4c6ed47aaf198286a0d39831fa397992
2023-07-27 12:21:25 +02:00
genofire 850089377f fix(helm): update appVersion
Change-Id: I497d36c76f74791b8535e6e89bc9acca536c58e3
Signed-off-by: genofire <geno+dev@fireorbit.de>
2023-07-27 12:47:29 +05:30
Darshan-upadhyay1110 16bb328456 Added visual feedback after copy information into clipboard
* Added visual feedback to inform the user that information is already copied
 * Change the image to a check-mark temporarily
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: I41debc2421841e4f2235f2d31c49d3687a096339
2023-07-26 18:59:45 +02:00
Darshan-upadhyay1110 2ac7183e44 Add Left or right arrow on a tab label should switch tabs
- accessibility key features
    - focus on tab when press `Alt`.
    - move back and forth tab focus by ArrowLeft and ArrowRight
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: Id8c8e2a8bcb57c90e0762dd3916b851fff8e0a6f
2023-07-26 10:24:13 +02:00
Aron Budea 80a390f740 Revert "Fix wrong device detection logic."
On actual iPad (2048x1536 native, 1024x768 browser), in
landscape view in Safari, mobile phone view is shown in
online instead of tablet.

This reverts commit f1e9ee72fe.

Signed-off-by: Aron Budea <aron.budea@collabora.com>
Change-Id: I2cd4ba6cdcd616760c06c7db479e6d13be3d83b4
2023-07-26 10:08:58 +02:00
Aron Budea 91c166d26a Bump version to 23.05.2.2
Signed-off-by: Aron Budea <aron.budea@collabora.com>
Change-Id: Ib03fddb00af05eaec4711c0b623713a993a5d56b
2023-07-24 17:08:40 +02:00
Pedro Pinto Silva 5aa5703885 Fixes #6946 and all unstyled kbd elements
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I09583d7c27cffc0f5b9722de1925977089bf832b
2023-07-24 16:30:02 +02:00
Szymon Kłos fb2932067d Remove view selection on user disconnection
Fixes type error on switching sheets in Calc:

Steps to reproduce:
1. Open Calc spreadsheet with 2 sheets and 2 user sessions
2. Switch user A to sheet 1
3. Switch with user B to sheet 2 and select few cells
4. close user B browser / tab
5. switch user A to sheet 2

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I942becceaabae3a6e1bbbd230e12166348b341b3
2023-07-24 13:56:51 +02:00
Pranam Lashkari fb5909bc40 theme: use integration theme value from the interation message
problem:
till now we used values from DOM elements which were unreliable,
sometimes they are not discoverable due to nested iframs.
That threw some 404 due to incorrect theming path.

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: Ibc291ce9f64db799095e1edcb14c598bdd085de7
2023-07-24 10:06:35 +02:00
Aron Budea f84835b0c6 config: Fix 'warn_unused_result' during build
tools/Config.cpp: In member function 'virtual int Config::main(const std::vector<std::basic_string<char> >&)':
tools/Config.cpp:480:18: error: ignoring return value of 'int chown(const char*, __uid_t, __gid_t)' declared with attribute 'warn_unused_result' [-Werror=unused-result]
  480 |             chown(proofKeyPath.c_str(), pwd->pw_uid, -1);
      |             ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

From fc946198d3

Signed-off-by: Aron Budea <aron.budea@collabora.com>
Change-Id: Iaa4db6fb4dc6f742779754d4e05708aa8f41ebd6
2023-07-23 13:18:42 +02:00
Andras Timar fc946198d3 Rewrite coolwsd-generate-proof-key in C++
* simplified the tooling a bit: use coolconfig for creating
  RSA key pairs for WOPI Proof headers.
* got rid of a dependency: ssh-keygen, towards leaner docker images

Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Iaf468b5c8585d45027f512bb0a287ab77afb1ea9
2023-07-22 00:14:48 +02:00
Michael Meeks 7256b59bba deltas: don't drop delta cache on 10 seconds idleness.
This would have only a small impact on memory use, and a large
impact on interactivity, performance and bandwidth use. So lets
not do that.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I07b2538cd4f5cd2c91926cfabeaa159dd992b068
2023-07-20 18:32:59 -04:00
Aron Budea bfdac84db2 Bump version to 23.05.2.1
Signed-off-by: Aron Budea <aron.budea@collabora.com>
Change-Id: I5716d9d6556f45185b7b78fa05277403855d0353
2023-07-20 13:32:00 +02:00
Pranam Lashkari d87b7c15d1 formulabar: fixed scrollIntoView caused problems
in some browser scrollIntoView causes problem without parameters
in this particular case problem was entire view being pushed upwords out of view
reproducing steps:
Open a spreadsheet in two views,
With 1st view, navigate to bottom right corner via Ctrl+⬇ and Ctrl+➡,
With 1st view, type something in that cell, and then the cell above (stay editing the cell, don't press Enter),
With 2nd view, start typing in A1.

2nd view's editing view is pushed upwards

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I4bc551de321483608eb210718c1d81a622de5a6d
2023-07-20 11:16:40 +02:00
Szymon Kłos 7aeb2f7015 Increase timer for pre-fetching adjacent tiles
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I76cf16e12968e26a73dbddd39fc919b400cecff2
2023-07-20 11:16:23 +02:00
genofire 115a79fdf9 fix(helm): chart release
Signed-off-by: genofire <geno+dev@fireorbit.de>
Change-Id: I6d2f038390da081ef98b5aaac7bedc10c77a964e
2023-07-20 12:05:37 +05:30
genofire b372ea7e04 fix(helm): update nginx for dynamic Config server
Signed-off-by: genofire <geno+dev@fireorbit.de>
Change-Id: I83cb6aa999e75338d70c8d11e13266269c460903
2023-07-20 12:05:37 +05:30
genofire 0a9b6bb06c feat(helm): dynconfig upload
Signed-off-by: Klaus Erber <k.erber@erber-freelance.de>
Signed-off-by: Martin Müller <martin.mueller@dataport.de>
Signed-off-by: genofire <geno+dev@fireorbit.de>

Change-Id: I4dc4a456e3f61555468b98f1d0dfd54c1dd28770
2023-07-20 12:05:37 +05:30
Szymon Kłos f04d37af44 Mark slide preview as fetched when it arrives
This fixes the problem when we requested a preview but
core didn't answer. This can happen when we have
nviewid mismatch and error is generated in logs:
ERR  Session is not found. Maybe exited after rendering request.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I951a05432c899a8e7d210dec7d57177d6c7aae7c
2023-07-20 07:51:03 +02:00
Szymon Kłos eaeaee4134 LOK_CALLBACK_DOCUMENT_SIZE_CHANGED is different per view
In calc and impress we send different data depending on the view
in status: message which is triggered by LOK_CALLBACK_DOCUMENT_SIZE_CHANGED.
Every view can be on a different part / sheet / slide where document
size can be also independent.

This helps to reduce status: messages sent to other view when
switching sheets in other view.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I5b287f377a551affcfb4d12b6114dffa0fd51992
2023-07-19 19:50:19 +05:30
Pedro Pinto Silva 0e22c2a744 refactor: Toolbar down icons: remove unnecessary !important rule
If we set the initial backgrounds without `!important` then there is
no need to use `!important` for dark-mode (since we are already using
a more specific targe via data-them attribute)

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I600629dfc0485edac6ff725f6278de1501e1c9a7
2023-07-19 16:02:12 +02:00
Rash419 c91655a08f fix: failed to play media when using indirection
regresssion from 3c55baf4e2

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I21831ba076140d49a54a56e9c52f7edfca923ef5
2023-07-19 16:45:49 +05:30
Szymon Kłos 96f4120e4f Adjacent tiles prefetching with delay
While scrolling using scrollbar we tried to prefetch
lots of tiles adjacent to the view.

Introduce timer which will protect us from prefetching
tiles we will not need when scrolling is fast.
We will avoid doing it synchronously on every little step.

_update is called a lot in onMouseMove handler:

_update (CanvasTileLayer.js:6220)
...
panBy (Map.PanAnimation.js:51)
scroll (Scroll.js:11)
ScrollSection.scrollVerticalWithOffset (ScrollSection.ts:657)
ScrollSection.onMouseMove (ScrollSection.ts:776)
CanvasSectionContainer.propagateOnMouseMove (CanvasSectionContainer.ts:1097)
CanvasSectionContainer.onMouseMove (CanvasSectionContainer.ts:1403)

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: If785fd0c0cc9076043e348b86a09577ad9fa667d
2023-07-19 16:08:48 +05:30
Ashod Nakashian a82acb6c6e wsd: trim memory on idling
When all users idle their activities
for at least 10 seconds, we take the
opportunity to trim the memory footprint.

We are careful not to issue a subsequent
trimming too soon. A minimum of 30 seconds
needs to pass to trim again. This should
give a decent balance between performance
and reduced memory footprint.

Change-Id: I1c8b2c4a265c9aa0ac5033762695706ad970f11e
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-07-19 11:40:54 +02:00
Szymon Kłos 52627ab635 Prevent view from jumping on pressing alt key
this.accessibilityInputElement.focus();

line in onDocumentKeyUp in browser/src/dom/NotebookbarAccessibility.js
caused view to jump, in result half of the screen was white when
document was very long and had comment inside

To fix this insert accessibility input at the beginning of the DOM
so browser will not try to scroll anything when it is focused.

this is regression introduced in:
commit 3e40f3fbe4
Add functionality for notebookbar accessibility keys.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I68a1371928a5a3c02be32a3a9eab2ba909bb8ba0
2023-07-18 17:34:08 +02:00
Pedro Pinto Silva cfece73517 Don't add outline to ShowInfoModal that have no buttons
Large Clipboard  and document idle modals were being set with tabindex
0 allowing for manual user focus plus were being focused dynamically
for each instance:
    - Transfer all that (just once) to showinfomodal instead for the
    cases where we have buttons
        - This in turn sets the things to the parent (dialog itself)
	and not the subcontianer
        - Set tabIndex with negative value so, it only allows focus via
    code
    - This fixes the weird outline (focus) that sometimes would appear
    on sub containers of that dialog instances

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: If40192e05c4b0e25e2ce71bc612ab64fc54a29ec
2023-07-18 17:32:10 +02:00
genofire 182d4c2734 fix(helm): chart release
Signed-off-by: genofire <geno+dev@fireorbit.de>
Change-Id: Ia51b23e9636ffa381aa1041f13487f4d9b632655
2023-07-18 19:47:44 +05:30
genofire 3cd9758564 fix(helm): update to newer code image
Signed-off-by: genofire <geno+dev@fireorbit.de>
Change-Id: Ia6810cebfe99c120f8dfff956b67edc1add35178
2023-07-18 19:47:44 +05:30
genofire 87fa136899 fix(helm): allow no additional labels on servicemonitor
Signed-off-by: genofire <geno+dev@fireorbit.de>
Change-Id: I4dd6434cb6a1a9d121bccce7f4d80b040cf747c0
2023-07-18 19:47:44 +05:30
genofire a3f784b531 fix(helm): move README to chart for publish on artifacts
Signed-off-by: genofire <geno+dev@fireorbit.de>
Change-Id: Ic7308336c7ea635236514d0eeda89e876b1503ab
2023-07-18 19:47:44 +05:30
genofire 39db1377c4 fix(helm): artifactory image annotations
Signed-off-by: genofire <geno+dev@fireorbit.de>
Change-Id: Id98830212e16e3ffc1a07b902d7d371f592623f3
2023-07-18 19:47:44 +05:30
genofire d44630aaa9 chore(helm): yaml lint
Signed-off-by: genofire <geno+dev@fireorbit.de>
Change-Id: I8b6401624d23660f3b7fc6f244ce633bd0529c6a
2023-07-18 19:47:44 +05:30
genofire 6a64fdbf0b fix(helm): dynamicConfig broken configmap name in yaml
Signed-off-by: genofire <geno+dev@fireorbit.de>
Change-Id: I07127c2032cc5c684f037dbc058a9581be762488
2023-07-18 19:47:44 +05:30
genofire 2dda61615a fix(helm): statefulset with servicename from helmrelease (multiple install)
Signed-off-by: genofire <geno+dev@fireorbit.de>
Change-Id: I6f9a098fbbb11522029709c73bf912b884ee3f26
2023-07-18 19:47:44 +05:30
genofire b86099ddc1 fix(helm): grafana add tags also on overview.json dashboard (like in ha-allocation)
Signed-off-by: genofire <geno+dev@fireorbit.de>
Change-Id: I6af734feb5cfc3dd8688a45a94e2fca012fcd312
2023-07-18 19:47:44 +05:30
genofire bcc8ce7ba5 fix(helm): grafana only upload json files (not maybe screenshots)
Signed-off-by: genofire <geno+dev@fireorbit.de>
Change-Id: I9771caf619e7fd59c98a8029e08cb3a5c88db4b5
2023-07-18 19:47:44 +05:30
genofire 9c822cac18 chore(helm): use with in hpa (instatt of if and path again)
Signed-off-by: genofire <geno+dev@fireorbit.de>
Change-Id: I1895aff3a622d126e69b3a16ebfa130e1ce96996
2023-07-18 19:47:44 +05:30
genofire b04cefa57a chore(helm): move dynamicConfig in extra folder
Signed-off-by: genofire <geno+dev@fireorbit.de>
Change-Id: I99c9c8b3aecc006b399defce5a605221358e04aa
2023-07-18 19:47:44 +05:30
genofire 33b64c0836 fix(grafana): add options to set annotations to dashboards ConfigMap
Change-Id: d9569af164b649863ec05d7b61a362c1ee876f4d
Signed-off-by: genofire <geno+dev@fireorbit.de>
2023-07-18 19:47:44 +05:30
Szymon Kłos d696fe57f9 jsdialog: don't block uno commands when snackbar is shown
when any dialog is shown we block executing uno commands
don't count snackbar as a dialog and allow full interaction
of the user when snackbar is shown

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Idb1ec1aff9532ba2f1789157982cb25843df0c31
2023-07-18 16:00:52 +02:00
Darshan-upadhyay1110 fd630d427f Fix Spell checker js Dialog
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: Idc0800eaa4ab751601bd34bba6c2e9cfef38de4d
2023-07-18 15:42:35 +02:00
Pedro Pinto Silva 7f2e5df037 Calc: fix document background. It should be white.
With c04c065edc we start to dynamically
set the canvas background. The problem is that for Calc cells do not
have intrinsically a background and thus what we end up to see as the
document background color is actually the canvas color.
	 - Make sure that when we are in presence of calc we set the
	 canvas color (clearColor) with the value coming from
	 documentBackgroundColor
	 - To make it clear: create a new CSS variable to be used as
	 background-document

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I4c456e4aeea233609ee58684d967984dd8afd63a
2023-07-18 15:01:25 +02:00
Michael Meeks b700ea08a8 deltas: further increase Kit delta cache to 96 tiles.
Should help for single user with large screens.
Also dump delta cache sizes on USR1.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: Id16a287be6b05cee5681abe1d9d2dc0ec61cda2a
2023-07-18 09:43:34 +02:00
Michael Meeks 226dfe83fb deltas: don't clear useful debugging counters when restoring tiles.
Otherwise when we get under pressure re: canvas' we loose useful
statistics around the number of deltas applied.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I44a089e4af2819007b8f400b506292f8d469ff82
2023-07-18 09:43:34 +02:00
Michael Meeks ccc3d6277c deltas: fix re-consitution of canvas' from rawDeltas under pressure.
When we need to re-constitute a canvas from the cached compressed
tile.rawDeltas, we could re-enter via var ctx = this._ensureContext(tile);
as we had to populate the canvas with the previous content before
applying our new delta.

Its important to ensure that we don't then try to apply the same
delta (or set of deltas) twice - ie. move the context/re-constitution
before we append the new deltas to the tile.rawDeltas.

Previously showing the same delta applied twice:

Applying a raw keyframe of length 7320
Applied keyframe 0 of total size 264270 at stream offset 0 size 262144
Applied chunk 1 of total size 2126 at stream offset 262144 size 53
Applied chunk 2 of total size 2073 at stream offset 262197 size 2073
Applied chunk 0 of total size 2073 at stream offset 0 size 2073

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: Ib23bb81e6d3534f140ff3472afed1010c6f98cc2
2023-07-18 09:43:34 +02:00
Michael Meeks e675dec329 deltas: don't garbage-collect keyframes from visible tiles.
We have no obviously good mechanism for re-fetching them, and
this seems a bit extreme - even if they are otherwise old.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: Ibaa3d5185493de45efb2887d94b0bf1ee7cac245
2023-07-18 09:43:34 +02:00
Michael Meeks 06619df9ef deltas: handle deltas sent to apply to keyframes we garbage-collected.
In the obscure case: we could have garbage collected the keyframe
content in JS but coolwsd still thinks we have it and now we just
have a delta with nothing to apply it to.

+ show a count in tile debug-mode of this case.
+ re-request a full tile ie. with oldwid=0 if we hit this case.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: Ide95c54086fcc48d0deed1a090b3b9dd4aa49cd5
2023-07-18 09:43:34 +02:00
Michael Meeks e3c4fee876 delta: simplify the states a tile can be in when cleaning.
+ don't keep a canvas around if we free its rawDeltas.
+ don't keep imgDataCache around if we freed the canvas.

Change-Id: If3e5be642c9e7560bb889881fa62f25031104658
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2023-07-18 09:43:34 +02:00
Michael Meeks cfa831ee68 memory: add dump_malloc_stats helper.
gdb seems to really struggle with versioned symbols & types in glibc.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: Ic59020c2e5c88fbeb7799d3f5c06752097a5ad40
2023-07-18 09:43:34 +02:00
Michael Meeks f41a8bed3e deltas: more unit tests for wire-id fun.
This should catch the case where one view should get an empty
update delta, and the other should get a new keyframe tile.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I3ad8f564cc45d80186430b463214ffcf092346f3
2023-07-18 09:43:34 +02:00
Pranam Lashkari 807f309264 calc: blur address bar when tapped on sheet
problem:
regression from 919db16
when address input has focus and keyboard is open,
tapping on sheet would not close keyboard and bring focus back to map
only way to close keyboard and focus map was to accept the input

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I2c6f23be9efcbbe8e4d47d11505074a75abc000f
2023-07-17 13:07:19 +02:00
Michael Meeks 4d9070b1da Remove long obsolete ENABLE_DELTAS conditional.
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I7f254328ba1be8074d8f1feabd7b89304166281d
2023-07-17 11:35:25 +02:00
Michael Meeks 5ed7c326c6 deltas: improve torture testing options.
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: Idcb708d2686c6a1f40a1a832bf8c0940f9890c1c
2023-07-17 11:35:25 +02:00
Michael Meeks d309d7199a deltas: fold the update: command back into an empty delta: command.
Also: address parts of #6897, primarily:

* remove the problematic aspect of bumping the last wid in our
  TileData, when this could trigger a re-send of a previously
  sent delta, causing tile corruption.
    * instead append an empty wid entry.
    * as an optimization - if the last entry is empty update
      the wid - since re-sending an empty delta is of no
      concern.

* simplify a number of code-paths that special-case zero length
  deltas. All deltas now commence with 'D'.

* still track updates in the JS - by detecting empty deltas.

* shares more code and simplifies various paths.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I02af6d4b152524c201b6985b7a3497da7f08a517
2023-07-17 11:35:25 +02:00
Michael Meeks 85152bf953 Typos: wake-up.
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I8ae12c8c8390997bbde7af1e203e9075dfa4ea25
2023-07-17 11:35:25 +02:00
Michael Meeks b7d7c02a3f deltas: allow JS tilecombine to force sending a keyframe to the client.
However, don't force rendering a keyframe, only sending it - other
clients may be happy with deltas. This is to better handle:

window.app.console.debug('Unusual: Delta sent - but we have no keyframe for ' + key);

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I4efff0f6b1d2817e6b8bd567eb3b098383a1ef42
2023-07-17 11:35:25 +02:00
Michael Meeks e16f627333 deltas: calm down warning debug around keyframes.
It's fine to be a keyframe and have appended deltas too.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I205e44e0b019b3eec0ce266e9a544b060d0bce4d
2023-07-17 11:35:25 +02:00
Andreas-Kainz b6c26bee91 Mobile sidebar header layout #6861
Signed-off-by: Andreas-Kainz <andreas_k@abwesend.de>
Change-Id: I8c10857b0ca7e166b5f9364db9ea2a01e5acfffa
Signed-off-by: Andreas-Kainz <andreas_k@abwesend.de>
2023-07-17 10:20:52 +02:00
Andreas-Kainz 81c44946d4 Dark Icons: update toggledarktheme to fit other icon styles
Signed-off-by: Andreas-Kainz <andreas_k@abwesend.de>
Change-Id: Iee02515870d48adc2dcdd2f44ff76fb4c2cf05e7
2023-07-17 10:19:33 +02:00
Andreas-Kainz 4e5159e77c Dark Icon - Help tab icons update
Signed-off-by: Andreas-Kainz <andreas_k@abwesend.de>
Change-Id: I50654f4fc82330e50069761a87e50ada23740ec7
2023-07-17 10:05:18 +02:00
Andreas-Kainz 563ae14953 Dark Icon Update - saved icons
Signed-off-by: Andreas-Kainz <andreas_k@abwesend.de>
Change-Id: I966f44bb79ba0252ca662146f1680984a140bc1c
2023-07-17 10:05:18 +02:00
Rash419 55305d0d28 indirection: use Action_Load_Resp to show error msg
Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I682973acfe45b9477bb6df9e8a17adf01e3dda65
2023-07-17 12:18:41 +05:30
Rash419 72570b1ea3 fix: media cannot play with indirection server
Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I83d39fa4829938e8f217361fec3fbdab79adbac9
2023-07-17 12:18:41 +05:30
Darshan-upadhyay1110 2369bfc0ac Enter shouldn't be a requirement to trigger a tab or a button
No enter key will not be necessary to change tab by accessibility key

Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: I9ab9e004e9dc883d18b8f750a9a400e1f318240e
2023-07-16 09:16:02 +02:00
Rash419 8c5d822dc9 android: fix: save failed error while parsing save command
Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: Ia6a53184322f403d2b995213700193d5612fd63d
2023-07-15 20:33:18 +05:30
Rash419 371cb21d5d android: after sdk 30 WRITE_EXTERNAL_STORAGE is not required
- android will not even show a popup
- for some reason after sdk 33 checkSelfPermission returns PackageManager.PERMISSION_DENIED for WRITE_EXTERNAL_STORAGE even if it given permission implicitly by android

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: If50df0df0322d0bddf30d5ff5fb13ab9c010ed87
2023-07-15 20:33:18 +05:30
Darshan-upadhyay1110 ddef0ef881 Fixed Spellcheck dialog size
Set Minimal width for suggestions list
Added some padding for spell check text box for more readability

Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: I0fa5bb60ece88e4107408448a17378b526020784
2023-07-14 14:32:22 +02:00
Szymon Kłos 6124d3abd1 notebookbar: tab focus cycle inside tab page
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I0daf9a068802470a45cfd203577a2b5f01c7cfc5
2023-07-14 10:32:34 +02:00
Szymon Kłos a58c802d5b Create util for doing tab focus cycle inside container
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I25b44ebd1954301de4be0a4b4d22286f026a62fe
2023-07-14 10:32:34 +02:00
Pedro Pinto Silva ee592d97bd Compact view: Add missing InsertObjectStarMath (formula object)
Before this commit this option was only available on tabbed view

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I6e027f1b84d09e802f7ea6c6fd9e5144cae2eb91
2023-07-14 09:48:20 +02:00
Szymon Kłos 3d6ed28857 Fix pasting image assertion
Revert "Avoid crash when pasting image in debug mode"
This reverts commit 78558fe9af.

Instead of detecting paste command and not trigerring assertion:
fix frame type so it will be binary in case of paste.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: If5c726463459be7eaffae1522df522dfa1d74443
2023-07-13 20:06:58 +02:00
Pranam Lashkari 919db1674f keyboard: show keyboard only when explicitly requested
problem:
on mobile phone keyboard used to flicker when you tap on cell,
even if you were not editing inside cell

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I47d940ef32297fdf846ed4370411743982fcd3b7
2023-07-13 20:17:32 +07:00
Szymon Kłos 4c3be8555f comments: fix hidden comment after lost focus in modification
after commit 51d19dd60e
annotation: avoid saving comments on losing focus

We had regression causing collapsed comment to be completly hidden
if user first opened 'modify mode' and clicked outside comment
area. Then comment was collapsed but when selected again - content
wasn't shown.

This commits makes us sure that when we select comment again
it has visible content.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I4fc9f0bb7d6649c0aa88bbb9c4cc69ed5cbf57c9
2023-07-13 10:43:17 +02:00
Michael Meeks a064fe66ba tile debug: toggle tile debugging mode without bogus invalidation.
Show the existing state as-is to aid debugging, rather than
polluting it with bogus data, also update the screen immediately.

Change-Id: Ia6f0033208a5ad29eca374f24f215ffc5104301c
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2023-07-13 08:14:48 +01:00
Michael Meeks 9270ceef16 update: send for redundant tilecombine requests.
Update tests to check for this too.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I02c8f3167886321496245589b34a382fd61617f0
2023-07-13 08:14:48 +01:00
Michael Meeks 24f0819337 tile debug: render updates as well as deltas in the tile.
re-factor histogram rendering out, remove crufty paths to track
tile metrics and do them unconditionally - some counters should be
small & fast & simple. Simplify debug output of tile/deltas.

Change-Id: I3b615719ae2540f855597e52e6c35594dbe5b3f4
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2023-07-13 08:14:48 +01:00
Michael Meeks 8e91eafbf2 Cleanup JS tilecombine generation and reduce copy/paste.
Share sorting tilecombines by part, and de-duplicating on key.
Ensure we build wireID list and send oldwid data to save
bandwidth and avoid re-rendering keyframes un-necessarily.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I8180fceca22f1369e577bba4de7fd8a6fdbc011f
2023-07-13 08:14:48 +01:00
Michael Meeks 9a29a346d8 Allow tilecombine's to send oldWid information to fetch deltas.
Disable the 'forceKeyFrame' for tilecombine messages from the client,
we have a larger cache now and it makes sense to honor and track these.
forceKeyFrame was signalled with a zero oldWireId - which is the default
if we don't have it set.

Change-Id: If96423e96f8dc578a634ed5093517dfa6702cc1b
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2023-07-13 08:14:48 +01:00
Pranam Lashkari 7cf1e19493 impress: avoid all slide preview context menu in master view
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I9f661df619581aa9d66d98f7e63c3562c6a939b9
2023-07-13 10:08:24 +07:00
Szymon Kłos 0832fb7f99 Avoid using null in notebookbar a11y code
happens for example in Impressi on load

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I4d9f8fbb2ba996bdecd33c54bbc198d9ed82ce89
2023-07-12 14:22:54 +02:00
Szymon Kłos a5bc10185a comments: avoid using undefined
refactor a bit condition introduced in:
commit 51d19dd60e
annotation: avoid saving comments on losing focus

I noticed TypeError here at some point in my browser

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I416088333bb0c87b03c52aff3804fee8f7ada311
2023-07-12 14:22:54 +02:00
Pranam Lashkari 81bfaee859 language: introduce option to change language of only para or selection
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: If9086e72f53c3620c9d3e605b9e0415bdebab730
2023-07-12 19:14:44 +07:00
Ashod Nakashian 752f2a4ae1 wsd: save and upload rapidly when unloading
We normally throttle saving and uploading to
avoid hammering repeatedly, but when unloading,
we reduce said minimum wait by a factor of 10.

This allows for a quicker unload cycle, esp.
if we had just saved before unloading, or
if there was a previous failure.

Change-Id: I8710c9b86c05254ad9b9735d8496dd96900221e2
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-07-12 07:00:41 -04:00
Ashod Nakashian ec120ccfab wsd: test: enable testCrashForkit
Change-Id: I2acabeccda6caf660c73f2f46fdd96a4b3f28972
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-07-12 07:00:41 -04:00
Ashod Nakashian 2fd159bc0c wsd: better always-save-on-exit handling
Change-Id: Id718f81fc2eb0af5ca5bfe61e687de5258dbdd7d
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-07-12 07:00:41 -04:00
Ashod Nakashian 75b1cbcb11 wsd: better detection of upload skipping for save-on-exit
Change-Id: I0b8c6dc7429587cddff6304aaf501f24af896602
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-07-12 07:00:41 -04:00
Ashod Nakashian 2756d48a5a wsd: test: new UnitWopiLockReadOnly test
Change-Id: I67aec627737fd3e67ad576aaba378b7391641b87
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-07-12 07:00:41 -04:00
Ashod Nakashian 68e20add3b wsd: better data-loss detection
Had to disable a crash test due to incorrect
modification check before unloading.

Because we think there are modifications to
the doc, we issue a save, which will fail
because the kit is killed in said test.

Will be re-enabled when isPossiblyModified
is improved.

Change-Id: I0dd7931308e66e9a12d891a979d54e3f373ef99b
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-07-12 07:00:41 -04:00
Ashod Nakashian 0a969e5006 wsd: better modification detection after saving
And now UnitSaveOnExitUnmodified verifies that
we do not unnecessarily upload unmodified
documents because always-save-on-exit is set.

Always-save-on-exit is meaningful only when there
are modifications. Otherwise, we create identical
copies as separate revisions.

Change-Id: I933069d31d3d273c41734b58e0849680566e591a
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-07-12 07:00:41 -04:00
Ashod Nakashian f383cf9032 wsd: always-save-on-exit skips uploading as-loaded docs
Change-Id: Id38c2b708d9d440cedb3d51b345bf180af0349f8
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-07-12 07:00:41 -04:00
Ashod Nakashian acdd74f014 wsd: better session disconnection logic
This improves the disconnected session cleanup
and fixes a corner-case with the last editor
disconnecting before read-only sessions.

Change-Id: Iecb553d7f5be2c63fc55111e60e22b3d8aa668f6
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-07-12 07:00:41 -04:00
Andreas-Kainz e90586a098 DarkMode border icons use dark fr0x icons #4592
Signed-off-by: Andreas-Kainz <andreas_k@abwesend.de>
Change-Id: Ia09efa8530e04f571af4b2e1e7599215746be2df
2023-07-12 11:20:44 +02:00
Andreas-Kainz f84105072b DarkMode checkboxes will be themed
Signed-off-by: Andreas-Kainz <andreas_k@abwesend.de>
Change-Id: I0ffd594ba3e897a36c2caa8a5fe9aace9e04a63d
2023-07-12 10:06:00 +02:00
Darshan-upadhyay1110 e2215c39b2 Fix "Dark Mode" Button Jumps to "Home" Tab
After change to dark mode in notebookbar focus will stays to `view` tab.
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: Id0df0ded18a5858efa15eb0942b1ec69b6a716c2
2023-07-12 09:25:18 +02:00
Szymon Kłos d475083f05 jsdialog: close snackbar when action button clicked
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ibbdb247a052d8d4c2cca5f26d5bb9f31ced42187
2023-07-11 16:29:48 +02:00
codewithvk df03cf1ce8 Fix : Wrong context menu in Slides Pane in master view for Impress
Signed-off-by: codewithvk <vivekpatel7202@gmail.com>
Change-Id: Icf19c9db12e0430fca98b0d639be62e2bbf29d37
2023-07-11 18:42:51 +07:00
Szymon Kłos 168f7cde07 jsdialog: field with time format should be simple edit
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Id745fc6651b3cab6f080e41abb97d13e444d0c73
2023-07-11 12:48:28 +02:00
Szymon Kłos 83c0f61f82 jsdialog: add disabled state for menubutton
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I0b5c8db6015348c9ad7803c08d5ac00b6fff7016
2023-07-11 12:48:28 +02:00
Szymon Kłos 9720311bcd jsdialog: don't ignore menubutton with empty text
build also empty menubuttons, example:
- writer -> review -> manage -> filter
- select 'Date' checkbox
result: end date disappears
expected: menubutton should be recreated with empty string

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I96ba161d209a4f65bd40b4a1efac896e3e172d0c
2023-07-11 12:48:28 +02:00
Szymon Kłos ee3935a997 jsdialog: calendar control
can be tested in Writer -> Review -> Manage -> Filter (date dropdown)

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I63b052ae29ac45b9ded66d1ca75195c58f3d7e13
2023-07-11 12:48:28 +02:00
Szymon Kłos 9187ae99d7 Center IFrameDialog using CSS
instead of using hardcoded pixel distance...

affects eg. feedback dialog which was impossible to
access in very small windows due to position outside window

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I2a85defcd2aabf1bdb8ec88d70b6e6a873dec75f
2023-07-11 10:19:40 +02:00
Szymon Kłos 8fb734b52d Make snackbar non-modal
Snackbar shoudn't block user interactions with other
UI components. This fixes regression introduced with
vex rework to JSDialogs where snackbar become modal.

This fixes problem with "send feedback" and "Zotero"
snackbars which block users for ~10s from editing.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I71a2d1654b58a89162679346208409124f24b14e
2023-07-11 10:19:40 +02:00
Pranam Lashkari 8120449cb4 scroll: override any pending scroll for cursor following
problem:
unselecting shape would make document jump to position where
cursor was before selecting the shape

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I4aa75932631de51e84e3aca9b439f1a9a945e2d3
2023-07-11 14:49:04 +07:00
Pranam Lashkari 5d049a2fd3 jsdialog: avoid closing parent dialog if child dialog is open
this patch assumes that dialog ids are incremental,
and no two dialogs are open at the same time unless
one dialog(parent dialog) has triggered another dialog

i.e: calc advance filter dialog triggers warning dialogs,
if entered an invalid range and closing the advance filter dialog
before the warning dialog causes a crash of LOK

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: Ic4ba3b4553fb0ee089b1ab9b50b1c023801b674a
2023-07-11 14:47:21 +07:00
Rash419 12dbc98395 fix: info level log for exceptions
- hard to find exception if browser logs error at info level

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I9f354480e1ee1d2da8a85973acd7b6563df83291
2023-07-11 12:37:34 +05:30
Caolán McNamara aba5583ca9 drop empty CanvasTileLayer::_viewReset
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I77ac5e2069f86bcb9d2062cdabd9e886fbd34623
2023-07-10 17:50:13 +01:00
Caolán McNamara 42c9f54a98 osCanvasExtraSize is unused
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I96d74a5a9f6ae86ab4c33f58b60988f62afda417
2023-07-10 17:50:13 +01:00
Caolán McNamara d5c7306a16 halfExtraSize and extendedOffset are newly unused
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Ia2a51478ad674d0b10eeebdfb7e4bc4eb4614984
2023-07-10 17:50:13 +01:00
Caolán McNamara d842d39cb2 extendedPaneBounds is now unused
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I0f1f37ee096f9e0e765effea23139d6a7a6bf456
2023-07-10 17:50:13 +01:00
Caolán McNamara 04acabbe87 oscCtxs and offscreenCanvases are write only
as far as I can see they are only written to, they are
not read from anywhere.

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I0faf8f2b087c4b4228ac40e6804694be0f83eb54
2023-07-10 17:50:13 +01:00
Pranam Lashkari f56694ef96 scroll: avoid selecting elements while dragging scroll bar
problem:
In safari and gnome web when you scroll using scroll bar,
DOM elements on the slidebar and documents would get selected

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I222d246148d5d84a5c0b3cfdb1890350f428e696
2023-07-10 23:48:00 +07:00
Henry Castro 8773e0e050 cypress: cypress logs for cool.html iframe
Also logs unhandled exceptions from iframe cool.html

Change-Id: I6f7b7d1340c8818d3f81916d42d6d9ed2920e35c
Signed-off-by: Henry Castro <hcastro@collabora.com>
2023-07-10 10:49:04 -04:00
Henry Castro 3c0731bf2c cypress: add emacs mode lines
Change-Id: I2cb19d34639ea6af55c693fad7bef8855a0ccba3
Signed-off-by: Henry Castro <hcastro@collabora.com>
2023-07-10 10:49:04 -04:00
Henry Castro aa6be258fa cypress: upgrade version 12.17.0
Change-Id: I1464063e5149143f9a0aa4a1f5a433f5171b1d8e
Signed-off-by: Henry Castro <hcastro@collabora.com>
2023-07-10 10:49:04 -04:00
Henry Castro fc791bbf37 cypress: fix missing package 'semver'
Change-Id: Ica5bd8d562127b9369b7b1fdf19a0dad3a861ef0
Signed-off-by: Henry Castro <hcastro@collabora.com>
2023-07-10 10:49:04 -04:00
Henry Castro 6ea782103f cypress: logging 'npm install'
Change-Id: I6b188bae89f2389124946c0fda497c9f9744e6b4
Signed-off-by: Henry Castro <hcastro@collabora.com>
2023-07-10 10:49:04 -04:00
Henry Castro 95436dcb3f cypress: fix missing dependencies
Change-Id: I5439d769dce043b8fc33416d0aa618a371314c26
Signed-off-by: Henry Castro <hcastro@collabora.com>
2023-07-10 10:49:04 -04:00
Henry Castro a396c91886 cypress: check if NODE_PATH env exits
Change-Id: I69b64f1ad29e2ddd09663444922e8c1dc16411f2
Signed-off-by: Henry Castro <hcastro@collabora.com>
2023-07-10 10:49:04 -04:00
Henry Castro 9bcc79b266 cypress: add option baseURL
Setting a baseURL cypress verify if the server is
running and prevents to refresh when command cy.visit()

Change-Id: I1cffc0932d6a1ec4ee9793eb3935f60e02ca2545
Signed-off-by: Henry Castro <hcastro@collabora.com>
2023-07-10 10:49:04 -04:00
Henry Castro f3787c85e8 cypress: install package 'cypress-terminal-report'
https://github.com/archfz/cypress-terminal-report

Change-Id: I242e421aeb02ee3861b16af78af87c6a9db22ad5
Signed-off-by: Henry Castro <hcastro@collabora.com>
2023-07-10 10:49:04 -04:00
Henry Castro e69969a07b cypress: install package "@cypress/webpack-preprocessor"
"https://github.com/cypress-io/cypress-webpack-preprocessor"

Change-Id: Id261c7d1675c6f6c30d5f1661b4988511528b0d7
Signed-off-by: Henry Castro <hcastro@collabora.com>
2023-07-10 10:49:04 -04:00
Henry Castro 1ac16a13f1 cypress: remove plugin package 'cypress-failed-log'
It has a bug, it executes twice beforeEach function
if fails or unhandled exception.

Change-Id: I005815d440af0309cf797e52fbfb3693896418a9
Signed-off-by: Henry Castro <hcastro@collabora.com>
2023-07-10 10:49:04 -04:00
Henry Castro 2ec6bd70a2 cypress: disable screenshot
not useful for C.I. for now.

Change-Id: I1940d617b6b7c5f0a7dcae7e38c58dc5bd57f2e4
Signed-off-by: Henry Castro <hcastro@collabora.com>
2023-07-10 10:49:04 -04:00
Henry Castro 51ae4a836e cypress: logging stack traces of the unit test failing
Change-Id: Ic06c62b1cbd467abe17a5ff859848ca10673b4a4
Signed-off-by: Henry Castro <hcastro@collabora.com>
2023-07-10 10:49:04 -04:00
Henry Castro a32cbb311d cypress: logging unhandled exceptions
Change-Id: I82bd3552fbf0b844492340762899b5c492148eca
Signed-off-by: Henry Castro <hcastro@collabora.com>
2023-07-10 10:49:04 -04:00
Henry Castro a2048ce70d cypress: fix "loadTestDoc" remote server
If it is a remote 'coolwsd' server,
there is no way to rename or copy files.

Change-Id: Ic38302de5ecf3fa08fedd485d6060ede320867bc
Signed-off-by: Henry Castro <hcastro@collabora.com>
2023-07-10 10:49:04 -04:00
Henry Castro 119eee8036 cypress: fix work folder if remote server
If it is already running remote "coolwsd"" server,
there is no way to create a remote work folder.

Change-Id: I17932fcca321e2f7e0cdfcab2ad678dbcffc56ed
Signed-off-by: Henry Castro <hcastro@collabora.com>
2023-07-10 10:49:04 -04:00
Henry Castro 54e79ce289 cypress: add option "verbose=1"
To debug and trace command executions

Change-Id: I5e458c2db4cedef32b24e5925b38c1ee2aaaa4cd
Signed-off-by: Henry Castro <hcastro@collabora.com>
2023-07-10 10:49:04 -04:00
Henry Castro ffb0bb8f7e cypress: add option "coolwsd=server:port"
It is useful inspect logs and run unit test
with an already running coolwsd instance.

Change-Id: I6b01316d552e3d12bf63db9cc7e813adb33a20c0
Signed-off-by: Henry Castro <hcastro@collabora.com>
2023-07-10 10:49:04 -04:00
Henry Castro dec0fe5a83 cypress: fix missing config file, builddir != srcdir
"Could not find a Cypress configuration file in this folder""

Change-Id: I7d5b2094d6cd10ca3da2a099650f830bee31dfb1
Signed-off-by: Henry Castro <hcastro@collabora.com>
2023-07-10 10:49:04 -04:00
Henry Castro a2920949d0 cypress: fix eslint error, buildir != srcdir
11:26  error  'process' is not defined  no-undef

Change-Id: I637bda97d3ba360a095c04a1987c9c64eef1349c
Signed-off-by: Henry Castro <hcastro@collabora.com>
2023-07-10 10:49:04 -04:00
Marco Cecchetti ff34b16947 cypress tests for accessibility toggle ui
Helper functions:
checkAccessibilityEnabledToBe
  check accessibility state independently from current desktop ui
setAccessibilityState
  set accessibility state independently from current desktop ui

Both helper functions check that ui state and a11y support in text
input element are in sync.

Enable/Disable Accessibility Support
  test state toggling and state preservation when switching ui

Typing after switching accessibility state
  check editable area content after toggling accessibility support

Signed-off-by: Marco Cecchetti <marco.cecchetti@collabora.com>
Change-Id: Icce5ae148024a8abf9b65a90229915f28f720554
2023-07-10 16:02:18 +02:00
Marco Cecchetti d69de71094 remove dup code: A11yTextInput inherits from TextInput
Now A11yTextInput inherits from TextInput.
Added hasAccessibilitySupport to both TI and ATI

Signed-off-by: Marco Cecchetti <marco.cecchetti@collabora.com>
Change-Id: Ic296afb840824e7901202c9c089c4025c6bb8ab2
2023-07-10 16:02:18 +02:00
Marco Cecchetti d5cd0c67e3 TextInput: gecko: fixed not working delete key
Signed-off-by: Marco Cecchetti <marco.cecchetti@collabora.com>
Change-Id: I01ebbfb6c0d64fba044ae211d81b58a2f3ef06f9
2023-07-10 16:02:18 +02:00
Marco Cecchetti 6be9a99c0d remove dup code: A11yTI: _sendKeyEvent uniformed to TI version
Signed-off-by: Marco Cecchetti <marco.cecchetti@collabora.com>
Change-Id: I09dd4d1667c8075cc859a6b96a1da025d5b196ea
2023-07-10 16:02:18 +02:00
Marco Cecchetti b750d6e93b remove dup code: A11yTI: _onInput mentions part uniformed to TI version
Pulled in changes performed by commit:
24c83b9e Rash419 refactor: consolidate mentions-related code in
TextInput.js

Signed-off-by: Marco Cecchetti <marco.cecchetti@collabora.com>
Change-Id: I37577163ec2a8abf0131e276df83d6710dec4f73
2023-07-10 16:02:18 +02:00
Marco Cecchetti 32298f08f6 remove dup code: A11yTI: _onKeyDown uniformed to TI version
Pulled in changes performed by commits:
847ade24 Szymon Kłos Mention popup focus fix
a006c917 Gökay Şatır Focus on the selected comment with keyboard.
02616ed3 Gökay Şatır Don't auto show the comment on Calc.

Signed-off-by: Marco Cecchetti <marco.cecchetti@collabora.com>
Change-Id: Icdc510f6d90af1b6f2379b6cbd4317940f0ac0ad
2023-07-10 16:02:18 +02:00
Marco Cecchetti 24727deee3 remove dup code: TextInput: uniformed code fragments to A11yTextInput
Uniformed code:
  getValueAsCodePoints
  _setupStyles
  _setPos
  _onInput: this._deleteHint
  getValue
Signed-off-by: Marco Cecchetti <marco.cecchetti@collabora.com>

Change-Id: I6b5424e0afe3202d65abaf2d5b785b95cc9346c9
2023-07-10 16:02:18 +02:00
Marco Cecchetti bc782c6b71 remove dup code: TI: _onCommandResult: clear content in desktop case too
TextInput:
undoing something does not trigger any input method
this causes the editable area content not to be a substring
of the document text

Signed-off-by: Marco Cecchetti <marco.cecchetti@collabora.com>
Change-Id: I803c32d243c6331dc21685a6d2ee03919e21a8cf
2023-07-10 16:02:18 +02:00
Marco Cecchetti b2c8cb32e5 remove dup code: TI: keep _hasWorkingSelectionStart for logging only
Signed-off-by: Marco Cecchetti <marco.cecchetti@collabora.com>
Change-Id: Id8de738846a796be37184ecbc083fbd796620739
2023-07-10 16:02:18 +02:00
Marco Cecchetti 73c10a1d08 remove dup code: A11yTextInput: removed unused code
A11yTextInput:
_tabHint: removed unused property
_isTextContentEmpty: removed unused method
_onComposingContent: removed unused properties
_onCommandResult is no more used since on undoing editable area
content is updated by core through some accessibility message
Signed-off-by: Marco Cecchetti <marco.cecchetti@collabora.com>
Change-Id: Ifc31a994661827d4f53891f85c6f7229bea758a5
2023-07-10 16:02:18 +02:00
Marco Cecchetti abca8e5dd3 Adding support for enabling/disabling a11y support from the ui
Added toggle button/menu entry for enable/disable accessibility support.
This ui feature is available for Online Writer only.
The button/menu entry is added only when accessibility is enabled at
server level.
That allows to enable/disable accessibility per view.
By default, the accessibility support is disabled.
Anyway the accessibility support state is saved to local storage
if available.

Signed-off-by: Marco Cecchetti <marco.cecchetti@collabora.com>
Change-Id: If5968a47f17922038b9da3d320cbed84ebb7688b
2023-07-10 16:02:18 +02:00
Alexander Gabilondo 2ec2f7bcce Translated using Weblate (Basque)
Currently translated at 99.5% (461 of 463 strings)

Translated using Weblate (Basque)

Currently translated at 99.3% (460 of 463 strings)

Co-authored-by: Alexander Gabilondo <alexgabi@openmailbox.org>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/eu/
Translation: Collabora Online/Help
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ic84fed0a093017e8eb3d9b8669ea4c772d3d10bb
2023-07-09 15:07:12 +02:00
Sebastiaan Veld 3dfa51a234 Translated using Weblate (Dutch)
Currently translated at 100.0% (507 of 507 strings)

Co-authored-by: Sebastiaan Veld <sebastiaan.veld@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/nl/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I2aa565735b80609e557e2c6e3cdbb081a7f83968
2023-07-09 15:07:12 +02:00
gallegonovato f030eec328 Translated using Weblate (Spanish)
Currently translated at 100.0% (507 of 507 strings)

Co-authored-by: gallegonovato <fran-carro@hotmail.es>
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: Ibf47f5ccf709c8458ac6e37836fc8bbb103529b5
2023-07-09 15:07:12 +02:00
Michael Meeks e6c7bf7dc1 tile debug: cleanup and make more consistent tile debugging.
Remove rather bogus timings per-tile; instead in future we should
track how long a tile has been invalid for I suspect, which we
can do more helpfully.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I790ad324b2dba2bc253e4c37c42ddb487666e455
2023-07-08 21:11:25 +02:00
Michael Meeks b1b35b3a5e tile debug: render directly on the canvas - avoid popup overlay.
Popup overlay performance is far from great, and they can leak too.

Change-Id: Id84391d702e20d067a98349fa96e7a495f02752c
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2023-07-08 21:11:25 +02:00
Michael Meeks 343fcf0306 tile debug: improve alignment and cropping handling.
various offset problems fixed.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I15a039d192353c172a6e88563f791c334731c0eb
2023-07-08 21:11:25 +02:00
Michael Meeks ebdfc61341 calm down debugging verbosity with debug overlay.
No need to dump entire delta / keyframe content as hex.

Change-Id: I2e3e1bed693a8d33f1cc1f49ddf9f082b5d458b5
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2023-07-08 21:11:25 +02:00
Michael Meeks 02701df2b6 tile debug: remove blue calc grid overlay & re-layer.
Grid is all done on the client side by default now anyway, so
no need to have this anymore.

Change-Id: I92966cbd2953a404575cb71575e3e782acccd694
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2023-07-08 21:11:25 +02:00
Caolán McNamara 902aba1fb7 Extend what we request to include enough to populate a page scroll
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Id961b362dec5ce0a9b362dc8ee5a73ceb9eaa1dc
2023-07-08 18:18:46 +01:00
Caolán McNamara bbc7f2af12 factor out _getMissingTiles as a standalone thing
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I08c2c4f34b2a2114c2906453ee9daeac04b6f441
2023-07-08 18:18:46 +01:00
Caolán McNamara 357f7cf2db bump to latest fzstd release
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I79bcfce90a858ad5a6f432ba8e36b0936c505bf3
2023-07-08 17:20:24 +02:00
Michael Meeks b963cde3c7 FileServer::LocalFileInfo re-work local file-list management.
Calling a PUT before a GET would cause a SEGV around managing the
internal list of files.

Re-factor to ensure we always have a valid LocalFileInfo to
work with, and simplify and cleanup code-paths.

Change-Id: I2b206bb8bdebc3c44cd55c61048da9b0dc30dbd5
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2023-07-08 13:08:59 +01:00
Michael Meeks a7d7eeead9 Having an empty canvas doesn't mean a tile has content.
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I4b568570e0028ea07127acdceb4cb148042e436e
2023-07-08 13:08:59 +01:00
Michael Meeks d48e332fb0 Render tile debugging on top of tiles + traffic light & delta chart.
top-left rectangle should give a state of the tile:
	green - up-to-date
	amber - present but stale
	red - not present.
Next bar-chart shows the number of deltas applied.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I4968a0b23bf34b888eb1de0a960f33d7bc2e8076
2023-07-08 13:08:59 +01:00
Michael Meeks c5d1bdb2aa Avoid exception during debug mode for update: messages.
Change-Id: I5d77389668428527c3512b3beb6758ad57015d9e
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2023-07-08 13:08:59 +01:00
Caolán McNamara 5aa0296d4d fix getPartFromInvalidateMessage
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Idd2cf3a7bf118ff82aaf0ed50c5f8fdd97fe5ee3
2023-07-08 13:08:59 +01:00
Michael Meeks 24d033fd4c tile rendering: pure refactor.
Take all canvas tile rendering through the same function.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I68f1a53d01b1dff9ed9f5d62e4538171e1cfafc1
2023-07-08 13:08:59 +01:00
Michael Meeks 052fbf01a1 Remove obsolete tile grid debugging.
We now have CSections.Debug.TilePixelGrid.name to debug mis-aligned
CSS that doesn't pixel align our canvas.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I9f087cae60b757a67eae5dd6f464c16f1f66f20b
2023-07-08 13:08:59 +01:00
Michael Meeks 48afa99f1c remove unused method.
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: If3239be4b4255e5f8b0731c4ecc4d65cceb7b853
2023-07-08 13:08:59 +01:00
Michael Meeks 58659d6ada Ensure that tile.coords.mode is not undefined.
Otherwise tile-cache invalidation fails in impress as we compare.

Change-Id: Ifcf4acbeebe0f384c4fe0de337402c93cb0337f9
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2023-07-08 13:08:59 +01:00
Caolán McNamara 4ca9ff6ab9 parse invalidatetiles with optional wid token and preserve it on forward
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I01820d9f74bb12dc75314fc6006666cecdf08da3
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2023-07-08 13:08:59 +01:00
Michael Meeks 789dd2963c Append the wid properly to invalidatetiles and parse it too.
also re-work parseInvalidateMsg to not use std::pair<> returns.

Change-Id: I724783b7050a1ee251dfbe9b2f1e0ea02e7d45f2
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2023-07-08 13:08:59 +01:00
Michael Meeks 6d697de175 tilecache: update the wireId on the last keyframe/delta if necessary.
A zero size delta means we're effectively up-to-date for this new
wireId.

Change-Id: I96abdf00648f7c2f833ffd56bd43980265b8d490
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2023-07-08 13:08:59 +01:00
Michael Meeks 3203db2be2 Cleanup includes.
Change-Id: I062579fc7dee2283e6ac62e67c844cf89c3a3188
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2023-07-08 13:08:59 +01:00
Ashod Nakashian 1cac1f1698 wsd: test: do not advance to next test on failure
Change-Id: I2831c90e088064f5a254ef8a9809796e8320ed04
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-07-08 04:19:00 -04:00
Ashod Nakashian 7fdc33b916 wsd: no default parameters for DocumentBroker::autoSave
Change-Id: Id343cc36886c2768b4af7ee61d9524678c83dc69
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-07-08 04:19:00 -04:00
Ashod Nakashian 12bae02ad0 wsd: separate out canSaveToDisk from needToSaveToDisk
Suppressing needToSaveToDisk silently when we cannot
save, because there is no Kit f.e., is unhelpful.

Now we have these two states separated out and
we log appropriate information in each case.

Change-Id: If38798578a7b88600e3f07c88e0bcbf833ae53f0
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-07-08 04:19:00 -04:00
Ashod Nakashian 037099fe32 wsd: cosmetic improvements to ClipboardCache
Change-Id: Ie3ccc015203463fcd9f4a9a26826e0d894f9ec50
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-07-08 04:19:00 -04:00
Ashod Nakashian b1d68e4b3a wsd: better context logging for clipboard activity
Change-Id: I83935df41492e0267b924893594002e6665a671d
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-07-08 04:19:00 -04:00
Ashod Nakashian e2b8388dfa wsd: test: logging in UnitWOPIFailUpload
Change-Id: I4c51e6a56e5cf28b11a5652b5849ca54c25ee53b
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-07-08 04:19:00 -04:00
Ashod Nakashian 3fef73a33f wsd: DocumentBroker logging improvements
Change-Id: I9c6f32c087275f48ac559c2fbb05d04da4e00a08
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-07-08 04:19:00 -04:00
Ashod Nakashian 22292d630f wsd: test: minor improvements to UnitCopyPaste
Change-Id: I0fe2390806ee736f44d76ab128e911b66b5e059b
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-07-08 04:19:00 -04:00
Ashod Nakashian 7650d5e175 wsd: remove redundant cast
Change-Id: I0cac85728cd4ade5d78b2a4cb715d0fdde17c832
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-07-08 04:19:00 -04:00
Ashod Nakashian 5e343d9ffb wsd: serialize the http status-code numerically too
Change-Id: Ia5d67f295ce0426b160b64b72399950cc3723d7b
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-07-08 04:19:00 -04:00
Ashod Nakashian 87bce5dc5d wsd: test: merge UnitWopiUnlock into UnitWOPILock.cpp
Change-Id: If051032e2ed9d7a0ab345bdad710ba1eafe92d96
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-07-08 04:19:00 -04:00
Ashod Nakashian 4453175348 wsd: improved socket dump state
Change-Id: I5b59461b17a8d94d955cdeff5b6ebbf1573db0bf
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-07-08 04:19:00 -04:00
Ashod Nakashian d50b4e4b1c wsd: test: dump state on test failure
Seems a useful thing to capture the internal
state when a test fails, as it might help
understand what was going on.

Change-Id: I591a88662ab86ab4dc7f39dafcc4d7d279a4d9c4
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-07-08 04:19:00 -04:00
Ashod Nakashian aabe6cba8d wsd: clang-tidy warning fix
Change-Id: Id8b6d9987c03d33286c7b2f819776bd571329f3f
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-07-08 04:19:00 -04:00
Ashod Nakashian 8ef57dd2ec wsd: better newChild unit-test event
Change-Id: I8403e14780ad0bf971625934b7011fba1f24f07c
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-07-08 04:19:00 -04:00
Ashod Nakashian 13b6f64d59 wsd: unmount the test mount directory too
We test if mounting is possible by mounting
a test directory. This can leak in crashes
and failed tests, therefore it needs to be
cleaned up too.

Change-Id: I2638cc0863f3f5575f697bece9801d42cd321ed1
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-07-08 04:19:00 -04:00
Caolán McNamara c224a44ead TileSectionManager::_oscCtxs is unused
unlike TilesSection::oscCtxs which is

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Iaad8dd61cd0e4432abcc50ca3ca71cdcb96a66db
2023-07-07 20:20:57 +01:00
Andras Timar 1f0013e811 docker: remove obsolete fix
The domain resolution problem from jails was properly solved by
bc8da0cb33
This hack is not necessary in docker.

Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I59664b895d187b2a8930a34b096305e0b7c384e3
2023-07-07 19:11:01 +02:00
Gökay Şatır df9c669c34 Activate the focused tab immediately when navigating with arrow keys.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I76f2db4340a3c832979215c18e06af3e61042a15
2023-07-07 19:12:46 +03:00
Szymon Kłos 1d7be47f03 jsdialog: share code for widget update
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ifd348b62f8ca6b6b23836772c5e26d728ad8c9af
2023-07-07 11:58:38 +02:00
Darshan-upadhyay1110 66d42b7a91 Focus back to document when Escape key pressed
* Focus back to document when escape key pressed on any element in Notebookbar
 * Exception: When drop down is already open then focus back to element.
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: I4b34ae795465ecc402c5228478b7797298acc5a7
2023-07-07 10:52:54 +03:00
Gökay Şatır 27ec5a26ab Add missing accelerator keys for the writer notebookbar.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: Iaedb0b365a6671b685f1c7600503b533976f82ad
2023-07-07 10:33:19 +03:00
Gökay Şatır 15cde8c880 Sometimes Cypress doesn't try multiple times when commands are chained.
Breaking the chain may be useful in this case, in order to benefit from timeout.

Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I4242df23698b2019028cb4e8a3c6206499b80083
2023-07-07 01:27:27 +03:00
Caolán McNamara da10eb9996 return failure early in case of oversized tiles
it shouldn't happen, but return early if it does

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I1733d346ff370827fd882caacebca111f790bbe1
2023-07-06 14:25:31 +01:00
Gökay Şatır 7e9a3d0f7c Allow up and down arrow keys to focus on the tab button or the content of it.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I8c79e674852ba73b98308095bd296dabe1152c4a
2023-07-06 15:48:21 +03:00
Szymon Kłos 063feae9b3 comments: don't allow to collapse active draft
This fixes bug when we opened 2 sessions and
- user A created comment draft but didn't save it yet
- user B then created comment and saved it
Result: comment of user A dissapeared and it wasn't possible
        to insert new comment

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Idf1be61dca5e0aabdd885b7bd36a18a4a60507e9
2023-07-06 14:45:02 +02:00
Pranam Lashkari 51d19dd60e annotation: avoid saving comments on losing focus
problem:
resolves: #5995
it was just annoying for user when he goes to some other tab or clicks somewhere,
and the comment is saved automatically while they may want to still edit

also this solved another problem where in multiple users case,
if another user switches tab comments were saved even if user was editing it

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: Iee32f21803d6a0dbc164bbf9a9bee803228aad7a
2023-07-06 14:45:02 +02:00
Pedro Pinto Silva f7c3f62d2d Add missing img alt attribute to unoToolButton
Without this commit screenreader will spit some non identified image
blurb

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Idf2cbede00127027e7a1162fc8e182728055936e
2023-07-06 13:52:51 +02:00
Pedro Pinto Silva bcbee8d5c7 Fix unoToolButton unlocalized alt attribute and avoid digits
Before this commit id was being used directly making:
- Always an English string no matter the language
- Sometimes that alt text was picking digits coming from the
id. Example: Save1

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: If4b4ee550b2d787b30557915015e173859d657a1
2023-07-06 13:52:51 +02:00
Caolán McNamara 7833e8ce02 asan error seen in testRleComplex
=============== START DeltaTests::testRleComplex
../kit/Delta.hpp:98:23: runtime error: index 4 out of bounds for type 'const uint64_t[4]' (aka 'const unsigned long[4]')
    #0 0x55d29dacd21b in DeltaGenerator::DeltaBitmapRow::PixIterator::next() libreoffice/online-san/test/../kit/Delta.hpp:98:23
    #1 0x55d29da8d514 in DeltaTests::testRleComplex() libreoffice/online-san/test/DeltaTests.cpp:316:16
    #2 0x55d29daf7a87 in void std::__invoke_impl<void, void (DeltaTests::*&)(), DeltaTests*&>(std::__invoke_memfun_deref, void (DeltaTests::*&)(), DeltaTests*&) /usr/bin/../lib64/gcc/x86_64-suse-linux/9/../../../../include/c++/9/bits/invoke.h:73:14

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Ib6e13eaf0fb89ad086a99251d5b8edcdcedd6800
2023-07-06 11:40:48 +01:00
Pedro Pinto Silva 2948e5206e Gray out empty treeview
So user understands the component is empty.
We cannot add disabled attribute here because we have some cases such
as pivot table where the initial state is empty.

Note:
Ideally we would distinguish from static and dynamic
treeview (static=read only list VS dynamic=list you can remove and add
items). Only after this distinction we can properly add disabled
attribute to the static one

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ide4fb7589b5be611975de4a704b458bb626be0e0
2023-07-06 10:59:15 +02:00
Caolán McNamara aa00f92b99 don't try and reselect graphic on previous tab on switching to new tab
When switching tabs, the client calls _handleSheetGeometryDataMsg which
seems to replay various messages received earlier. And one of those
replays a "graphicselection" attempt, but the new tab doesn't have a
graphic to select and so things go downhill from there.

To reproduce have a shape in one tab, select it, switch to another
tab and without this we get: 'failure error while parsing ExportAs command'

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I735509b14872dc6c74d7092db0083217954ad988
2023-07-06 09:20:33 +01:00
Caolán McNamara 0231a4d2a2 impress slide previews are not 256x256 so triggers assert
but they don't go through the delta mechanism, so move the assert
to the delta path, the other path is ok wrt gt 256x256

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I2ba4d8affb7645349540f3a5de31d1802f04c53d
2023-07-06 09:13:45 +01:00
Rash419 75dbc5ed79 add RouteToken in admintemplate
- websocket uri, admin-bundle.js uri, href links

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I84a484938191e2f62b9d262ee922e8b04de74a44
2023-07-06 13:27:23 +05:30
Pedro Pinto Silva 6f34565aee Tabbed view: Writer: layout tab: Reorder elements
Better to reorder these so we have higher probably to meet user's
expectations and fix the priority in which the elements are placed
- Move "Columns" (.uno:FormatColumns) to a higher priority place
- Demote "Title page" (.uno:TitlePageDialog) to a toolitem: This
Button is already present in the insert tab and so we don't need to
have it as a bigtoolitem here
- Move Hyphenate and LineNumbering to be right after breaks

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I6cba0ad920e9ee9ec836f9e06e201f0ff9264f84
2023-07-05 17:41:13 +02:00
Caolán McNamara b44a2b71b9 cid#318946 Argument cannot be negative
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I83716319a797ffb5e49c4b98676bfe864a75dec5
2023-07-05 14:49:59 +02:00
Caolán McNamara d078354eb7 cid#318955 Uninitialized scalar field
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I2df245ffa6bf45536ebe4383033dcdd87f280bc2
2023-07-05 14:49:59 +02:00
Caolán McNamara bc4a699735 cid#318871 Unintentional integer overflow
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I6af42166c495032a6e76532cc2e919a8d01a63c7
2023-07-05 14:49:59 +02:00
Caolán McNamara d75f3ffb6e cid#318901 Untrusted loop bound
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Ic3455b21f9c2b7c8928c6d3b64f8790a203e3379
2023-07-05 14:49:59 +02:00
Caolán McNamara 28f5273ad7 cid#318876 Wrapper object use after free
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: If80119af29ffde7ca437047da4646c0876d98014
2023-07-05 14:49:59 +02:00
Gökay Şatır f713d4e2df Focus back to map when there is no match.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: Ia05c25ea98000788529a83d8229095b3b99fbb9f
2023-07-05 15:23:34 +03:00
Gökay Şatır 3ca8b6044e Assign space key as accelerator action trigger.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I26c645ef58c7aacfb33499fc7f806c288e1a5a3b
2023-07-05 15:23:34 +03:00
Gökay Şatır 69ba37032d Don't use space symbol as part of access key combination.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: Ica9f8709d8c29bcbb8610f37d933fd34b7bca8e0
2023-07-05 15:23:34 +03:00
Caolán McNamara 76a5a9baff transport in rgba order
so if core is compiled with a cairo using rgba the pixels can
be sent without need to reorder in server or client

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Iaf0410f1eaa605b9ce2716625f6c968bca523ccb
2023-07-05 11:58:54 +01:00
Caolán McNamara 01165fbe1f On a cache hit for a tile the result typically had a wireId of 0
And tile::needsFetch on that result will always return true given the
default of invalidFrom of 0 and the comparison of
  return this.invalidFrom >= this.wireId || ...
so the tile return from the cache is unusable.

It is typical for a request not to have a wireId, if we don't use the
cache then doRender will send a timecombine result with wireIds set. But
if we use the cache here we send a response using the wireId of the
request.

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I586406af86b0f503dfc204e20120cc8acebf5b8e
2023-07-05 11:49:34 +01:00
Caolán McNamara 2fd50d8965 cid#318897 Using invalid iterator
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I977f65bbd11060fecf4db31e7e25e068771c17b7
2023-07-05 11:49:03 +02:00
Pedro Pinto Silva 0b3bc8d3b8 Use consistent download PDF as... labeling
Better to use Download -> 'PDF Document (.pdf) as... both for compact
and tabbed view

it's:
- Less scary
- More meaningful (you can download the pdf as hybrid document etc
- It also signifies that the action of pressing the button is just one
step for more options

Exception:
For when the group_download_as is false (by default is true). In this
case and since we don't allow '...' in button labels on tabbed view
better to fallback to '- Expert'

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ifda092ae3d685d7de3e5f065659733c5af2e2d41
2023-07-05 10:28:43 +02:00
luigiiucci 5626268f9b Add new "download as" PDF option - part 2
refs commit 2572f011da
Added functionality:
 - for draw, calc and impress with "download
   group" toolbar buttom
 - for all the applications with single
   download toolbar buttons
 - for all the applications in compact
   mode (menu)

This is a port from 22.05 + with conflicts solved and the removal of
legacy hasSigning and related

Change-Id: Ibab9d831f1da07cbf38db29a26eeb5b712c4842c
Signed-off-by: luigiiucci <luigi.iucci@collabora.com>
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
2023-07-05 10:28:43 +02:00
Gökay Şatır 63b4847562 Notebookbar accelerators, 2 step approach: Select tab first, then pick command.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: Idde0cd3401beb89c999b698af5ecb5a9348b5d8c
2023-07-05 10:11:57 +02:00
Darshan-upadhyay1110 31bf98adb1 Fix odd looking textarea width.
Fixed hyper link textarea dialog box's width
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: Ica7977c8d334bbb8bcb3bfd3c8aca8d4876c0571
2023-07-05 08:31:29 +02:00
Caolán McNamara 2c99a097b2 fail make check early in typical dev setup if core not built using --without-system-nss
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Idcf86a7b488e08d59a944a96f17072a7a7a72b3f
2023-07-04 21:30:34 +01:00
Caolán McNamara a94b7d8f8e draw a checkerboard for missing tiles when debugging
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I27cef6d9903e93fe4f87a8627c4fab84257129ef
(cherry picked from commit 308f367ffa6daec90f24603cca07bf7f26d37825)
2023-07-04 21:26:31 +01:00
Federico Rispo 39b991fa68 fix: Control.LanguageDialog to force the LanguageStatus command
Signed-off-by: Federico Rispo <federico.rispo@zextras.com>
Change-Id: Ib27b1af4c62c1ead673ec59c83dcb632b58a6143
2023-07-04 18:24:35 +02:00
Federico Rispo 6620815786 fix: Language selection in More... dialog is not applied
When a user selects a different language for the document using
the More... dialog, the system does not apply the selection.
This patch allows the system to send the LanguageStatus command even
when the jsdialog is opened.

refs: #6808

Signed-off-by: Federico Rispo <federico.rispo@zextras.com>
Change-Id: I7a1a39b31db59f1bc5f980d63f3040ffa9b311e5
2023-07-04 18:24:35 +02:00
Rash419 24c83b9e85 refactor: consolidate mentions-related code in TextInput.js
Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I47b104de283f001ec5d0486d94e88336ceba87e0
2023-07-04 17:42:58 +02:00
Gökay Şatır cf54fe17a0 Add multi-language support for Notebookbar accelerators.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I993477f280b0483e04193e671d6cd588f792764e
2023-07-04 12:25:07 +03:00
Andras Timar 1fb4954fe6 Android: bump compileSdkVersion targetSdkVersion to 33 #6788
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Id2199c0e43bae0cf3edbdf9b1c012bebb6d544fd
2023-07-04 10:01:32 +02:00
luigiiucci 78558fe9af Avoid crash when pasting image in debug mode
If COOL is running in debug mode ther is a
check that incoming messages are UTF-8.
We skip this tests if the message refers
to an image pasted.

Signed-off-by: luigiiucci <luigi.iucci@collabora.com>
Change-Id: I4f7e4a647deb22ec2a032d4d6347d910184c0701
2023-07-04 09:57:52 +02:00
Michael Meeks 61aa932d30 Send an 'update' message for an un-changed tile when rendered.
Change-Id: Iefe666f9953195af0001626a9e8d7d080a7fe201
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2023-07-03 20:27:07 +01:00
Michael Meeks 9a16d3fc54 cleanup lastKeyframe setting.
Change-Id: I967e444fb4160a63e3eda66152c02aee114f71f2
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2023-07-03 20:27:07 +01:00
Michael Meeks 023a243982 De-confuse two different sendTiles.
Change-Id: Ib67093b9cb61ff7e856db5c8d98178c0afbdf555
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2023-07-03 20:27:07 +01:00
Michael Meeks 36818e9153 tiles: track invalidation by monotonic timestamp.
We want to keep pre-loaded, and invalidated tiles around so that
we have something to render in lots of cases, particularly for
other parts, and slides. However - we need to know that it is
invalid so we can on-demand fetch something better.

It is very important that this invalid state doesn't race with
tile arrivals ie. in a banal way:

	invalidate, req, invalidate, req, tile, invalidate, req, tile

it is unclear whether the latest tile is still invalid; similarly,
if we request(req) a tile and there is no change to it we get no
response.

To disambiguate this, use the monotonic wid to check we are in-sync.

Re-factor:
	setup debug tile layer more pro-active.y
	rename HasContent to NeedsFetch to be more explicit.

Remove:
	previous _invalidCount that was perhaps a similar idea.
	previous .loaded concept.
	previous _pruneTiles concept - now it seems we can be
	confident in cached tiles from other slides and sheets.

Change-Id: Ibc6d3b6050e756ace91a9bd53d3e4efe12b023cf
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2023-07-03 20:27:07 +01:00
Michael Meeks 4676b10765 privilege new tiles not to get GC'd before they are rendered.
If we just got a new tile from coolwsd - it must be for a reason,
even if it is a pre-fetched tile, lets keep it around if we can
in preference to less recently rendered tiles.

Change-Id: I87eaba7ccca0d6cf22777043e047dd2874da5bca
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2023-07-03 20:27:07 +01:00
Michael Meeks 9e22f3e830 tiles: tag current tiles and garbage collect during _pruneTiles.
Change-Id: Ia47b80ed6fb800e32153ef29895ed07a40607162
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2023-07-03 20:27:07 +01:00
Michael Meeks 0a4a9e3972 Remove obsolete tile.active code paths.
It appears that tile.active has been un-conditionally true for a
good while, and that the tile.retain handling for zoom levels has
not been used for a while.

New tile garbage-collection should give us scope to keep and/or
pre-load tiles for zooming more helpfully if necessary.

Change-Id: I4d493a5eea34bf9dfd84744696303d0ae37bf883
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2023-07-03 20:27:07 +01:00
Pedro Pinto Silva 5a04df5b76 Tablet: Add "Read-only" label only for users with no writing access
Before this the read-only label was being added to the status bar even
if the user has writing access but is currently in that transient
read-only mode state (pencil icon is visible)

Don't show read-only label for those cases. We already have the pencil
icon/btn that signifies that.

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I5295564244977388034c7a7930840cb45dfdd629
2023-07-03 15:45:46 +02:00
Andras Timar 7c68347c68 add dark mode settings to coolkitconfig-mobile.xcu
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ib5b33596b5c312ecdcea3df2649a28fb4c3300c7
2023-07-03 11:01:07 +02:00
Parth Raiyani 872228b6a8 Updated copyVersionInfoToClipboard to work when navigator.clipboard is undefined
Signed-off-by: Parth Raiyani <pmr642001@gmail.com>
Change-Id: I3ed071f49c1008f15f6eb1e5b97dfd6c2c78c1d4
2023-07-03 13:35:10 +05:30
Szymon Kłos 7af3dc1946 jsdialog: fix checkboxes in treeview
entries are a tree structure so we need to iterate
through it using a special function

this fixes eg. date filtering in autofilter
where checkboxes didn't work

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I8a263264b2338d8955e0611f267f382768f1153c
2023-07-03 09:07:23 +02:00
Szymon Kłos 37fc7428e0 formulabar: mobile: allow to set cursor in the middle of word
make every character separate node to make this possible
also take not selection but node based on event's point

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I561a57e8d6284d8cbb567494dfd51c3470286af6
2023-07-02 18:55:12 -04:00
Szymon Kłos beb0a9689a Element #formulaInput no longer exists
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I72b16bfe0c3e25844c25e8297a428d7790b48ba0
2023-07-02 18:55:12 -04:00
Szymon Kłos c94be3e5f8 formulabar: use IME with new contenteditable
It converts textarea into contenteditable div.
Input is handled by TextInput.js used for document
and already in the past for formulabar. Replaces
usage of keyevents which are not triggered with
eg. Japanese.

Fixes also #6737
Fixes on mobile #6767 requires: https://gerrit.libreoffice.org/c/core/+/153717

New widget consists of text layer with visible content
and cursor layer with selections and cursor. When clicked
it focuses TextInput.js field for typing.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ieb7cf148a5aba80ab790e0b53c3a5ba27f166b73
2023-07-02 18:55:12 -04:00
Andi Chandler 558eb6ba39 Translated using Weblate (English (United Kingdom))
Currently translated at 100.0% (507 of 507 strings)

Co-authored-by: Andi Chandler <andi@gowling.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/en_GB/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I4c277190ce01d240f88f67211ad60289cf329ebd
2023-07-02 18:24:21 +02:00
Rob Pearson 5cf22e3891 Translated using Weblate (English (Australia))
Currently translated at 100.0% (507 of 507 strings)

Co-authored-by: Rob Pearson <rob.dunedin@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/en_AU/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ie98e5a4d7d2df51086118ee43f4e23af9be1f067
2023-07-02 18:24:21 +02:00
Stanislav Horáček a98a56e7ab Translated using Weblate (Czech)
Currently translated at 100.0% (507 of 507 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: I787386a0bf508c7a3b80c2d82eed307bc9623c2e
2023-07-02 18:24:21 +02:00
Pedro Pinto Silva c46d9a7db7 Tabbed view: Writer: Insert tab: remove references related items
Insert tab is already quite full better to remove insert bookmark and
reference as they already exist in the References tab

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I33c9876fa6fd258d9fec9db2abbb6d74f04fa4f1
2023-07-02 18:08:06 +03:00
Pedro Pinto Silva cc567fbd83 Tabbed view: Writer: Insert tab: Reorder elements
Better to reorder these so we have higher probably to meet user's
expectations and fix the priority in which the elements are placed

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I9ae3bcd087f82e2cfa02da780638424f37a3589c
2023-07-02 18:08:06 +03:00
Andras Timar 6ae1ba9c48 Poco: build for Android 2023-07-02 10:29:16 +02:00
Andras Timar 6696f2c515 android: only static zstd libs are needed
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ic460c18c9d5ae72f4d38b90260a2e8b8db8e8289
2023-07-01 18:14:08 +02:00
Ihor Hordiichuk 676d2db1f6 Translated using Weblate (Ukrainian)
Currently translated at 100.0% (507 of 507 strings)

Co-authored-by: Ihor Hordiichuk <igor_ck@outlook.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/uk/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ic194f0a32db9b2702b80e96388df2404f8af0752
2023-07-01 15:01:11 +02:00
Luna Jernberg 4e316fb6ad Translated using Weblate (Swedish)
Currently translated at 100.0% (507 of 507 strings)

Co-authored-by: Luna Jernberg <droidbittin@gmail.com>
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: Ica1a5cefe79eb20642c7231596e11e59a0b16484
2023-07-01 15:01:11 +02:00
Matthaiks 8004d9a5a7 Translated using Weblate (Polish)
Currently translated at 100.0% (507 of 507 strings)

Co-authored-by: Matthaiks <kitynska@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pl/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I8896901f96b46c3232b9aed27fdd789d282a745e
2023-07-01 15:01:11 +02:00
Andras Timar d4164bc4dc Translated using Weblate (Hungarian)
Currently translated at 100.0% (507 of 507 strings)

Co-authored-by: Andras Timar <andras.timar@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/hu/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I7630cd9efa7855482d0f9b6533aa46fbac80ba6c
2023-07-01 15:01:11 +02:00
Yaron Shahrabani b21fad4096 Translated using Weblate (Hebrew)
Currently translated at 100.0% (507 of 507 strings)

Co-authored-by: Yaron Shahrabani <sh.yaron@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/he/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I7f633fc4e1200a943e6ac84001fcac8b36ddcdb0
2023-07-01 15:01:11 +02:00
Ettore Atalan 376c1ab02a Translated using Weblate (German)
Currently translated at 100.0% (507 of 507 strings)

Co-authored-by: Ettore Atalan <atalanttore@googlemail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/de/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I291b16c1eacc81c5da21b946652de2a61c823f1a
2023-07-01 15:01:11 +02:00
Ashod Nakashian b18c92aa31 wsd: simplify logging logic
Change-Id: I140d23e4e82e24c5ac66df4b485bca016f1eb22a
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-06-30 21:45:40 +02:00
Ashod Nakashian 7824df4926 wsd: notify the client of loading errors
Change-Id: Ied18f6820a7c3ceb4cc29200111c4a73442d2808
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-06-30 21:45:40 +02:00
Ashod Nakashian 5fdc4f9623 wsd: better logging of document and session loading
Change-Id: I0cdf08bf711499e63f09c3db6f3f47e873eb3b59
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-06-30 21:45:40 +02:00
Ashod Nakashian 481d3b6842 wsd: http: avoid capturing locals by reference
Fortunately, we have no need for any locals
in this case.

Change-Id: I954953bb2a8c79662152ad4cc2fb5422bc2b0baa
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-06-30 21:45:40 +02:00
Ashod Nakashian 5e27d0800b wsd: use STATE_ENUM in SocketDisposition
Change-Id: I914557afdbf8f03856214acf2a64d405b8e0e068
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-06-30 21:45:40 +02:00
Ashod Nakashian 56992f0bad wsd: logging
Change-Id: Id82e44f508397affbc828494c766dca7bb97d4dd
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-06-30 21:45:40 +02:00
Ashod Nakashian e0ea9fc883 wsd: some clang-tidy warning fixes
Change-Id: I5d5cce6bec9b377025640d10e7a0053b9f6ddd91
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-06-30 21:45:40 +02:00
Ashod Nakashian 826451b6cf wsd: http: protect against exceptions from onFinish
Previously, we didn't expect such exceptions,
but increasingly this can happen, as we have
more and more async processing. The main
issue with not catching exceptions is that
we do not properly discard read and
parsed data from the socket. This is a
major issue, of course.

Change-Id: I4490baed7069cd55d103301c1d3be31d9b2d9b2c
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-06-30 21:45:40 +02:00
Attila Szűcs 9b689b3e53 Treeview: fix tree branch collapse
Added collapse event sending to to core
and handle collapsed information received from core

the core part is here:
https://gerrit.libreoffice.org/c/core/+/153771

This patch allow user to have separate view of navigator, other users
will not expand/collapse our navigator.
Our own Expanded/Collapsed status of navigator branches will be
remembered even if we turn off/on navigator.

Signed-off-by: Attila Szűcs <attila.szucs@collabora.com>
Change-Id: Ib0c1beb3ba05932e6a36c2d95a72f3d1d61fd55c
2023-06-30 21:05:14 +02:00
Attila Szűcs aff495099e treeView: Cursor movement fix in collapsed branches.
Improved _handleKeyEvent for ArrowDown and ArrowUp, to jump
not only one line blindly, but to seek the first entry that is not
hidden, or else focus would stuck on collapsed tree branches.
(Because if a tree branch is collapsed, then its child entries,
that are the following entries, are hidden, so we should skip them)

Signed-off-by: Attila Szűcs <attila.szucs@collabora.com>
Change-Id: Ic7a662964976263f40e18c8a41fe4e9e72f85ea3
2023-06-30 21:05:14 +02:00
Skyler Grey 2ad2ac584b configure.ac: Fix missing space in test command
Omitting this space leads to the error "test: too many arguments"

Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
Change-Id: Id8a83d77adfb484dcc949a10b4b25f6ad81130f8
2023-06-30 21:04:34 +02:00
Caolán McNamara 062219b31b restore using Uint32Array for previous pixel compare
removed in:

commit d859da11b0
Author: Caolán McNamara <caolan.mcnamara@collabora.com>
Date:   Wed Jun 28 11:12:28 2023 +0100

    rawDelta may not be sufficiently aligned for Uint32Array

because it would failed with nonaligned data from the delta
case.

Those tend to be very short, so for that case copy into a suitable
aligned buffer and the lengthy keyframe case which is suitable
aligned already can get the win.

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I8acfcb18c69380c55128c07f1749eb301c1145a1
2023-06-30 17:39:15 +01:00
Andras Timar 12a7be619f Update l10n files for Weblate
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ifc6097800c43b62d95a9b3f0cab63b5364c4b880
2023-06-30 12:10:36 +02:00
Luna Jernberg 81ab139076 Translated using Weblate (Swedish)
Currently translated at 100.0% (463 of 463 strings)

Translated using Weblate (Swedish)

Currently translated at 100.0% (503 of 503 strings)

Co-authored-by: Luna Jernberg <droidbittin@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/sv/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/sv/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I611fb02d993a87cdedcdda4693903f09f805512d
2023-06-30 12:07:13 +02:00
Darshan-upadhyay1110 8e6acb4128 Mobile: Enable tooltip for copy version button
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: Iff50721ef8befd3802967a575e61233540298ced
2023-06-30 11:33:01 +02:00
Darshan-upadhyay1110 e19f29eb98 Fix : Wrong label 'BackColor' on mobile UI
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: I264d02b57a5e2c969ac9245cee2fa4be028e1c04
2023-06-30 11:25:14 +02:00
Rash419 5b31e6d5a2 updated k8s readme to use collaboraonline.github.io repo
Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I505c0c177a649a5ebed63dcc5232a3cba3e5fbf7
2023-06-30 10:03:29 +05:30
genofire 2b49a9a1ad fix(helm): update appVersion
Change-Id: b37e710c9d
Signed-off-by: genofire <geno+dev@fireorbit.de>
2023-06-30 09:30:25 +05:30
genofire 767ab72d2f fix(helm): ci with helm- prefix on tag and release
Change-Id: I67754c5159f80ea721920e888996a894ca4101aa
Signed-off-by: genofire <geno+dev@fireorbit.de>
2023-06-30 08:11:12 +05:30
Henry Castro e5b4036627 wsd: fix secure cookie Set-Cookie
The browser will block the cookie if it is sent
over an insecure connection

"This attempt to set a cookie via a set-cookie header was
blocked because it had the "Secure" attribute but was not
received over a secure connection."

Change-Id: I36faac0d9d3a73eed463c2580e5405d61a3a18f5
Signed-off-by: Henry Castro <hcastro@collabora.com>
2023-06-29 20:47:08 +01:00
Henry Castro 6bd4563a8a browser: admin: fix vex dialog on socket close
The parent class will overwrite the popup vex dialog,
misleading error information.

Change-Id: I29d3d5fe0747903a58b56ae6c70e2e226715cdf4
Signed-off-by: Henry Castro <hcastro@collabora.com>
2023-06-29 20:47:08 +01:00
genofire de74ae830b feat: add helm-repo release ci (with usage of github-pages as helm repo)
Change-Id: 3dde8c5cac91543dc97bd38918de00e7af35d7a7
Signed-off-by: genofire <geno+dev@fireorbit.de>
2023-06-29 22:08:35 +05:30
Rash419 fcce324cbf admin: added retryInterval option in monitor config
Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: If0b94bb043a6a4883affac6cf38adcffd3b72b9a
2023-06-29 18:21:33 +02:00
Rash419 9d1741232b admin: added wopiSrcMap command
Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I95a7ccec6075848bd18b8899119c720aa303a106
2023-06-29 18:21:33 +02:00
Rash419 d63bca3f8e admin: migrate document after saving
- controller used to send two messages first to save then
  once saving is done migrate the document
- now controller only sends one message, COOL handles
  unsaved document

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: Id4afe1f9a04ef99005d7f0dbd6246826ba82442b
2023-06-29 18:21:33 +02:00
Rash419 932f2ad67f admin: don't send the routing_rmdoc if doc is migrating
Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: Ic1391dd509027e794ed005bcf78014afca31ede5
2023-06-29 18:21:33 +02:00
Rash419 164d1d2826 show message that document is migrating
Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: Id0908f31b578a6f0ff012c212f4ca4468a76038c
2023-06-29 18:21:33 +02:00
Rash419 b717be603e implement document migration
- updated protocol.txt

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I67a0515580979e15223ea084c835f5ed801ceb5e
2023-06-29 18:21:33 +02:00
Rash419 ca5517cc24 indirecton:request again if we get 202 status
- also send 'App_LoadingStatus' postMessage with 'Loading_Progress'
  Status to notify integrator

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: Ie754955c53d4d361d8dfaf083f7734382954d3f9
2023-06-29 18:21:33 +02:00
Darshan-upadhyay1110 4f779b25e2 Update page state inn statusbar for readonly mode.
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: Icb4f9116deb9a79fec3b6fe708625619a80ddb9c
2023-06-29 17:14:53 +02:00
Caolán McNamara 2081d49bcc cid#318937 Array compared against 0
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I8e0e270b0a08e9fe343b591095a001530bc88c02
2023-06-29 08:03:00 -04:00
Caolán McNamara b30ccb0392 cid#318852 COPY_INSTEAD_OF_MOVE
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I8e5f1f7f837c7d52922f05c8a65b1af583b864b9
2023-06-29 08:03:00 -04:00
Caolán McNamara 52338a50f1 cid#318841 String not null terminated
help coverity see that this is not true

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Ie2b72e7c0bcc649509310edc5498ec7adc7ebe72
2023-06-29 08:03:00 -04:00
Caolán McNamara 4730458b97 cid#318835 COPY_INSTEAD_OF_MOVE
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I964fc80c2bb7bddb8391e631ce179bf947fce55e
2023-06-29 08:03:00 -04:00
Marco Cecchetti 226a758594 cypress tests when editing with a11y disabled
Signed-off-by: Marco Cecchetti <marco.cecchetti@collabora.com>
Change-Id: I54ae4515ba1b59711cfbd719db777d02f4735d7a
2023-06-29 13:43:13 +02:00
Marco Cecchetti 2cf2a1e891 cypress: expectTextForClipboard helper function never fails
expectTextForClipboard(expectedText) never fails for any passed
expectedText string
The value returned by the function passed to `then` cypress construct
must not be regarded as an implicit assertion.

I don't see anymore the '\n TEXT" case. It seems that comparing for
equality against the selected plain content is enough.

Fixed some cypress test that was failing after modifying
expectTextForClipboard.

Signed-off-by: Marco Cecchetti <marco.cecchetti@collabora.com>
Change-Id: I64ce31fa2127efcc70bbc3da3ac45fe456e66803
2023-06-29 13:43:13 +02:00
Marco Cecchetti ef02d909a2 a cypress env var for enable/disable a11y on testing + a a11y tags
Now you can use CYPRESS_A11Y for enable/disable accessibility state on
testing.
Moreover you can use the taga11yenabled tag for tests that should be
run only when accessibility is enabled, and the taga11ydisabled tag
for test that should be run only when accessibility is disabled

Signed-off-by: Marco Cecchetti <marco.cecchetti@collabora.com>
Change-Id: I4c44e78e5394477b64cc17ac6b815d9d70b059f5
2023-06-29 13:43:13 +02:00
Pedro Pinto Silva 261e8cac30 Scripts: Add parser used in forum for monthly leaderboard
Used for translators leader-board in the forum

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I04a557c3beaa109b0ab010ca32ec749b585d07cc
2023-06-29 12:55:35 +02:00
codewithvk 2dcabfd3ca Condense common parameters in Makefile
Change-Id: Ic39a90bf263504bb45b0b933e06893629966e357
Signed-off-by: codewithvk <vivekpatel7202@gmail.com>
2023-06-29 11:39:18 +01:00
Paris Oplopoios 738de114d7 Make writer page background match document color
It used to be that scrolling in dark mode would show a white color while
the tiles were loading - now shows the document background color.

Signed-off-by: Paris Oplopoios <paris.oplopoios@collabora.com>
Change-Id: Id4c3881e728ae18496bf276e8c565a7abc1de7b5
2023-06-29 11:22:04 +01:00
luigiiucci 415f171036 Add new "download as" PDF option
PDF export was avaliable only with a modal "pdf options" window.
It seems a little complicated for some users who'd like to
simply press the button and receive pdf.
Added a new menu item to download pdf directly.

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Signed-off-by: luigiiucci <luigi.iucci@collabora.com>
Change-Id: Id824179adeac3b516e58c85a9e2d01838f81c892
2023-06-29 11:22:24 +02:00
Pedro Pinto Silva dd41f8e12b Mobile: Add "Read-only" label ONLY when it's not possible to edit
The new label added in a13f33b777 might
be a bit confusing and not necessary if the edit button (pencil) is
already present.

Better to:
* Have only the edit button (that should already be enough to signify
that the user is currently in a read-only transient mode)
* Add Read-only label for the cases were the user is opening a
read-only file (without permission to edit and thus the edit button is
absent)

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I1fc5ca821bfd9feb75f411d2c3260a43d54e16cd
2023-06-29 11:14:48 +02:00
Caolán McNamara 46c2ee5e54 don't call scroll if there is no pos change
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Id3913626e62b241fdeae46fcde5b0a06f7c56ed8
2023-06-29 08:55:39 +01:00
Caolán McNamara 81067dc4ad in calc we end up drawing * 3 for each scroll event
a) The "RowHeader" Header._updateCanvas listens to "move" and redraws everything via CanvasSectionContainer.drawSections
b) the "ColHeader" Header._updateCanvas does the same
c) scrolling then causes a "viewrowcolumnheaders" to be emitted from _updateHeadersGridLines and CanvasTileLayer listens for that too and again redraws everything

pause/resume around scrolling

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Ic2bc28df18a633544d26607d3024bdb4dc321ce2
2023-06-29 08:55:39 +01:00
Henry Castro 8803bfa9a4 cypress: fix failing unit test apply_paragraph_props_text_spec.js
The unit test fails by 1 pixel offset, add some tolerance

"'assert expected [ <tspan.TextPosition>, 1 more... ] to have attribute y with the value '7822', but the value was '7823'""
.

Change-Id: Ieb36eedf1a17aadd3ba4872e9c4f94a3b18d0a73
Signed-off-by: Henry Castro <hcastro@collabora.com>
2023-06-28 18:15:53 -04:00
Henry Castro e38bc519ae cypress: fix possible random file duplicates
The failing unit test it is due to a duplicate file
that was modified with new properties.

Change-Id: I02824cfeaf8c496e84dc4e285975e95e79edb9df
Signed-off-by: Henry Castro <hcastro@collabora.com>
2023-06-28 18:15:53 -04:00
Henry Castro 91b83bd44d cypress: adjust values for '#copy-paste-container' elements
The element '#copy-paste-container' according to the documentation
it is only to prevent flickering, so check only if has children.

Change-Id: I11ecdf156c6fee8657e5cd42c2c7daf9f206410b
Signed-off-by: Henry Castro <hcastro@collabora.com>
2023-06-28 18:15:53 -04:00
Henry Castro 5a25308d42 cypress: no welcome if cypress test running
Change-Id: I1ee96f029baf0e1e80209342895115dedb8ebc7f
Signed-off-by: Henry Castro <hcastro@collabora.com>
2023-06-28 18:15:53 -04:00
Henry Castro 1e29c6cb61 browser: use 'reportValidity' to validate number
Prevent to send wrong data to server.

Change-Id: I9d1b584326dd36cfe0a469a1ac77c1afbc16fd73
Signed-off-by: Henry Castro <hcastro@collabora.com>
2023-06-28 18:15:53 -04:00
Henry Castro 4466e02d40 browser: use 'checkValidity' for spin field element
Prevent send data to server if not validated.

Change-Id: I3a60ef52c842eab18c1e94063eb1c5769e6929b9
Signed-off-by: Henry Castro <hcastro@collabora.com>
2023-06-28 18:15:53 -04:00
Henry Castro 241dbdd819 browser: add method 'setContainer' to JSDialog
In order to query input elements.

Change-Id: I2c4514a278a605edcfe93231417566568c7a87aa
Signed-off-by: Henry Castro <hcastro@collabora.com>
2023-06-28 18:15:53 -04:00
Marco Cecchetti ef51ac31ab A11yTextInput: improve screen reader on unselecting text
When text is unselected by clicking somewhere, selected text innside
the editable area was unselected, selected again, unselected again.
That was causing the screen reader to report such a nonsense sequence.

Signed-off-by: Marco Cecchetti <marco.cecchetti@collabora.com>
Change-Id: Ib9d6628f7ac30fe2cd40ee7823ac67eb6471d1f2
2023-06-28 22:19:28 +02:00
Szymon Kłos 2956201a3d jsdialog: get precision for validation also from value
when we open Writer -> Format -> Footnote field: Thickness
shows an alert about incorrect value. It's caused because
step is set to 1 but value is 0.5 as core uses step only for
increase/decrease but not for valudation. Fix this annoying
error by allowing to use 0.1 step.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I141194ebcd1f100ca9d3e7aeae086ddac2980da6
2023-06-28 16:12:07 +02:00
Rash419 f3166c37e1 show alias tags in contentcontrols
Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: Ib348e46af68ab00819a76f2e9cb1b26732034ad4
2023-06-28 15:17:49 +02:00
Andras Timar a22a2cd0d6 Amend 'Copy all version information in English' on About Box
* reuse string from LibreOffice (and make it translatable)
* use an icon instead of button text, like in LibreOffice
* small amendments to text copied to clipboard

Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ic16d786fe467c1f8ff718b1f46364541bba8e6ab
2023-06-28 15:14:17 +02:00
Caolán McNamara d859da11b0 rawDelta may not be sufficiently aligned for Uint32Array
in which case it fails, just use the Uint8ClampedArray view
to look back at previous input pixel after all.

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I1ee5d7480bf9a11145ca6514ef7efb7882c183cb
2023-06-28 11:49:04 +01:00
Paris Oplopoios 2c02c9a93d Disable CalcHiddenColRow by default
Signed-off-by: Paris Oplopoios <paris.oplopoios@collabora.com>
Change-Id: I717ef1080fe3b9af39ed081eb79355d0e5bd6e4e
2023-06-28 11:31:30 +03:00
Parth Raiyani 135c8d0dba Added copy button in "Help > About" to copy version information to clipboard
Signed-off-by: Parth Raiyani <pmr642001@gmail.com>
Change-Id: I2ce4d5fe03ac3c38ff179cbd2466ba25961db92d
2023-06-27 19:44:54 +02:00
Caolán McNamara 52dbfd38be avoid calling getImageData if we can
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I02c27170b2aa96703fb6cb153cb2f7958fcdee21
2023-06-27 15:21:27 +01:00
Szymon Kłos 9102357ee5 color palette: send the theme data in compact mode
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ib4d77cea3ec3759841fa9c9d5e70f1cfd852fc16
2023-06-27 15:12:56 +02:00
Tomaž Vajngerl 3c38d78a5e color palette: send the theme data through UNO (when present)
Signed-off-by: Tomaž Vajngerl <tomaz.vajngerl@collabora.co.uk>
Change-Id: I245d34e323681add3552e808eee471821bd72a0c
2023-06-27 15:12:56 +02:00
Szymon Kłos 713bd070eb color palette: trigger callback with theme data
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Icce3ca11e9224f2bd8920e5ce9ff92e6d5ef5536
2023-06-27 15:12:56 +02:00
Szymon Kłos d26a78495a color palette: show selector only in Writer
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ifdf07cac131d4a1afdf758fd31af3d49b28ba3a6
2023-06-27 15:12:56 +02:00
Szymon Kłos 3372ea093c color palette: add palette selector
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ie09715afbdbc50d783d6e50ce27dac2e2a06596a
2023-06-27 15:12:56 +02:00
Szymon Kłos b32e3f1c9c color palette: use always the latest data
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I4fee6c3fc9e7e91d3e737f8ab93350cca8a2ecd0
2023-06-27 15:12:56 +02:00
Szymon Kłos a44e2b1a37 color palette: convert core format to w2ui
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Id8980b0f7d34c011cc051f682299169952467b43
2023-06-27 15:12:56 +02:00
Szymon Kłos e21925c65f color palette: move w2ui colors to docstate
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I037dd353ee143ecd5fd6182fa7aa3441588c0eb5
2023-06-27 15:12:56 +02:00
Tomaž Vajngerl 761c3c51fa color palette: store color palette data from the callback
Signed-off-by: Tomaž Vajngerl <tomaz.vajngerl@collabora.co.uk>
Change-Id: I8d0dec4afd91bcdf66799f3afba1fd77cbc223db
2023-06-27 15:12:56 +02:00
Caolán McNamara 4f4fb39e85 optimize unpremultiply a little
use a Uint32Array view when we want to look back at, or copy, a whole
pixel

and seems to be then marginally better to align the input/output views
to be able to use the same index into arrays

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Id3560cd1f40b5235d0115f82479b9091fcf798ad
2023-06-27 08:59:01 +01:00
Caolán McNamara c7c2644b9b fix android ci
github_android_online_co-23.05/net/HttpRequest.hpp:1391:63: error: no matching function for call to 'min'
                      << Util::dumpHex(std::string(data.data(), std::min(data.size(), 256UL))));
                                                                ^~~~~~~~

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I5b81096c696565b9e4eb4f3ca39c16bc1e5b9182
2023-06-26 17:07:35 +01:00
Caolán McNamara d900c3fc12 cid#318841 markup forcedExit as a fatal path
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I8825d8f2756c33d10efe9bc40129fbf4871e9de0
2023-06-26 07:08:46 -04:00
Caolán McNamara 08f28aa8af cid#318956 AUTO_CAUSES_COPY
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Id2902a510e61c9ecf00f416908aa2a66f76547c0
2023-06-26 07:08:46 -04:00
Andras Timar 970291c6bf Bump version to 23.05.1.2
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ie6eb8f388d0724ef08a44e608d5c8c2265ce0f5e
2023-06-26 12:45:41 +02:00
Andras Timar bdfeadf223
Update README.md (remove outdated build status links) 2023-06-26 10:28:13 +02:00
Milo Ivir a4aad903c4 Translated using Weblate (Croatian)
Currently translated at 100.0% (503 of 503 strings)

Co-authored-by: Milo Ivir <mail@milotype.de>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/hr/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: If36d4267db672e27eb87361dc7c1eb747e18e531
2023-06-26 09:25:26 +02:00
Gökay Şatır 3e40f3fbe4 Add functionality for notebookbar accessibility keys.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I97476d05559444fe895cd6bf4e040f43350a6706
2023-06-23 20:06:35 +03:00
Andras Timar d0149b1426 Bump version to 23.05.1.1
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I39740fe9b1c30c0a56056435d58eabd3121698bf
2023-06-23 18:55:31 +02:00
Marc Rodrigues 5081fdf442 Translated using Weblate (German)
Currently translated at 99.7% (462 of 463 strings)

Co-authored-by: Marc Rodrigues <marc.rodrigues@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/de/
Translation: Collabora Online/Help
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I5a36292a5d131215d26352811a34b6ad1b243673
2023-06-23 18:24:53 +02:00
Alexander Gabilondo 8250826d6a Translated using Weblate (Basque)
Currently translated at 99.0% (498 of 503 strings)

Co-authored-by: Alexander Gabilondo <alexgabi@openmailbox.org>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/eu/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I9cef297d041ced4a21f5d6c4c50d6638ce277106
2023-06-23 18:24:53 +02:00
Stanislav Horáček 866edb4eea Translated using Weblate (Czech)
Currently translated at 100.0% (503 of 503 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: I8a3b688f2b2d6f7ac5a49e254e456053a270a597
2023-06-23 18:24:53 +02:00
Nathan 701dc6dc92 Translated using Weblate (French)
Currently translated at 98.9% (458 of 463 strings)

Translated using Weblate (French)

Currently translated at 100.0% (503 of 503 strings)

Co-authored-by: Nathan <bonnemainsnathan@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/fr/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/fr/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ie12f8c7129ab20e18f508582bf7311e4b975c3ad
2023-06-23 18:24:53 +02:00
Ihor Hordiichuk 69bbf1f411 Translated using Weblate (Ukrainian)
Currently translated at 100.0% (503 of 503 strings)

Co-authored-by: Ihor Hordiichuk <igor_ck@outlook.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/uk/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I7ce63a3d16ceafb2bdfdd38c7f0c4c75ba94ca71
2023-06-23 18:24:53 +02:00
Sabri Ünal 273f72f435 Translated using Weblate (Turkish)
Currently translated at 100.0% (463 of 463 strings)

Co-authored-by: Sabri Ünal <libreajans@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/tr/
Translation: Collabora Online/Help
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ibc50d88bfd078dd824718370b56e454727ca15ae
2023-06-23 18:24:53 +02:00
Jaume Pujantell aceb8912fd Handle LOK_CALLBACK_DOCUMENT_PASSWORD_RESET
Signed-off-by: Jaume Pujantell <jaume.pujantell@collabora.com>
Change-Id: Ibc2be5bc7676b1b67b7494c200011e4622a5b294
2023-06-23 18:17:14 +02:00
Pranam Lashkari 08a7a5b206 jsdialog: fixed dialog content being cut off
i.e: theme dialog(format->theme)

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I9a09d52cd2c0d95cfae18ae12995761985d8111d
2023-06-23 18:16:26 +02:00
Ashod Nakashian 9efc81a51b wsd: random device mounting
We now warn when we fail to use mknod
to create the random devices and have
stricter requirements to mounting
character-devices. Specifically,
we explicitly only allow mounting
the random devices.

Change-Id: Ib0dc300dedc40942ea52426af2b267f6a81fbeb8
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-06-23 18:13:59 +02:00
Michael Meeks 455c377d29 wsd: double size of the delta cache.
Change-Id: I218c0fbdef6815a56bf8d4059bfcae186b32ebed
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2023-06-23 16:59:08 +01:00
Caolán McNamara 490b0c0d0d drop non-standard width=400 height=400 tile request in unit test
there since:

commit 232499f542
Date:   Thu Apr 21 12:34:30 2016 +0300

and

commit bf66f7a908
Date:   Mon Jun 13 20:31:14 2016 -0400

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I04745be0581a697bbc3b15ba1d8bb94207320a7a
2023-06-23 16:55:25 +01:00
Caolán McNamara 2e64ad700d push unpremultiply to client
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I4aef21179a4ace084762f83f5235c7022d670752
2023-06-23 14:20:42 +01:00
Caolán McNamara 962ecba493 push bgra->rgba conversion to the client
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I425655bfd5e6fd9e1e3ca0b6bcc914511ba188b3
2023-06-23 14:20:42 +01:00
Caolán McNamara 30d088b9bb refactor to isolate where we extract pixels
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I0772a786fe67dfac8200f1b9ee75f2ba5d9a2e82
2023-06-23 14:20:42 +01:00
Caolán McNamara 9c780bec82 double delta cache
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I4f06f9c4bd6f6fc41b6eed23eb2331daa26f0b5b
2023-06-23 14:07:31 +01:00
Pedro Pinto Silva 378f96433a Dialog: don't ignore label's padding (ui-text)
Before this 8a0c8c44a7 was not being
applied furthermore better to specifically set this to only affect
labels within dialog content (since jsdialog class is also in many
other places such as sidebar and widgets)

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ic1cb825d6c70858a4c49123243866eaf0a6a8e50
2023-06-23 12:56:55 +02:00
Pranam Lashkari a9b66a0adc impress: mark multiple slides as hidden or show
when user hide or show multiple selected slide,
slides were actually hidden or shown but previews did not reflect that,
only first selected preview was marked as performed action

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: Ie0c2eea8442feb0a4340551a63d8d39932adad3c
2023-06-23 11:48:09 +02:00
Pranam Lashkari b49adc9534 impress: do not start slide show if all slides are hidden
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I81ea189b143ce4ad60cac02bfce5898ce9bacd4a
2023-06-23 11:48:01 +02:00
Gülşah Köse 518fb36699 Show the context menu on click empty parts of slides pane
Show New Slide and Paste (if clipboard is not empty) on context menu
when the user cliked on the empty parts of the slides pane.

Signed-off-by: Gülşah Köse <gulsah.kose@collabora.com>
Change-Id: I3d009499cc4400612f1246c28ce5478b80469428
2023-06-23 10:35:22 +02:00
Pedro Pinto Silva 9127173d83 Dark mode: Welcome dialog, use css vars and fix it for dark mode
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Id68a28615b0c245d7136eab50bbf0fc8b490ccc3
2023-06-23 08:15:35 +02:00
Szymon Kłos 722d538d15 Pass ui_theme to welcome dialog
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I19270ad653540b72f5606554848eed88bded8333
2023-06-23 08:15:35 +02:00
Pedro Pinto Silva c51b63510f Welcome: Refactoring: fix indentations and quotes
Avoid linting problems
- Use tabs as indentations
- use single quotes

All per browser/.eslintrc and browser/.stylelintrc.json

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I1bbd425b7aaf39bca3f8d18da5092b7e27e41624
2023-06-23 08:15:35 +02:00
Patrick Luby 8e6a858904 Limit memory usage of internal log storage.
Otherwise it could grow without bound; now limited to 100 entries,
each of <128 characters.

Change-Id: I6a1b96a8cb6a67f991c3870f5b724989f65e0e74
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2023-06-22 09:28:43 -04:00
Caolán McNamara 69820d85e8 fix js/useless-assignment-to-local warning
tile = this._tiles[key];
 if (!tile)
   tile = this.createTile(coords, key);
   ^^^^
The value assigned to tile here is unused.

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Iaabaa6417bcbf385ff2bde139663f8bd2e90db49
2023-06-22 14:12:54 +01:00
Michael Meeks bdf29a5365 Comment some more ...
Change-Id: I1bf5f638bc9b5fa1cb946dc7cd58be39cd6a6c5e
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2023-06-22 09:35:22 +01:00
Caolán McNamara 9cab50049b this.hasContent -> tile.hasContent - #6369
Thanks to: Patrick Luby <patrick.luby@collabora.com>

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Id58a276eade2ec3df3488ae70e1975f0f3ca527d
2023-06-22 09:35:22 +01:00
Michael Meeks 38b59a3f1c Handle canvas / tile memory more frugaly - #6369
Instead of spending time re-compressing canvases as pngs and
base64'ing these into URLs, lets just keep the nice, pre-compressed
zstd keyframe around and its associated deltas, in case we need them.

Move to a simple LRU time for cache eviction of all types: sorting
_tiles by last render time. Collect garbage regularly while working.
Enforce canvas count, compressed arrays and number of tiles limits
under a high watermark. We should have enough canvases around to
keep rendering snappy, while not jeopardising our ability to allocate
larger document canvases to render into.

Re-create canvases if/as/when we need to render them from our
cached compressed versions.

Re-factor and simplify createTile, pass section into foreachTileInArea.

  Includes parts of:

    Partial fix for issue #5876 discard excess canvas contexts

    WKWebView has a hardcoded memory limit for all canvas contexts
    so if canvas.getContext('2d') returns null, convert the canvas
    of other tiles to an image until canvas.getContext('2d') succeeds.

    Thanks to: Patrick Luby <patrick.luby@collabora.com>

Change-Id: I5117b0986aa46d2fffab6cd66d990de39dfcecea
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2023-06-22 09:35:22 +01:00
Michael Meeks 40ffe9ee03 Remove obsolete code from when tiles were Images.
We no longer need to track their loaded state, loading errors etc.

Change-Id: Icfa82807a800fc7a7406c130de22eb600324f61d
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2023-06-22 09:35:22 +01:00
Michael Meeks 12e0830b1b Kill canceltiles support completely.
This stopped working well a long time ago, and is already disabled
on the coolwsd side, so dung out the rest of the code & docs on this.

Change-Id: I2e0b73fe9780e16c3cc74ae3a38ae6b04434717a
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2023-06-22 09:35:22 +01:00
Caolán McNamara d3ecb6c95f the tile is assumed to be 256 in width
but as seen with unit-tiletest that is not always the case

==24170==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x63400001e808 at pc 0x558a6f505973 bp 0x7ffc0670e7d0 sp 0x7ffc0670e7c8
READ of size 8 at 0x63400001e808 thread T0 (kitbroker_002)
    #0 0x558a6f505972 in DeltaGenerator::DeltaBitmapRow::initRow(unsigned int const*, unsigned int) Delta.hpp:129:36
    #1 0x558a6f4fc318 in DeltaGenerator::DeltaData::DeltaData(unsigned int, unsigned char*, unsigned long, unsigned long, int, int, TileLocation const&, int, int) Delta.hpp:233:21
    #2 0x558a6f4f8a22 in DeltaGenerator::createDelta(unsigned char*, unsigned long, unsigned long, int, int, int, int, TileLocation const&, std::vector<char, std::allocator<char> >&, unsigned int, bool) Delta.hpp:574:17
    #3 0x558a6f4f2a35 in DeltaGenerator::compressOrDelta(unsigned char*, unsigned long, unsigned long, int, int, int, int, TileLocation const&, std::vector<char, std::allocator<char> >&, unsigned int, bool, bool, LibreOfficeKitTileMode) Delta.hpp:669:14
    #4 0x558a6f41f300 in RenderTiles::doRender(std::shared_ptr<lok::Document>, DeltaGenerator&, TileCombined&, ThreadPool&, bool, std::function<void (unsigned char*, int, int, unsigned long, unsigned long, int, int, LibreOfficeKitTileMode)> const&, std::function<void (char const*, unsigned long)> const&, unsigned int, int, bool)::$_0::operator()() const /home/vmiklos/git/libreoffice/online-san/./common/RenderTiles.hpp:304:38

so just use the rle cache for the first 256 pixels

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I8d34ea53bd20b69184e100b56017dfc0a904eaab
2023-06-21 21:31:48 +01:00
Caolán McNamara a06f31ec77 WaE: -Werror,-Winconsistent-missing-override
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I35bbc86924cfc1f9045d8168119d022f23edeac4
2023-06-21 16:40:47 +01:00
Caolán McNamara cc809fda24 fix asan build test
../kit/Delta.hpp:96:23: runtime error: index 4 out of bounds for type 'const uint64_t[4]' (aka 'const unsigned long[4]')
    #0 0x558e8e0f800b in DeltaGenerator::DeltaBitmapRow::PixIterator::next() libreoffice/online-san/test/../kit/Delta.hpp:96:23
    #1 0x558e8e0b8304 in DeltaTests::testRleComplex() libreoffice/online-san/test/DeltaTests.cpp:317:16

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I01da1e99b5d224411344659dce8bd2f29e7d74b0
2023-06-21 17:09:24 +02:00
Szymon Kłos 135d7a0ebb jsdialog: improve spinfields validation #6650
Fixes #6650

When opened empty hello-world.odt document and
then in dialog Format->Paragraph switched tabs
and then returned to "Indents & spacing" - some
fields were marked as invalid.

This was caused by agressive validation done by the browser.
Let's adjust step to min and max value also to avoid these
errors.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ie7784fdd85cda725a816842a7915efffcab22d0b
2023-06-21 16:24:10 +02:00
Caolán McNamara 5064d2bff1 cid#318846 Array compared against 0
array_null: Comparing an array to null is not useful: "false",
since the test will always evaluate as true.

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Ib34694022484e9041827980c0b67fe614446f4b9
2023-06-21 11:11:42 +02:00
Michael Meeks 28808ebf6a delta: Add unit tests for RLE encoding, and debugging support.
Change-Id: Ie0b62dbad8af2ab6ff95d6279c69de083c2cd888
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2023-06-21 10:00:10 +01:00
Michael Meeks 9d8e84effb deltas: RLE compress pixel runs to save space & time.
Store a bitmap of whether a pixel is identical to the last
pixel in a set of four 64bit members. These double as a
simple CRC. Store the allocated row size too, and use the
stack as a temporary scratch-space to do the building in.

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2023-06-21 10:00:10 +01:00
Michael Meeks 74a1047452 deltas: pure re-factor, store pixels in each DeltaBitmapRow.
Un-necessary allocation overhead for now, but more follows.

Change-Id: I1012678daf021cf63d8fc6e52d25d2dec703c4fb
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2023-06-21 10:00:10 +01:00
Michael Meeks 675c41c644 deltas: pure re-factor: extract out diffRowTo.
Change-Id: I908a486c0c67beaee7b41a85a3bde911f9fe141a
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2023-06-21 10:00:10 +01:00
Pedro Pinto Silva edbd19b104 Dark mode: fontwork icon: added from fee024f739 but with wrong name
Fix #6666

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ie145681bbfd452eaea44864fdb9496cd986b6f8c
2023-06-21 10:25:07 +02:00
Pedro Pinto Silva 699e78716c Dark mode: Add missing lc_fullscreen-presentation-toolbar-mobile.svg
Fixes #6684

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I1eb954657baf3e94add2380ac09d37d137a26c94
2023-06-21 10:17:31 +02:00
Caolán McNamara dc044b532f cid#318910 Logically dead code
this should presumably be checking caps_none not caps and is a cnp
error

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I46f381fbec31b3e9c311f1becf0c536c192788fd
2023-06-21 08:40:21 +02:00
Caolán McNamara c617e14d67 cid#318956 AUTO_CAUSES_COPY
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Ifcd6984042b50999a24f65479bc81428f710d38a
2023-06-21 08:40:21 +02:00
Caolán McNamara 1b8e81497c cid#318967 Uninitialized scalar field
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I508dd19109fe9d32c57b538c51bb006713d83f36
2023-06-21 08:40:21 +02:00
Gökay Şatır bfe4060571 Revert "23.05 - Android : tapping on cells flickers the keyboard"
This reverts commit f59dd62f6f.

Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I6ffc0efc46640fc77e097e3eabf14c0c6d6c18ee
2023-06-20 19:23:22 +01:00
Pedro Pinto Silva 8a0c8c44a7 JSDialog: Add missing padding for ui-text labels
This way they:
- Align to checkbox
- And have additional padding in places such as Format > Paragraph
Line spacing 's dropdown is glued to "of" label

This also fixes one task from https://github.com/CollaboraOnline/online/issues/6647

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I53e66602dffbc96db39449cbda53d433a9dd12d8
2023-06-20 11:29:32 +02:00
Ashod Nakashian 4363e2abe0 wsd: test: correct message example in comment
Change-Id: Id7bb0fba2e7233cf3f8167e46af7e4f99901dbaf
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-06-20 03:55:19 -04:00
Ashod Nakashian 6892d63916 wsd: test: minor cleanup of UnitWOPIWatermark
Change-Id: I9e69c432ee0c4a4f8fab3fe64137a4c33df7c811
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-06-20 03:55:19 -04:00
Ashod Nakashian bc5e9f1ed0 wsd: test: use configCheckFileInfo instead of handleHttpRequest
Change-Id: Iff526bda55e112877df74d55f21bc8108bb384f2
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-06-20 03:55:19 -04:00
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 25fe0b2dfb)

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 c1b19c0ae6)
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 995c24345e)

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 3e8deb33c6)

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 c317090f4c)
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
Caolán McNamara 0c027a73a3 cid#318882 AUTO_CAUSES_COPY
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I18f8af8bc3c3b0ea903a1b7d0786d3ce60da21e4
2023-06-14 10:10:46 +02:00
Caolán McNamara a5c000fa35 cid#318941 AUTO_CAUSES_COPY
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I256c1f61ed997615e3277817ba60db4971783dab
2023-06-14 10:10:46 +02:00
Caolán McNamara 2d6b190805 cid#318977 AUTO_CAUSES_COPY
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Idea2efdb46d1b819b8210a380bd026789d666e2b
2023-06-14 10:10:46 +02:00
Caolán McNamara bd34e1f7ee cid#318952 Resource leak
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I1535456a76c403c4fb8d0eb5d3a88a923528f6aa
2023-06-14 10:10:46 +02:00
Caolán McNamara 13ed88a547 cid#318930 Resource leak
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I12cdbe749b2f46422f329e9da39427ede7feb436
2023-06-14 10:10:46 +02:00
Caolán McNamara 532688c6ab cid#318877 Resource leak
commit fde57adbbf
Date:   Fri Jul 7 17:12:19 2017 +0530

    Introduce hard mode when we are OOM

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I507fcd07f07d15f613bcf1ce4c0141d23d518f88
2023-06-14 10:10:46 +02:00
Caolán McNamara b68634db9a cid#318867 Using a moved object
probably went astray with:

commit 52f2600cf9
Date:   Wed Feb 16 17:22:18 2022 -0500

    wsd: test: embue all tests with a name and unify logs

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Idf4f9bfce7ef188ac15a7cf62baadc3dd5b59dcd
2023-06-14 10:10:46 +02:00
Caolán McNamara 53e4209377 Resolves: #6514 disable noop 'canceltiles'
Given that all messages that can have "ver=" in them will also have
"nviewid=", "oldwid=" and "wid=" then the "id=" search is always
successful and this loop doesn't achieve anything. Disable this for now
and later either drop canceltiles or repair it to do something

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I085bd18f05561df3a542eb14ceb4744b228f4621
2023-06-13 20:04:57 +01:00
Henry Castro 05ad5c7b4b browser: fix first character IME input
The FireFox browser corrupts the first IME input character
while it is IME composing and changing cursor position.

Change-Id: I96a6ddd9f5c74b83566051b447b46e45745fa2be
Signed-off-by: Henry Castro <hcastro@collabora.com>
2023-06-13 09:03:26 -04:00
Pranam Lashkari 71c3a431cd impress: only one of hide/show slide button should be visible
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: If1823e7b40c8c4fdde5e954e9d89f854add8763b
2023-06-13 18:29:28 +07:00
Pedro Pinto Silva fa39b29402 Add missing hideslide and showslide icons
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I60e4162d083bb1bb49b8bb5d13c7ebde719bb02f
2023-06-13 18:29:28 +07:00
Pranam Lashkari 17b50868ea impress: introduce slide hiding/showing in presentation
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: If91726a1a66e1679b58603e496a5b90cde5f0b5b
2023-06-13 18:29:28 +07:00
Andras Timar 43965a0c6c docker: force mv
I saw unexpectedly a prompt in non-interactive mode:
mv: replace '/etc/coolwsd/key.pem', overriding mode 0600 (rw-------)?

Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I9acdc52bd612a1de52b5989e854b45898eda4b01
2023-06-13 11:36:01 +02:00
Henry Castro f46f69eb1f browser: fix encode hyperlink parameter
Encode the "JumpToMark" bookmark parameter to jump
sheet name with white spaces.

Change-Id: I3943751379bd00bbd4036e137256df1338d26f0d
Signed-off-by: Henry Castro <hcastro@collabora.com>
2023-06-13 10:21:18 +01:00
Caolán McNamara 81b2cbe63a perf: avoid creating strings by using string_view
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Ibffa35d40ee9839635cbd37be8cdc9c69b834504
2023-06-13 09:59:59 +02:00
Andras Timar ab6dc9e044 docker: numeric user id of cool user is 100
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I7a3679289245f837d21525eb64eb234b7c796755
2023-06-13 08:54:43 +02:00
Andras Timar e28e3643c5 docker: one more chmod commit was missing
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I18495a706326d0b6af98895501f5b830af7e08c3
2023-06-13 08:19:55 +02:00
Gökay Şatır b6cb9796be Fix JS error.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: If0eeb49ec35793ab8a7d312f317d046d665dea99
2023-06-12 18:34:20 +02:00
Andras Timar f23a49cd88 Bump version to 23.05.0.5
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Icd47475c24b1820e8fe42491c5260d81adc8805d
2023-06-12 14:55:39 +02:00
Sebastiaan Veld 064e7c66f0 Translated using Weblate (Dutch)
Currently translated at 100.0% (463 of 463 strings)

Translated using Weblate (Dutch)

Currently translated at 100.0% (503 of 503 strings)

Translated using Weblate (Dutch)

Currently translated at 100.0% (110 of 110 strings)

Co-authored-by: Sebastiaan Veld <sebastiaan.veld@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/android-app/nl/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/nl/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/nl/
Translation: Collabora Online/Android app
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I3e663b659de186cec2b0bd62b995fcef3b95b3ad
2023-06-12 13:54:21 +02:00
Sabri Ünal 889250dd2d Translated using Weblate (Turkish)
Currently translated at 100.0% (503 of 503 strings)

Co-authored-by: Sabri Ünal <libreajans@gmail.com>
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: I0fcb775cbbd4fa583599e7d1af959a7d92a8f119
2023-06-12 13:54:21 +02:00
Martin Srebotnjak ce19410ce9 Translated using Weblate (Slovenian)
Currently translated at 100.0% (503 of 503 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: Ib35f3ff71af19b47c96165885575720b8dca616b
2023-06-12 13:54:21 +02:00
Sveinn í Felli ba63c1ce31 Translated using Weblate (Icelandic)
Currently translated at 71.7% (332 of 463 strings)

Translated using Weblate (Icelandic)

Currently translated at 100.0% (503 of 503 strings)

Co-authored-by: Sveinn í Felli <sv1@fellsnet.is>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/is/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/is/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I69e9ae9a4b0fe9d5d5d1187d296017e5ae6824dd
2023-06-12 13:54:21 +02:00
gallegonovato 2221f67f28 Translated using Weblate (Spanish)
Currently translated at 100.0% (503 of 503 strings)

Co-authored-by: gallegonovato <fran-carro@hotmail.es>
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: Ide2542491af424aa434129ccf4cfb4047d161b4c
2023-06-12 13:54:21 +02:00
Andi Chandler c1424f73a1 Translated using Weblate (English (United Kingdom))
Currently translated at 100.0% (503 of 503 strings)

Co-authored-by: Andi Chandler <andi@gowling.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/en_GB/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ib839358a9e4e19f432ba33b711afe47fd8c67137
2023-06-12 13:54:21 +02:00
Rob Pearson f66fdcbe5d Translated using Weblate (English (South Africa))
Currently translated at 100.0% (503 of 503 strings)

Translated using Weblate (English (New Zealand))

Currently translated at 100.0% (503 of 503 strings)

Translated using Weblate (English (Australia))

Currently translated at 100.0% (503 of 503 strings)

Co-authored-by: Rob Pearson <rob.dunedin@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/en_AU/
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/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Iea7d2fff1be3e26769094e0cce84f407463cf8dd
2023-06-12 13:54:21 +02:00
Andras Timar fc50bd98c6 Translated using Weblate (German)
Currently translated at 100.0% (503 of 503 strings)

Co-authored-by: Andras Timar <andras.timar@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/de/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I27df0c0954089941bfeb7d9a2f2ecacc26bad648
2023-06-12 13:54:21 +02:00
Gökay Şatır ffd626a62b Fix paste_special_dialog id in clipboard.js.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I14fbce5e96a0d456b7caf42892e0e9e89082a4d1
2023-06-12 14:49:31 +03:00
Pedro Pinto Silva f96db1526c Calc: border style popup: can't read "More..." btn
this width was set but never used w2ui img rules have been overriding it

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I86a7d8b16313204fcacdabcad8f604ca5c1dce40
2023-06-12 13:27:41 +02:00
Pedro Pinto Silva 7d0a312525 Calc: border style: icons, do not override bg img
Before, we needed this white background.
Now, we don't.
- After HTML and dialog rework the background is inherit from the
wui overlay and the images are set directly to the td elements using
bg img

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ic6b802f4fd5bac66e975800b929c53ca571158dd
2023-06-12 13:27:41 +02:00
Pedro Pinto Silva 38f77dfc0c Snackbar: should not inherit generic modalpopup rules
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I200fc569b8d8c6492eb94b72b94d998b334b39db
2023-06-12 13:13:44 +02:00
Pedro Pinto Silva 64315f510a Don't apply duplicated border + shadow to all modalpopups
Better to make it more generic so it not only includes:
Busypopup: c26bed9
About dialog: bed76f1
but also any other similar dialog (warning dialogs, e.g.: copy/paste etc)

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: If56e36d5429472f255d94bfaa087a32309903257
2023-06-12 13:13:44 +02:00
Pedro Pinto Silva 5cc813b453 Calc: conditional formatting: icons, do not override bg img
Before, we needed this white background.
Now, we don't.
  - After HTML and dialog rework the background is inherit from the
  wui overlay and the images are set directly to the td elements using
  bg img

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I30826e17c502b0369fd337699d93f648d41846aa
2023-06-12 13:09:25 +02:00
Darshan-upadhyay1110 ecb1d6fd0d 23.05: Dark Mode - Texts on Comments dialog on Dark mode is not visible during edit
Add color property for annotation-textarea to get correct font color in comment box.
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: I74d5e83641982acc1b0b328c707c09d06d68c56d
2023-06-12 11:27:34 +02:00
Aron Budea 5df433b608 jsdialog: Pasting externally copied data in Calc can fail #6597
Fixes #6597

error:
Clipboard.js:305 Uncaught TypeError: this.isPasteSpecialDialogOpen is not a function
    at Clipboard.js:305:16
    at request.onload (Clipboard.js:225:6)

Regression from e116a4d3e8

Signed-off-by: Aron Budea <aron.budea@collabora.com>
Change-Id: I8c2717b627fead7a3ad3bdd870845c86c586eed4
2023-06-12 11:26:43 +02:00
Marco Cecchetti 909d15aa39 lok: a11y: fix regression: link autocorrect doesn't work anymore
Signed-off-by: Marco Cecchetti <marco.cecchetti@collabora.com>
Change-Id: I6eae62ce7762f153df40bb5cd993e2337e8af95c
2023-06-12 09:02:40 +02:00
Andras Timar b508da6db1 rpm: fix obsoleted package names
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I6624fc7d3870014ec3975981e3c94bf23904a6a1
2023-06-11 18:10:32 +02:00
Pedro Pinto Silva 53b94c7f0c Navigator: for now let's not communicate that is possible to drag
Since we have disable the functionality until it works as expected

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I0a99680d79ffb44a653c32edb25aafded35c7712
2023-06-10 09:02:25 +02:00
Gökay Şatır 5e279e3f20 Disable HTML dragging on navigator until the feature is activated.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I110f4efd3ff24b3f38a5756432b5847f0a852832
2023-06-10 09:02:25 +02:00
Tomaž Vajngerl d23ddf1342 support callback for changing the color palette
Signed-off-by: Tomaž Vajngerl <tomaz.vajngerl@collabora.co.uk>
Change-Id: I8d0dec4afd91bcdf66799f3afba1fd77cbc223db
2023-06-09 14:30:45 +02:00
Pedro Pinto Silva be28108112 Dark mode: add top missing mobile icons
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ieca41cb5bebf1f6f57ab654a4a1e3dd783780c92
2023-06-09 12:38:40 +02:00
Andras Timar bbe0174588 Bump version to 22.05.0.4
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I5b37d3112f76bc2f1c816b9b004615538b801ab2
2023-06-09 12:34:35 +02:00
Matthaiks e5c8cea922 Translated using Weblate (Polish)
Currently translated at 100.0% (503 of 503 strings)

Co-authored-by: Matthaiks <kitynska@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pl/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I62a6dbf68bb75a252331d311219a77b95f348396
2023-06-09 12:33:19 +02:00
Andras Timar d63a9ca6e6 Translated using Weblate (Hungarian)
Currently translated at 100.0% (503 of 503 strings)

Co-authored-by: Andras Timar <andras.timar@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/hu/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Iaf1c695bf9758a951f5da808e47eb25004e3bea7
2023-06-09 12:33:19 +02:00
Yaron Shahrabani c561db2570 Translated using Weblate (Hebrew)
Currently translated at 100.0% (503 of 503 strings)

Co-authored-by: Yaron Shahrabani <sh.yaron@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/he/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I81361e2a73f6c0a055c68f0230690d43523fb99e
2023-06-09 12:33:19 +02:00
Pedro Pinto Silva c26bed969f Busypopup: don't inherit duplicated styles and fix label
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: If37fb7cc924fc9d1b8bf1a86708d4382e9639f8f
2023-06-09 12:24:00 +02:00
Pedro Pinto Silva bed92fccf7 Mobile: Fix busypopup label alignment
Tested using:
`map.fire('blockUI', {message: 'Saving document, please wait...'});`

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I4e1bd87d512287fd346964a5b81a7b79df1ed78a
2023-06-09 12:24:00 +02:00
Pedro Pinto Silva a3f4858f67 Mobile: popups should not have height: 100%;
Otherwise they (their contents) will not be scrollable

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Idf121b6164dbb43a473e07e2ca70962bedb10ebb
2023-06-09 12:24:00 +02:00
Darshan-upadhyay1110 4f6853ad2a Calc: Inconsistent behaviour when switch/reloading dark mode in Calc
Refresh Calc header after mode change
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: Ifcc8c29f6b8316580570a7a9c4728965297ddc8b
2023-06-09 12:20:13 +02:00
Andras Timar 4402df41be docker: fix unexpected operator in shell script
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I4933491ef695511dd580be273edd6eff606894d4
2023-06-09 11:22:57 +02:00
Andras Timar caf4b7c417 docker: cleanups
- removed old/obsolete dockerfiles
- updated README
- added back the starter scripts to Dockerfile, in order not to break
  existing API, i.e. environment variables for aliasgroups, admin, etc.

Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I8ed88afd9db3bc53f9b5529f20764b538b302596
2023-06-09 11:22:57 +02:00
Andras Timar 466638f369 docker: add back inotifywait
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I476bac56190d95f96380e3cc40a8b88d726bf8b1
2023-06-09 11:22:57 +02:00
Andras Timar 1822bc13f1 docker: 23.05 image based on DebianSlim
This new DebianSlim dockerfile eliminates the use of installer script
which was an anti-pattern.
The inotifywait hook for watching changing coolwsd.xml was removed. Was it
useful? I don't know. Please complain, if you miss it.
DebianSlim is still not "distroless". Probably first we should solve the
name resoltion problem in jails, in order to eliminate the need of copying
/etc/hosts and /etc/resolv.conf to systemplate at startup.

Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I26948eb21a1bc3092b93d02d93e03269e9a70198
2023-06-09 11:22:57 +02:00
Caolán McNamara 12d4ce7195 use std::string_view in COOLProtocol::matchPrefix
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I56ce6e6b882fe6b5940478a16e4ecf6dcb1287a8
2023-06-09 10:32:06 +02:00
Michael Meeks 25f2581a30 Revert this for now while we think more deeply.
This reverts commit 80b4e6d4ae.
2023-06-09 09:19:36 +01:00
Andras Timar 05cfaeee43 Update l10n files for Weblate
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Iec0247021924f82ac115ee13fa8081fd2e81e362
2023-06-09 07:34:24 +02:00
Adolfo Jayme Barrientos a817d550b0 Translated using Weblate (Spanish)
Currently translated at 100.0% (463 of 463 strings)

Translated using Weblate (Spanish)

Currently translated at 100.0% (499 of 499 strings)

Translated using Weblate (Catalan)

Currently translated at 99.1% (459 of 463 strings)

Translated using Weblate (Asturian)

Currently translated at 15.1% (70 of 463 strings)

Translated using Weblate (Asturian)

Currently translated at 51.5% (257 of 499 strings)

Co-authored-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/ast/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/ca/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/es/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ast/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/es/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I06386f08afcfbfa9e723c3dc5ab17f1d401c1578
2023-06-09 07:32:08 +02:00
Rob Pearson 2292e1ba83 Translated using Weblate (English (South Africa))
Currently translated at 100.0% (463 of 463 strings)

Translated using Weblate (English (New Zealand))

Currently translated at 100.0% (463 of 463 strings)

Translated using Weblate (English (Australia))

Currently translated at 100.0% (463 of 463 strings)

Translated using Weblate (English (South Africa))

Currently translated at 100.0% (499 of 499 strings)

Translated using Weblate (English (New Zealand))

Currently translated at 100.0% (499 of 499 strings)

Translated using Weblate (English (Australia))

Currently translated at 100.0% (499 of 499 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_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_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: Ib0205e607093399f24fb119cfc5e28789f18fb11
2023-06-09 07:32:08 +02:00
Stanislav Horáček 036c43e04b Translated using Weblate (Czech)
Currently translated at 100.0% (463 of 463 strings)

Translated using Weblate (Czech)

Currently translated at 100.0% (499 of 499 strings)

Co-authored-by: Stanislav Horáček <stanislav.horacek@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/cs/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/cs/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I3a1579afb171ee4b532b6d05ff5cedd449b64435
2023-06-09 07:32:08 +02:00
Nguyễn Hoàng Minh 275a15c5bd Translated using Weblate (Vietnamese)
Currently translated at 100.0% (499 of 499 strings)

Co-authored-by: Nguyễn Hoàng Minh <mingu03@yandex.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/vi/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ic2b92ceaa2118d8eadd2dbc4924117dc971c48a2
2023-06-09 07:32:08 +02:00
Sebastiaan Veld e92b3985b7 Translated using Weblate (Dutch)
Currently translated at 100.0% (499 of 499 strings)

Co-authored-by: Sebastiaan Veld <sebastiaan.veld@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/nl/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ic8b7df0901a8a3a1a94ed09d33708edfe9bfde71
2023-06-09 07:32:07 +02:00
Milo Ivir ea3043711f Translated using Weblate (Croatian)
Currently translated at 100.0% (463 of 463 strings)

Co-authored-by: Milo Ivir <mail@milotype.de>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/hr/
Translation: Collabora Online/Help
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I4ed5b089ebc813e5fc4438dad32a3529b2a31366
2023-06-09 07:32:07 +02:00
Sveinn í Felli 73ef690c1a Translated using Weblate (Icelandic)
Currently translated at 100.0% (499 of 499 strings)

Co-authored-by: Sveinn í Felli <sv1@fellsnet.is>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/is/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ia42ebf22f4d01f4e7a9e9e9a7d5b8ddecb21efca
2023-06-09 07:32:07 +02:00
Andi Chandler b3ef7abcc0 Translated using Weblate (English (United Kingdom))
Currently translated at 100.0% (463 of 463 strings)

Translated using Weblate (English (United Kingdom))

Currently translated at 100.0% (499 of 499 strings)

Co-authored-by: Andi Chandler <andi@gowling.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/en_GB/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/en_GB/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I4b0dde00265ca7a81febf9d633ea6f323696cfe2
2023-06-09 07:32:07 +02:00
Attila Szűcs 7414f0b1c1 navigator: explaining text in case of empty contenttree
Add a TR with the text:
"Headings and objects that you add to the document will appear here."
if the navigator is empty.

Signed-off-by: Attila Szűcs <attila.szucs@collabora.com>
Change-Id: Iff944df90b921e6f6415d2a3bee462b86e5a5eb4
2023-06-09 07:28:35 +02:00
Rash419 4e12eb6e7b fix: mix compact and tabbed view
- happens when toggle darkmode in readonly document

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I14c8e710ff33084e7380e1738f80c9101fdc9f70
2023-06-09 07:26:55 +02:00
Miklos Vajna a901db436c kit: fix missing init of _isDumpingTiles in ChildSession
This was forgotten in commit 21966e1a9c
(Fix copy command going out of bounds during delta creation,
2023-05-31).

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: I91ce26f46cc6cb7a2dc3ab0665dc9aeea8a5c00f
2023-06-09 01:36:58 +03:00
Rash419 902fedf655 fix missing icon 'Open in local editor' in compact mode
- use encodeUri instead of encodeURIComponent because
 it preserves those characters that are part of the URI
 syntax

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: Ibde1b9ad40424b9bd2ce065cddfe2e83b23271c5
2023-06-08 18:51:47 +02:00
Aron Budea b152b35a6d browser: Fix Calc tabbed button for auto spell checking
Signed-off-by: Aron Budea <aron.budea@collabora.com>
Change-Id: Ib1887e54a5cabacec90cf2989adbe596a165ba11
2023-06-08 16:46:25 +02:00
Andras Timar e9a329ef43 when upgrading from 22.05 to 23.05, remove unsupported langpacks
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I4d60997fd6347ddd8fb2667a11ef0550b161d673
2023-06-08 16:04:04 +02:00
Gülşah Köse 89ee7239ee Dark mode: make readable the links in About dialog
Signed-off-by: Gülşah Köse <gulsah.kose@collabora.com>
Change-Id: I64bc99145943e98a6548d682917a120c0d8a33f4
2023-06-08 15:24:11 +02:00
Pedro Pinto Silva 45f400c7a5 Dark mode: add select state for buttons
Do not re-use light mode values.
Increase color contrast

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I514d4be5468dd3df50ab5256b64d0a22e659ad97
2023-06-08 14:44:50 +02:00
Pedro Pinto Silva a1860a1463 Dark mode: lc_morebutton.svg: Increate container brightness
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I6e371a9777215db482b89c05b07acdf06a15c44a
2023-06-08 13:53:57 +02:00
Pedro Pinto Silva a03e0eaea9 Dark mode: Add missing icons
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I8c4483144fa735d06daafef3171670b12773a4e3
2023-06-08 13:53:57 +02:00
Marco Cecchetti 961e8265e0 A11TextInput: clipboard area stolen focus from text search field
When a key was typed the focus was grabbed from the clipboard area
because of caret/text selection events received from core.

Signed-off-by: Marco Cecchetti <marco.cecchetti@collabora.com>
Change-Id: I60b945d7d4742faf4a946c836628bdf70b266eb7
2023-06-08 13:40:57 +02:00
Pedro Pinto Silva 468ca99820 Navigator: Fix and improve the selected item
- Categories (listview with icon) get highlight but not indicator
  - So it's understandable that they can be dragged
- Categories: change cursor so user understands that they can be grabbed
- All other treeview (even exapandable) get highlight and indicator
  - To help user's orientation

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I8c275c81503787c60c4527a3cee63be8323686ef
2023-06-08 11:58:14 +02:00
Darshan-upadhyay1110 72227786a2 Add new css class for ui-treeView-entry that has icons inside
So it can be targeted in the styles

Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: I167ed996f1625e44674e53e2c10daf78a4546b5d
2023-06-08 11:58:14 +02:00
Pedro Pinto Silva 09511d5116 Start navigator from the top
This is a follow up on the revert f4f95b2 since the scroll logic depends on the
absolute position

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I5659701c2236dc89f764f45008e6e92c47a3f101
2023-06-08 11:58:14 +02:00
Pedro Pinto Silva a0820fa9ca Revert "Navigator: do not resort to absolute position to set deck"
This reverts commit f4f95b27cf.

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Iff99928855684252cc6b48977940f8ddd827a865
2023-06-08 11:58:14 +02:00
Marco Cecchetti d01bedc09c a11y: add config for enable/disable accessibility in general
A new section about accessibility has been appended to coolwsd.xml
config file

Signed-off-by: Marco Cecchetti <marco.cecchetti@collabora.com>
Change-Id: I086abdf73646639283eb655ae60f200fb64e495a
2023-06-08 00:00:51 +02:00
Jaume Pujantell 87ad301dc1 fix a bug introduced in 418ffa3
Signed-off-by: Jaume Pujantell <jaume.pujantell@collabora.com>
Change-Id: I938e02db8ad6adc85d6464d3260dfc8c0bb7ca9a
2023-06-07 18:44:49 +02:00
Gülşah Köse 32f0c658c9 Expand the Page style and Character dialogs #6493
Signed-off-by: Gülşah Köse <gulsah.kose@collabora.com>
Change-Id: I5442d6a99bb202ad2a850ac42baf2140adc4d1a2
2023-06-07 17:47:37 +02:00
Pedro Pinto Silva d4a4a84b13 Tunneled dialogs shouldn't have grey title bar
- Tunneled dialog was missing title bar color (was inheriting from
jquery ui library defaults)
- Also use the main background (lighter than bg-darker) for JSDialog containers

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: If6db5ee2edad88b2785096eb746f291a07b46d70
2023-06-07 17:27:36 +02:00
Pedro Pinto Silva 573ed1bb0b Revert "Tabbed view: Fix save modified icon being cropped"
Better to move this elsewhere otherwise we get huge save icon

This reverts commit 247bc9192d.

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
2023-06-07 17:15:19 +02:00
Caolán McNamara 71d630c607 DeltaTests::testDeltaCopyOutOfBounds fails in a build from make dist tarball
because data/delta-graphic.png and data/delta-graphic2.png are missing

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Ie850d9ae76946e891d2928de80c5ded4e970f4cf
2023-06-07 14:48:39 +01:00
Darshan-upadhyay1110 ad6f2f2a65 Fix Canvas tiles color do no change when clicking the dark mode toggle
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: Ifdb5bbf06cb2ed5b8aa1e03ddb6796a0bc80b1c8
2023-06-07 14:27:13 +02:00
Szymon Kłos f26fdd8114 jsdialog: tab cycle in tabbed dialog #6326
allow to jump to the last element in dialog by using
SHIFT + TAB in tabbed diaogs

also close button shoudn't be in the cycle

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Idfc75aa35a04add8e5673c45a9e94b670e877706
2023-06-07 13:30:56 +02:00
Szymon Kłos e5bf100ff5 jsdialog: fix initial focus for combobox
combobox has inner < select > html element which should
be focused instead of main container

this can be tested in Insert -> Page Number in Writer

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I5a336ae9e0fe86a11732b92276f4475724f2c21a
2023-06-07 13:30:56 +02:00
Caolán McNamara bb617b90aa Related: #6514 removeCallbackDuplicate only needs up to 4 tokens
rearrange so we can use the tokens as they are generated and
can end tokenization early as we find we don't need any more

from:

|--74.39%--SvpSalInstance::CheckTimeout
|          SalTimer::CallCallback (inlined)
|          Scheduler::CallbackTaskScheduling
|          |
|          |--63.01%--desktop::CallbackFlushHandler::Invoke
|          |          |
|          |           --62.92%--Document::ViewCallback
|          |                     |
|          |                     |--62.11%--MessageQueue::put
|          |                     |          |
|          |                     |          |--61.95%--MessageQueue::put
|          |                     |          |          TileQueue::put_impl
|          |                     |          |          |
|          |                     |          |          |--61.51%--TileQueue::removeCallbackDuplicate

to:

|--44.61%--SvpSalInstance::CheckTimeout
|          SalTimer::CallCallback (inlined)
|          Scheduler::CallbackTaskScheduling
|          |
|          |--21.23%--desktop::CallbackFlushHandler::Invoke
|          |          |
|          |          |--20.75%--Document::ViewCallback
|          |          |          |
|          |          |          |--19.33%--MessageQueue::put
|          |          |          |          |
|          |          |          |          |--19.17%--MessageQueue::put
|          |          |          |          |          TileQueue::put_impl
|          |          |          |          |          |
|          |          |          |          |          |--18.69%--TileQueue::removeCallbackDuplicate

seen with 25 simultaneous joins to a local instance

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: Iea4de188521f7cd8039d6ab60e9c52209fc3154d
2023-06-07 08:54:27 +01:00
Pedro Pinto Silva 9057c705f7 Dark mode toggle: fix flimsy selected state
I have noticed that sometimes the toggle doesn't get assigned with
selected css class. We could just rely on this line and avoid add and
removing css class to the DOM every time the mode changes

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I7c19f626d60c761a1ebe2509e7ab7aa8031403ad
2023-06-07 07:57:28 +02:00
Gökay Şatır 2058aade1f Make the collapsed mode treshold narrower.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: If2d8ad40ba692473667a28bedfb8203d343940cc
2023-06-07 07:46:01 +03:00
Gökay Şatır 6c5f8f3a48 Add a button to color dialog for setting the color to auto.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I5a4b4b5a3c2960d21cdb894faa9e2cb488f66abf
2023-06-07 07:45:45 +03:00
Pranam Lashkari 8a330f6466 browser: impress: add copy/paste in slide preview context menu
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I9055525d672d8a45253f05ee1a1c23ebf991fa87
2023-06-07 01:52:05 +07:00
Pranam Lashkari 1e96bfcd1c browser: impress: introduce slide sorter context menu
added context menu entries which works out of the box

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: Ic0b598a575c4f0fb337ae79bc51cac2330d1115f
2023-06-07 01:52:05 +07:00
Pranam Lashkari 68c9b6924c browser: impress: provide unique id to slide previews
problem:
previously ids were assigned based on the position,
in many cases this id can be repeated on slide insertion which was problematic

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: If4dd5409518f91ecda58aa7de1e9bae293e83436
2023-06-07 01:52:05 +07:00
Gökay Şatır 31a74f7537 Disable navigator tests for now.
There will be a setting for them.

Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I75264e7de14f79642cfd33a7d798ec78188f9213
2023-06-06 14:49:30 +03:00
Szymon Kłos 369d1e0d3e jsdialog: default button inside form #6404
default button should be inside form so we execute
correct action on ENTER

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I2b9b489e6589f6b16f967a7e77c9d6389d322ff2
2023-06-06 10:04:24 +02:00
Pedro Pinto Silva 6f34bc03c1 Mobile: About dialog: remove unnecessary elements
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Id929475af828f6bddf4abaadea443dd3f707af4c
2023-06-06 09:50:45 +02:00
Pedro Pinto Silva cd5326c012 About dialog: make it wider
now that about dialog is not a vex it is inheriting width from
generic .jsdialog-window.modalpopup. Overwrite that and make it wider.

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I830f57cc9fda9bea8e377d53e72af92c4804cf8d
2023-06-06 09:17:47 +02:00
Pedro Pinto Silva bed76f1156 About dialog: don't apply duplicated border and shadow
About dialog is already inheriting those from
.jsdialog-window.modalpopup

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I3f49284f3d818eccc62b1f49cc330267d1163319
2023-06-06 09:17:47 +02:00
Pedro Pinto Silva 60e7b72f48 JSDialogs: modalpopup use CSS var for border and shadow
And use the same values as .lokdialog_container.ui-dialog.ui-widget-content

This is a follow up from
- PR: https://github.com/CollaboraOnline/online/pull/6343
- Commit: a65de18694

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Id2661cd4eec021305c6af6c26cfc184cc9968956
2023-06-06 09:17:47 +02:00
Rash419 81834bc466 added serverId and routeToken in about dialog
Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I498dd2a9f1fb08d9af116ac27ac645b31b87ed57
2023-06-05 21:27:50 +05:30
Andreas-Kainz ee5b5d8878 Sidebar writer Paragraph Section BackgroundColor justify-content: end
Signed-off-by: Andreas-Kainz <andreas_k@abwesend.de>
Change-Id: I23a5690b0b33dae426914ebef30fae6d97d598c7
2023-06-05 14:42:06 +02:00
Andreas-Kainz cd5115aa8d jsdialogs radio button use same margin than checkboxes
Signed-off-by: Andreas-Kainz <andreas_k@abwesend.de>
Change-Id: I3d9611595819d505632fc58686f1ee9355228524
2023-06-05 14:21:58 +02:00
Shehr Bano 80b4e6d4ae Fix: Speed-up callbacks
Signed-off-by: Shehr Bano <shehr.bano@collabora.com>
Change-Id: I796d71e48ae7110fb8d88eda781e362faba75aa2
2023-06-05 13:56:41 +02:00
Gülşah Köse 07bbf1d38f Fit the images into the sidebar.
Without patch image sizes are 336px and seems cropped in sidebar.
We should use same width with sidebar width.

Signed-off-by: Gülşah Köse <gulsah.kose@collabora.com>
Change-Id: I617a4e79e15d1d49ca95aec8f5a20f95734160a2
2023-06-05 12:32:41 +02:00
Pedro Pinto Silva f09f743636 Dark mode: Canvas, get directly the css var property value
- Get directly the particular css var that we want instead of on relying on a container
  - This makes things easier to maintain in the future
- Use a new --color-canvas instead of relying on --color-main-background
  - color-main-background is used in many other places which means
  that if we want to have some particular UI brighter or darker it
  would affect the canvas. Better to use a different/new css var for that

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I3d7d3ba188e96080d9f6f814a5c46f85ea378142
2023-06-05 12:13:47 +02:00
Gülşah Köse b3d4cb6a7b Check the integrator has smart link funcitonality #6489
Insert -> Smart Link option works if only the integrator supports the
funcitonality. If not supported not need to show to user.

Signed-off-by: Gülşah Köse <gulsah.kose@collabora.com>
Change-Id: Iad6609ad6a90a57126b30288a9c089f9185d97f2
2023-06-05 12:07:46 +02:00
Paris Oplopoios 21966e1a9c Fix copy command going out of bounds during delta creation
When creating a delta, the copy command could copy from rows that are
bigger than the height of the tile. This would go unnoticed on light
mode because the js side that applied the delta would apply these out of
bounds rows with a white color, but it is noticable in dark mode. Made
it so the copy command stops copying from out of bounds.

Signed-off-by: Paris Oplopoios <paris.oplopoios@collabora.com>
Change-Id: I4d05cb411958d0945933edb5c812de2dfd9c1abd
2023-06-05 08:59:39 +01:00
Paris Oplopoios baaecac852 Add debug option that allows tile dumping
Added a debug option (triggerable using the about debug menu) that
allows you to dump tiles as they come in

Signed-off-by: Paris Oplopoios <paris.oplopoios@collabora.com>
Change-Id: If5939b816c1e3598e50c2db4971710524f855909
2023-06-05 08:59:39 +01:00
Paris Oplopoios b6d4c88f90 Replace documentbackgroundcolor with applicationbackgroundcolor
Signed-off-by: Paris Oplopoios <paris.oplopoios@collabora.com>
Change-Id: I31dc013f239daec039b194a2b15365a6f3d71621
2023-06-05 08:59:39 +01:00
Andras Timar 119f01aa85 Bump version to 23.05.0.3
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I77f80b885fa7c6b1d67a314186a11c25e1e652a0
2023-06-04 16:47:43 +02:00
Rizal Muttaqin 35c823c2da Translated using Weblate (Indonesian)
Currently translated at 100.0% (499 of 499 strings)

Co-authored-by: Rizal Muttaqin <riz_17_oke@yahoo.co.id>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/id/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ifaed27274835b54f6f3261fce2d487948607bab3
2023-06-04 12:27:39 +02:00
Leif-Jöran Olsson 4b4f30e5b4 Translated using Weblate (Swedish)
Currently translated at 100.0% (499 of 499 strings)

Co-authored-by: Leif-Jöran Olsson <info@friprogramvarusyndikatet.se>
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: If7908762d031a443cd7984075847b3bf7ee54837
2023-06-04 12:27:39 +02:00
Mike Kaganski db2fa33649 Translated using Weblate (Russian)
Currently translated at 100.0% (499 of 499 strings)

Co-authored-by: Mike Kaganski <mikekaganski@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ru/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I837177356ac083178706991df1fd818461b75a59
2023-06-04 12:27:38 +02:00
Sveinn í Felli 660db36a42 Translated using Weblate (Icelandic)
Currently translated at 98.5% (492 of 499 strings)

Co-authored-by: Sveinn í Felli <sv1@fellsnet.is>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/is/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I93f7f9dbfb141bacb519d460534734de29fd576a
2023-06-04 12:27:38 +02:00
Milo Ivir d155ced3d4 Translated using Weblate (Croatian)
Currently translated at 99.3% (460 of 463 strings)

Translated using Weblate (Croatian)

Currently translated at 100.0% (499 of 499 strings)

Co-authored-by: Milo Ivir <mail@milotype.de>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/hr/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/hr/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I086557dee1f0f5d20804574a14ff9feeb9a18a22
2023-06-04 12:27:37 +02:00
Yaron Shahrabani 584b30b8eb Translated using Weblate (Hebrew)
Currently translated at 100.0% (499 of 499 strings)

Co-authored-by: Yaron Shahrabani <sh.yaron@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/he/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I40703490e07303c24d65f6670bdcab03469960f6
2023-06-04 12:27:37 +02:00
gallegonovato 1796486b18 Translated using Weblate (Spanish)
Currently translated at 100.0% (463 of 463 strings)

Translated using Weblate (Spanish)

Currently translated at 100.0% (499 of 499 strings)

Co-authored-by: gallegonovato <fran-carro@hotmail.es>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/es/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/es/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I79f5ebbf53b3bedc9e5b41574340548e5c819b84
2023-06-04 12:27:36 +02:00
Ettore Atalan 57b8018d7c Translated using Weblate (German)
Currently translated at 99.3% (496 of 499 strings)

Translated using Weblate (German)

Currently translated at 98.1% (490 of 499 strings)

Co-authored-by: Ettore Atalan <atalanttore@googlemail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/de/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ib1a4112c190f3650741962c827e4afa86c8e1726
2023-06-04 12:27:36 +02:00
codewithvk 71039cb0e4 Condense common parameters in Makefile.am
Signed-off-by: codewithvk <vivekpatel7202@gmail.com>
Change-Id: Ie3027c63cc31eea2dea2cb0a997d296a24476581
2023-06-03 14:55:58 +01:00
Pedro Pinto Silva 9010d0125e Navigator: Fix alignment to coincide w/sidebar properties expanders
Zeroing margin and padding otherwise we inherit px

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I1dedb755b3fb16ac2da6af95b4a0c4d5e5910715
2023-06-02 18:52:31 +02:00
Pedro Pinto Silva f4f95b27cf Navigator: do not resort to absolute position to set deck
- No element should have border
- Reset max-height otherwise it will inherit 150px

This is a follow up on:
navigator: hide panel title in sidebar 56ca9b6

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I908468f0cb9a494acd7785d76e1882c3a8673de3
2023-06-02 18:52:31 +02:00
Pedro Pinto Silva 6a370193a5 Mobile: Add "Read-only" label to toptoolbar
Affected user flows:
- User opens read-only file
  - Before this commit, there was no indication that the current mode
  is read-only.
- User opens file
  - Before this commit, the only indication about the current read
  mode was the pencil Floating Action Button.

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I7cc3982b0c0f827a96e144ee339d8f0e601bf03e
2023-06-02 18:49:40 +02:00
Gökay Şatır c04c065edc --color-main-background CSS variable will be used for canvas background as default.
To change the behaviour: call app.setBackgroundColorMode(false);
^ This will take the variables sent from core side into account.
Otherwise they are ignored.

Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: Ib7321bf7c65ff9bcb1937957cea3a070b0eecd32
2023-06-02 18:47:36 +02:00
Darshan-upadhyay1110 9e39495994 add minus,plus and search icon for bottom toolbar
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: Ia675cf4c1607d4ef5f19268647a40ea701109d76
2023-06-02 18:35:48 +02:00
Pedro Pinto Silva 247bc9192d Tabbed view: Fix save modified icon being cropped
Before this, save icon's dot was being cropped due to height rule

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Id7b16b3fcd05d169c1206b9b7c3dbe615f0e8141
2023-06-02 16:25:25 +02:00
Pedro Pinto Silva 34c07e5f9c Status bar: add missing focus state for search input field
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I7417f5052e7a2d167469b2ff8b94918229614ceb
2023-06-02 14:33:38 +02:00
Pedro Pinto Silva 46e3a917f0 Status bar: increase search width
Before this search input field was quite narrow
- Too narrow for some content
- Too discreet due to its width

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ifef703f6cf75d5807494d4bbf01db16dbddb9e16
2023-06-02 14:33:38 +02:00
Darshan-upadhyay1110 15e8af5920 fix missing icon for dark mode in navigator
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: I6d6c5d497fc565a8040a5fd7ecbfb4c488020638
2023-06-02 10:22:37 +02:00
Parth Raiyani 058c96954a fixed cursor background in dark mode
Signed-off-by: Parth Raiyani <pmr642001@gmail.com>
Change-Id: Ie545ef51462b23a5abb3c389b5acf4cd6d118e45
2023-06-02 09:16:36 +02:00
Gülşah Köse 1f91a454c7 Set the width of the effects buttons #6378
Impress -> Sidebar -> Animation tab -> Effects
Unset the hardcoded  min-width and use fit-content instead.

Signed-off-by: Gülşah Köse <gulsah.kose@collabora.com>
Change-Id: If524533997e33037d669055fd5479ddcbba80d71
2023-06-02 09:07:49 +02:00
Szymon Kłos 50ff048471 jsdialog: silence spinfield validation errors #6494
fixes #6494

browsers are very strict with validating spinfields
use as step values like: 1, 0.1, 0.01 so all the numbers
with specified precision will be allowed

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ic6d336b2448e82e02e8400ad62d4685a8d37d3a8
2023-06-02 09:05:00 +02:00
Gökay Şatır fc6b0fc2d3 Translated using Weblate (Turkish)
Currently translated at 100.0% (499 of 499 strings)

Co-authored-by: Gökay Şatır <gokaysatir@collabora.com>
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: Ic61b770c65ed4492b4f4c38fe79536b33e837a2e
2023-06-02 07:50:34 +02:00
HM fef53b1ecc Translated using Weblate (Persian)
Currently translated at 20.0% (22 of 110 strings)

Translated using Weblate (Persian)

Currently translated at 1.8% (9 of 499 strings)

Translated using Weblate (Persian)

Currently translated at 15.4% (17 of 110 strings)

Co-authored-by: HM <goodlinuxuser@chmail.ir>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/android-app/fa/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/fa/
Translation: Collabora Online/Android app
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I06ca427ea45a5931dac5a4bbd40f58192fb1ea58
2023-06-02 07:50:34 +02:00
Ihor Hordiichuk 9fb83fd8cb Translated using Weblate (Ukrainian)
Currently translated at 100.0% (463 of 463 strings)

Translated using Weblate (Ukrainian)

Currently translated at 100.0% (499 of 499 strings)

Co-authored-by: Ihor Hordiichuk <igor_ck@outlook.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/uk/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/uk/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I01a9231c5db6ad9c229d2d41943dedde692d004e
2023-06-02 07:50:34 +02:00
Martin Srebotnjak c5059e9862 Translated using Weblate (Slovenian)
Currently translated at 100.0% (463 of 463 strings)

Translated using Weblate (Slovenian)

Currently translated at 100.0% (499 of 499 strings)

Co-authored-by: Martin Srebotnjak <miles@filmsi.net>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/sl/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/sl/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I45ecf0f26cd04e2d459fe96ee2d7b4ecaaa33969
2023-06-02 07:50:34 +02:00
Matthaiks 59b80796b3 Translated using Weblate (Polish)
Currently translated at 100.0% (463 of 463 strings)

Translated using Weblate (Polish)

Currently translated at 100.0% (499 of 499 strings)

Co-authored-by: Matthaiks <kitynska@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/pl/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pl/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ie7e3d505ebd696597bf797fea96d8d913fbe424a
2023-06-02 07:50:34 +02:00
Andras Timar a77b5f3d1f Translated using Weblate (Hungarian)
Currently translated at 59.3% (275 of 463 strings)

Translated using Weblate (Hungarian)

Currently translated at 100.0% (499 of 499 strings)

Co-authored-by: Andras Timar <andras.timar@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/hu/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/hu/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ic05025027591c356c1b136cf7639cb1cc646b23a
2023-06-02 07:50:34 +02:00
Szymon Kłos 940ba4a4f8 function text area is not extended properly
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I69d3ceeff07f71c6f004686eb2dbae723ddbbec0
2023-06-01 15:01:02 +02:00
Pedro Pinto Silva 69405e2d66 jsdialog: style Formula Wizard
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I919b9699d0d0785b6938dd691245458bd00d1bae
2023-06-01 15:01:02 +02:00
Andras Timar 8c8a6f1b59 Update l10n files for Weblate
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I125a94c28cdab75c7a894d40504fc63970f12efd
2023-06-01 13:55:19 +02:00
Nguyễn Hoàng Minh f8a7588420 Translated using Weblate (Vietnamese)
Currently translated at 100.0% (457 of 457 strings)

Co-authored-by: Nguyễn Hoàng Minh <mingu03@yandex.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/vi/
Translation: Collabora Online/Help
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I82e3ddf78b57c2246d325e9576195f32e739eb27
2023-06-01 13:50:41 +02:00
Sebastiaan Veld 8b3a117074 Translated using Weblate (Dutch)
Currently translated at 100.0% (499 of 499 strings)

Co-authored-by: Sebastiaan Veld <sebastiaan.veld@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/nl/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I91c507923f4fab7ee8e8f7164df505effdbaa4bc
2023-06-01 13:50:41 +02:00
Ayhan Yalçınsoy c64e98d584 Translated using Weblate (Turkish)
Currently translated at 100.0% (499 of 499 strings)

Co-authored-by: Ayhan Yalçınsoy <ayhanyalcinsoy@pisilinux.org>
Co-authored-by: PhD. Ayhan YALÇINSOY <ayhanyalcinsoy@pisilinux.org>
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: I7eeadbcf8bf28409b3936c9f0b35e202c994659d
2023-06-01 13:50:40 +02:00
Jean Mareilles 612cd241ea Translated using Weblate (French)
Currently translated at 100.0% (499 of 499 strings)

Co-authored-by: Jean Mareilles <waged1266@tutanota.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/fr/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I50be37fc25592dca131c9621682786dbe2c524ac
2023-06-01 13:50:40 +02:00
Darshan-upadhyay1110 37e14c365e fix worng image path name passing to setImage url
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: I58dab34e1dbe0811844a01aaa54bd889a2e6d033
2023-06-01 13:04:56 +02:00
Pedro Pinto Silva 25e6b30cf4 Checkbox need to be vertically centered
Specially important when checkbox belongs to a parent that is bigger
Example : Using Calc inside of Alignment section, vertical stacked
checkbox

https://archive.org/download/checkbox-need-vertical-center/checkbox-need-vertical-center.png

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ie54611006c5c11c39938e97358e3dfa9891f069f
2023-06-01 10:47:37 +02:00
Szymon Kłos 53877cfda3 jsdialog: don't waste space for hidden elements
result visible for example in sidebar in impress

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Idb11d288a91775f432592aec6458bf31dbecf778
2023-06-01 10:47:37 +02:00
Szymon Kłos ed401659e2 jsdialog: don't vertically center by default grids
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I0e1e1839f6cf4cf133b7a1a125b35cc6bad3b03b
2023-06-01 10:47:37 +02:00
Darshan-upadhyay1110 65abe9dbc3 add base conditon to check for window ui_default for dark mode
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: I35f1805ff6468f2b8119e9ba25c9a4a21dd26728
2023-06-01 09:49:08 +02:00
Julius Härtl 752cde163e feat: Add UITheme option for light/dark to ui_defaults
Signed-off-by: Julius Härtl <jus@bitgrid.net>
Change-Id: Ief028dcec0daa2ae448f83df993e0e5ade594a7c
2023-06-01 09:49:08 +02:00
Marco Cecchetti b9f9cef60a a11y: populating editable area with focused paragraph
We handle notification from core about currently focused paragraph:
content, caret position, text selection start/end.
Notifications are sent on any text changes, even when the text has
been modified in another view.
Moreover we can request such info to core at any time.
That allows AT software to read focused paragraph and selected text.
All that keeping editing still working.
A set of new cypress tests for checking clipboard content has been
developed.

failing cpp unit test:
- HTTPWSTest::testInactiveClient
'unexpected message' assertion was failing since an idle client can
receive an a11yfocuschanged message when the same paragraph has focus
in both view and the active view is editing the paragraph.

failing cypress tests:
desktop
- calc/autofilter_spec.js
  - added more wait time before performing clickOnFirstCell
- impress/undo_redo_spec.js
  - Repair Document was broken
    - we need to select 'Hello world' in order to overwrite it

mobile
- impress/spellchecking_spec.js
  - Apply suggestion
    - better use selectTextOfShape instead of Ctrl-A

Signed-off-by: Marco Cecchetti <marco.cecchetti@collabora.com>
Change-Id: I070d390543fa66fe786c4a0661fa09f891b9883e
2023-05-31 22:43:51 +02:00
Marco Cecchetti d7e302c94a a11y: TextInput: switch from <textarea> to content editable <div>
Refactored TextInput implementation. A content editable <div> is used
in place of <textarea>.
<img> elements are used as pre/post spaces.
Minimal changes to FormulaBarJSDialog, since some code was
dependendent on
TextInput details.
Refactored some cypress helper funcions, too, since cypress tests
expected a <textarea> element.

Signed-off-by: Marco Cecchetti <marco.cecchetti@collabora.com>
Change-Id: I13fd7d5c6446dea054a5a9e88f22ed100a66b3fb
2023-05-31 22:43:51 +02:00
Caolán McNamara 8755fcb170 Resolves: #6423 restore Pre-fetching next or previous slide tiles
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I6d7692ae64d5ca3ca22d7ab7300222c8007e1702
2023-05-31 16:22:58 +01:00
Caolán McNamara a40ad7c59e Related: #6423 restore Pre-fetching next or previous slide tiles
originally done with:

commit 067381f0b2
Date:   Wed Dec 2 16:46:40 2020 +0300

    Pre-fetching next or previous slide tiles

but didn't make its way into the rework of

commit a15597de9c
Date:   Tue Mar 30 13:16:14 2021 +0300

    Merge GridLayer+TileLayer+CanvasTileLayer

but I think this is broken since even earlier.

At this point the next/prev slide tiles are fetched, but dismissed
and not cached properly yet

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I3db2f5b228200e6cfb02c005bb8d2b2d659459c7

Fix #6423 not requesting a large enough range in pre-cache

request in pre-cache the same range that we end up requiring later.

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I5d6632ce6dbf238578daa988136983097188ce1d
2023-05-31 16:22:58 +01:00
Caolán McNamara abf86945c9 Related: #6423 Revert "CanvasTileLayer: Remove unusued functions."
This reverts commit 8b28380f32.

and updates to work with contemporary code

i.e.

 -  var coords = new L.Point(i, j);
 -  coords.z = zoom;
 -  coords.part = part;
++  var coords = new L.TileCoordData(i * this._tileSize, j * this._tileSize, zoom, part, mode);

and use getPixelBoundsCore now instead of getPixelBounds to get the same
range that switching to another slide will give

- var pixelBounds = this._map.getPixelBounds(center, zoom);
+ var pixelBounds = this._map.getPixelBoundsCore(center, zoom);

and

add mode param that _sendTileCombineRequest now needs

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I32ad3c22deffc1ef4b4466545297c9ff8a0ed5ce

more

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I9f3b9a0a6169dcb78d143d68c1d07716c7365132
2023-05-31 16:22:58 +01:00
Szymon Kłos f99ce57b48 jsdialog: simplify css for button box
this fixes layout of 2 rows of button boxes,
example: manage names in Calc

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I7fbafa4ab3a234e8406e25167ca533195fee51ba
2023-05-31 15:28:58 +02:00
Gökay Şatır 3a30875368 Add shortcuts to help popup.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I57e715f71bf3f485e8fd66495ab378688010a26b
2023-05-31 15:11:21 +02:00
Ashod Nakashian 29cf77d129 wsd: test: better Ownertermination test
Fixes a race-condition due to re-loading
attempts when the second one fails (as
expected). Now we retry the loading
while unloading repeatedly until we
either succeed or hit the timeout.

Change-Id: Icf9d8e146bc2aad5bf71c7c521466bf567ddb05d
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-31 07:40:11 -04:00
Ashod Nakashian 941ff1e2fb wsd: test: reduce test run time
Change-Id: I0e6b013892d3ad813a5db6a8a1328849dcd0c6ab
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-31 07:40:11 -04:00
Ashod Nakashian 545aa4acb8 wsd: test: merge UnitWopiHttpRedirectLoop with Redirect
Change-Id: I25a2ae4e5d0864b36e520ebb75c31d45b0c12530
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-31 07:40:11 -04:00
Ashod Nakashian 756560642f wsd: test: better polling in tests
Shorter waits to break the polling
loop when the test finishes and we
need to terminate.

Change-Id: I79d9d89675d0a37f25a03b265b3ae636a90e57d5
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-31 07:40:11 -04:00
Ashod Nakashian 76ab3785c2 wsd: test: break connectLOKit when shutdown is signaled
Change-Id: Ic4869f782fe41ba2cb626ad0e4ebc6fc6a667725
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-31 07:40:11 -04:00
Ashod Nakashian 2164a65b7e wsd: test: use http::Response
Change-Id: I6faf3fca96b16af450b45279891f1db6110cce71
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-31 07:40:11 -04:00
Ashod Nakashian 2310fa3270 wsd: test: simplify UnitWopiHttpRedirect
Change-Id: I04dd5b5fb83a11c11651372c443e0647975c88c3
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-31 07:40:11 -04:00
Ashod Nakashian d5035eb30e wsd: test: use http::Response
Change-Id: Icdb73e1bbedd738728cef6bd09b322612ec5fbaa
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-31 07:40:11 -04:00
Ashod Nakashian 87bc771c27 wsd: test: simplify UnitWOPIHttpRedirectLoop
Change-Id: If46c7646aa6be091e93f86b34a81618f84f4ffe2
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-31 07:40:11 -04:00
Ashod Nakashian 2f1e5b312a wsd: test: better upload conflict test setup
To support parallel loading, we need to
start a test not when a DocBroker is created,
but before we send the first load requst.

This changes the test structure to rely
do that explicitly, rather than using the
onDocBrokerCreate callback.

Change-Id: Ie4fb1317961a75ad6730e27d600444e986296766
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-31 07:40:11 -04:00
Ashod Nakashian 4f5bea53cf wsd: test: log resetting wopi event counters
Change-Id: I34c67b460803526b7d61fb357080e67ccf63551a
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-31 07:40:11 -04:00
Ashod Nakashian 31bd6f6308 wsd: test: improved UnitLoad
And re-enable a number of previously
disabled tests. They seem stable.

Change-Id: I6d263708edbf1ca0411500a6876e110be8acb326
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-31 07:40:11 -04:00
Ashod Nakashian cec4cf087a wsd: test: initialize logs before unit-tests
Make sure that the logging subsystem is
already initialized before starting
unit-tests.

Change-Id: I2ce3ffdb2d3b0094ae7ed496d7cacfc02af89c21
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-31 07:40:11 -04:00
Ashod Nakashian c0908ecc8c wsd: test: fix uninitialized member
Change-Id: I4c103e1e11ee022e25c2097fb29dc798dfc8b466
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-31 07:40:11 -04:00
Pedro Pinto Silva cfd9fb6a20 Do not assume who the user needs to contact (storage error messages)
Better to make all error messages related to storage consistent and
avoid mentioning admin or administrator and respective %storageserver
link
- In some situations %storageserver domain is not the right place
to redirect users (integrator might have another support system in
place, etc)

This is a follow up from
- PR: Do not assume who the user needs to contact for storage space
- Commit: 2ace217813

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Id49e4b7f775c1ded10fb02648c7525c6e9becf20
2023-05-31 09:21:14 +02:00
Caolán McNamara e2e1a7473c Related: #6423 _removeTile nearly never populates the tileCache
if the tile has a Canvas as tile element then it never gets cached.

All was apparently well at:

commit c812edc7d3
Date:   Mon Jun 7 12:31:26 2021 +0530

fix avoid putting empty tiles to cache

where the change to cache only if tile.el.src is non-null was added.

But by now tile.el can be (usually is) a canvas and generally doesn't
get cached here.

It seems to work fine to just cache the Canvas directly.

note: This cache guard itself flip-flopped a bit in:

commit 6db9771896
Date:   Wed Jun 9 15:45:07 2021 +0300

CanvasTileLayer: Use el instead of el.src.

where changed as:

- if (!(this._tiles[key]._invalidCount > 0) && tile.el.src) {
+ if (!(this._tiles[key]._invalidCount > 0) && tile.el) {

but reverted in:

commit 115d20082d
Date:   Tue Jul 6 15:59:08 2021 +0300

CanvasTileLayer: Correct the check for the tile source.

back to:

+ if (!(this._tiles[key]._invalidCount > 0) && tile.el.src) {

Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Change-Id: I1760f94c0aebd10b75f936f23460f96159c736af
2023-05-30 21:12:22 +01:00
Darshan-upadhyay1110 f7655fe928 fix Draw - Page Layout cannot be open from top tool sidebar icon
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: If9a57484a8335034e3007f47513cd4827c8decbc
2023-05-30 19:04:36 +02:00
Julius Härtl 24446e274c fix(darkmode): Fix toggling darkmode in notebookbar
Signed-off-by: Julius Härtl <jus@bitgrid.net>
Change-Id: Ia8b490de6144df771e5ee115c068b87e997e3ccb
2023-05-30 19:03:44 +02:00
Attila Szűcs 46a44c743a Navigator: cypress test for draw
Added Desktop tests for draw

Signed-off-by: Attila Szűcs <attila.szucs@collabora.com>
Change-Id: I94a5048c8bf6082059375c5742fb781263c643f4
2023-05-30 14:19:01 +02:00
Attila Szűcs 86dd559d29 Navigator: fix view->sidebar button in compact view
Changed to open PropertyDeck as it does in tabbed mode.

Signed-off-by: Attila Szűcs <attila.szucs@collabora.com>
Change-Id: I39c0efe7428d2ff3240f16578c154be820374517
2023-05-30 14:19:01 +02:00
Attila Szűcs fd957a2c7d Navigator: added to Draw
Added navigator button to draw, just like in writer, calc, impress.

Signed-off-by: Attila Szűcs <attila.szucs@collabora.com>
Change-Id: Iab06ff192357d9cfb47d373f0cf0dfd181f3e052
2023-05-30 14:19:01 +02:00
Attila Szűcs f2d89c93a7 Navigator: more cypress tests
Added Desktop tests for calc and impress.

Signed-off-by: Attila Szűcs <attila.szucs@collabora.com>
Change-Id: I80616cc9e8a9dd7160e9b33fa50047db83911590
2023-05-30 14:19:01 +02:00
Attila Szűcs 74181fed7a Navigator: cypress tests
Added Desktop, and Multiuser tests for writer.

Signed-off-by: Attila Szűcs <attila.szucs@collabora.com>
Change-Id: I1bbb32303c66eb499cb837289a51caafdf2055a8
2023-05-30 14:19:01 +02:00
Michael Meeks f76c8daf0c restore tile debug popover content.
Somehow escaping was disabled for this safe text we generate.

Change-Id: I47fbf72b9d47a80975ca1b926ff2d27c248fac12
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2023-05-30 09:16:38 +01:00
codewithvk 496c8073eb Draw - Change tool tip text to Page Layout
Signed-off-by: codewithvk <vivekpatel7202@gmail.com>
Change-Id: I855902ac8a00947cd753d9ca7e21ea51cce6ee9e
2023-05-30 09:36:51 +02:00
Gökay Şatır dacb9c595e Wait for the annotation animation before editing.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I76c665b2a83084955949929ecf3daf3fdd393aa4
2023-05-30 10:30:38 +03:00
Gökay Şatır a9d2f81640 Make annotation menu accessible.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: If5c64d65b103cad578a11e2244ec6e3f093fe3ae
2023-05-30 10:30:38 +03:00
Rizal Muttaqin baeabbb1b5 Update the light icons
Signed-off-by: Rizal Muttaqin <riz_17_oke@yahoo.co.id>
Change-Id: I4578af696b6601d851894069a7041b8ac4604409
2023-05-30 07:02:13 +02:00
Rizal Muttaqin aecd4ce950 Add missing Colibre Dark Icons
* Resolves: #6447
* Resolves: #4880

Signed-off-by: Rizal Muttaqin <riz_17_oke@yahoo.co.id>
Change-Id: Ib7d35d28a6381029e4229c9c433ba4bd5d269062
2023-05-29 18:41:31 +02:00
Julius Härtl 1471ea6d9b fix: Avoid important property on all classic toolbar w2ui icons
Signed-off-by: Julius Härtl <jus@bitgrid.net>
Change-Id: I2a2ace9ffc2a31d500b6819f790a07e5762a5f6a
2023-05-29 18:34:58 +02:00
Aron Budea c6c24e3d8a browser: Improve menu & tabbed view items in Impress
- rename Master Slide to Master View so it matches sidebar text
- rearrange sidebar menu items
- rearrange sidebar tabbed view items

Signed-off-by: Aron Budea <aron.budea@collabora.com>
Change-Id: I333c5aba8c75d1c2814ed1902ae1754f032d8752
2023-05-29 14:21:17 +02:00
Szymon Kłos 20f982b135 zotero: initialize only one time
we didn't check if zotero was already initialized what caused
reload of the notebookbar when any new user joined to
collaborative editing

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I5a518d579ccb9e73007131ba64fb8c7972360155
2023-05-29 08:41:42 +02:00
Gökay Şatır 04d93b5665 Fix this/that binding problem.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: Ibd88b588d2aa26c1b1e3380f3f336521b200fe2a
2023-05-27 19:27:56 +03:00
Gökay Şatır 82b6ef97c1 Add pointer for map variable.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: Id9ff2ba9954c513b86e183c5f013048c3856f2fe
2023-05-27 19:27:43 +03:00
andreas kainz 35a48c8c34 Sidebar.ParaPropertyPanel css class merged
identfieldbox and box3 use the same css class see #6392

Signed-off-by: andreas kainz <kainz.a@gmail.com>
Change-Id: I7a95fdd8ae3a9bfffbe676917cb412a99cb40818
2023-05-26 11:06:22 +02:00
Pedro Pinto Silva 6b7cb803b2 Fixes: Sidebar icons are cut off
This hard coded width is not needed and was imposing that width value
to #indentfieldbox even if there is other elements present resulting
in the whole container being bigger than the sidebar itself

This issue became more evident with
27fddae9c6 (even
though it's not related to the bug but rather exposed it even more)

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I90e684b395b950e4cc25a96a9875d4702016411d
2023-05-25 16:04:27 +02:00
Szymon Kłos 8fe7cf5fec navigator: fix switching in compact mode
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ia5582f36df528235e6ca3f8df583412becd47203
2023-05-25 13:16:29 +02:00
Darshan-upadhyay1110 5548d062c8 Added image path for icons when toggle to dark theme
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: I14a99df7cf10bf73f898f15d3aaa5a32c9cd51af
2023-05-25 11:13:18 +02:00
Rob Pearson a2ef7dbf96 Translated using Weblate (English (South Africa))
Currently translated at 100.0% (499 of 499 strings)

Translated using Weblate (English (New Zealand))

Currently translated at 100.0% (499 of 499 strings)

Translated using Weblate (English (United Kingdom))

Currently translated at 100.0% (499 of 499 strings)

Translated using Weblate (English (Australia))

Currently translated at 100.0% (499 of 499 strings)

Co-authored-by: Rob Pearson <rob.dunedin@gmail.com>
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/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I3a8048b05d463e21474ff42303fc956bba46bbda
2023-05-25 09:22:48 +02:00
Stanislav Horáček d01e9626da Translated using Weblate (Czech)
Currently translated at 100.0% (499 of 499 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: Ifa7f827e5dab692ef20fd5e086da4f45cb448319
2023-05-25 09:22:47 +02:00
Nguyễn Hoàng Minh ab0bed4e1c Translated using Weblate (Vietnamese)
Currently translated at 99.5% (455 of 457 strings)

Co-authored-by: Nguyễn Hoàng Minh <mingu03@yandex.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/vi/
Translation: Collabora Online/Help
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I7f0c7ce9649ebcb43cae8c3d37dac81d38cc04a1
2023-05-25 09:22:47 +02:00
Ihor Hordiichuk bcaf3e4504 Translated using Weblate (Ukrainian)
Currently translated at 100.0% (499 of 499 strings)

Co-authored-by: Ihor Hordiichuk <igor_ck@outlook.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/uk/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I54ea778b1a09c1c309f8117d2175dad549224cc8
2023-05-25 09:22:47 +02:00
Martin Srebotnjak 540aa45309 Translated using Weblate (Slovenian)
Currently translated at 100.0% (499 of 499 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: I21ac216193bed030542162fa9a76c7b15ca70933
2023-05-25 09:22:47 +02:00
Matthaiks 43a6f2088d Translated using Weblate (Polish)
Currently translated at 100.0% (499 of 499 strings)

Co-authored-by: Matthaiks <kitynska@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pl/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ib27b82bb82d3a73f0deea6fa88bef189f88bf782
2023-05-25 09:22:47 +02:00
Milo Ivir 66eaa8fd27 Translated using Weblate (Croatian)
Currently translated at 100.0% (499 of 499 strings)

Co-authored-by: Milo Ivir <mail@milotype.de>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/hr/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ibd2cb3536327a28b9ada78fd1b74d4d61532cc50
2023-05-25 09:22:47 +02:00
Yaron Shahrabani 3988999129 Translated using Weblate (Hebrew)
Currently translated at 100.0% (499 of 499 strings)

Co-authored-by: Yaron Shahrabani <sh.yaron@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/he/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Icbc7fbcabe2022047f4787f951d347ac533c28fe
2023-05-25 09:22:47 +02:00
gallegonovato 9ab1033aee Translated using Weblate (Spanish)
Currently translated at 100.0% (499 of 499 strings)

Co-authored-by: gallegonovato <fran-carro@hotmail.es>
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: I6788f56f34197d1c7f75d22042ef7aca4d159f65
2023-05-25 09:22:47 +02:00
Andras Timar 60ac4b0356 Bump version to 23.05.0.2
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I59b02ca562f0fb3618a18c308e34903da5a7b8fd
2023-05-25 09:22:03 +02:00
Szymon Kłos fad3441650 linking-api: always response for thumbnail render requests #6416
followup for:
commit 012b00d
linking-api: always response for thumbnail render requests #6229

in calc and impress we don't get cursor message when switching to
target (slide, range), so don't check if target was reached,
statechanged messages are good enough signal we are loaded already

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I63aa5aefeef153d4d6e2b483e1cdb7bf2c6268ac
2023-05-25 09:14:58 +02:00
Andras Timar bd119af2bb iOS: build fix
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Idc47510f5b6c28f27b3cfac476e7a648dad03fb5
2023-05-25 09:13:32 +02:00
Pedro Pinto Silva 0408fd62c3 Sidebar: Align everything to start and remove unnecessary css
Better to align everything to start so if the components differ in
width they will still be aligned (as opposed to be laid out in a staircase)

This is a follow up from 1bfbdf8072 coming with
the following PR https://github.com/CollaboraOnline/online/pull/6389

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ic607567d30656cc122f9cbfd71bd3d910ebfe9bf
2023-05-25 09:09:47 +02:00
Gökay Şatır 1c28a4a5f3 Fix: Can't focus to map after a popup is closed.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I2a0c59001761489f34cdc9ab9be8c1d6255c4eff
2023-05-25 02:48:05 +02:00
Szymon Kłos 82628571d8 jsdialog: position autofilter popup correctly in RTL mode
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I0e06dac7a7bed611b0117eada7b23bfa33f2dfb0
2023-05-24 20:57:26 +02:00
Darshan-upadhyay1110 fcfacd5081 removed An unknown button appears on top right of a document in android
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: I6c0f1d62a19ecb55228012bef48373b97991461a
2023-05-24 14:00:20 +02:00
Szymon Kłos 476db83791 jsdialog: add class to treview icons #6417
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ie3a965164445a2163db3378e374b5496b8de00cd
2023-05-24 13:46:30 +02:00
Pedro Pinto Silva 262669a237 Dark mode: fix shadow color
Use dark shadow

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I0f8bc58470d3c0e5842a4bd293920775da187399
2023-05-24 10:29:29 +02:00
Pedro Pinto Silva fffa61337a Fix menubutton tooltip, pos and style
- Do not appear above color
- Re-use tooltip styles

This fixes https://github.com/CollaboraOnline/online/issues/6293

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Idf67c23b2263e5eeabc70a7128087333856aa465
2023-05-24 10:29:29 +02:00
Pedro Pinto Silva e0c752b4f8 Tooltip: increase text color contrast
Follow up from 1ffb35d18d

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I203b4af8818f282bf18c405790e016fd4a6369fe
2023-05-24 10:29:29 +02:00
Pedro Pinto Silva 71c4bb392d Fix borderless buttons on desktop
It seems the following commit
be04111173
had a typo 0px should have been 1px

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ibf3b92964efd8a1a147abc853042fd70a406abaf
2023-05-24 10:29:29 +02:00
Pranam Lashkari 1f2367f563 wsd: const parameters
follow up for 25efeea0d8
missing const in modified function caused build error

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: Ic0f4ae39476e16a9a49904e06b44f26d2a5d4fe7
2023-05-24 15:20:17 +07:00
andreas kainz 1bfbdf8072 Sidebar calc Alignment fix button size of align icons
Signed-off-by: andreas kainz <kainz.a@gmail.com>
Change-Id: I954c7885946dfd4e13261622673d1b97ef59001c
2023-05-24 09:41:47 +02:00
andreas kainz a65de18694 Improve Dialow Window border and box-shadow
Signed-off-by: andreas kainz <kainz.a@gmail.com>
Change-Id: Ib9c9d83424791d2e3961fb49c276c7a2c014f208
2023-05-24 09:19:38 +02:00
Darshan-upadhyay1110 5d16564832 fix missing navigator icon path
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: I3f6ee046d0dc972fb4d00a237103529eff226235
2023-05-23 16:16:00 +02:00
andreas kainz 1ffb35d18d Dark Mode: box-shadow tooltip fix
Signed-off-by: andreas kainz <kainz.a@gmail.com>
Change-Id: Ic8addda2167be038d7e435d424448824be73127a
2023-05-23 16:04:29 +02:00
andreas kainz cccdf9db69 ColorScheme Adjustments of UI elements
Sidebar use toolbar color

Signed-off-by: andreas kainz <kainz.a@gmail.com>
Change-Id: I3dc401e30e0b43664847f25d21ab0b6f027df372
2023-05-23 16:01:14 +02:00
Gülşah Köse 51dba6c293 Make dialog button style to specific that dialog #6275
In tabbed view when we open help or keyboard shortcts dialog
"button" style of cool-help.html overrides the button.ui-tab.notebookbar.
So all buttons (even in notebook bar) uses dialog buttons'
text-decoration: underline ans pad padding:0

Here we make the dialog's button style to specific that dialogs.

Signed-off-by: Gülşah Köse <gulsah.kose@collabora.com>
Change-Id: Iacaab42efa527fc5c6ada21fd007e4a352912b60
2023-05-23 08:43:51 +02:00
Michael Meeks 7548420b64 perf-test: remove socket overrides; new websocket doesn't grok imgs.
Profiling suggests this is not needed, and we should get closer to
the normal code paths to measure.

Change-Id: I433a06812f17e642c9ad9e7f8be4c0505f5174e0
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2023-05-22 20:21:15 +01:00
Michael Meeks f9eda6c5d0 perf-test: type for a minute or so, with more text.
Change-Id: I90ee29ed1c69cda0c9db2d4375f7417ab2142b5e
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2023-05-22 20:21:13 +01:00
Michael Meeks c80641f5ef perf-test: when using trace - break, so we can debug early start.
Change-Id: Id8c64450874f71543827f1633181adfd8551096d
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2023-05-22 20:21:11 +01:00
Michael Meeks 29fedecd21 perf-test: disable SSL mode, with self-signed local certs it fails.
Error: self signed certificate in certificate chain
    at TLSSocket.onConnectSecure (node:_tls_wrap:1530:34)
    at TLSSocket.emit (node:events:526:28)
    at TLSSocket._finishInit (node:_tls_wrap:944:8)
    at TLSWrap.ssl.onhandshakedone (node:_tls_wrap:725:12)
    at TLSWrap.callbackTrampoline (node:internal/async_hooks:130:17)
Change-Id: I27462802a6b1cfaed683277d111a480ca474cd7e
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2023-05-22 20:21:10 +01:00
Michael Meeks 02bfa00f50 perf-test: re-work to fix window.app changes, and include WebSocket.
Change-Id: Ib000443310cf37d8f7553fe11fc7944384a0fc2b
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2023-05-22 20:21:08 +01:00
Michael Meeks f56debebb3 perf-test: expand variable substitution to the latest set of vars.
Change-Id: Id1c4ed71cb5c3911131e9edceb21a9b5d89413ad
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2023-05-22 20:21:05 +01:00
Ashod Nakashian 004d0c66b2 wsd: simplified initialization of WOPIFileInfo
Reduced duplication.

Change-Id: I2b97d84a0c132c02a833bfbf78957d8f9765129d
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-22 09:34:29 -04:00
Ashod Nakashian 08908a6a0e wsd: WOPIFileInfo inherits FileInfo
Change-Id: I2a40e0b6c7d260c6377b13250cd13681156b5ff1
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-22 09:34:29 -04:00
Ashod Nakashian 7af95798df wsd: cleaner modification of private members
Now StorageBase::getFileInfo() is strictly
used for reading.

Change-Id: I0d412e7ef6e502ae8b1864131b6f174e44343273
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-22 09:34:29 -04:00
Ashod Nakashian 804bfa2e4e wsd: move PostMessageOrigin into WOPIFileInfo
This moves the logic to update the PostMessageOrigin
field in WOPIFileInfo to be done in the constructor.
And now getPostMessageOrigin() returns a const&.

Change-Id: I88936441edb58deb65d901db4baaf6311be3bdd1
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-22 09:34:29 -04:00
Ashod Nakashian 6d2f3605b3 wsd: const parameters for WOPIFileInfo ctor
Change-Id: I9a742d988f3a2817e2f56a0012df38b71a6e0d4e
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-22 09:34:29 -04:00
Ashod Nakashian 9e798e9c12 wsd: wopifileinfo -> wopiFileInfo
For consistency.

Change-Id: Ia30b4e3c95e25691bb32d5007729a22f1eb05344
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-22 09:34:29 -04:00
Ashod Nakashian 7bc0d2ec76 wsd: exact-match JSON entries first
Normally, we do a fuzzy-match for the keys
in JSON (presumably, there has been typos
and minor differences in the spelling of
keys in the past).

However, this can be wrong if there are
two rather similar keys. In that case,
we should always prefer the exact match.
Also, the exact match is faster, since
it's a map lookup (logarithmic) rather
than a linear search with Levenshtein
distance algorithm on each entry,
which is quadratic.

Change-Id: If88d13a305a0c67cc00c3f3f22c7dc472666a1ff
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-22 09:34:29 -04:00
Ashod Nakashian c62e39a27d wsd: cleanup findJSONValue
Remove unused bRemove parameter.
Use Util::toLower.

Change-Id: I9991090a42231f614a5c3762e225b58ef341aac3
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-22 09:34:29 -04:00
Ashod Nakashian 68200eccff wsd: WOPIFileInfo needs not the call duration
The call duration is already logged elsewhere.
No need to pass it around and log again.

Change-Id: Icef50b9a8a48dcecc78a6b99c6311fc0d5b2a676
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-22 09:34:29 -04:00
Ashod Nakashian 25efeea0d8 wsd: const parameters
Change-Id: Idff04bde8f67905309fffb62eaef351730c3e2e1
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-22 09:34:29 -04:00
Ashod Nakashian 155bc06e24 wsd: de-duplicate assertCorrectThread
This merges multiple implementations of
assertCorrectThread and simplifies its
usage.

Change-Id: I7be5dea62c6046fb0412d7f885fcbcc4b66e3fd9
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-22 09:34:29 -04:00
Ashod Nakashian 3b8f297669 wsd: test: testname in UnitSession
Change-Id: I0c9585fe83c72d0601712bcbf685f716787c13eb
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-22 09:34:29 -04:00
Ashod Nakashian 685e2fb0b8 wsd: http: return const& from const response getter
Change-Id: I5dc5282938a472148148d1dd6d009261bc09c7d6
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-22 09:34:29 -04:00
Ashod Nakashian 0aefa70347 wsd: merge StorageBase::validate with ::create
Change-Id: I55ce50301cdf9ed415d30da1fb030abc0e8dfdcb
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-22 09:34:29 -04:00
Ashod Nakashian 6530834155 wsd: make URI validation independent of Storage creation
Change-Id: Id8213d23d04fc717683361397d511cbd8300136d
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-22 09:34:29 -04:00
Ashod Nakashian 7ce18c8a13 wsd: http: cosmetic and log
Change-Id: I984ad71601b92b8042dc7984e7339f0804c8083b
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-22 09:34:29 -04:00
Ashod Nakashian 9d07402bea killpoco: reuse URI encoding
Change-Id: If9bb48973c61ba56860aac273534fa4db67c9e6f
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-22 09:34:29 -04:00
Ashod Nakashian ddefe7a3bd wsd: logging
Change-Id: I0aa2345891c29bd97cd43cfcd2c5ecf0e4cfd2c4
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-22 09:34:29 -04:00
Ashod Nakashian 47f5d86dc4 wsd: simplify uploadToStorage calls
Change-Id: I5ed3ce09dae8b6176d806d0bb5994e56c182ac8b
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-22 09:34:29 -04:00
Ashod Nakashian 9bc4b5c500 wsd: whitespace formatting
Change-Id: Id50baf8d1c539d047ba8142bfab93b445187d658
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-22 09:34:29 -04:00
Gülşah Köse 0f8a0762d8 Fix huge dropdown arrow of form control and missing button border
Signed-off-by: Gülşah Köse <gulsah.kose@collabora.com>
Change-Id: I752691d09195e0fc6e502736a5b809fe8d92aa50
2023-05-21 15:47:10 +02:00
Szymon Kłos aa440636a8 jsdialog: position dialogs correctly in RTL mode
test with eg. &lang=he

after position of a dialog was changed to absolute position we
had regression causing the dialogs to appear outside view in
RTL mode. this patch uses margin-inline-start instead of margin-left
what is more generic

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I3e70ced1b790d4af751f34d54c880135a3af21bb
2023-05-21 15:43:12 +02:00
Andras Timar 099c70e3c8 Updated UNO command translations
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I91281dea298d30b5bc83e891fdf0380bd470c3e3
2023-05-21 12:57:51 +02:00
Andras Timar eb203b55a6 Update l10n files for Weblate
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I0d9a28ab036181ce7c8068a533b19447ebd7fa55
2023-05-21 12:52:27 +02:00
Andras Timar 41f3f2eb5e CODE release notes url for 23.05
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Idebcc7742e17282820f6ce54198cd83b258627e2
2023-05-21 12:48:10 +02:00
Jörg S a100d91a39 Translated using Weblate (German)
Currently translated at 99.5% (497 of 499 strings)

Co-authored-by: Jörg S <joerg.schwerdtfeger@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/de/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: If052fb9050111efbab4a23bcbbf974f2c24f7b59
2023-05-21 12:44:59 +02:00
Martin Srebotnjak 6fb567c1bd Translated using Weblate (Slovenian)
Currently translated at 100.0% (499 of 499 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: Id504eb423ecd9f19817339b7ae10964398931444
2023-05-21 12:44:59 +02:00
Roman Kirilenko 052a7d1982 Translated using Weblate (Russian)
Currently translated at 99.7% (498 of 499 strings)

Co-authored-by: Roman Kirilenko <rkirilenko@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ru/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I433c6f6f8fbe0040f75ca6ed541a4daf721bc1f8
2023-05-21 12:44:59 +02:00
Sebastiaan Veld f6fc8a9149 Translated using Weblate (Dutch)
Currently translated at 100.0% (499 of 499 strings)

Co-authored-by: Sebastiaan Veld <sebastiaan.veld@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/nl/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I89a4db0969db463ab88ebf2cf892ec86d4271ae9
2023-05-21 12:44:59 +02:00
Ihor Hordiichuk ba5a48d48d Translated using Weblate (Ukrainian)
Currently translated at 100.0% (499 of 499 strings)

Co-authored-by: Ihor Hordiichuk <igor_ck@outlook.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/uk/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I7aceadea190702c0daaad5a5a331a34c687c781d
2023-05-21 12:44:59 +02:00
Oğuz Ersen 5d515b7d0c Translated using Weblate (Turkish)
Currently translated at 100.0% (499 of 499 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: If0a1aaaaeec72f12ef762fcef8026e123a331504
2023-05-21 12:44:59 +02:00
Matthaiks 45c772187c Translated using Weblate (Polish)
Currently translated at 100.0% (499 of 499 strings)

Co-authored-by: Matthaiks <kitynska@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pl/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Idc035acd9e883847b68b870a2e9169c78a81a586
2023-05-21 12:44:59 +02:00
Andras Timar c4662b569f Translated using Weblate (Hungarian)
Currently translated at 100.0% (499 of 499 strings)

Co-authored-by: Andras Timar <andras.timar@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/hu/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ifccecce9440828f2941e56fe90dcbdf41e6685aa
2023-05-21 12:44:58 +02:00
Milo Ivir d3d80c42f3 Translated using Weblate (Croatian)
Currently translated at 100.0% (499 of 499 strings)

Co-authored-by: Milo Ivir <mail@milotype.de>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/hr/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ib5bccb77b98dc6b0604d35d782d3f555a1eeead2
2023-05-21 12:44:58 +02:00
Yaron Shahrabani 104c62ec7b Translated using Weblate (Hebrew)
Currently translated at 100.0% (499 of 499 strings)

Co-authored-by: Yaron Shahrabani <sh.yaron@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/he/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I639ac8d357162a0f8dc82571fddaa359c2563638
2023-05-21 12:44:58 +02:00
gallegonovato bea98dee23 Translated using Weblate (Spanish)
Currently translated at 100.0% (499 of 499 strings)

Co-authored-by: gallegonovato <fran-carro@hotmail.es>
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: Ic4596364f074d12f06739a0a1e78de0adf1204c0
2023-05-21 12:44:58 +02:00
Andi Chandler e5db67498b Translated using Weblate (English (United Kingdom))
Currently translated at 100.0% (499 of 499 strings)

Co-authored-by: Andi Chandler <andi@gowling.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/en_GB/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I2431e0ba1b02d7f399ec0e8d9189c8e45f433505
2023-05-21 12:44:58 +02:00
Rob Pearson 334ef31764 Translated using Weblate (English (Australia))
Currently translated at 100.0% (457 of 457 strings)

Translated using Weblate (English (South Africa))

Currently translated at 100.0% (499 of 499 strings)

Translated using Weblate (English (New Zealand))

Currently translated at 100.0% (499 of 499 strings)

Translated using Weblate (English (Australia))

Currently translated at 100.0% (499 of 499 strings)

Translated using Weblate (English (Australia))

Currently translated at 100.0% (499 of 499 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/ui/en_AU/
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: I7cb833f64a20406bca8207e81ec04e266f8e226c
2023-05-21 12:44:58 +02:00
Stanislav Horáček 1cc9cea777 Translated using Weblate (Czech)
Currently translated at 100.0% (499 of 499 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: If505e9be2e45ce1326c0b812e93c3693f66ea020
2023-05-21 12:44:58 +02:00
Szymon Kłos 746ed742b3 Show document loading error popup
This fixes regression from popups rework.
Run collabora online, try to open not existing document.
You should see error: "Well, this is embarrassing..."

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ic3fc0dfd05e5ad16d11b07f4f7f3e36851483c1a
2023-05-19 13:55:34 +02:00
Szymon Kłos 56ca9b6b2c navigator: hide panel title in sidebar
and move all navigator css rules into one place

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Iaf00bbd25bf111c5817621f4a72ac95aeb307786
2023-05-19 13:55:26 +02:00
Szymon Kłos 012b00d6d4 linking-api: always response for thumbnail render requests #6229
when we request target which doesn't exist or it is the first
character in the document, we receive only one cursor invalidation

in that case we didn't respond at all for the request because we
were waiting

this patch added fallback, so when we receve statechanged messages
we know we already loaded document so we don't need to wait more

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ib25ab4f4d68809e3ef97ccb826ba44aeee2f71dc
2023-05-17 16:43:54 +02:00
Szymon Kłos 376e8fdd97 linking-api: zoom document to avoid empty space on thumbnail
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I572dc8bd239265a9ab9311aa109e82b1d4e06efb
2023-05-17 16:43:54 +02:00
Andras Timar a34870d402 Add possibility to define product name from brand package
This is the product name served by hosting/capabilities
endpoint. Also, it is used by update checker.
It can be defined --with-app-name build time, but if
we would like to configure it run-time (e.g. with the
brand package), then we need a config setting for it.
E.g. brand package could execute
  coolconfig set product_name "foo bar"
in postinstall script, if necessary.

Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I8e72d3a3735e3a77c7aaac9a88b2c0fc6a957c0e
2023-05-17 12:53:11 +02:00
Andras Timar a71f59c9cc Add possibility to define help root URL from brand package
Previously the help root URL was defined in coolkitconfig.xcu,
but it was inconvenient to change. Now we have this setting in
coolwsd.xml, therefore it can be changed more easily. For
example a brand package can disable the Help buttons on
dialogs by executing the following command in postinstall
script:
  coolconfig set help_url ""

Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I6d0bdd71ca908df3d2dd20bd321aff9e93896f52
2023-05-17 08:26:38 +02:00
Ashod Nakashian 9410189280 wsd: better detection of modification during a conflict
When we detect document change in storage, we have to
either prompt the user(s) to either reload from storage,
discarding their own changes, or force saving their
changes and clobber the version in storage.

However this implies that the loaded document was
modified. Because otherwise, we do reload the
document from storage, automatically.
This change improves the detection logic to take
into account not just the saved state of the
document, but also the upload state. That is,
if a previous modification was not uploaded yet,
then the user does have changes that they need to
consider to discard or save.

Change-Id: I5f03593bebc5b565fc19e78562896bcdcb6112e2
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-16 16:55:40 +01:00
Gökay Şatır 529f48e423 Remove notebookbar seperation from Cypress tests.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: If07b5f54b60cd0d7a934f97973a487f103702581
2023-05-16 14:20:17 +03:00
Patrick Luby 094183e279 Fix issue #5876 by closing the document if the content process dies
Signed-off-by: Patrick Luby <plubius@neooffice.org>
Change-Id: I6fc887dd30328395d424a6371ba3603d2c09b607
2023-05-16 09:43:29 +02:00
Patrick Luby 48ddd7c589 Related to issue #5876: don't autorelease large NSStrings
The +[NSString string...] selectors won't be released until
an enclosing autorelease pool is released. But since we use
ARC, we don't know where the compiler has inserted the
autorelease pool so JS messages may not be released until
after a very long time potentially causing an out of memory
crash. So, use the -[[NSString alloc] init...] selectors
instead.

Signed-off-by: Patrick Luby <plubius@neooffice.org>
Change-Id: Iff0be8ee5b322347e746dc030948b82d117c43a1
2023-05-16 09:43:29 +02:00
Patrick Luby aad344f8a5 Suppress or fix all iOS compiler warnings without changing any code
Signed-off-by: Patrick Luby <plubius@neooffice.org>
Change-Id: I3a7693ad1d4a7b4873e462a26a9628454884c8c2
2023-05-16 09:43:29 +02:00
Patrick Luby 94469d7b61 Replace deprecated calls
Also, don't set webView.configuration.userContentController to nil as it
generates a "nil not allowed" compiler warning.

Signed-off-by: Patrick Luby <plubius@neooffice.org>
Change-Id: Ibb49228a65f102fa6d97d4e5affafae8ad528c0d
2023-05-16 09:43:29 +02:00
Patrick Luby 0ffa5dc7c1 Reserve the maxiumum possible length after encoding
This avoids an excessive number of reallocations. This is overkill
for non-binary messages, but most non-binary messages appear to be
under 1K bytes in length. In contrast, it appears that binary
messags routinely use at least 75% of the maximum possible length.

Signed-off-by: Patrick Luby <plubius@neooffice.org>
Change-Id: I522fe74bc355a78b6b561ec9475a1afb27cf54b2
2023-05-16 09:43:29 +02:00
Patrick Luby 9b2a3d8cc7 Related to issue #5876: reduce excessive copying of message data
Many .png tile messages are very large so avoid using
-[NSString stringByAppendingString:] calls to create the JavaScript
string.

Signed-off-by: Patrick Luby <plubius@neooffice.org>
Change-Id: I8163ef93da315122f938c9ed2b66b49a443f283f
2023-05-16 09:43:29 +02:00
Patrick Luby 94bbaa7c3f Fix issue #6145 by adding aliases for the PDF and EPUB icons
The fix for issues #6103 and #6104 changes the name of these
icons so map the new names to the old names.

Signed-off-by: Patrick Luby <plubius@neooffice.org>
Change-Id: I96b2678534827ce94c11edfa00718eab2a6a9eb8
2023-05-16 09:43:29 +02:00
Patrick Luby 59de67f0f6 Fix assert failure when running "My Mac (Designed for iPad)" in Xcode
LANG values such as en_US.UTF-8 trigger an assert in the LibreOffice
code so replace all "_" characters with "-" characters.

Signed-off-by: Patrick Luby <plubius@neooffice.org>
Change-Id: Icba29a8e647eaf0887cc801d4b8763ffd821ffbf
2023-05-16 09:43:29 +02:00
Ashod Nakashian a6551462e2 wsd: http: improved http::Session::handleIncomingMessage
The normal path is now streamlined and error handling
is at the end. We also now always set the disposition
to closed and fire onDisconnect() when disconnected
or hit an error.

Change-Id: I984ad71601b92b8042dc7984e7339f0804c8083b
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-15 19:14:21 -04:00
Ashod Nakashian 337c98a0b6 wsd: improve rename action handling
This corrects the ending of renaming by
moving that logic only after we get the
async upload results (either success,
failure, or timeout).

It also cleans up a few cases, such as
not needing to special case renaming with
identical names. This ensures that
subsequent attempts are not ignored.

Change-Id: Ib7a432d8a3b6ef5448291763cd31cc844c997e7e
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-15 15:29:50 -04:00
Ashod Nakashian df89ec90ae wsd: http: killpoco in prisoner http handler
Change-Id: I82f030d1d91afa504a095b852dcdaec9d2df386d
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-15 15:25:58 -04:00
Gökay Şatır 71fe95eb92 Skip multi-user tests for now.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: Ie747587e9589872bc99be9bb4204cd11803aaac1
2023-05-15 16:34:29 +03:00
Szymon Kłos f8f4d5e710 navigator: add to menubar
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I80113de0b97334adc1298bef2195b4758a4c6c82
2023-05-15 11:12:16 +02:00
Szymon Kłos 3e7bdafdbe navigator: add to view tab
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: If1944865072c091e4ece5fb772c26eb69a371a63
2023-05-15 11:12:16 +02:00
Gülşah Köse 19d50ddc1c Add date time fields under the insert menu
In compact view we have insert current date and time actions but in
tabbed view we don't have them. To be equality we need to add in tabbed
view too.

Signed-off-by: Gülşah Köse <gulsah.kose@collabora.com>
Change-Id: I5498f47a8dc96a5403cdf17be52ef3a7ad66862c
2023-05-15 08:54:33 +01:00
Ashod Nakashian dc1d0a2f3f wsd: quarantine: refactor the timestamp
Change-Id: I6abde4e8e179004decdb7e631fea4a45fdd2a592
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-15 08:47:26 +01:00
Ashod Nakashian 87fcb6f692 wsd: quarantine: correctly sort files based on timestamp
Change-Id: I65b9dfcbb9d3969fd9b0b2374ded4851bef22b74
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-15 08:47:26 +01:00
Ashod Nakashian c82cf3cc45 wsd: quarantine: thread-safe quarantining
The QuarantineMap is shared between DocBroker
instances, which makes it subject to concurrent
access and modification. As such, it must be
protected via a lock.

Change-Id: Id62587b33123748f848110a5427da3e296725de9
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-15 08:47:26 +01:00
Ashod Nakashian 8f1354dc91 wsd: quarantine: size calculation
Change-Id: I97d87afd7b5769c76c0112faa4fa90449a1940d4
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-15 08:47:26 +01:00
Ashod Nakashian a9562dc3f2 wsd: quarantine: better filename tokenization
Change-Id: I0ddac3ba63cc1aa1bd8dfffd7ccb3a50013f8bd4
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-15 08:47:26 +01:00
Ashod Nakashian a883e357b2 wsd: minor improvement to Util::replace
Change-Id: I2b9e9b33d8e63a43b50beda432fc48f8b9d7a8c7
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-15 08:47:26 +01:00
Ashod Nakashian eaf69c8b19 wsd: quarantine: simplify the filename
Change-Id: I83e0fb9da054063af822541805bfe92d460affbd
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-15 08:47:26 +01:00
Ashod Nakashian 203cc2f97f wsd: quarantine: delayed construction of the quarantine instance
Since we need both the PID of the kit process and
the document name, it's easier to construct the
quarantine instance only when we have downloaded
the document.

Change-Id: I8b537122c4b10ae6e822a82fa6a75456d0eaaaff
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-15 08:47:26 +01:00
Ashod Nakashian 49ecd63837 wsd: quarantine: cleanup and logging of quarantine file removal
Change-Id: Idec703875448e30fdab99a6e96264a9b1a5cdc4e
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-15 08:47:26 +01:00
Ashod Nakashian 28eb354bd1 wsd: quarantine: better quarantined version cleanup
Faster algorithm and logging.

Change-Id: I96b2e9486ee1d988f4b4b038bf6ecdcb5a816647
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-15 08:47:26 +01:00
Ashod Nakashian 5dc587f7fa wsd: quarantine: improved cleanup
We now use the timestamp in the quarantined
file, not the modified time on disk. Since
we have the timestamp, we should use it.

Change-Id: Iaf4a9cab2203da3e3842d7fe46b4578a031f0958
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-15 08:47:26 +01:00
Ashod Nakashian 668bfbfb35 wsd: quarantine: docKey is already encoded
No need to encode/decode docKey,
since it is always encoded already.

Change-Id: Icd9c6d24ca57e9f0ffb06efc7052df175d5d383d
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-15 08:47:26 +01:00
Ashod Nakashian 10553c4a78 wsd: remove unused helper
Change-Id: Ib27e596d751c78e40a51a53ece5c523ab6e7eabf
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-15 08:47:26 +01:00
Ashod Nakashian 3feb547bae killpoco: remove direct URI encode/decode usage in RequestDetails
Change-Id: I27e616300c8defd115be894ecf56fe72916748cc
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-15 08:47:26 +01:00
Ashod Nakashian 6ed935bf89 wsd: quarantine: encapsulate QuarantineMap
Change-Id: I8b4da2cb4c2291c70f6a0d513a72f47899428e3e
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-15 08:47:26 +01:00
Ashod Nakashian 81b452b225 wsd: quarantine: include correction
config.h should only be included in .cpp files,
never in headers. The reason is to avoid having
it accidentally included, which would also
allow for it being effective only in subsequent
code, not those included earlier.

To avoid these problems, each .cpp includes
config.h at the top, so the configuration
directives would be effective throughout
the translation unit.

Change-Id: Idae87e5ee51abe454cc2a53d6f60dc07f64d0c35
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-15 08:47:26 +01:00
Ashod Nakashian b81db549dd wsd: quarantine: capture the maximum quarantined file versions
Change-Id: Ie2756580954ed759e250340b786ae602d213b321
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-15 08:47:26 +01:00
Ashod Nakashian 8fa978139f wsd: quarantine: capture the maximum age of quarantined files
Change-Id: I36f681ec5672d77e15ef6a9104d1b3ad874b189d
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-15 08:47:26 +01:00
Ashod Nakashian 99baf40e7e wsd: quarantine: capture the maximum quarantine size
Change-Id: If30f0b7349e6605708e2bd5821b6e25558fba104
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-15 08:47:26 +01:00
Ashod Nakashian 799b704e32 wsd: quarantine: capture DocKey
Change-Id: Ic22ac58210bad27d9a02d589828151548c4a1bd0
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-15 08:47:26 +01:00
Ashod Nakashian 6ab3bbbd09 wsd: quarantine: capture the document name
Change-Id: Id308a80e2d504d82e021e7333b78488dabbac687
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-15 08:47:26 +01:00
Ashod Nakashian 08967941a3 wsd: quarantine: capture const values
Change-Id: I67233c8d5bbd0cf63133e6643dd0106c4c3bcae6
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-15 08:47:26 +01:00
Ashod Nakashian 0c0d7071ab wsd: quarantine: minimize explicit arg passing
Change-Id: I7b18abc96ccf0a217a806cf2259c539964bad553
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-15 08:47:26 +01:00
Ashod Nakashian 0ccc182509 wsd: quarantine: provide the filename to quarantine
Utility classes/functions should not re-implement
any logic external to their function. The
path to the file to be quarantined is controlled
by other bits and QuarantineUtil is simply told
to quarantine the given file.

Change-Id: Iab351ccbf78953bb63f18c451321d34fe61f59b5
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-15 08:47:26 +01:00
Ashod Nakashian 6f0a5dce5b wsd: refactor FileUtil::Stat::isUpToDate
Historically, isUpToDate was created and used
in jail setup. But since in other cases we
might also need to compare files, we break
it into two functions. A new member called
isIdenticalTo, which simply does the comparison
and returns the result, and isUpToDate, which
calls isIdenticalTo and logs the result, as
expected by the jail management.

Change-Id: I6581970ad3e97e3fc0728055e6b57647baedf968
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-15 08:47:26 +01:00
Ashod Nakashian 3825205042 wsd: quarantine: more encapsulation
Change-Id: Ifed497ad246fa9fb4a3d349aa579ce6e88793066
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-15 08:47:26 +01:00
Ashod Nakashian 7ea3495f22 wsd: quarantine: convert Quarantine to a class
Change-Id: I9478f35e6c7c3f156aa15072e31c38bc84dc2b64
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-15 08:47:26 +01:00
Ashod Nakashian d81f2d71ed wsd: quarantine: smarter quarantine enabling
There is no good reason to check the config
repeatedly, especially that once we initialize
we should have the state.

Also, we should be able to disable quarantining
when we hit an error during initialization.
(As an aside, reading the config is slow and
throws exceptions that are caught internally,
which makes debugging for exceptions frustrating
when we repeatedly read config entries.)

Change-Id: I44a7800df96a370ef4d4cc1d6bb171f60f1499a0
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-15 08:47:26 +01:00
Ashod Nakashian 3c5a6963fe wsd: quarantine: encapsulate the quarantine path
Change-Id: I738a06b3a272a049ef8772fa0502a7f2de03c881
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-15 08:47:26 +01:00
Ashod Nakashian bd4589d142 wsd: quarantine: cleanup quarantined files when unloading cleanly
Change-Id: I1934bca783f94847c73e9c47d0e8c703dbe75a99
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-15 08:47:26 +01:00
Ashod Nakashian c42e74ec2f wsd: add fixme for safer jail removal
Change-Id: Id9dee5feae58f5394e2777941963ec949e59a194
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-15 08:47:26 +01:00
Ashod Nakashian 0337ec5d81 wsd: FileUtil to link or copy files
Change-Id: I774a594440ee1b22e0e1ec7e4ab7d38e78f9ed5d
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-15 08:47:26 +01:00
Ashod Nakashian c6dd263ab1 make: silence clang complaining of -pthread
The clang linker doesn't need -pthread and
warns of unknown command-line option.

This detects clang and forgoes the -pthread
flag to the linker.

Change-Id: I658cd887c567a5beeeae0e6e1b6d596231894c1b
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-15 08:47:26 +01:00
Ashod Nakashian fd87ab6b32 wsd: clang tidy fixes
Change-Id: I7b3b08c8040ba4397ce660c5eaa1d0413c3ec611
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-15 08:47:26 +01:00
Ashod Nakashian d40aaec1e4 wsd: test: add quarantine test
Change-Id: Ic08f7ed0f177fc5e3a08b47e16ba8131c6dff788
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-15 08:47:26 +01:00
Ashod Nakashian c658d0fb90 wsd: more accurate comment
Change-Id: I553c9b302e243cee15ab66e041a6fafe4adf41b8
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-15 08:47:26 +01:00
Andras Timar 7e88b1160b rpm: fix path of setcap
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I737a3d298d457d608e5ccb377afa847ddadf2c4c
2023-05-15 09:09:37 +02:00
Szymon Kłos 8e81725635 jsdialog: make expanders work correctly
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I37a679fac92073172b7960a8d9a4eb116dd441d6
2023-05-15 07:55:22 +02:00
Szymon Kłos 7311927c15 jsdialog: fix snackbar css rule
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ie7442eb5f9b15556989e478718e07d34e65d0eab
2023-05-15 07:55:22 +02:00
Szymon Kłos afbf052bb5 jsdialog: use minial size of a dialog needed
Use 'position: absolute' in jsdialog-window and jsdialog-container
so we don't stretch the dialog. It will use minimal needed size.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I7b38b9200e190cfc184bf4bfe8b7bd814c60d5a6
2023-05-15 07:55:22 +02:00
Szymon Kłos fd71e664b6 jsdialog: fix jumping ans dragging Page Style dialog
when html document has <form> and inside <button> with
id=style, instead of having map with properties in
style attribute, the form has reference to the button!

that caused not working dragging and updating the position
in writer format -> page style dialog

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ic3e35c096f537e6f3cdd4bd7b1a06af1302e7c9e
2023-05-15 07:55:22 +02:00
Szymon Kłos e8e1e261dd jsdialog: dialog adjusted to size of biggest tab
this uses css grid to position all the tabs stacked
on each other at row 1 col 1. then when tab is hidden
we use 'visibility: hidden' instead of 'display: none'
so we hide content but leave white space needed for it.
this way we don't change dialog's size on tab switch when
tab has different size requirement, but we match dialog
to the size of biggest content

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I634e9f610c4e6dda4df38b85ee15cd58b3b18432
2023-05-15 07:55:22 +02:00
Andras Timar fc19d7cb00 rpm: compatibility with older systemd versions
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I5674b74e7b2ac06ade0b34b33513d2100105b10d
2023-05-14 23:31:38 +02:00
Andras Timar 39e83470a8 Remove distro-specific code from rpm spec file
We'd like to build distro independent rpm packages.
Distro specific macros and other code were removed.
The empty environment file for systemd was removed, it can be
easily created by the user, if necessary.
The obsolete trigger for rebuilding the systemplate was removed,
because we no longer copy system libs to systemplate.

Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I0ac9be8f72a7089e38349abc1dff0d39b0410e44
2023-05-14 21:29:00 +02:00
Jaume Pujantell cfe1fd955f enable export to pdf for readonly documents
Signed-off-by: Jaume Pujantell <jaume.pujantell@collabora.com>
Change-Id: Ibcd149d51b20df552a0961c58b7c9159fbf0af9e
2023-05-14 14:43:07 +02:00
Henry Castro 107509260b browser: fix bundle exceptions
builddir != srcdir

Change-Id: I0c129d2bc9ea11fc0d46b37a72faa6a32a69b002
Signed-off-by: Henry Castro <hcastro@collabora.com>
2023-05-14 14:40:24 +02:00
Gülşah Köse da19d1b39f Impress Draw: Fix insert field buttons
Draw: We should use uno:InsertPage* commands instead of uno:InsertSlide same
like compact view. We should use "Page Count, Page Number" instead of
Slide count Slide Number as button text. "Slide" word should be used for
only impress.

Impress: We should use InsertPage* commands instead of InsertSlide* same
like compact view.

Signed-off-by: Gülşah Köse <gulsah.kose@collabora.com>
Change-Id: I91989d4d61b65bd3b719753300a14a5177ca9e95
2023-05-14 14:22:56 +02:00
Gülşah Köse 4220305fb6 Fix the layout of page number diaog #6285
Signed-off-by: Gülşah Köse <gulsah.kose@collabora.com>
Change-Id: I00bd8d75a2e0ae509f78eda3ae1af687da088419
2023-05-13 22:32:09 +02:00
Gökay Şatır 9018e3f174 Enable one writer desktop test in track changes spec.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I3d465f331bda1f2619939e8d6d9ca89ef95a0026
2023-05-13 15:10:08 +03:00
Gökay Şatır 9a680bf2c7 Enable skipped tests in desktop writer top toolbar spec.
Remove notebookbar tag and use switch UI functionality.

Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I49cfc7340b7ef07d06b0b7c37d24d88127c03735
2023-05-13 10:26:44 +03:00
Gökay Şatır e433c42cc7 Replace notebookbar tag of writer desktop image operation spec with desktop tag.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: Ic9ff5eaeafa75d2968b7b0a9a4acc6960c28a079
2023-05-13 07:50:01 +03:00
Gökay Şatır 3703c72d73 Replace tagnotebookbar tag with tagdesktop tag in calc image operation spec.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: Ic09bb64a06b6287a3c953ee4ea1f8fbb46c854b6
2023-05-13 07:50:01 +03:00
Gökay Şatır a883a23b65 Replace calc annotation tagnotebookbar with tagdesktop.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: Icacf4d387e9c8df4d0e5defa2fec0cdcc8899aae
2023-05-13 07:50:01 +03:00
Szymon Kłos 888448f597 jsdialog: fix spelling dialog layout
rules from sidebar were applied to dialog

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I18d274d0aaeeeba3ba47d839f82efaa5805eaa28
2023-05-11 21:08:51 +02:00
Gökay Şatır 1a15c0a1d2 Replace notebookbar tag in table operation writer desktop spec.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I15a53f8d1b70152646d7799821de10a8df4fdc60
2023-05-11 21:14:34 +03:00
Gökay Şatır 3f9fc143ac Writer desktop enable one test in scroll spec.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: Ief09792894d4a2dc7d11eaa90bfc3286598cfa41
2023-05-11 21:14:34 +03:00
Gökay Şatır 1664169dda Enable 1 desktop writer file properties test.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: Iad0e4959d79c2394d6174fd81e5e349460fe5246
2023-05-11 19:09:03 +03:00
Gökay Şatır d0aa99d25f Enable desktop writer complex image operation spec.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: Iebd862ff5c01078e07f1af93e81c4e528f24d978
2023-05-11 19:09:03 +03:00
Gökay Şatır a2838cca3a Enable desktop writer annotation tests.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I5ee91f32da271b5fdb209262f52a6828aa248500
2023-05-11 19:09:03 +03:00
Szymon Kłos 99e57059a4 jsdialog: show expander content
can be tested with calc -> insert -> pivot table -> ok
or calc -> insert -> define range

- main expander content should have visible state so we show it on
  toggle
- use expanded state to detect if we should be expanded

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I5ad2f8d22fa0746ab5324cbf1f211b6ea3d69886
2023-05-11 14:44:52 +02:00
Gökay Şatır 43e701084e Enable impress delete objects spec.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: Ib26227b453a8e21e9c5393872aaa04fe6142fd77
2023-05-11 15:42:47 +03:00
Gökay Şatır 9d5d153972 Enable desktop impress undo redo spec.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I71f5d43bb1e52e1962db0dfd9e66c6a4a4726e51
2023-05-11 15:28:13 +03:00
Gökay Şatır 31e94b6cb7 Enable 1 test in desktop calc table operation spec and remove notebookbar tag.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I36bf9b14d44c6cde651da78808c4c783ebf794b2
2023-05-11 15:06:53 +03:00
Gökay Şatır 0ce09a3ae6 enable 1 desktop impress test in sidebar spec.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I711c8a771aa6f6830da69888646ed66cd7ffb4b9
2023-05-11 15:06:53 +03:00
Gökay Şatır 1122f5a5e6 Add tag to searchbar spec.
Tests are failing on a valid reason.

Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I029f9d1079b81a79a6ecb0aca4ed930c75b29c90
2023-05-11 15:06:53 +03:00
Gökay Şatır f5d9654e87 Remove tagnotebbokbar and use switchUI function on image operation spec (impress).
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I4f2097cbfd0e2401783b065b63f70b34d1d9d3b1
2023-05-11 15:06:53 +03:00
Ashod Nakashian d4b27f6643 killpoco: replace HTTP status codes
We use our own status codes, which
are type-safe and use streaming
operators to serialize and log.

Change-Id: I0eba7b16694866b5a79476a7ef4b1b78f7f9c176
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-11 07:21:42 -04:00
Gökay Şatır acc944c176 Disable 3 mobile tests for now.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: Icd45cff770b1cc64365a1713d683451aeffe3618
2023-05-11 13:55:55 +03:00
Gökay Şatır 731c5b8d8c Increase default command timeout to 10 seconds.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: Id6271261dde7d45bdf05e4f01d3a1f1732fd44b0
2023-05-11 13:55:55 +03:00
Gökay Şatır e8acb950b0 Enable calc text editing mode test.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: Ib03f0aa24268a104b6815c813a795c9a21e8e932
2023-05-11 13:55:55 +03:00
Gökay Şatır 71687e1c66 Enable calc switch sheets test.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I1adda596e402a3be116459b3669080844f79ade7
2023-05-11 13:55:55 +03:00
Gökay Şatır 442830484d Enable calc row_column_operation_spec.js.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: Iebda9cb893602e827f945c08e5a6b05e5c1c6d5d
2023-05-11 13:55:55 +03:00
andreas kainz 06f69a8813 jsdialog ui-widget-header border-radius and color fix
ui-widget-header has no border-bottom-radius
ui-widget-content has no border-top-radius
cause both widgets are next to each other

ui-icon use the blue hightlight colors
and the blue icons for more consistancy

Signed-off-by: andreas kainz <kainz.a@gmail.com>
Change-Id: Id891548c56b540f8d0b27f65b805c1823fe28906
2023-05-11 08:22:52 +01:00
Gökay Şatır 31d70be23f Enable impress text paragraph props test.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I75540d483b71b4d61ad274097c61b3f974be1393
2023-05-10 18:57:53 +03:00
Ashod Nakashian 171a3614d7 wsd: use helper where available
Change-Id: If5d1abdc4da6218e318a72d06eb2483c4348d349
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-10 08:46:11 -04:00
Ashod Nakashian 4456acd2da wsd: make unreusable classes final
Change-Id: Ieea44cdba1315051ede7dde6e154055a0820b0a8
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-10 08:46:11 -04:00
Ashod Nakashian 6d4bb52946 wsd: minor logging cleanup
Change-Id: I1ea4f224ef2e0caee1a849abd5256521afe939bd
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-10 08:46:11 -04:00
Ashod Nakashian 72cff36195 wsd: move streaming operator overloads
This is needed to correct overload
resolution of these operators.

Change-Id: I02c0859674efe112102a8d3833bfb0a30b1a6574
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-10 08:46:11 -04:00
Ashod Nakashian 0182af7a4a wsd: http: native support for logging http::Header
Change-Id: I8c34531e6f2616d98a4ee75fe8490d4ad25c45a9
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-10 08:46:11 -04:00
Ashod Nakashian ff1657934a wsd: simplify log streaming
Change-Id: Id22de0bc06680f957e7475f142bcaf1131fdbdb9
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-10 08:46:11 -04:00
Ashod Nakashian 5dcbff8e5d wsd: move streaming operators to the global space
This is needed for correct resolution of these
overloads when we add more that are otherwise
ambiguous.

Change-Id: I6e442b661445f49502fca9271ed6a11278c78d61
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-10 08:46:11 -04:00
Gökay Şatır 88129f9911 Remove notebookbar tag and add switchUIToNotebookbar to impress desktop annotation spec.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I19140e62566cd341ebb035ee0c4e43271661fb30
2023-05-10 13:30:37 +03:00
Gökay Şatır 7d2084c700 Enable desktop pdf spec.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I3b37aeca2d8c6f28412c2161abd6336558a82ac7
2023-05-10 13:30:37 +03:00
Gökay Şatır edeb764958 Enable desktop calc add-delete decimal places spec.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I6d665c7e7561f5096b5b860f5a8cdea5a86e2b00
2023-05-10 13:30:37 +03:00
Gökay Şatır 3bb8c28939 Enable calc desktop focus spec.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I5d11a05acbe512c2fd13be8816dbdca7c2464ad9
2023-05-10 08:59:00 +03:00
Gökay Şatır bd4fda8895 Enable one more desktop calc test.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I754c98f91aa5a8a4791e017e59432c08759b2355
2023-05-10 08:59:00 +03:00
Paris 584017eeba Revert "Dark Mode add color-scheme: dark setting"
This reverts commit 603f912d86.

Signed-off-by: Paris Oplopoios <paris.oplopoios@collabora.com>
Change-Id: I2ab3ae372f1d64598d39a4b450d621f0ea75a9ae
2023-05-09 21:54:38 +03:00
Gökay Şatır 7e10d2c73b Order headers alphabetically when possible.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I4a79e3a63524abeb34e3edf828aa9ce0c8332ca1
2023-05-09 20:22:15 +03:00
Gökay Şatır 0e184458cc Make insert graphic menu accessible (with integration).
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I4a4717de5fb0ed641684f43decbae7249a06621a
2023-05-09 18:44:15 +03:00
Gökay Şatır ebcf0aef36 Make conditional format menu accessible.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: If72a96a13585223f80fd84498a3a484b16251e7e
2023-05-09 18:44:15 +03:00
Gökay Şatır 828c0dd865 Make downloadas menu accessible.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I42a733861813b8690a848f8abd3203decedaa8b2
2023-05-09 18:44:15 +03:00
Gökay Şatır de6875521b Make linespaces menu accessible.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I8423051861de6726b3d2c37b40f0e805b62a3616
2023-05-09 18:44:15 +03:00
Gökay Şatır 97475cae68 Make char space menu accessible.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I7a6736d17633bd4b9148bb4a80713d8e6b257526
2023-05-09 18:44:15 +03:00
Gökay Şatır 8f1fc8245b Make paste menu accessible.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: Ie48d5c8f43d54ba998faf862a51367346d7e1257
2023-05-09 18:44:15 +03:00
Gökay Şatır 94db748f1b Enable disabled cell appearance tests.
Add switch UI to notebookbar function to desktop helper.
Remove tagnotebookbar.
Remove clickonidle function calls.

Tests should be more reliable and faster now - tested locally.

Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I8b05f0b7cf3755ce6e1fe35a26a4ec1154bb2510
2023-05-09 16:09:43 +03:00
Szymon Kłos f6d6b70c8b jsdialog: show accelerator key for labels
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ide726eef59c83ed003d4c0c492e38dc8aa3cce2c
2023-05-09 11:27:41 +02:00
Gökay Şatır ce9fa7d25b Add aria-haspopup attribute if button opens a popup.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: Ie305a48ab5509b52eb604eb73bdef042993b1083
2023-05-09 10:07:00 +03:00
Gökay Şatır 9d6296e4b3 Remove unused document signing code.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I30cf381d1fa282cf222ab5abc676374ab7eefb6c
2023-05-08 21:51:47 +03:00
Gökay Şatır ff02dc7381 Skip some tests for now.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: Idb21db8f295c960b7bed64372060d1590ec1da35
2023-05-08 14:54:31 +03:00
Gökay Şatır 8d7a93bd4b Skip some mobile tests.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I964e6f1a690f074fe97607bf9a8394740044554d
2023-05-08 12:18:01 +03:00
Szymon Kłos 2662dec86d navigator: use standard command for deck switch
This reverts commit d816daef16.

it didn't help for switching the deck...

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I9443bee328ff8032ba910668fc56cdd33e7be7f7
2023-05-08 11:15:52 +02:00
Szymon Kłos d816daef16 navigator: use different command for deck switch
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I321827c719caad4e894264ef8f2a33a7863c9fbe
2023-05-08 10:59:15 +02:00
Gökay Şatır bf9470911f Skip some tests.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: Ia8a2f1d58a3a083c38d259450343b597c64c5919
2023-05-06 19:05:51 +03:00
andreas kainz eee955c31d fix --color-box-shadow name
Signed-off-by: andreas kainz <kainz.a@gmail.com>
Change-Id: I115f6ded6691209e2bf7a92d2d70465b9b33d9bb
2023-05-06 08:26:34 +02:00
andreas kainz 05d5a1675e dialogue's Add hover effects
Signed-off-by: andreas kainz <kainz.a@gmail.com>
Change-Id: I5c3f4be87cb86bd7a19ce503aa6d1fcc19858fc1
2023-05-06 08:26:34 +02:00
andreas kainz 8c66ba6497 use css vars for disabled buttons
Signed-off-by: andreas kainz <kainz.a@gmail.com>
Change-Id: I8f88682fefb13a010dab89e758b077e2199fe6b0
2023-05-06 08:26:34 +02:00
andreas kainz e88018fd0f Fix spinfieldcontainer and disabled .jsdialog items
Signed-off-by: andreas kainz <kainz.a@gmail.com>
Change-Id: Ie715f3829d42efd2536c5653127e9a143ce91147
2023-05-06 08:26:34 +02:00
andreas kainz 7a0f90b466 Dark Mode Dialog css fixes
input elements use css var's

Signed-off-by: andreas kainz <kainz.a@gmail.com>
Change-Id: Ie2ebe22bcf7fc377894f4b43c1bb081a3d5f5c16
2023-05-06 08:26:34 +02:00
Darshan-upadhyay1110 09bfd4cb9b fixed element styling in hyperlink dialog box
Signed-off-by: Darshan-upadhyay1110 <darshan.upadhyay@collabora.com>
Change-Id: I5ad67a1dfc0ac1fd8b3a3eb75f4caa5e6727d895
2023-05-06 08:23:00 +02:00
Pedro Pinto Silva 05d19c2ca5 Navigator styling n layout fixes
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I9c83079e5e399bcaa4396ac1d823f5f5adbe7504
2023-05-05 15:44:10 +02:00
Szymon Kłos 9765cf4628 jsdialog: detect current entry in tree view
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ife21b08194e0f44b1e667eb90d960a1708cd5a59
2023-05-05 14:38:05 +02:00
Szymon Kłos f6e2599dc0 jsdialog: treeview entry activate on enter
on space select entry - single click
on enter activate entry - double click

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I042ad4d4b10c9913fee1ccd5140ac2e173bf6ea9
2023-05-05 14:38:05 +02:00
Szymon Kłos 22371ec0c5 navigator: fix alignment of tree items
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ib28be9f4b0a9d00eff6185172979bc68b3b6953b
2023-05-05 14:38:05 +02:00
Szymon Kłos 7ab66505aa navigator: full height in calc
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ie3b1b40f039f5e4bbe3cf0791f1f9f60571d2128
2023-05-05 14:38:05 +02:00
Szymon Kłos 3dc239f26b navigator: make property panel accessible
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I98c928ac1da3b5be6f55d30c97a115fb4b84cfdd
2023-05-05 14:38:05 +02:00
Szymon Kłos 9f7097de27 navigator: add icon for navigator
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I8440204abe56395722334b1f672cd7a13f1d40a0
2023-05-05 14:38:05 +02:00
Szymon Kłos 1897778c74 navigator: expand navigator to fill sidebar
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I95bcdedd027871f10dbc14e6763ab9f70e4a72ed
2023-05-05 14:38:05 +02:00
Attila Szűcs 9951a621fc navigator: fix tree dblclick on images in calc/impress
Implemented an additional scroll in _onGraphicSelectionMsg() because
i did not found other events that called when in calc or impress
we doubleclicked on a graphical item in the tree of navigator.
It works different from writer, because here we dont have a cursor,
so we dont get any cursor related event.

Signed-off-by: Attila Szűcs <attila.szucs@collabora.com>
Change-Id: I0322dfd30db907bc993f20714d0e3be916f2c352
2023-05-05 14:38:05 +02:00
Attila Szűcs 98f31fb1c9 navigator: fix tree dblclick on images
Altered a condition why it does not scrolled to the cursor, when
graphics was selected.

Signed-off-by: Attila Szűcs <attila.szucs@collabora.com>
Change-Id: Ib12cc9e0432685d46462ef52936cec2f5e5a753f
2023-05-05 14:38:05 +02:00
Attila Szűcs fbd6e25026 navigator: fixed error when dblclick on frames
Make conditions to not send rendershapeselection message when a
frame activated in the tree.
This may not the ideal fix, as it may be a bug in the
rendershapeselection... it start to export as svg image, and failed
because it does not have background property.

Signed-off-by: Attila Szűcs <attila.szucs@collabora.com>
Change-Id: I909d4855c5f6e515a24b85700786f76571708e47
2023-05-05 14:38:05 +02:00
Attila Szűcs 819b37642f navigator: added icons for navigator in calc and impress
Signed-off-by: Attila Szűcs <attila.szucs@collabora.com>
Change-Id: Ib5a012d59458b886510978e74c1f62b9ceae300a
2023-05-05 14:38:05 +02:00
Attila Szűcs 351d6bcc98 navigator: fixed tree scroll
fixed treeContent scroll, when selection is changed, so now it
scroll only the minimum to make the selected line visible.

Signed-off-by: Attila Szűcs <attila.szucs@collabora.com>
Change-Id: Ief818069692a1bb54bd75736a97062d41826e802
2023-05-05 14:38:05 +02:00
Attila Szűcs 5cbc9c61b1 navigator: added icons for navigator in writer
Signed-off-by: Attila Szűcs <attila.szucs@collabora.com>
Change-Id: I324dfd7f8fa58fcfcdf6d547a15eea79368459bd
2023-05-05 14:38:05 +02:00
Attila Szűcs 612fa34b54 navigator: added Navigator button
For core, use this:
https://gerrit.libreoffice.org/c/core/+/151307

Signed-off-by: Attila Szűcs <attila.szucs@collabora.com>
Change-Id: Icbe59959d5f25b001577512b4538c50086538890
2023-05-05 14:38:05 +02:00
andreas kainz 24e2f6f78c mobilewizard button color fix #6263
Signed-off-by: andreas kainz <kainz.a@gmail.com>
Change-Id: I68ac07c50759a2ea1bc7c3c5122b74eecb8d741d
2023-05-05 14:17:46 +02:00
Paris Oplopoios fd00190cc2 Adding dark and light theme on startup
Signed-off-by: Paris Oplopoios <paris.oplopoios@collabora.com>
Change-Id: I1d1e0daae9764bf38721d99c0e590a83cd8acd39
2023-05-05 12:38:59 +03:00
Paris Oplopoios cac930db0c Request new tiles on canonicalidchange
Signed-off-by: Paris Oplopoios <paris.oplopoios@collabora.com>
Change-Id: I4a123b53f3a22a8e4d7f29ff4c83e481a1f2a4ae
2023-05-05 12:38:59 +03:00
Paris Oplopoios 26c55fc417 Handle LOK_CALLBACK_APPLICATION_BACKGROUND_COLOR in ChildSession
Signed-off-by: Paris Oplopoios <paris.oplopoios@collabora.com>
Change-Id: Icef1e490e847ca21bc525dfd989190940b746b78
2023-05-05 12:38:59 +03:00
Paris Oplopoios 2527e6ff7d Add debug data row for canonicalidchange
Signed-off-by: Paris Oplopoios <paris.oplopoios@collabora.com>
Change-Id: Idaf22bec5f488ff65916ca639c568edfa695b78b
2023-05-05 12:38:59 +03:00
Gökay Şatır 6481a1c72a Disable some unstable tests for now.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: Ib527fbd70c0c50d31fb984b2f379d252aa7badc1
2023-05-05 12:15:55 +03:00
Pedro Pinto Silva 30903fa6f9 Impress: Fix imperceptible active (current) slide border
- Make it bigger
- Also size is not enough, specially for slides that have backgrounds
  - Add white inner margin so there is a clear distinction between
- what is the slide preview (image) and its contour

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ifee386b98d74c937efa35c19551334482ec18632
2023-05-05 09:20:06 +02:00
Gökay Şatır 55376d0336 Enable notebookbar tests and skip some of them.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: Icddd2300874d99118603561e5c140e86fbe2829e
2023-05-05 07:07:14 +03:00
Gökay Şatır ba17736181 Update some package versions.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I92b9d8a6149bf4e4e4a9f25e0b8644f8a5a45016
2023-05-05 07:07:14 +03:00
Gökay Şatır 5e57d04f48 Enable tags for tests.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I9c9116981c1a9e48a55cdcb49644388307f5bcc6
2023-05-05 07:07:14 +03:00
Gökay Şatır 8e8e644d55 Add nextcloud, notebookbar and screenshot tags to relevant files.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I1b3c1f586d4e030ed02310a57788a7ed40765dde
2023-05-05 07:07:14 +03:00
Gökay Şatır a6e6add60f Add multiuser tags for relevant tests.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: Ib7a45673fb17e2ebe9b62925618db1a32d360e3a
2023-05-05 07:07:14 +03:00
Gökay Şatır 7b52bc086d Add mobile tags for relevant tests.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: If0bb80548bb5d390d986bb53fedb2d86bf92e4e8
2023-05-05 07:07:14 +03:00
Gökay Şatır 9148b57ef4 Add desktop tags to relevant tests.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: Id0e2a335c82e253eb97e647254ef32e2a18dcd89
2023-05-05 07:07:14 +03:00
Gökay Şatır 86c45ae5ee Add specpattern to desktop tests.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: Ib878d6449aa0e72bf2ce96da8ccb4e3f71fb0b23
2023-05-05 07:07:14 +03:00
Gökay Şatır 8aa6824f0c Use if - codeQL warns.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I4ab747611708b3776020359a5b74e89c595a58d4
2023-05-05 07:07:14 +03:00
Gökay Şatır cf38a03aac Disable interference test for now.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I73a494cebdfe7dffec1795aa72771d3dd76c494a
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
2023-05-05 07:07:14 +03:00
Gökay Şatır cf24f725e2 Update multi-user tests.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I75125728e20bee789fce085c31d93b7650312eec
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
2023-05-05 07:07:14 +03:00
Gökay Şatır 83c4ced3f5 Update writer mobile tests.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: Ibac2beade335519885877c14bc97cda9d02fb3d3
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
2023-05-05 07:07:14 +03:00
Gökay Şatır 5deb474685 Update impress tests.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: I0b47edf6e2788b8e3faaef0d0f6aad2ca033782b
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
2023-05-05 07:07:14 +03:00
Gökay Şatır 52b060f984 Update calc mobile tests.
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
Change-Id: Ia16008b638f5f48ad890c80ea04d04515ff3c29a
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
2023-05-05 07:07:14 +03:00
Gökay Şatır 2a1db594ad Update writer desktop tests.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I974bb8ee2e7d77cae29ac97b2c0f6b687e90e005
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
2023-05-05 07:07:14 +03:00
Gökay Şatır f87539a325 Update impress desktop tests.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I26d0fbf83b894a759c550bee7b0374f367fdd6f8
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
2023-05-05 07:07:14 +03:00
Gökay Şatır 014c7b17b5 Update draw desktop test.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: Ieea40808df9ff20a1cf4fbda62674651b1d601e8
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
2023-05-05 07:07:14 +03:00
Gökay Şatır 74fa2ab02c Update calc desktop tests.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: Ia53a5a8a3c783f59254a183341d483640e6a2525
Signed-off-by: Gökay Şatır <gokaysatir@gmail.com>
2023-05-05 07:07:14 +03:00
Gökay Şatır c9217176bb Update Cypress and make related changes.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: Ie896ea22b5591ea5e7d574f2436ece7a31da4c0c
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
2023-05-05 07:07:14 +03:00
Szymon Kłos cae3598e0a jsdialog: don't create empty tabs container #6260
In dialogs we put tab list directly where tab control is placed.
We don't need special container anymore (setTabs is not used).

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I9d26a64362ee2c6ae08b44bf2dc54baf7936d0d8
2023-05-04 10:47:24 +02:00
Henry Castro e25a6527f4 browser: fix freeze row/column panes
The UNO command  state has changed to Point (row, tab)
and Point (col, tab), Otherwise, if the row or column
has the same value for all sheets, the state cache will
not report any changes to the client side.

Change-Id: I0ad4a058d9328ff3b7b2455197a87880d8e43125
Signed-off-by: Henry Castro <hcastro@collabora.com>
2023-05-04 09:54:52 +02:00
Rash419 f7af990485 admin: added a seprate state for the uploaded document
- previously we set the Modified state in admin panel only when
  wsd successfully upload the document to storage
- modified state updation depends on core, it might happen that
  uploading is already done and successfull but we didnot get
  the modified state from the core which will show wrong modified
  status in admin panel

Change-Id: I014a8f92753fc6a93b37921d0f3cdce390bef35e
Signed-off-by: Rash419 <rashesh.padia@collabora.com>
2023-05-04 11:35:07 +05:30
Aron Budea ae6572c6d8 browser: Missing fonts dialog only worked if welcome dlg was enabled
Signed-off-by: Aron Budea <aron.budea@collabora.com>
Change-Id: Idd0d7a5d74e5f4b0ef82d12877a46e55c172a992
2023-05-03 17:37:18 +02:00
Szymon Kłos df391dd1ae jsdialog: tabs should be also focusable
our focus is based on detecting tabIndex so setup it's value for tabs

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I61402657a5dbd6adf188266e483bdba79a948911
2023-05-03 17:05:05 +02:00
Szymon Kłos 068366982c jsdialog: improve initial focus in dialog #6271
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I59313d6373de054bf44e0d0d246f3c8cfabf2f8d
2023-05-03 17:05:05 +02:00
Pedro Pinto Silva e96d8bc13a Tabbed view: Fix .main-nav's horizontal scrolling
Remove inline overflow style.

Before this commit:
It seems we are adding inline style overflow visible onRemove()
- important for when we switch compact <-> tabbed view - but we never
remove that property. Thus we end up losing the ability to access any
element that doesn't fit the screen via horizontal scroll

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Id1ed8cde27af037f6b28b1966dfe4c563b0120cf
2023-05-03 16:56:03 +02:00
Andras Timar a7f6c285df Update l10n files for Weblate
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ibb745572eb57813fd44c6190b73dc528dd464527
2023-05-03 16:54:24 +02:00
Andras Timar 8bc808d919 Translated using Weblate (German)
Currently translated at 99.5% (497 of 499 strings)

Translation: Collabora Online/UI
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/de/
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I5530505dd5ae264602427dd2725ac53e21984e21
2023-05-03 16:51:49 +02:00
Gülşah Köse bce7b97d65 Fix the position of dropdown triangle of uno button #6236
Signed-off-by: Gülşah Köse <gulsah.kose@collabora.com>
Change-Id: I49be20532bc921e1424b07cb8d96c3477461bf8e
2023-05-03 15:28:45 +02:00
Ashod Nakashian 7d2f736084 browser: catch failure to get localization files
When we fail to download the localizaion javascript
file, for whatever reason, we end up failing to load
the document. This is far from ideal.
Instead, we simply log the error and move on.
The end result in such a failure scenario is that
the document loads, but the UI is only available
in English.

Change-Id: I5d29ff68870d0cd84d86658ccfd4e3185cc62562
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-03 06:52:25 -04:00
Gülşah Köse f1e9ee72fe Fix wrong device detection logic.
window.screen.width/height returns the width/height
of the screen in CSS pixels. window.innerWidth/innerHeight
returns the interior width/height of the window in pixels.
This includes the width of the vertical scroll bar, if one is present.

That gives better result. eg: responsive mode

Signed-off-by: Gülşah Köse <gulsah.kose@collabora.com>
Change-Id: Ibecb9614224cb3bfd6d5d8dc9ad5febe6aa7673b
2023-05-03 12:30:28 +02:00
Szymon Kłos 118d3e4064 Make sure treeview entry focus is visible
focused entry has a 1px border, make sure there is a space for it
in the treeview so we can see laft and right border

also make sure it works with RTL

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Iae65811b7e1a2c74f47be1cea09607e48ef661af
2023-05-03 09:54:06 +02:00
Szymon Kłos 9903bec57e Send key events only for mention popup
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I57aaeeeda41f1269d18dca14ef6175b44bd6c781
2023-05-03 09:54:06 +02:00
Szymon Kłos 0348391229 Share code for key event handling in TreeView
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I21de36069867bc69b54c9269214fb7886e7f6fc8
2023-05-03 09:54:06 +02:00
Szymon Kłos 14382f7f4b jsdialog: fix warnings in TreeView
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I94c812013560e1d4307eac14a7e755baa16cc1a9
2023-05-03 09:54:06 +02:00
Szymon Kłos c4c36980d1 jsdialog: a11y: grid better describes header listbox
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I9f564907f00bec147c481021059a25b28bd6f9eb
2023-05-03 09:54:06 +02:00
Szymon Kłos c3ae2728be jsdialog: select checkbox on keypress in listbox
and don't add event multiple times for every row

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ia01ce1e81828d5ec40d84888b82ed2294ffef550
2023-05-03 09:54:06 +02:00
Szymon Kłos 8e11d20edd jsdialog: a11y: handle expand using keyboard in tree view
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I99e02c1c0c53d23a91cb279638fcae0bc6e29dab
2023-05-03 09:54:06 +02:00
Szymon Kłos 43cabc5407 jsdialog: a11y: keyboard navigation for tree view
This can be tested with Writer's Reference -> Add Citiation dialog (left
tree).

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I4a3bf6bd0d4f7f061725b6e796437a74f10cf11c
2023-05-03 09:54:06 +02:00
Szymon Kłos 847ade2422 Mention popup focus fix
Previously it used span elements to focus popup listbox.
Now the listbox itself takes focus because entries
don't have tabindex anymore so they are not selected
when tab key is pressed

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I5ef87cf1717b1249994bbf435fa9a55738c81a12
2023-05-03 09:54:06 +02:00
Szymon Kłos ebbcd13a62 jsdialog: a11y: keyboard navigation for header listbox
Can be tested in Writer's Add Citation dialog (right table with header).

from: https://www.w3.org/WAI/ARIA/apg/patterns/treegrid/

Tab:
    If the row containing focus contains focusable elements (e.g., inputs), moves focus to the next input in the row. If focus is on the last focusable element in the row, moves focus out of the treegrid widget to the next focusable element

Down Arrow:
    If focus is on a row, moves focus one row down. If focus is on the last row, focus does not move.

Up Arrow:
    If focus is on a row, moves focus one row up. If focus is on the first row, focus does not move.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I72c8ed0b729965837e939bc327666461dd82beaa

a

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Id3f7812e8ce0a29c2ddae92b8b5d4d5a36569de2
2023-05-03 09:54:06 +02:00
Szymon Kłos 7ab931454c jsdialog: update example TreeView JSON
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I6ac0f9b0863f3494841621ba73a7506111d7b65e
2023-05-03 09:54:06 +02:00
Szymon Kłos 63b9a06e61 jsdialog: remove unused code in TreeView
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I0d27e6a99d7aeed48c52a9910b58e09e12cbc21b
2023-05-03 09:54:06 +02:00
Szymon Kłos a49efdc68b Share code for icon id in TreeView
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I31976b9fb31564c5c90fed123fdd4e488a27e59e
2023-05-03 09:54:06 +02:00
Szymon Kłos fa7e76232d Share code for click event in TreeView
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I3ffd5df8f9ed86de726be5ee464d4d09f955549e
2023-05-03 09:54:06 +02:00
Szymon Kłos dd9b703b2c jsdialog: a11y: add aria properties for tree / listbox
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I190929780783845b69c518fc9fe549e1a841cb9c
2023-05-03 09:54:06 +02:00
Alexander Gabilondo 66315f8dc5 Translated using Weblate (Basque)
Currently translated at 98.9% (494 of 499 strings)

Co-authored-by: Alexander Gabilondo <alexgabi@openmailbox.org>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/eu/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Id6ffd3de3cb6b130e12b92d57340a91315fa5125
2023-05-03 09:51:36 +02:00
Jörg S 87c8543dc8 Translated using Weblate (German)
Currently translated at 99.3% (496 of 499 strings)

Co-authored-by: Jörg S <joerg.schwerdtfeger@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/de/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I0c4d73938485ade9c3afaadb01bdd31e0713015e
2023-05-03 09:51:36 +02:00
Joan Montané 0a2e2714ce Translated using Weblate (Catalan)
Currently translated at 100.0% (499 of 499 strings)

Co-authored-by: Joan Montané <jmontane@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ca/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I1f6bd63be6028bc3dc9fe4f18ad03ed5ed234e7c
2023-05-03 09:51:36 +02:00
bittin1ddc447d824349b2 5aa6603959 Translated using Weblate (Swedish)
Currently translated at 100.0% (499 of 499 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: I0042aa82bfe023ac3fc8c07974e3ac84f0e54abb
2023-05-03 09:51:36 +02:00
Ayhan Yalçınsoy 4be6117616 Translated using Weblate (Turkish)
Currently translated at 100.0% (499 of 499 strings)

Co-authored-by: Ayhan Yalçınsoy <ayhanyalcinsoy@pisilinux.org>
Co-authored-by: PhD. Ayhan YALÇINSOY <ayhanyalcinsoy@pisilinux.org>
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: Ia17bb14fa6cc7360b043aaec1905e2c3d74fe6cf
2023-05-03 09:51:36 +02:00
Andras Timar 246c826765 Translated using Weblate (Hungarian)
Currently translated at 100.0% (499 of 499 strings)

Co-authored-by: Andras Timar <andras.timar@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/hu/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I9abc1595922a35c8e7cabf1aaf33a427e4ea5e1c
2023-05-03 09:51:36 +02:00
gallegonovato 180309533d Translated using Weblate (Spanish)
Currently translated at 100.0% (499 of 499 strings)

Co-authored-by: gallegonovato <fran-carro@hotmail.es>
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: Iae249950899a761436b76bdea454794effa29324
2023-05-03 09:51:36 +02:00
Ihor Hordiichuk 7925575b8f Translated using Weblate (Ukrainian)
Currently translated at 100.0% (110 of 110 strings)

Co-authored-by: Ihor Hordiichuk <igor_ck@outlook.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/android-app/uk/
Translation: Collabora Online/Android app
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I16dd9f9d826fb262c7e42aaa5f3356f635bccc41
2023-05-03 09:51:36 +02:00
Ashod Nakashian 5d2f27d4cb wsd: test: reorder tests to minimize parallel runtime
Change-Id: Ib308757cd100df83b934995c2eee2d38d3120ecb
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-02 19:54:31 -04:00
Ashod Nakashian 576dc6254f wsd: test: faster httpwstest
Change-Id: Ifa68800ba96fd8adaedd82b1551686213c1bb309
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-02 19:54:31 -04:00
Ashod Nakashian 1d482cf5cf wsd: test: selectAll and deleteAll improvements
It seems we no longer always issues textselection:
message after these uno commands, so we end up
waiting and retrying for the longest time.

Change-Id: I47b15b9830585ae58e4400fcf760051506ab69dd
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-02 19:54:31 -04:00
Ashod Nakashian a54416311f wsd: test: time countCoolKitProcesses to catch slow unloads
Change-Id: I26e4382badc4b3e3172d3788e27f024ee7e07c7d
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-02 19:54:31 -04:00
Ashod Nakashian 05ecebe482 wsd: cosmetics and header include fixups
Change-Id: I573e4336b57abfc7bcd77ff0a83042202147e53f
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-02 19:54:31 -04:00
Ashod Nakashian d8d88c740d make: generate compile_commands.json for all .cpp files
Best to have all .cpp files in compile_commands.json
so they can all benefit from the tools that leverage
it. So now we recursively generate the file for all
.cpp files in all subdirectories. Most notably, now
all test files are included.

Change-Id: I312d812463607b32fe6b9e83b10900c17ae86185
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-02 19:54:31 -04:00
Ashod Nakashian 86c1dca7b6 make: cosmetics
Change-Id: Id1ebe96edef9f41be05b84e4c27388adde864aa3
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-05-02 19:54:31 -04:00
Szymon Kłos 4cbec23190 jsdialog: a11y: keyboard activation for menubutton
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I36fda0f5880549e521ea2480be8ca1552ded869a
2023-05-02 12:52:35 +02:00
andreas kainz 603f912d86 Dark Mode add color-scheme: dark setting
see https://developer.mozilla.org/en-US/docs/Web/CSS/color-scheme

Signed-off-by: andreas kainz <kainz.a@gmail.com>
Change-Id: Ie563059174471d50b5f9a8e24d1f08b2540799c5
2023-05-02 10:22:20 +02:00
andreas kainz a963987ff2 dark-mode use correct jquery-ui icons with data-theme value
Signed-off-by: andreas kainz <kainz.a@gmail.com>
Change-Id: I9214fda63f6caea0a36ab8be7c26baf4e1c0f46e
Signed-off-by: andreas kainz <kainz.a@gmail.com>
2023-05-02 10:06:41 +02:00
andreas kainz 6f27bff9fe add missing lc_setoutline.svg icon
icon was needed at writer sidebar default view

Signed-off-by: andreas kainz <kainz.a@gmail.com>
Change-Id: I7da355489f1c0e1b41949f189f31800e4288064d
2023-05-01 08:05:51 +02:00
Pedro Pinto Silva 9de01e11b6 Fixes Menu items hover color are inconsistent #6254
Fixes https://github.com/CollaboraOnline/online/issues/6254

Before this commit and with recent a11y changes generic btn hover
styles were bleeding out to multiple places where icon btns are present

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I3855d081595a2d3aa56e58137e21aba5d7bf8532
2023-04-28 16:46:34 +02:00
Pedro Pinto Silva c4cafd4aff Fixes Impress: Some icons are missing #6249
https://github.com/CollaboraOnline/online/issues/6249
affecting some themes

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I3b0a796350243add9615615d569f3b480189cd29
2023-04-28 16:45:35 +02:00
Pedro Pinto Silva 27fddae9c6 Fix down arrow/triangle position in sidebar dropdown icons
before this commit the triangle was misplaced, under the icon instead
of side by side

(might be related to https://github.com/CollaboraOnline/online/issues/6236)

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Id8d118471dcb02b5bc79399a4319ee514af03c5b
2023-04-28 16:41:56 +02:00
Tomaž Vajngerl d78082b6e9 fix theme dialog entry in compact view
Signed-off-by: Tomaž Vajngerl <tomaz.vajngerl@collabora.co.uk>
Change-Id: I8fbe9e7a8e0aa2020adbe37688fe2e4c6924bdbc
2023-04-28 23:05:29 +09:00
Ralf Becker 5282d1ccfe Fix not working inotify / restart on coolwsd.xml changes
Signed-off-by: ralf <rb@egroupware.org>
Change-Id: Ibab659911e4133437bcee404172e5d8eb0a3f305
2023-04-28 15:27:48 +02:00
Ashod Nakashian 1c4a3bfe1a wsd: test: rulerupdate is an expected message
Change-Id: I42a73914988731fd9d5bdf116d491a8a96070384
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-04-28 06:58:58 -04:00
Ashod Nakashian 6f5316ca93 wsd: test: new test for superfluous save commands
Change-Id: I8cdc589bf0fa3e2fee0991987e62ffdae7af6332
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-04-28 06:58:58 -04:00
Ashod Nakashian 0f5e2c6570 wsd: track the storage attributes more accurately
We now track the storage attributes in three
distinct states. The first, when we issue an
uno:Save (called nextStorageAttrs), when we
get the save response (called
currentStorageAttrs), and when we upload
(called lastStorageAttrs).

What this does is allow us to separate the
attributes without clobbering them, while
supporting retrying when a failure accures.
Specifically, we shouldn't lose the
attributes of the latest save when the async
upload completes. Similarly, we should
preserve the last upload attributes when
the upload fails.

This approach improves reliability
significantly, as evidenced through the
new test, UnitSuperfluousSaves.

Capture the current storage attributes upon saving

Change-Id: I91756fda7b9ed5887dc4ed9691db536371b5bcad
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-04-28 06:58:58 -04:00
Ashod Nakashian 8bbf5e62d0 wsd: process the modified state from uno:Save
A new field, called wasModified, is now published
in the uno:Save result. This gives us an accurate
state of the saved document, whether it had
user-modifications, or was an unconditional forced
save by the user.

Using this flag makes the IsUserModified header,
used during the storage PutFile request, much
more reliable.

Change-Id: I0b7e4421d4a42eef01e19be8d9ee0bee6bff9f03
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-04-28 06:58:58 -04:00
Ashod Nakashian 6dd3feeea7 wsd: do not allow multiple saves in flight
It's easy to use keyboard shortcuts to issue
multiple saves within a short period of time,
which is hardly useful to make saves faster.
In fact, they'd make the server and document
slower by adding overhead.

Similarly, we could get autosave requests
on certain occassions (for example when
the last editor disconnects) while saving.
Again, there is no advantage in issuing
another save in that case. We re-evaluate
the save state when we get the save result.

Here we prevent issuing another save while
one is already in flight, regardless of the
reason.

Change-Id: I9503adabc3a9f1dc6cdbbcf93c5cccbc5414fcf3
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-04-28 06:58:58 -04:00
Henry Castro 0db06a8679 wsd: include CSP server host to ...
load using script interfaces.

There is use case such reverse proxy uses another domain
to request the l10n json resources, but the CSP Chrome triggers:

l10n.js:62 Refused to connect to 'http://192.168.0.2/localizations.json' because it violates the following Content Security Policy directive: "connect-src 'self' ws://192.168.0.1:9980".

request_JSON @ l10n.js:62
String_ctr.<computed> @ l10n.js:85
(anonymous) @ l10n.js:263
(anonymous) @ l10n.js:286
l10n.js:62 Uncaught DOMException: Failed to execute 'send' on 'XMLHttpRequest': Failed to load 'http://192.168.0.2/localizations.json'.

Change-Id: I57fff24c00adebdf7dd06929d6341ea14554a6d2
Signed-off-by: Henry Castro <hcastro@collabora.com>
2023-04-28 06:30:57 -04:00
Pedro Pinto Silva 2ace217813 Do not assume who the user needs to contact for storage space
- I some situations %storageserver domain is not the right place
to redirect users (integrator might have another support system in
place)

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I0008819665a96677cca06d9654e6629cfcac98b1
2023-04-28 06:29:15 -04:00
Tomaž Vajngerl c89aa5558b add ThemeDialog to the notebook bar and main menu
Signed-off-by: Tomaž Vajngerl <tomaz.vajngerl@collabora.co.uk>
Change-Id: Ia50656414c0db2173d2233c4864b67e2c5dbd2e3
2023-04-28 12:50:00 +09:00
Pedro Pinto Silva c6ddeca2d5 Add unothemeDialog icon
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Id63f2c25467f196aa3c8b1e5d27ef35b1777f90a
2023-04-27 17:30:42 +02:00
Andras Timar 252d02c2df missing comma in debian/control
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I8f2f9d70fb98060d6c8776da031c7766b6457c81
2023-04-27 14:58:00 +02:00
Andras Timar bf718f52de set vendor name for rpm package
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ia336cd014a216404657bf4f12be0a3e330985886
2023-04-27 12:34:50 +02:00
Andras Timar 32aed5546f update deb package dependencies
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: If95115c7b92041a062dada0cfb4d92e52cc35181
2023-04-27 12:33:51 +02:00
Gökay Şatır 975b4151d2 Add missing headers that cause compiler errors on newest compilers.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I2e743c4572777dcca69c364c7799a3ae7ecf0941
2023-04-27 10:47:29 +03:00
Andras Timar 2e1c5f269d remove executable bit from svg images
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I9334e2b203a7721255e3ea3d62df1ec50f92a6cf
2023-04-26 23:04:23 +02:00
Andras Timar 01870d03c4 add modeline
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I5ebab27fe86588d4cf199b9e7a9744d8c69c9428
2023-04-26 21:35:19 +02:00
Andras Timar 28119608eb comment formatting
maybe this fixes:
Parse error at /home/collabora/Debian/coolwsd-23.05.0.1/browser/release/bundle.js:69134,0
* CanvasSectionProps
^
ERROR: Unexpected token: operator «*comment formatting

maybe this fixes:
Parse error at /home/collabora/Debian/coolwsd-23.05.0.1/browser/release/bundle.js:69134,0
* CanvasSectionProps
^
ERROR: Unexpected token: operator «*»»

Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I90e6c03addfd66878baf430fb3c8b3690953ed73
2023-04-26 21:18:02 +02:00
Pedro Pinto Silva 9979a93e47 Fix listview icon sizes
icons or being set with a non 1:1 ratio, missing width in the css.
Also better to reuse the btn-size

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I55b005d83718da81d9a7a44193b6f9de7192d41e
2023-04-26 12:53:46 +02:00
Michael Meeks f6bd976f00 Jail cleanup - include coolwsd pid + hash into a jails sub-directory.
This avoids removing the jails of other running coolwsd that share
the same jails/ directory, such as unit-tests, cypress tests etc.

Assert on fatal system error to help catch this during test builds.

Remove old unit-test specific approach, and generalize it, since
apparently we did a recursive cleanup of other people's jails anyway.

Remove over-complicated recursive approach, for a rather simpler
one-level scheme. Avoid following symlinks too for safety.

Remove obsolete lo_jail_subpath setting.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I371f8c0e22f64fb2befb4b58f72cefa39567f3b5
2023-04-25 10:41:57 +01:00
Rash419 18d8e05ae0 fix:Cannot read properties of undefined (reading 'testing')
Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I55699802d0e5f82514884f0db49e9f5667b2a7e0
2023-04-25 12:28:40 +05:30
Rizal Muttaqin 9ef37f3860 Add chapternumberingdialog icon
Signed-off-by: Rizal Muttaqin <riz_17_oke@yahoo.co.id>
Change-Id: I31dd78107a432c6fb3b09024bd490a5832ac568c
2023-04-24 16:52:48 +02:00
Tor Lillqvist bc6b3bbaee Fix build for iOS (and possibly for Android)
Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: I5eb5187b896b7e80aaab5660a8f10268b565dc8f
2023-04-24 17:15:47 +03:00
Gökay Şatır 701e14e443 Add close button to paste warning dialogues.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: Ic9e7b11ddcca432b7ec4d218c4085496c56059bc
2023-04-24 15:40:17 +03:00
Ashod Nakashian 2097e936f5 wsd: only external insertfile names
Change-Id: I76e63dcbf724249e23003353a6fdd2237570fd39
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-04-24 14:04:43 +02:00
Andras Timar 0519a533d7 Document name should be plain text on admin console
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I4ef9f83893af7646a15ea8c235257acab7760b64
2023-04-24 14:04:43 +02:00
Szymon Kłos 29d46f5358 Parse theme correctly
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ib54cd5a3761666f48f9a7d0b73194206db27e199
2023-04-24 14:04:43 +02:00
Szymon Kłos ff69469089 Don't request images in strip
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ib5da23cb62180cde7b33d0527e0b11e39736c220
2023-04-24 14:04:43 +02:00
Szymon Kłos 02cd526d1a Don't open invalid link
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ic4229541d0d542ddfa46c4652dc1e016527a14b3
2023-04-24 14:04:43 +02:00
Szymon Kłos 23db8700b8 Improve translation in welcome dialog
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ib9daec78a60729b5ae81f1ae8cf3ae863a6fa300
2023-04-24 14:04:43 +02:00
Szymon Kłos 3bc1bb4c0d Show quotes correctly in buttons
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I7d0f78ea65ff5fbe8d9faa10b11ab36d91930121
2023-04-24 14:04:43 +02:00
Szymon Kłos bd4136abb5 Imporve Insert_Button in classic mode
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I68bd2c796161d137d7bf38c5c4f61a8fec67bdfb
2023-04-24 14:04:43 +02:00
Szymon Kłos 83e2b3375d Format correctly url variable
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I03be69eee26a8b2e8ca1e57a142602671688b86f
2023-04-24 14:04:43 +02:00
Andras Timar 1540676bae Let's keep HTTP server error messages as plain text to avoid complications
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I16510476b3ec00c6ce3da6ae38beef48ad8f06e3
2023-04-24 14:04:43 +02:00
Gökay Şatır 54d425c980 Improve Cypress tests and fix one comment related case for Impress.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: Ib243a70b8a0cf5f3abfd8f713525520f7b152c57
2023-04-24 11:34:04 +03:00
Gökay Şatır fdbe377797 Update comments related Cypress tests.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I0318c8104b6ef5e3ba649dce31a2894335b5ab6e
2023-04-24 11:34:04 +03:00
Gökay Şatır 02616ed3ee Don't auto show the comment on Calc.
Wait for user to press Alt+C combination.

Set width for mobile comment containers.

Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I4e4b47ba8b0b2dc05edc3aec6e6836009ce07b05
2023-04-24 11:34:04 +03:00
Gökay Şatır 1edca8ee2c improve the positioning of the selected, collapsed and normal comments.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: Ib731630fce5dac03c5fde84d938047b74c18a98f
2023-04-24 11:34:04 +03:00
Gökay Şatır 6f710315e0 Remove updateScaling function.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I49c33090cf35793430fa1bcca79748ffd4445963
2023-04-24 11:34:04 +03:00
Gökay Şatır 6922a2b59d Unselect current comment first before selecting another one.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I55a36d4f600628863483a48f2356b8b39cfbbcaf
2023-04-24 11:34:04 +03:00
Gökay Şatır 3101503d74 Disable collapsed mode for spreadsheets.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: Ica408a0bfca3718ba403e8cdc9aad7aaa2f1096d
2023-04-24 11:34:04 +03:00
Gökay Şatır 5f6a6d6f9f Required Cypress changes after replacing popups.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: Ice48a7c83afb9311b2eb9ebcf1d3dbccb9ad5f8b
2023-04-24 11:34:04 +03:00
Gökay Şatır 2f77b3a208 Remove duplicate comment containers by removing JSDialog popups.
Test Calc & Writer & Impress & Draw and mobile views.

Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: Id882cd8120f4839c29050d60f189137404f3a3ff
2023-04-24 11:34:04 +03:00
Gökay Şatır a006c91723 Focus on the selected comment with keyboard.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I9cd5951500ca1bb1636ac90b4b4fdce287d669f9
2023-04-24 11:34:04 +03:00
Gökay Şatır 4c5d5c8e50 Show comment when comment's cell is selected by keyboard.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I3b189254ad60f9c37d8016f8f530bd5ece81bc75
2023-04-24 11:34:04 +03:00
Gökay Şatır 076d4ba8a9 Remove duplicate lines.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I314fe18324039e2b4d588e412f486d4902fb0f6f
2023-04-24 11:34:04 +03:00
Gökay Şatır 49b228c6e4 Set comment as selected when cursor is on it.
Writer only.

Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I1308df9c2b0363a20119bffc647128627e0ecb9c
2023-04-24 11:34:04 +03:00
Gökay Şatır 4e3294fd90 Remove unused functionss from CommentListSection.ts.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I5d2163eb17ba8121ecf087d328a4084895be8e78
2023-04-24 11:34:04 +03:00
Gökay Şatır 0698e85f5a Add onCursorPositionChanged event to CanvasSectionContainer.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: Id66cafe17187772214e4f3d101f709f6b950c539
2023-04-24 11:34:04 +03:00
Michael Meeks 91c8803913 Cypress: easy to use debugging hook for failing tests.
Enabled by removing the code comments.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I88ffb02ec2a06f8d717fe1a5b3fba2fe6b5427f8
2023-04-21 19:20:50 -04:00
Michael Meeks 07d1260058 Consistency checking at various points: load, save.
Check that everything is where it should be; catch and warn
about jails that are corrupted beyond our control, or perhaps
manually un-mounted etc.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: Ib5f7769ded119d7c6126984b040d0e5565ca8055
2023-04-21 19:20:50 -04:00
Andi Chandler 0d76f80457 Translated using Weblate (English (United Kingdom))
Currently translated at 100.0% (499 of 499 strings)

Co-authored-by: Andi Chandler <andi@gowling.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/en_GB/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I80c04b218d7236075dec3f546b49cdf9ce6a3a97
2023-04-21 12:26:50 +02:00
Subham Jena 7ed6b62fe4 Translated using Weblate (Odia)
Currently translated at 11.8% (13 of 110 strings)

Added translation using Weblate (Odia)

Co-authored-by: Subham Jena <subhamjena8465@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/android-app/or/
Translation: Collabora Online/Android app
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I1e7200e5e16c52cbe298c6b4326dfe9fd837b210
2023-04-21 12:26:50 +02:00
Weblate f9c12c81b1 Added translation using Weblate (Odia)
Added translation using Weblate (Odia)

Added translation using Weblate (Odia)

Added translation using Weblate (Odia)

Co-authored-by: Weblate <noreply@weblate.org>
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ib4650906b5ec4b8e707a74f6437c6fa542210f5c
2023-04-21 12:26:49 +02:00
Sebastiaan Veld 4043119ce7 Translated using Weblate (Dutch)
Currently translated at 100.0% (499 of 499 strings)

Co-authored-by: Sebastiaan Veld <sebastiaan.veld@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/nl/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: If18ee525f3f8e18a15a97817880cd7c2e66df0b5
2023-04-21 12:26:49 +02:00
ButterflyOfFire 2e250296aa Translated using Weblate (Kabyle)
Currently translated at 15.0% (75 of 499 strings)

Co-authored-by: ButterflyOfFire <boffire@users.noreply.hosted.weblate.org>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/kab/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I89b8cded941d846bf2ccd2843c4837b4380e6661
2023-04-21 12:26:49 +02:00
Ettore Atalan bc29e7c588 Translated using Weblate (German)
Currently translated at 99.1% (495 of 499 strings)

Co-authored-by: Ettore Atalan <atalanttore@googlemail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/de/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ibfcb11ab2cb2f564223769d0776d3edc20ebf04b
2023-04-21 12:26:49 +02:00
Stanislav Horáček fbc1a6b047 Translated using Weblate (Czech)
Currently translated at 100.0% (499 of 499 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: I6f9294a3ad8580bad26af26f0e60e3912e49cee8
2023-04-21 12:26:49 +02:00
Ihor Hordiichuk b055d49f10 Translated using Weblate (Ukrainian)
Currently translated at 100.0% (499 of 499 strings)

Co-authored-by: Ihor Hordiichuk <igor_ck@outlook.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/uk/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I2ceeab8fbd7b662983944e0862b954fed49e63a0
2023-04-21 12:26:49 +02:00
Martin Srebotnjak 4b3d2ce729 Translated using Weblate (Slovenian)
Currently translated at 100.0% (499 of 499 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: Iddf6b113a85efec5687754f9d236def3dcc5d608
2023-04-21 12:26:49 +02:00
Matthaiks 34ae64948b Translated using Weblate (Polish)
Currently translated at 100.0% (499 of 499 strings)

Co-authored-by: Matthaiks <kitynska@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pl/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I44afd5417d407716422d82681d73ac81d69241c9
2023-04-21 12:26:49 +02:00
Andras Timar 4b6ecdecce Translated using Weblate (Hungarian)
Currently translated at 100.0% (499 of 499 strings)

Co-authored-by: Andras Timar <andras.timar@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/hu/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Id133325f855e1d37f4c2a480d84a05d1f15a8965
2023-04-21 12:26:49 +02:00
Milo Ivir f1134366b8 Translated using Weblate (Croatian)
Currently translated at 100.0% (499 of 499 strings)

Co-authored-by: Milo Ivir <mail@milotype.de>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/hr/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I55d3abb7438f3500b9a00600bea31baeeed2082d
2023-04-21 12:26:49 +02:00
Yaron Shahrabani 150d432e3e Translated using Weblate (Hebrew)
Currently translated at 100.0% (499 of 499 strings)

Co-authored-by: Yaron Shahrabani <sh.yaron@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/he/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I6e92f23b0f24448c763ccfcb94532726310f3000
2023-04-21 12:26:49 +02:00
Adolfo Jayme Barrientos 316d814774 Translated using Weblate (Spanish)
Currently translated at 99.3% (496 of 499 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: If49595432d01b9c6a9779a231cfd02e733cfb29c
2023-04-21 12:26:49 +02:00
Jaume Pujantell 72103a4858 only click on toolbar scroll if it's visible
Signed-off-by: Jaume Pujantell <jaume.pujantell@collabora.com>
Change-Id: I2f04ee5d49dbad2b630740aa86d4f78c8826307a
2023-04-21 10:03:49 +01:00
Jaume Pujantell 21161cecdd wait before a click that triggers too early
Signed-off-by: Jaume Pujantell <jaume.pujantell@collabora.com>
Change-Id: I59e190159f077f67af6ccdb6f40aab0b0b283a61
2023-04-21 10:03:49 +01:00
Jaume Pujantell 70fb652393 reclick edit button on mobile test if it failed to respond
Signed-off-by: Jaume Pujantell <jaume.pujantell@collabora.com>
Change-Id: I00030da53cba62414cee7646b0d619e23f60f7f9
2023-04-21 10:03:49 +01:00
Jaume Pujantell ffd73830f0 improvement on commit 6407fff
Signed-off-by: Jaume Pujantell <jaume.pujantell@collabora.com>
Change-Id: I89720c6cfd16d27375a87375154e7cb2f050a180
2023-04-21 10:03:49 +01:00
Gökay Şatır 2a0a9b3a26 Improve accessibility of about and help dialogues.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: Ia82fdb90e19da8dd3ed3c38b36b7b3b45c5e7908
2023-04-20 20:43:30 +03:00
Michael Meeks b1bbd75cc6 cypress: add flag to delay update popup in Chrome indefinitely.
The suspicion is that the update popup messes with focus, and can
break tests after they start intermittently - at least in
interactive mode.

cf. also https://github.com/cypress-io/cypress/pull/16694

Date syntax is altered to avoid another bug with cypress
parameter parsing.

Change-Id: I92b9911eb7b3673a64a9d123b2c110111b7c3549
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2023-04-19 11:43:24 +02:00
Pedro Pinto Silva 8302ed134f Tabbed view: Fix context tabs visibility
With the a11y improvements from
9d3d0cdee7
we now add !important to visibility: hidden that in turn makes the
browser ignore the inline display block. The result: we get a new tab
content without the tab itself (it's hidden)
- Fix this by removing the 'hidden' class when the tab button needs to
be shown

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I276d3fa62d89b32935de0357d0b24f558fcf3fd6
2023-04-19 11:09:25 +02:00
Jaume Pujantell 6407fff7b0 Various cypress fixes
This changes make cypress tests more reliable, specially in slow or loaded machines.

Signed-off-by: Jaume Pujantell <jaume.pujantell@collabora.com>
Change-Id: I574b0db3e81e57a2dc682fbe2ed3f0301ad8e52d
2023-04-19 03:13:22 +01:00
Gökay Şatır 88d4475389 Set role of modal dialogues.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: Ia80743a657cc0a520bb2a42d44f8da43f546a429
2023-04-18 16:48:32 +02:00
Pedro Pinto Silva acc5e86468 Add additional column gap to all page widgets within dialogs
If the page widget (elements that end their id with Page) have just
one column this will not take effect.

Why: the grip-grap (for both columns and rows) of 4 px set in the
jsdialogs.css is enough for many cases but when we have a Page with
more than 1 column the 4 pixels is too small to distinguish the
different sections.

Dialogs affected by this commit: All with child content id ending in
Page. Examples of improved dialogs:
- File properties
- Char format
- Settings of Footnotes and Endnotes
- Paragraph (format)
- Bullets and Numbering (position tab)
- Page Style (border, Header)

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Iebe9f01b758f1af8b43317cdf01a44f74c70cc42
2023-04-18 16:24:43 +02:00
Pedro Pinto Silva 832a04608e Tabbed view: fix buttons occupying extra space
similar to d1991e177c
but his time addressing:
- outdated css rules (remove them). They are outdated because we
already have `.unotoolbutton.notebookbar .unobutton`. Plus all of the
with exception of `vertical-align: middle;` were being ignored
- Do not allow browser to calculate width and instead set the same
value as in height
- Move `vertical-align: middle;` to a better place

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Idb2de12365727d0ed2886729d9effbf36ede31ab
2023-04-18 13:59:49 +02:00
Andras Timar 0a6a481043 Fix #6192: onMessage error: e.data.startsWith is not a function
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I6e548370c9569117b401f5db3f750fb3633cb2cd
2023-04-18 12:42:53 +02:00
Andras Timar e7cb09c03b Update l10n files for Weblate
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I851b7528962ccaf08d1584d2529e59a72d3a7ab0
2023-04-17 19:38:20 +02:00
Ram 809dbc5eb3 Translated using Weblate (Malayalam)
Currently translated at 41.8% (46 of 110 strings)

Translated using Weblate (Malayalam)

Currently translated at 40.0% (2 of 5 strings)

Translated using Weblate (Malayalam)

Currently translated at 50.0% (11 of 22 strings)

Co-authored-by: Ram <airavatam@tutanota.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/android-app/ml/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/android-lib/ml/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ios-app/ml/
Translation: Collabora Online/Android app
Translation: Collabora Online/Android lib
Translation: Collabora Online/iOS app
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I1eeefe755010bbccb6f70f766883d6206cb09e99
2023-04-17 19:34:40 +02:00
Hamid Mir-Mostafa e031b1da43 Translated using Weblate (Persian)
Currently translated at 13.6% (3 of 22 strings)

Translated using Weblate (Persian)

Currently translated at 100.0% (5 of 5 strings)

Translated using Weblate (Persian)

Currently translated at 10.9% (12 of 110 strings)

Co-authored-by: Hamid Mir-Mostafa <hamidmirmostafa.personal@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/android-app/fa/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/android-lib/fa/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ios-app/fa/
Translation: Collabora Online/Android app
Translation: Collabora Online/Android lib
Translation: Collabora Online/iOS app
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I4e53a2a35d2c34d03aa1672817cdca21e2a83d4e
2023-04-17 19:34:40 +02:00
Alex Gabilondo c1e2cfc9d0 Translated using Weblate (Basque)
Currently translated at 100.0% (525 of 525 strings)

Co-authored-by: Alex Gabilondo <alexgabi@disroot.org>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/eu/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I28cc5da00529743da119c70d8ad8a7779782722a
2023-04-17 19:34:40 +02:00
Jérôme Herbinet 24ded7041d Translated using Weblate (French)
Currently translated at 100.0% (525 of 525 strings)

Co-authored-by: Jérôme Herbinet <j.herbinet@protonmail.ch>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/fr/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I5cfe36fa7bab22acc74a7915019e70004702c321
2023-04-17 19:34:40 +02:00
Cosmin 908f24755a Translated using Weblate (Romanian)
Currently translated at 39.1% (179 of 457 strings)

Translated using Weblate (Romanian)

Currently translated at 30.0% (158 of 525 strings)

Co-authored-by: Cosmin <cosmin@fsfe.org>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/ro/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ro/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ieb37d002f5cdeb329edb15b8f4ef27b83f249cde
2023-04-17 19:34:40 +02:00
Adolfo Jayme Barrientos 46eebc4a96 Translated using Weblate (Spanish)
Currently translated at 100.0% (525 of 525 strings)

Translated using Weblate (Asturian)

Currently translated at 51.4% (270 of 525 strings)

Translated using Weblate (Aragonese)

Currently translated at 27.2% (30 of 110 strings)

Co-authored-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/android-app/an/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ast/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/es/
Translation: Collabora Online/Android app
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I0827f24a575c3a771097e54d7c2eb42b386a2502
2023-04-17 19:34:40 +02:00
Milo Ivir d63e16a1ab Translated using Weblate (Croatian)
Currently translated at 100.0% (525 of 525 strings)

Co-authored-by: Milo Ivir <mail@milotype.de>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/hr/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I96d65c494d36dbf8af1cb8a84a7f099d651a2d23
2023-04-17 19:34:40 +02:00
Szymon Kłos 356c6520cc jsdialog: a11y: keyboard navigation for tab control
Tab:
    When focus moves into the tab list, places focus on the active tab element.
    When the tab list contains the focus, moves focus to the next element in the page tab sequence outside the tablist.

When focus is on a tab element:

    Left Arrow: moves focus to the previous tab. If focus is on the first tab, moves focus to the last tab.
    Right Arrow: Moves focus to the next tab. If focus is on the last tab element, moves focus to the first tab.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I24bd15f1efd265cc99cced5b058dc547d0a07e8f
2023-04-17 16:33:59 +02:00
Szymon Kłos 15523d4d7c notebookbar: a11y: keep focus on tab when space is used
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ifc76976c5e31b103993f28cf44abfc4b1d60b598
2023-04-17 16:33:59 +02:00
Szymon Kłos 8dfcd5fd42 jsdialog: a11y: set correct aria role for tab control
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Id542a5c2a567c04115b1e2bef11a7a6d026beb9c
2023-04-17 16:33:59 +02:00
Szymon Kłos 19ab977ab3 jsdialog: a11y: fix close button without label
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I09e50ebe71ce06f4d446df99cd9447ec820fe0e5
2023-04-17 16:33:59 +02:00
Szymon Kłos deedfd1977 jsdialog: a11y: assign labels to radiobuttons and checkboxes
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ifbfdabc7c00f3c306934d1a2ac9c4733f25e5d05
2023-04-17 16:33:59 +02:00
Pedro Pinto Silva 14a0ded130 Tabbed view: Tabs: Improve html structure
Best to avoid span elements around button text
The innerHTML here is harmless since we are using a string created
by us within the same function.

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I72af17cd2788e7ba4b3ec1c255058e18884e0be1
2023-04-17 16:24:27 +02:00
Gökay Şatır 7e7dcd318f Update jquery-ui.css to make the container's height reflect its content.
Create a new CSS rule to make tabs' content lower enough from the tabs' buttons.

Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I3354b93711f1e93aa9c97c31b3717cad7b917351
2023-04-17 14:02:39 +02:00
Szymon Kłos ac1b704264 jsdialog: don't setup additional margin for unmanaged scrollwindow
Can be tested with Calc's Data -> Sort dialog
When we have multiple entries we still should scroll only to
the end of last entry. Previously we added lot of extra space.
Also this change prevents from adding unnecessary margin to drawing
areas.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Icdfcba0a02d0b814460f58219db48dd856c059a1
2023-04-17 09:45:27 +02:00
Ashod Nakashian b556381406 wsd: return SSL_do_handshake error-codes unmodified
For some reason we only checked for the closed
socket case as failure and returned 0 in that case,
for error cases, we returned 1. Likely the API
had been modified in the early days, but this
return code was left lopsided.

This meant that even when the handshake failed, we
still called readIncomingData or writeOutgoindData,
depending on whether we wanted to read or write,
causing a rare race-condition.

When a client (HTTP request) connects to a server,
it needs to send the request, right after the
SSL handshake. SSL_do_handshake could need data
from the socket to complete the handshake. In such
a case it returns WANT_READ. Unfortunately,
because we always called SSL_read, the missing data
could have arrived between the SSL_do_handshake call
and the SSL_read call (a rather short duration, to
be sure, but an open window all the same).
SSL_read would of course read said data from the
socket and, since it still needs to finish the
handshake, will buffer it. It then returns the very
same error that the SSL_do_handshake returned:
WANT_READ. Of course we will oblige by polling with
POLLIN, which will time out (there is no more data
to come, and the server is waiting for *our* request
and has nothing to send us).

The only way this deadlock could break if
SSL_do_handshake was called (which will consume
the buffered data, return 1 to indicate handshake
has completed). Since we wouldn't call it unless
and until we get POLLIN, per WANT_READ, which won't
happen in this case. And since SSL_read doesn't call
SSL_do_handshake either, the request times out and
that's the end of it.

The fix is to not call SSL_read when the handshake
isn't complete and needs more data, which we do now.

Fortunately, we have very few SSL clients, outside
of unit-tests. Most notably the WOPI client. But
even then it's not a heavily used connection and
might not even be SSL-enabled (for LAN servers).

Change-Id: I04fd3dae151904194f3d7579dbf8c671b2580ffb
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-04-15 23:07:38 +01:00
Ashod Nakashian 49843a6af9 wsd: handle read failure on closed socket better
A rare edge-case happens when we have a socket
that is closed (and we get POLLHUP or POLLERR)
but upon reading the socket we get EAGAIN.

This was observed when simulating EAGAIN,
and it is possible that this is quite impossible
in practice (since we read only when we get
POLLIN), but at least for the unit-tests
we need to handle this case, so we don't
get random failures.

Change-Id: I77af1726066507af5d5ada68fe11b479a4e579e5
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-04-15 23:07:38 +01:00
Ashod Nakashian 2ea14b5221 wsd: reduce SocketPoll lock contention
We don't have to read the wakeup pipe
under a lock. So we no longer do.

Change-Id: I6bd724b9748add3022b4f9aa2268094b9818f3e5
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-04-15 23:07:38 +01:00
Ashod Nakashian bbabcf52dc wsd: more tracing of socket and poll activity
Change-Id: Ia5cb6cfaf8108a9266b0a1daa55b0fbe1349177c
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-04-15 23:07:38 +01:00
Ashod Nakashian 896673c857 wsd: correct log argument order
Change-Id: I00cb3ccd740e8540341e45965cbe8460490acb8c
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-04-15 23:07:38 +01:00
Michael Meeks 93b41527e3 Cypress: accelerate tests by not re-downloading & JITting JS.
add forcecaching parameter to coolwsd for debug mode.

Change-Id: I6f38e9a4fd6dbb76e92105c76e8abe3e75f19ef5
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2023-04-15 11:45:22 -04:00
Ashod Nakashian 587ba85aea wsd: always handle socket polls without skipping
We now always handle socket polls without skipping
when the number of sockets change. We verify the
socket FD of each socket before handlingPoll to
catch any violations of the preconditions.

This should avoid missing any events and also
handles timeouts better (which are checked
in handlePoll). It also protects against
unexpected modifications of the sockets, with
proper logging and assertion.

Change-Id: I5659eb57231a490e6c813e7a0222443b534713c6
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-04-14 18:02:14 +01:00
Ashod Nakashian 8facb429c2 wsd: make removeSockets private
Change-Id: I7171c67bbbe4682cf10e015e600fb25f03d4e5bb
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-04-14 18:02:14 +01:00
Ashod Nakashian 4968982a3d wsd: better merge new sockets into poll sockets
Change-Id: I4249ba4d35d8dfb2ff17c63af201276c77e2549b
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-04-14 18:02:14 +01:00
Ashod Nakashian b82519400f wsd: update the poll round-robin index right before usage
Change-Id: I27f19c914449b689a530495681423a2906281698
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-04-14 18:02:14 +01:00
Ashod Nakashian ec85f78458 wsd: drain the wakeup pipe on each read
Reading larger blocks should avoid having
the pipe back up when we accidentally
attempt more wakes than actual ones.

Change-Id: I7766230f60dbf069668ee7919f766e9093df7017
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-04-14 18:02:14 +01:00
Pedro Pinto Silva 0906804b6c Tabbed view: fix button label alignment within tabs
with a11y we now have those labels set via <label> elements and thus
they are getting browser specific default style for line-height
- Set to the same line-height that they used to have before, when they were
<span> and were inheriting the line-height from <body>

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: If9afa2217e5d357ea27b8e7fbb0d63f3acdee80c
2023-04-14 16:09:28 +02:00
Pedro Pinto Silva d1991e177c Tabbed view: Fix tab content being filled with extra white space
This was introduced with the a11y changes (button is getting
browser default padding style)

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ic648cedc1d3c72e0ae53e8bd244f1a04da868d8b
2023-04-14 16:09:28 +02:00
Ashod Nakashian fecad56715 wsd: shutdown the Kit socket before terminating to flush
In some rare cases we can't write to the socket
before we terminate, and the last message is
lost. This is observed in tests and especially
when we simulate socket write failure.

Change-Id: I9fb298edfe53de3c7ea0c2f31c02ba370167f96e
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-04-14 11:30:14 +01:00
Ashod Nakashian 1df26c35db wsd: do not use expired token to lock storage
Change-Id: I733bcb53c50faa2f410af2f10f4c225797f49ecb
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-04-14 11:30:14 +01:00
Ashod Nakashian 8c6d92bc46 wsd: test: ignore requests after testing has finished
Change-Id: Ifcb28bffb2aecd5c0d9c83fa7cdbd3a203b38f37
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-04-14 11:30:14 +01:00
Ashod Nakashian 7547e15d79 wsd: move pollingThread to private
There is no use-case for calling the
thread function of the SocketPoll
from outside.

Change-Id: Id8e87369494817aaab749d03d1cd4cd3724c2da1
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-04-14 11:30:14 +01:00
Ashod Nakashian 75dbe7af53 wsd: better scope locality
Change-Id: I49156505dfb855ce00815c6afabc762951fcc4c8
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-04-14 11:30:14 +01:00
Ashod Nakashian 4089302362 wsd: better socket logging
Change-Id: I31b64ce1f174896a3bcfa5cd620e0babd7f425d1
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-04-14 11:30:14 +01:00
Ashod Nakashian 55c9280e02 wsd: multiple writes to stderr may interleave
Particularly annoying with trace level logs
when they trample over one another.

Change-Id: Ib1a8f8b8117364886af5043120e65ec7cb12e12a
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-04-14 11:30:14 +01:00
Ashod Nakashian 9dd0636bcd wsd: announce the debug URLs to the user after server runs
The port used for client connections does change when
we cannot connect on the default/first one. There is
no point in announcing the default when we don't
yet know the actual port, and similarly it's not
helpful to do so before the server is even started.

We also move the remote-font-config thread to an
earlier point and merge it with another #if !MOBILEAPP.

Change-Id: Icc28817c7a03d49a7e130b076e545fe3ce2fb81a
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-04-14 11:30:14 +01:00
Rash419 3ba85eb8f7 js: fix mention popup positioning on large resolution
Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I1cc628b682215414611a256986731a9046bb6b35
2023-04-13 15:20:32 +05:30
Pedro Pinto Silva f78de939d5 Rename Link Picker to Smart Picker
So it's consistent with the latest NC strings

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ic1d49c6d871aee86f80aeb5c4e6936b33f3fc93c
2023-04-13 10:25:34 +02:00
Pedro Pinto Silva c5b95042b6 GitHub project know has its own workflows bultin
Remove custom actions

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ia7f2d776d370310834fd29d38ef25a2566d7d054
2023-04-13 09:54:01 +02:00
Pedro Pinto Silva 58bb4b9380 Sidebar: Remove browser's style padding that comes with <button>
Before this commit buttons were being generated with padding
this is not needed ( we already have safe margins applied to
the parent -> 'unotoolbutton' )

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I4f1b4328131550d906cde3328c7de02daffd76a1
2023-04-13 09:18:52 +02:00
Pedro Pinto Silva 00375b61e6 Fix button ration
Before this commit we were setting buttons in places such as
the sidebar with weird ratio (not 1:1) this might lead to problems
when aligning, adjusting gaps. Better to adjust gap or margin if we
need bigger spaces in between

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Id60cd6353de2ace2a066c0d1624000a09f0ca98e
2023-04-13 09:18:52 +02:00
Michael Meeks 5a2127003f disable fragile TileCacheTests::testTileBeingRenderedHandling.
Fails intermittently under load, responsible for most unit-tile
failures.

Change-Id: I88de8524b51ee7d97a28e31c001534a506d52f0e
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2023-04-12 18:01:40 +01:00
Jaume Pujantell 518acd1127 Disable Change Password button for users who don't own the document
Signed-off-by: Jaume Pujantell <jaume.pujantell@collabora.com>
Change-Id: I2e1fc1e5b6e50cd7ec5ad9d78db36e76ce6426c9
2023-04-12 14:33:07 +02:00
Gökay Şatır 2c0df92a2b Update shortcuts for accessibility.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I26cfae75d65fc2588225b22b752a34571d5abc34
2023-04-11 16:43:35 +02:00
Pedro Pinto Silva 557c336d0d Set missing dimensions to sidebar button images
- re-use btn-size variable
- make it clear that this set of rules is intended to sidebar elements
  - Improve selector (more clear and so it doesn't target other
    elements outside of the sidebar)
  - Move it to jssidebar.css file

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ib03c412a1e05fd6ed315f58a70486f14eaf5b9ea
2023-04-11 16:13:01 +02:00
Gökay Şatır f2637b02a9 Open dropdown menu of a content control when space or enter is pressed.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: If1670f9f2153a4578057cb4b5c7073879f08ea8b
2023-04-11 16:21:14 +03:00
Gökay Şatır 3659b47afa Loop focus on the dialogue regardless of the dialogue type.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I9d74adbd8df235d762d5cdd0133c26bbbae7b549
2023-04-11 16:21:14 +03:00
Gökay Şatır b3cb61bbd4 Avoid duplicate ids.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: Ia90a0178796ec18e6a167c378a6de294dfb96b32
2023-04-11 14:05:52 +02:00
Ashod Nakashian 3dbfce54d3 wsd: helper to dump the state of an object as a string
Change-Id: Ib49a47be2dc37663ef06ac80be981c9f3c029814
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-04-11 08:03:01 -04:00
Ashod Nakashian 335843f527 wsd: remove unused DocumentBroker::getDeferredLock
Change-Id: I0660b8074227408cb2f9a4009d3de15aac2c11ef
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-04-11 08:03:01 -04:00
Ashod Nakashian f41ba11bad wsd: test: socket context logging
Change-Id: Ib3675985cf0e2d8864ed544d5e7c615d5fde2331
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-04-11 08:03:01 -04:00
Ashod Nakashian a24a07b301 wsd: new Stopwatch utility
Similar code is scattered in the code. This
should help clean them up and make usage
easier.

Change-Id: I02f82c9aa169f591c5688c4b2adca257eecf8221
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-04-11 08:03:01 -04:00
Ashod Nakashian bca82f50ee wsd: better logging of the current socket being handled
Change-Id: Ieca96a685f5cfea24fde7251806746408e0bfbf8
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-04-11 08:03:01 -04:00
Ashod Nakashian e960e52636 wsd: remove unused Force flag from enums
Change-Id: I752842f56ab4520a624848b6be2724775189ea51
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-04-11 08:03:01 -04:00
Ashod Nakashian 8b2d230c64 wsd: logging and cosmetics
Change-Id: I2c7a2c22e073bebf66d542d5e81b1496b8057319
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-04-11 08:03:01 -04:00
Ashod Nakashian 158e1a125f wsd: avoid using the default port for unit-tests
Change-Id: I4d8681491b0aeedbc349c7644551f51052adf63d
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-04-11 08:03:01 -04:00
Pedro Pinto Silva 8d49e0cff5 CSS refactor: Fix duplicated & outdate px across light/dark modes
Do not place px in light or dark mode css instead use the shared
cool.css :root for that
- This avoid outdated values in the future
  - There was already one like that: --annotation-input-size
  had different values between light and dark mode

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I5cd95a36e160003101f6f92108bb5244bfafcdd4
2023-04-11 13:01:54 +02:00
Pedro Pinto Silva 70a5ec53aa CSS Refactoring: one btn-size to rule them all
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Iedac492e206e15a1aad65e07dc8cdc3d95a4a488
2023-04-11 13:01:54 +02:00
Pedro Pinto Silva c1e02d4a2b Expose Translate option to mobile if feature is enabled
Before this commit was impossible to use the translate button
on mobile phone

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ia93e1bf009723f3f7791b63f0b15a74467595ab7
2023-04-11 11:03:38 +02:00
Gökay Şatır c6fef0d233 Use htmlFor attribute for labels.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I64b8fd378abdedf0e97bcb3075da13799460f01b
2023-04-11 09:06:48 +02:00
Michael Meeks 05ae0ab631 TileCacheTests: re-copy documents when repeating tests.
Attempted blind fix for intermittent failure:

[ kitbroker_004 ] TRC  Document::GlobalCallback LOK_CALLBACK_ERROR
[{ "classification": "error", "cmd": "load", "kind": "io", "code": 770, "message": ""}].
filter/source/config/cache/typedetection.cxx:452: caught exception while querying type of ...
"Could not open stream for <file:///tmp/.../disconnectMultiView_5f47c785_setclientpart.ods>
at filter/source/config/cache/typedetection.cxx:1123"

[ coolwsd ] TST  disconnectMultiView-1  [loadDocAndGetSession] (+22012ms):
ERROR: Assertion failure: Failed to load the document
cool/file%3A%2F%2F%2Ftmp%2FdisconnectMultiView_5f47c785_setclientpart.ods/ws.
Condition: isLoaded| helpers.hpp:531

Change-Id: I91062bf4c136dbd6a4cf6def842ff2ae7687c758
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2023-04-10 19:46:07 +01:00
Pedro Pinto Silva 52fdec0014 Remove unnecessary flex and sizes for notebookbar-shortcuts-bar
Since we have change the generated HTML and now we have proper buttons
and img inside of them, there is not need to resort to this methods
since the img will automatically be centered aligned within its button

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I944f5c677c6d79f2f28645e4e8d081868f094262
2023-04-10 13:09:47 +02:00
Pedro Pinto Silva bd03ab04eb Fix notebookbar button sizes and shortcuts bar
After accessibility work we need to change how we target those
and also we need to revert that `height: 100%` and replaced with
24px so we can know for sure how much th element will occupy
and to safeguard for cases when the svg is bigger

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ia4102ccc5c58d4807d8b05d360342c1ea7128c3b
2023-04-10 13:09:47 +02:00
Gökay Şatır 5c7c7f24f6 Provide a way to focus on the menu from map.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: Id5b99bc43cf908940c55af5b5f004513b5cdd05c
2023-04-09 10:49:37 +03:00
Gökay Şatır 0f41b9cd1d Set focus to last element after a popup window is closed.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I99251c1f35b23a5b1a41bbe1820efcf090353db4
2023-04-07 22:22:00 +03:00
Gökay Şatır 54b9040909 Emphasize underlines for access keys when alt key is down.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: Idcbca41fbc998b468eb807f35dcd4deff928fe8e
2023-04-07 19:10:51 +03:00
Gökay Şatır 58d417d152 Activate access keys for tabs and popup windows.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: Idfa377bb8afed7afb811f33462c471a1261a32cc
2023-04-07 19:10:51 +03:00
Gökay Şatır 04019a0953 Update cypress tests.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I3d5735bec2162e359c012355781ca70de309ff9b
2023-04-07 17:57:24 +03:00
Gökay Şatır 8cb0c44e1f Update cypress test according to latest changes.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I226abb663edbb15384233a5c2461c1e8f3a36455
2023-04-07 17:57:24 +03:00
Gökay Şatır be04111173 Turn div elements which has button role into buttons.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I60cebd1b02fdc9dc9e5f8a9b57d40b279b085a99
2023-04-07 17:57:24 +03:00
Szymon Kłos 57ff9a3334 Revert of "a11y: TextInput: switch from <textarea> to content editable <div>"
This reverts commit 1d2607e836.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I6de00182cee32b37c6ced957431c3c21f2734c24
2023-04-07 12:09:53 +02:00
Pedro Pinto Silva 44a945d817 jsdialog: center radiobuttons without using exact units
This is a follow up on f9ad2ea3c3
with Change-Id: I1c200f2208b4f762d01dc6dd85459dbedce7b03e . It
leverages the flex added there to align and justify items.
What it fixes: Radio buttons not being aligned from the "left"
side and behaving slightly different in terms of alignment
if anything else changes around

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I9cb6f24c16603f40acf797c6b68d4305f38cdc58
2023-04-07 11:03:56 +02:00
Szymon Kłos 6f4a3b7206 jsdialog: auto align images
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Idda9b32c0056f637dfb0a304ec26c7db74b09d95
2023-04-07 11:03:56 +02:00
Szymon Kłos c04be7e069 jsdialog: gap in grid
to make some space between elements in grid

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I5379a1a7fd96cb1fe351cb5b52ce1433eaa7eb53
2023-04-07 11:03:56 +02:00
Szymon Kłos e7aef3ae03 jsdialog: spinfields and listboxes equal width
they will be aligned to the grid size so look more unified

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I4900e7d4005d172226c23919505702f6926260b7
2023-04-07 11:03:56 +02:00
Michael Meeks 29d7937a46 proxy: get the length right for messages with content outside ASCII.
Interestingly, we've been sending the wrong length, resulting in

[ docbroker_003 ] ERR  #-1: Missing final newline| wsd/ProxyProtocol.cpp:158

type errors, as we read that back in coolwsd.

Change-Id: Iff7d1d38b0ed3e99c1d6903e2663c4335a36aaa3
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2023-04-06 11:40:18 +02:00
Andras Timar b0ff00961b handle Uncaught TypeError: Cannot read properties of null
sheets[i].href can be null. Seen with proxy.php.

Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I3d774ace869d141973a92abab8ef9ac83e1e0018
2023-04-05 20:57:16 +02:00
Pedro Pinto Silva a009c43ee9 Remove unnecessary !important from ui-tab
Target .ui-tab instead of .ui-tab-content

.ui-tab-content doesn't exist anymore, we can safely remove it
from CSS

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I17df0fb9de73ffe8665291d9dded8715bed9963c
2023-04-05 16:12:21 +02:00
Pedro Pinto Silva 37f9453634 Tabs: Don't create button inside of a button when one element suffices
- Don't create empty parent button just to have a another button
inside
- Update CSS so the text rules are applied to the button's text

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I7f3a54a131a7a44109789a6612af8047963d8e7b
2023-04-05 16:12:21 +02:00
Szymon Kłos 797a58b523 jsdialog: check if widget exist before use
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I84690e1adbf4d4cf226511a3cc60927c9b37b223
2023-04-04 11:52:14 +02:00
Szymon Kłos 30f86f327a jsdialog: use aria-labelledby attribute
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I91b796b4c803787b2b7b93c3c8761e2809f9a414
2023-04-04 10:45:19 +02:00
Szymon Kłos 30d7543072 jsdialog: use correct property htmlFor in frames
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ib4486ddc979ab791699a89d8114f5b01672f0a1d
2023-04-04 10:45:19 +02:00
Szymon Kłos e46bdcb1df jsdialog: don't hide non-scrollable content
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ifb5c0dc05683ccf3c34ccf376347299571838902
2023-04-04 10:45:19 +02:00
Szymon Kłos 4e534a71d2 jsdialog: use labelFor property for labels
also convert p elements into labels

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I1c24f14671edf8d5e63c21a8b769c29af22737ae
2023-04-04 10:45:19 +02:00
Szymon Kłos 54844e7acf jsdialog: don't show ... in tool buttons
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I830d340db2b88d635feaab6ed16a923f46230fd2
2023-04-04 10:25:58 +02:00
Szymon Kłos 7eda463577 notebookbar: simplify toggle dark mode
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I858e13461a8083baca5851fac24d7cac155badb5
2023-04-04 10:25:58 +02:00
Szymon Kłos 17ecc99d8d notebookbar: simplify show resolved annotations
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I19b34947ec8dc7695119c9d4cb55ef2ba2678c88
2023-04-04 10:25:58 +02:00
Szymon Kłos ec3cb9f017 jsdialog: prevent drawingarea from blocking tab key
previously when using tab key we focused drawingarea
it wasn't possible to focus other widgets

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Icf23905dfbf04ff46cf8766212a645b962fba98e
2023-04-04 10:12:20 +02:00
Szymon Kłos 9d3d0cdee7 jsdialog: make tabs accessible using keybaord
This changes tabs into button elements so they can
be switched using keyboard Enter key. It's also better
from a11y point of view

Styles has to be !important to override button styling

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ia4ced59544be18ae79d41b4f837eeb31ab80b8ef
2023-04-04 10:12:20 +02:00
Marco Cecchetti 1d2607e836 a11y: TextInput: switch from <textarea> to content editable <div>
Refactored TextInput implementation. A content editable <div> is used
in place of <textarea>.
<img> elements are used as pre/post spaces.
Minimal changes to FormulaBarJSDialog, since some code was
dependendent on
TextInput details.
Refactored some cypress helper funcions, too, since cypress tests
expected a <textarea> element.

Signed-off-by: Marco Cecchetti <marco.cecchetti@collabora.com>
Change-Id: I2141d7769588bb5bf8a0fbb62f036cb78f914966
2023-04-03 14:57:58 +02:00
Henry Castro f0f641d489 mobile: use attribute 'visibility' to hide toolbar back button
Otherwise, the toolbar re-layout half the size.

Change-Id: I492a98f822a829d814b4c6e6b4765ec14a65cc98
Signed-off-by: Henry Castro <hcastro@collabora.com>
2023-04-03 10:54:44 +02:00
Patrick Luby 940d5f2ac3 Fix issues #6103 and #6104 by setting the command to "downloadas-" on iOS
On iOS, the "export*" commands cause a file to be saved to the Online
server, not locally. So, to save locally on iOS, set the commmand to
"downloadas-*".

Signed-off-by: Patrick Luby <patrick.luby@collabora.com>
Change-Id: I4da2614d20af7ae6977dd94713ba16e6eebe1b9e
2023-04-03 09:43:07 +02:00
Pouya Mozaffar Magham 75219b57d3 Feature add Send_UNO_Command postMessage
Signed-off-by: Pouya Mozaffar Magham <pouya.mozafar@gmail.com>
Change-Id: I465293b1d2d4bdc25b237a8a7054bf428543464b
2023-04-03 08:56:43 +02:00
Gökay Şatır 6ddabcb792 Update sanitizeurl function calls.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I07c12c072240307ea67d4f8f9ade8c1a9f63d1b8
2023-04-01 17:49:56 +03:00
Gökay Şatır 5bf2db45f9 Update sanitize-url package.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: Iab936fbf2e743dc1908cc978c2c4e5380f4ca47e
2023-04-01 17:49:56 +03:00
Szymon Kłos f4a9c2dd19 jsdialog: fix help buttons
Responses have to be handled even in top level widget.
After rework we sometimes didn't handle responses
because we didn't call container handler.
Put it in a build function also.

Bug was in find & replace dialog, help didn't work

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I07a69c071b65c6574a1656c71aa7eab361f7e729
2023-04-01 16:42:13 +02:00
Gökay Şatır aa47a9f0a9 Remove json-js and stylelint-config-standart packages.
We don't need the first one and we don't use the latter one.

Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I1f48ff5487621781eb38dd8e4e8e2a389a3059d6
2023-04-01 11:30:07 +03:00
Gökay Şatır c1557a16c0 Update archived packages.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I2c74bcdaf6f2e4ff3edf7b98fa95efb755cb0624
2023-03-31 19:45:50 +02:00
Szymon Kłos a4b1f69906 jsdialog: implemented mousemove event for drawingarea
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: If93a5cfa2965c9f2de35e6b2328685dd6d019899
2023-03-31 18:41:20 +02:00
Szymon Kłos 8734168a30 Add missing symbol icons
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Id195e8cc5a3511311d4901b0dd7e4a26c2cc060c
2023-03-31 18:41:20 +02:00
Szymon Kłos 214aa3142a jsdialog: make drawing area non-draggable
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I3a55b704ccbf2272fa42659ac91f5a772585fb50
2023-03-31 18:41:20 +02:00
Dave Conroy 264787255f Update coolwsd.xml.in
Fix Zotero description declaration

Signed-off-by: Dave Conroy <dave@tiredofit.ca>
Change-Id: Icd830aae905224de19c651d80d3891730fb40f85
2023-03-30 15:10:12 +02:00
Gülşah Köse 5f8a339445 Add chapter numbering option into format tab on tabbed view
Signed-off-by: Gülşah Köse <gulsah.kose@collabora.com>
Change-Id: Icc8f20885236e65fbbc0fa9c0d02af30c120968f
2023-03-30 12:08:28 +02:00
Miklos Vajna 5f77363c4f test: fix -Werror,-Winconsistent-missing-override
'trimIfInactive' overrides a member function but was not marked 'override'.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: I25b0033652a3362118a77b7ef5ef7a511ce492ea
2023-03-29 17:31:42 +01:00
Szymon Kłos 6e0b1debbb Hide download in tabbed view when HideExportOption is true
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: If4bb4c16855ee4a8f2cb3e0c2f7b7516b4275c42
2023-03-29 10:40:20 +02:00
Pedro Pinto Silva c7e1fd6b7d Fix regression from commit 51bb1d3
the commit 51bb1d3 with the following change-id
I16a5df46bced608952c22bf979808bc735645366 introduced incomplete
CSS rule, rendering the whole css file invalid

So we should add back the rules and just remove the vex classes
but and upon further investigation button are already inheriting
font-family from jsdialogs.css: .jsdialog-container .ui-dialog-content
so we can just remove it altogether.

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Iab42230efc7341e8967ce776f0d3decf41655ba6
2023-03-25 11:36:20 +01:00
Pedro Pinto Silva 4fa4ff8c93 Revert "made bigtoolitem appearance bigger than icon with inline labels."
After reading Rizmut's commets, we should probably revert this for now
at least until we decide on the icon size while avoiding bluriness

This reverts commit e6782d6b5d.

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
2023-03-25 11:33:54 +01:00
Gökay Şatır 260cbed5d3 Remove vex from code.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I054977b5c71364c59c7f1fdd1f5d691380951ebb
2023-03-25 07:03:05 +03:00
Szymon Kłos 6ff5801e17 jsdialog: fix dialog jumping on a screen
This is fix for regression from:
commit a2d666d53a
JSDialog overlay: Use CSS rules for positioning.

When switching a tab in Format -> Characters dialog,
update message was received and dialog got request to
update position. Even when we had nothing to update
we did modification to dialog position causing jump.

This patch makes updates less agressive and does update
only when calculated value is really different.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I27364e5ccb60a0391ddc9fb9e22078d559518f69
2023-03-24 17:38:59 +01:00
Gökay Şatır c80e760b62 Remove vex from toolbar.js.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I00eb376538e2459e204b3a9dfb610e695723f74e
2023-03-24 17:56:13 +03:00
Gökay Şatır aa9a78da97 Remove vex from Control.idlehandler.ts.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I9de3bccf86029a072fdbda5bc413371f2928e196
2023-03-24 16:54:26 +03:00
Ashod Nakashian aace69c087 wsd: check for editable session not readonly
The following commit caused a regression with
PDFs which are read-only, but may allow comments.

commit cca0a561ed
Author: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
Date:   Sun Jan 15 18:29:18 2023 -0500

    wsd: never upload using a session that is read-only

Change-Id: I9bf1fde21b47a4f119b99cc58f76cd683c2152a9
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-03-24 13:54:35 +01:00
Rash419 d221de8969 fix: date picker always in norwegian
Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: Id03cccad6964e7555de6300b0eac619bf521802b
2023-03-24 13:53:39 +01:00
Harsh Gohel e6782d6b5d made bigtoolitem appearance bigger than icon with inline labels.
Signed-off-by: Harsh Gohel <harsh22gohel@gmail.com>
Change-Id: Ie4eead1f20fb183b2f5c48aee4fe1f72fa7b12f1
2023-03-24 13:13:52 +01:00
Pedro Pinto Silva 3dc32f30f6 Fix main tabs text styles on tabbed view
Tabs were changed to buttons and thus we need to readjust the CSS
so text color and others are correctly applied to the text

Also add :not exception so the tabs are not styles as regular buttons

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I1bc1681e86f17ee7afb435f7c3fc099b80abac2e
2023-03-24 10:28:49 +01:00
Gökay Şatır 50d447cb7e Loop focus inside about dialog.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I48e3d8ebef4e79f2bfb2330ec044105a3b40eb5e
2023-03-23 17:35:12 +01:00
Gökay Şatır 54e07b57c6 Use tab key for looping over elements inside a modalpopup.
In this case, caller (developer) should set the focus manually to a child element of the window.

This corner case can be encountered when caller sets the innerHTML content of the dialog after creating.

Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I66746c9636e207421cecfe55369c732c4fd4b1bb
2023-03-23 17:35:12 +01:00
Pedro Pinto Silva 311527b22e Set box-sizing for sidebar and notebookbar icons
This makes any resizing or position easier
and it's what is expected from "buttons" (it's the default value)

and those icons are buttons even if the html elment is somehting else

Bottom line: better to account for any border and padding in the values
we specify for width, height, border and padding. This makes sure that
the content box shrinks to adapt to those values.

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I39af02f983611bc751e764c26d13d955b7774928
2023-03-23 15:55:51 +01:00
Michael Meeks 7ba6c10e6d valgrind / massif - improve things a little.
Avoid SIGKILL'ing children when valgrinding to allow time to save
massif traces etc.

Change-Id: I255a62b6605164ac5037a06455f1adfcba05759c
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2023-03-23 11:31:24 +00:00
Michael Meeks 7444decf9f trim memory when user is inactive.
Builds on a new LOK API to do the same in the core.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I4443cd2ffbb6c7af0726162aec2ba78fc354d901
2023-03-23 11:31:24 +00:00
Szymon Kłos 097b7e28c7 jsdialog: fix switching the tabs
This fixes regression from:
commit e5d86f0b3c
We can use foreach when there is indexed assinments.

there is no index field but id

it was not sending commang to the backend to switch the tab because of
that

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I665e6cc99c9954480b4dc729ef415fe14e35ed9a
2023-03-23 09:18:12 +01:00
Gökay Şatır d3bb791768 Switch focus to map when menu is focused and ESC is pressed.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I80e12330e202890b0c98388b225a1f58e8f2e965
2023-03-23 08:15:26 +03:00
Gökay Şatır 973712e546 Remove vex from textinput.js.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I2027207252b699e280b0fe314274ea900ab3ed92
2023-03-22 23:38:37 +03:00
Andras Timar 7c0f2ca606 RTL: flip the arrow of context menu's submenu
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I5ba0b805d872c374e4e2cfac59a5730008f5bbe3
2023-03-22 19:40:49 +01:00
Gökay Şatır b7471d145a Remove vex check from control.command.js.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: Id7dafd8295882912eec92b0fa5a771652f5e1376
2023-03-22 18:37:31 +03:00
Gökay Şatır 18d400770e Remove vex usage.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I4717caef9a0a0bdee50615b5c9dd308e0a340072
2023-03-22 17:41:25 +03:00
Gökay Şatır 51033e3997 Remove vex from impresstilelayer.js.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: Id8449963df6c62821dc211eba1495e9e19c33df1
2023-03-22 17:41:25 +03:00
Paris Oplopoios da57ca61e1 Uncomment most TileCacheTests
Signed-off-by: Paris Oplopoios <paris.oplopoios@collabora.com>
Change-Id: I1103d6c5f474b2f177189f3cc82030be7340235c
2023-03-22 15:32:52 +01:00
Gökay Şatır 7215bc89df Remove focus from slides pane when map is clicked.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I8c34f2ad7370b2dcc7e4c03522c30d8df394b4a3
2023-03-22 15:56:54 +03:00
Pedro Pinto Silva a2961077f6 jsdialog: Improve cosmetics of Find and replace
- Make sure the grid columns of 'Find' and 'Replace'
share the same minimum
  - the maximum parameter in minmax function (so min-content) is
    ignored when that value is lower than the min value but it is
    there for when the language has quite long 'Find' or 'Replace'
    making that max width increase according to its contents
- Remove extra margin from checkbox so it gets aligned

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ica38b407f2a5936e3657dc067ac0658ef5b8aeed
2023-03-22 13:52:45 +01:00
Gökay Şatır 629fb482e7 Remove isAnyVexDialogActive from canvastilelayer.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: Ia53de291acf90f0d40ae7aea97fa6de0896938df
2023-03-22 12:16:59 +03:00
Julius Härtl 52b02cc75b browser: Make sure that the header avatar list is limited
Signed-off-by: Julius Härtl <jus@bitgrid.net>
Change-Id: I0897e2ef3ca74ae20fdc056b863d9940805cbabe
2023-03-22 09:05:41 +01:00
Gökay Şatır ca8746f3db Uncomment about dialog tests for closing the dialog.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I547a7c75df95b5cbbe269a53ab392193a3043347
2023-03-22 07:49:07 +03:00
Gökay Şatır 51bb1d3aa7 Remove unused vex definitions.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I16a5df46bced608952c22bf979808bc735645366
2023-03-22 07:49:07 +03:00
Patrick Luby a2165960b9 Partial fix: iOS missing text direction listbox in Format > Page Style > Page
Fix issue #6050 by removing all entries that disable CTL and CJK text
layout features and merge all changes other than the LanguageTool
entries from coolkitconfig.xcu.in.

Signed-off-by: Patrick Luby <patrick.luby@collabora.com>
Change-Id: I1816062056bee8c760e0520b11edd5f23d4d9bca
2023-03-21 20:56:32 +01:00
Patrick Luby 595076bac9 Move labels and images a little to the right in the "create document" view
Signed-off-by: Patrick Luby <patrick.luby@collabora.com>
Change-Id: Ida0eae13f6b68058a4875a589de7bcbc4b3ab079
2023-03-21 20:56:32 +01:00
Patrick Luby a2e8d41898 Fix issue #1962 Use UINavigationController to add a cancel button
Signed-off-by: Patrick Luby <patrick.luby@collabora.com>
Change-Id: I212cc1c57783731be7cafbcc7efbf926be6b7b1b
2023-03-21 20:56:32 +01:00
Patrick Luby 41bf536169 Partial fix for issue #1962 Dismiss view by tapping outside of the view
Setting modalInPresentation to YES will ignore all events outside of
the view so set self.modalInPresentation to NO.

Signed-off-by: Patrick Luby <patrick.luby@collabora.com>
Change-Id: I5e886079edec6f7e37676be29bfaa3061e8eb4ae
2023-03-21 20:56:32 +01:00
Gökay Şatır e5d86f0b3c We can use foreach when there is indexed assinments.
I replaced the hack with foreach.

Also added one more foreach for distinguishing the click events from keyboard events.

Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: Ibc1d955636ea4dde214c24b911c17c7b0de5f9e0
2023-03-21 20:42:22 +03:00
Szymon Kłos 2958316032 Zotero: execute commmands with opened dialog
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I07b28af9283f995009d372cd8257bdd76c558f5b
2023-03-21 15:51:59 +01:00
Gökay Şatır ee4c9e5fb6 Turn tab buttons into button elements from span elements.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: If418a3d50da2d66e17277e64adc462b9a111816c
2023-03-21 17:22:19 +03:00
Szymon Kłos adebee022e jsdialog: keep correct structure with hidden elements in grid
Don't show scrollbars for hidden content.
Affecting data -> Sort and data -> validity dialogs in calc

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I3124d921ef7819f274e9f583a605e63b66722388
2023-03-21 19:32:06 +05:30
Szymon Kłos e6a70e21f4 jsdialog: keep focus in drawingarea when typing
When drawingarea is used as edit filed it is updated
on every kep press or mouse click. We need to setup unique
id for img also so focus later will be set for the same element
after we get update message. (focus is set based on previously focused
id)

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I89021839177ab78fd0f2346cca2c58fac257af6b
2023-03-21 19:32:06 +05:30
Gökay Şatır 707630a007 Update Cypress tests.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: Iba3da8f540d353298941145bd59cd7d1ef3cc03d
2023-03-21 14:24:41 +03:00
Szymon Kłos 0b1de0908d Don't modify overlay callback manually
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ia1f2592bf8a1fefc4a1f417d069a8add9cd33794
2023-03-21 14:24:41 +03:00
Szymon Kłos 0b5a6a9847 Create modal already with textview
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ic303dcbf70ed517965aab165a772682a44287665
2023-03-21 14:24:41 +03:00
Gökay Şatır 03e6cc491f Remove vex from comments.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I3ebb052bdac91e3e2fd084dca06d8f221d82083e
2023-03-21 14:24:41 +03:00
Szymon Kłos 1216a769dc jsdialog: non-user-managed scrolled window
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ic49898cd7e663c7db270dec7310a94b9bd9b5943
2023-03-21 09:17:34 +01:00
Szymon Kłos 8fc3ef40f1 jsdialog: vertically center listbox
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Icd0d2ed89f09021c1d30b3e71cf7b8b24cca3766
2023-03-21 09:17:34 +01:00
Szymon Kłos 89eb98a7ea jsdialog: scrolledwindow should reserve space for scrollbar
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ia4ce53676aad8ccefd20504a33348cb7a0a617ab
2023-03-21 09:17:34 +01:00
Szymon Kłos f9ad2ea3c3 jsdialog: vertically center radiobuttons
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I1c200f2208b4f762d01dc6dd85459dbedce7b03e
2023-03-21 09:17:34 +01:00
Szymon Kłos 3225aa5b57 mobile: don't steal focus from save-as dialog
When integrator shows dialog eg. for save as with the
input fields, keyboard appears resizing our frame.
We shouldn't then steal focus from input.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ifda6e7049b1b329fb051966e38fa854c93c05065
2023-03-21 08:29:44 +01:00
Szymon Kłos a7fd4ee0f5 zotero: show buttons when integrator supports it
Empty api key string indicates that integrator supports
Zotero. When any functionality is accessed by the user
we show notification to integration so it will show a
popup for user with instructions.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Id7289097f245cd3c537ccf78cf818c1aa0d57231
2023-03-21 08:29:30 +01:00
Szymon Kłos 47cd213b10 export as pdf: we need to decode path
When using Nextcloud with source file with spaces in the name
eg. "file name.docx" and we tried to export as PDF
then error appeared.

In the logs we had "SaveAs produced no output in '<...>file%20name.docx', producing blank url.

We need to decode file name similar to convert-to case.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ic60cefefc4e20b53feee28b86443090c147bb66e
2023-03-21 07:39:15 +01:00
Gökay Şatır 0d0f056f71 Skip delete chart test for now.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I57ed634cb821be2cfdae9b4d8d1ab587c65635d6
2023-03-20 20:10:49 +03:00
Gökay Şatır 63964d8fcb copy-paste-field behaviour is changed for some reason.
Probably due to core side changes. I needed to comment out the property checks.

Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I26683265b827447e676a6463b19b5cb84a0040fc
2023-03-20 20:10:49 +03:00
Rash419 2d3b93feed cypress: updated tests for co-23.05
Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I08d82284f88beea96fa931c691a9208c64d4a940
2023-03-20 20:10:49 +03:00
Andras Timar 0cd7ec4449 CI check
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ibc2c700a5c5f89ada067125ad995fd57c1274159
2023-03-20 20:10:49 +03:00
Andras Timar 9dd0b6b059 docker: updated readme
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I8a14cb16bea4f4f530b135fc9343ba5b4ec6e9f0
2023-03-19 12:55:23 +01:00
Rash419 a5dbe0a430 cypress: updated the test for core co-23-05
Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: If4c2b252ca53ecfe4e3db6722d2bb7cb5069a242
2023-03-17 21:27:01 +01:00
Paris Oplopoios 7b61201b1b Make dark mode button send an uno command to change the core theme
Signed-off-by: Paris Oplopoios <paris.oplopoios@collabora.com>
Change-Id: I8ec47a5dee32ff1470715c6a8e9fc396753a81f6
2023-03-17 17:34:05 +00:00
hanswang123456 75deb4bf13 Update lc_toggledarktheme.svg
Signed-off-by: hanswang123456 <50556568+hanswang123456@users.noreply.github.com>
2023-03-17 17:34:05 +00:00
Rizal Muttaqin 0b5717cefa Revise dark variants
Signed-off-by: Rizal Muttaqin <riz_17_oke@yahoo.co.id>
Change-Id: I28d6825d785fd08b79b3be4a6b94a82c98b728c1
2023-03-17 17:34:05 +00:00
ChrisGlad 2f24fc35bf Fix UI Selection bug
Signed-off-by: ChrisGlad <chris.gladman2004@gmail.com>

This code fixes the problem that elements in the Notebookbar will
not be correctly displayed as "selected" after changing the UI
mode.

Change-Id: I4f889f8593029c375a06e17dbf1062bb9b9f5efc
2023-03-17 17:34:05 +00:00
Christopher Gladman 11bb035634 Add a dark mode toggle
This adds a dark mode toggle to both user interface views (compact and tabbed view).
In addition, this code fixes the problem that the initial theme did not load properly
based on settings. Equally, the Toggle in Notebookbar will now appear
"selected" when pressed.

Signed-off-by: ChrisGlad <chris.gladman2004@gmail.com>
Change-Id: I0e0c282cec24d9bb7fbfc4131ba3875976cea5fd
2023-03-17 17:34:05 +00:00
Pedro Pinto Silva 585a438944 Revert "Revert "Add color-scheme-dark.css support""
This reverts commit a864d41c09.
Because we can now work in this WIP feature in its dedicated
feature branch.

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
2023-03-17 17:34:05 +00:00
Paris Oplopoios 8ade29f112 Handle LOK_CALLBACK_VIEW_RENDER_STATE in the Kit
Signed-off-by: Paris Oplopoios <paris.oplopoios@collabora.com>
Change-Id: Ie4d03a3600cb9ebdf9b76ee4779d62da30ad3eb6
2023-03-17 17:34:05 +00:00
Paris Oplopoios ab176b13a8 Move canonicalId creation to the Kit
Signed-off-by: Paris Oplopoios <paris.oplopoios@collabora.com>
Change-Id: I943bfa0436487e517b25d3fce19157ebd576604f
2023-03-17 17:34:05 +00:00
Paris Oplopoios d26c425dae Move _canonicalViewId out of Session
Signed-off-by: Paris Oplopoios <paris.oplopoios@collabora.com>
Change-Id: I9c06440ed47eb217e973d2f530f2c3646d55d85b
2023-03-17 17:34:05 +00:00
Rash419 5dba72a341 fix: mention cannot be inserted
- forcefully send unocommand when jsdialog popup is still open
- fix navigation using ArrowKeys in treeview
- fix console error ev.data is null

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I6dd75b8b576754513574749e1bd9675581caeabf
2023-03-17 19:13:02 +05:30
Bayram Çiçek 1a269be3ac use getrandom() instead of /dev/[u]random
- instead of using /dev/[u]random devices, use
getrandom() and/or getentropy() to make direct
system calls if sys/random.h is available.

- if getrandom() fails, we need to fall back
to "/dev/[u]random" approach.

Signed-off-by: Bayram Çiçek <bayram.cicek@libreoffice.org>
Change-Id: Ied37d72feabf005725b615b02854912809236bbc
2023-03-17 08:38:21 -04:00
Patrick Luby 0edea869a7 Fix GitHub issue #5839 and never disable Paste toolbar button
Behave the same as Contol.Menubar and never disable Paste toolbar
button. Native clients that run LibreOffice locally may send a
"statechanged: .uno:Paste=disabled" message when opening a document
if the system clipboard is empty, So, we ignore such messages or else
the current document's Paste toolbar button will never be enabled.

Signed-off-by: Patrick Luby <patrick.luby@collabora.com>
Change-Id: Ied2aaa49f1a9defe30541af49f4becda35df568b
2023-03-16 10:26:19 +01:00
Szymon Kłos c3fb54505b jsdialog: add class to all menubuttons
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I35008b79b25dbc071f68778611988d77c517bccc
2023-03-16 09:25:06 +01:00
Szymon Kłos ea191a1120 jsdialog: menubutton imports menu
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ifd37af977c9831ec81860bb8092c2e29d0e910f5
2023-03-16 09:25:06 +01:00
Szymon Kłos 0e385ef2ec jsdialog: move menubutton to separate file
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ifd314f884e7a96b76a74dcc19922746938e885b5
2023-03-16 09:25:06 +01:00
Szymon Kłos d6f513ae1d jsdialog: handle key events in drawing area
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I9ecd4b734dfb3c3bb7698bf019836b142e57f8ae
2023-03-16 09:25:06 +01:00
Szymon Kłos 4139e46756 jsdialog: don't scroll arrows inside scrolledwindow
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I157f92f094e11368922400ac92bfb86e791f2a6a
2023-03-16 09:25:06 +01:00
Szymon Kłos 28ad836c3e jsdialog: keep correct structure in grid
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ie94831827c3829d202013864980e31e181722a7c
2023-03-16 09:25:06 +01:00
Szymon Kłos 6e2ef04e78 jsdialog: build menubuttons with only image
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I6754545dac87a0860f07b4d47796bdb2eb25994e
2023-03-16 09:25:06 +01:00
Szymon Kłos 207d07cb1a jsdialog: double click for drawing area
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I89d12d9524636e2af3798871f3a140223604f83d
2023-03-16 09:25:06 +01:00
Szymon Kłos dae1f7438a jsdialog: move Drawing Area to separate file
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Id659d7e2fc9b50d43d66fb48d78c1f1dede4b23f
2023-03-16 09:25:06 +01:00
Gökay Şatır c718a8f042 remove lonely "close all" calls for vex.
Replace closeAll calls with uimanager.closeAll. It works for also mobile view.

Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: Ieaf11fc8f68390f789c18a29813a171d51c13a88
2023-03-15 18:34:36 +03:00
Szymon Kłos ad86b08c93 jsdialog: handle scrolled window properties
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Id278ff25bb5a87b26ff4e45fca8d972140d16c38
2023-03-15 10:46:44 +01:00
Patrick Luby 7dd1e505e6 Fix issue #5841 welcome, feedback, and buy product URLs are empty on mobile
Mobile apps don't substitute these values so set them to zero length
strings.

Also, the iOS app sets the base text direction via the "dir" parameter
so add handling of that parameter in cool.html. TODO: check if the
Android and GTK apps need to implement the "dir" parameter to handle
RTL layout.

Signed-off-by: Patrick Luby <patrick.luby@collabora.com>
Change-Id: Ied8268ec256011281961ef610d53baeee0efe9cd
2023-03-15 09:29:56 +01:00
Patrick Luby 17f739ca77 Fix issue #5887 by assuming that documents are writable on iOS
The iOS app saves directly to local disk so, other than for
"view file extension" document types or other cases that
I am missing, we can assume the document is writable until
a write failure occurs.

Signed-off-by: Patrick Luby <patrick.luby@collabora.com>
Change-Id: Iacb1589eded18f0cb21a5dd8e4d91d295ae697fe
2023-03-15 09:29:56 +01:00
Andras Timar 48a1101970 add common/LangUtil.hpp to distribution
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ic7ad5f7a75cab91d7f34d1455737a8838564c502
2023-03-14 23:37:19 +01:00
Patrick Luby 54ad0f173b Another fix for issue #5843
Limit escaping of non-ASCII text and splitting on the first newline to
only certain message types on iOS.

Also, fix mangled UTF-8 text on iOS in jsdialogs when using languages
like Greek and Japanese by only setting the image bytes for only the
same set of message types.

Signed-off-by: Patrick Luby <patrick.luby@collabora.com>
Change-Id: I9cd088509ba9724108da3c9457cd3d098b45723f
2023-03-14 21:55:12 +01:00
Andras Timar 98ae6ac269 disable fragile TileCacheTests::testTileProcessed()
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I791b24b59a22f87006a334332e7b8661615ac21d
2023-03-14 21:17:13 +01:00
Ashod Nakashian f91a7dd772 wsd: reduce minimum time between requests
Previously we waited at least as long as
it took to process the last request before
issuing a new one. This can be unnecessarily
long, especially when unloading. Now we half
that time.

We should consider a more sophisticated logic,
especially during unloading, where it's best
to upload quickly.

Change-Id: Id903b8a064bd8431578221dc9386ab08d46dd2dd
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-03-14 20:40:40 +01:00
Ashod Nakashian a941de6fb7 wsd: mark last upload request time
This corrects the reported upload duration
at the end of uploading.

Change-Id: I9d3af4d3dce5aff0c3526ba009fc0b27150bc070
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-03-14 20:40:40 +01:00
Ashod Nakashian 9caa1f9a18 wsd: pass by reference where possible
Change-Id: Ib5501d6b766b982f34b226a20128c89f0ae7d84e
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-03-14 20:40:40 +01:00
Ashod Nakashian e6180f31f3 wsd: remove single-use getWriteableSessionId
Change-Id: I66a77be784aaef61472cd02cb49168813d75548c
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-03-14 20:40:40 +01:00
Ashod Nakashian 43515fcbbf wsd: correct config default-value name for rotateOnOpen
'rotationOnOpen' -> 'rotateOnOpen'.

Change-Id: I204e1f1208cbc8089a10472fc52b4c2e83e3eaf5
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-03-14 20:40:40 +01:00
Ashod Nakashian b5de21a0ad wsd: simplify passing mobileAppDocId to getNewChild
It seems more complex to have #ifdef guarded logic
around a function call to pass or not pass an argument
when we that same argument is already defaulted in
that function.

If the difference between the two paths is primarily
the argument, then we can always pass it, making sure
that in the case that defaulting would have been used
that we pass the same default value. This is now done
with assertions.

Change-Id: I333eb3f42cb51dfab8584ae8c5aa52ee45c5a9a1
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-03-14 20:40:40 +01:00
Gökay Şatır 3f4ac24bb2 Remove vex from documentconflict message.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: Idd09bb8c376e50c64db4f145f907b7a3e17436d0
2023-03-14 20:51:52 +03:00
Gökay Şatır 08d74ee23e Remove vex from signing.js also remove unusued code.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: Idd297ded47cec0ca32c25d3b75242e21826b32ee
2023-03-14 20:14:10 +03:00
Ashod Nakashian a532178697 wsd: better logging in autoSaveAndStop
Change-Id: Ied4e5dda4f9dfa7f5175601207dd6a2bbf136ff0
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-03-14 15:46:48 +01:00
Ashod Nakashian 197315da3b wsd: correct log of time since last save response
Change-Id: If93768da07904ea683f91a0964780ca6832b52a6
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-03-14 15:46:48 +01:00
Ashod Nakashian af62f75afe wsd: only warn of live sessions on unload
We could still have session instances in the
_sessions container in DocBroker by the time
we destroy it, what counts is that they aren't
live at that point.

We could still have sessions because we may
be waiting for the kit to confirm disconnection.
But if that was the last session, the kit will
instead exit and that would trigger the
destruction as the PrisonerRequestDispatcher
will have to clean up the DocBroker instance,
hence destroying us.

Change-Id: I8ce103d38edc355d09da046e1b875f0e62768adc
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-03-14 15:46:48 +01:00
Ashod Nakashian 58566083d5 wsd: do not warn of unassociated Kit after unloading
After unloading a document, the ChildProcess instance
may be destroyed by the time that we process the
internal prisoner connection. In that case, we
can't find the ChildProcess so we assume it was
a premature death and issue a warning.

By tracking whether or not a PrisonerRequestDispatcher
had an associated DocBroker, we can supress warnings.

Change-Id: I8bab882283f27f7d5f724e878aae19837445a2fe
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-03-14 15:46:48 +01:00
Ashod Nakashian cc8769855b wsd: better logging of WOPI::PutFile
Change-Id: I9a422e87cc34ad162b710931d7c329ed85d9edd2
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-03-14 15:46:48 +01:00
Ashod Nakashian b3d5f9f9a3 wsd: logging improvements
Change-Id: Ia9959206f2748adf48dc199d2508b1c6ad38fbe9
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-03-14 15:46:48 +01:00
Ashod Nakashian 9596d5a0ab wsd: http: set http::Request log context
Change-Id: Ic8b9c1e7526ebf2f7c69f47f1bd98fdb9fc471ce
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-03-14 15:46:48 +01:00
Gökay Şatır ccdb1cdd8d Remove vex from main.js.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: Ia15f57817a892753b3579eee8f38366f36f44672
2023-03-14 17:40:12 +03:00
Rash419 e93a193ae0 Revert "Remove unnecessary `.wait`s from image tests"
- image test consistently fails without waits in CI

This reverts commit b529c96a48.

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I66bd85c8fe1ce28ccab8d644a98265145d3de64b
2023-03-14 17:31:57 +05:30
Andras Timar ec7e460739 GitPod: use core assets of version 23.05
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ie9c945211404d11e9fa9c368e113d4e30f53cc4b
2023-03-14 12:04:51 +01:00
Andras Timar 86797465e3 CodeQL C++: use core assets of version 23.05
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I309a36812f931cd51a0b755cee21b8b9d9d87765
2023-03-14 12:04:32 +01:00
Andras Timar 1baf6565d7 Cirrus CI: use core assets of version 23.05
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I0b1fa6bab026c6329d263f28b50259313f86db37
2023-03-14 12:01:38 +01:00
FedericoHeichou 985f284c89 Fix isLocal failing check with IPv4
Signed-off-by: FedericoHeichou <34757141+FedericoHeichou@users.noreply.github.com>
Change-Id: If6fa382102252908dac1fb80199bb332ce400aeb
2023-03-14 10:48:20 +01:00
Gökay Şatır 33fc77c412 Remove vex from password dialog.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: Ibd7364e44d14eaca025037c37d85cb621a2ebec5
2023-03-14 10:35:10 +01:00
Gökay Şatır c17671b541 Remove vex dialog from saved-as warning.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: Id41c98806bc4763797c9986a60ef39301581da06
2023-03-14 10:32:45 +01:00
Szymon Kłos 824afb669c jsdialog: mobile tab handler in separate file
and don't hide tabs

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ic78c8c17e1543ff4dc1a0874d13e05f5a7a7426b
2023-03-14 10:31:26 +01:00
Szymon Kłos 243bb8f3f0 cypress: adjust file description to new typing
we send value on every key press now, but core still
sends updates back, after we update core to not notify
us with the same value it can be reverted

this prevents us from having incorrect text when typing long
sentences and receiving updates with delay

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: If87c3f1c83018920dfaa8f3c31f567b25df27c61
2023-03-14 10:31:26 +01:00
Szymon Kłos 3bb07cdd52 jsdialog: set text for textview after every key press
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I0a00b453d903a1b13ae69c7efc37e0e7d2e81913
2023-03-14 10:31:26 +01:00
Szymon Kłos 58e686deb9 jsdialog: send selection for text view
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I3d87a676a1c47ea8fc99ba523ccf960a6cbde90f
2023-03-14 10:31:26 +01:00
Szymon Kłos 1665d6e7bc Move formulabar edit field to separate file
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ia4d5f1c8547cf329c5f624ad09ac9049bdda62f7
2023-03-14 10:31:26 +01:00
Szymon Kłos d06f539943 jsdialog: don't warn when unselect all is called
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I1671203ba490fb83aa65baeba86f109325750cdf
2023-03-14 10:31:26 +01:00
Gökay Şatır 1ba537d8bf Remove vex from _switchToEditMode function in permission.js.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I444ea61eb6cf6c92858833a30be92ee9a6a36509
2023-03-14 10:30:37 +01:00
Andras Timar 489a323742 Translated using Weblate (Portuguese (Brazil))
Currently translated at 100.0% (525 of 525 strings)

Translated using Weblate (Italian)

Currently translated at 100.0% (525 of 525 strings)

Translated using Weblate (French)

Currently translated at 100.0% (525 of 525 strings)

Translated using Weblate (Italian)

Currently translated at 96.9% (509 of 525 strings)

Co-authored-by: Andras Timar <andras.timar@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/fr/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/it/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pt_BR/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ic8131fcba722e09e8b2a73df39de25b54b88ae59
2023-03-14 09:04:33 +01:00
Ayhan Yalçınsoy b43a7fdfc6 Translated using Weblate (Turkish)
Currently translated at 100.0% (525 of 525 strings)

Co-authored-by: PhD. Ayhan YALÇINSOY <ayhanyalcinsoy@pisilinux.org>
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: I2a229ba7e216752858c6f2b25cfa9b16bc11b31a
2023-03-14 08:28:00 +01:00
Sebastiaan Veld d4556acde4 Translated using Weblate (Dutch)
Currently translated at 100.0% (525 of 525 strings)

Co-authored-by: Sebastiaan Veld <sebastiaan.veld@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/nl/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I6b68d8f60bfb84f8215fbf40969a52e7cb0ac35e
2023-03-14 08:28:00 +01:00
Alex Gabilondo b6e2891044 Translated using Weblate (Basque)
Currently translated at 99.6% (523 of 525 strings)

Co-authored-by: Alex Gabilondo <alexgabi@disroot.org>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/eu/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I713bf5df8e70011e02010a268c0d0532900fc7f2
2023-03-14 08:28:00 +01:00
Rob Pearson d625a1fec4 Translated using Weblate (English (South Africa))
Currently translated at 100.0% (525 of 525 strings)

Translated using Weblate (English (New Zealand))

Currently translated at 100.0% (525 of 525 strings)

Translated using Weblate (English (Australia))

Currently translated at 100.0% (525 of 525 strings)

Co-authored-by: Rob Pearson <rob.dunedin@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/en_AU/
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/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ic7ba5fe496b85f3c8b167f90c0e53fc2b27a0420
2023-03-14 08:28:00 +01:00
NickWingate b6652a3f29 Force viewport to be correct size for image tests
Signed-off-by: NickWingate <nick.wingate@collabora.com>
Change-Id: I01d3b7ddaa0a48b59b43466ffdd2e5bb54ccc7c8
2023-03-14 11:25:43 +05:30
NickWingate b529c96a48 Remove unnecessary `.wait`s from image tests
Change-Id: I6ad9b0f256d7613a784684569966dbcf36ec6e2a
Signed-off-by: NickWingate <nick.wingate@collabora.com>
2023-03-14 11:25:43 +05:30
Jaume Pujantell 002cf9e436 Stop erasing the whole tmp directory after a download
Signed-off-by: Jaume Pujantell <jaume.pujantell@collabora.com>
Change-Id: I805e27df25d3134eb12926f28b6f9ff09b4ed230
2023-03-13 16:18:08 +01:00
Tor Lillqvist 43a8ed3f1c Rename variables to match meaning and add a few comments
It is misleading to use the word "pixel" in a variable name when the
variable specifies a size in twips.

Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: Idc59c3dafd63a9ae73601f9c367b37c495e1593a
2023-03-13 12:33:49 +01:00
Tor Lillqvist 12c22706f9 We aparently want thumbnails to be of size 1200x630 pixels
Tweak the "zoom" variabe to be 1 so that with this thumbnail size, for
a typical document we get more of it into the thumbnail.

Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: I419afccbf57eae23062ab4c849dd41293f068f00
2023-03-13 12:33:49 +01:00
Ashod Nakashian 98a0f5d97a wsd: do not disconnect the last session if saving
Previously we only waited if a new auto-save has
been issued at the point of disconnecting the
last session. However, we could have a save in
progress, particularly when it's a slow one,
and we should equally wait for it before
disconnecting the last session.

Failing to do so will exit the kit right after
finishing the save and will rob us of the
ability to upload the just-saved version.

Change-Id: I678689a95211fa8b80bcd3e8d4537de7de5d6632
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-03-13 08:19:33 +00:00
Rash419 f335d08e09 fix: renaming doesnot work when indirection_endpoint is enabled
Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: Ic79a0436f87d4ab4697597d15fd60fa148050270
2023-03-13 08:07:16 +01:00
Rash419 58d66fca59 admin: notify routing_rmdoc to subscribers when all views expires
Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I360b90d2b93ce9e8508f16822a2654e111ba2407
2023-03-13 08:07:16 +01:00
Michael Meeks d5e95c80ec quarantine: cleanup.
Also handle OOB values of config setting.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: Ia0d4e2e0475bfd6d487006847ea0622b573569b7
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2023-03-11 17:42:30 -05:00
Michael Meeks eb43a27396 locking: avoid spamming warnings in some circumstances.
If we have no write-able sessions, we can't lock the document -
fair enough to complain, but not every ~300ms - so defer another
lock period in this case.

Change-Id: I7beb974b3c17fd6ac01a32d8fe50261a54340665
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2023-03-11 17:42:30 -05:00
Gökay Şatır 7ad8a38a48 Remove vex from confirmation dialogues.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I240e6771ab1f57118cfa263fda1566349a38f8ac
2023-03-11 10:03:07 +03:00
Gökay Şatır 7b205f8821 Rename version check to versionbar.
There was a naming conflict with infobar event.

Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I0b2a80bcb6f6e636980f8acff21f39fec5414174
2023-03-11 10:00:17 +03:00
Gökay Şatır 045df53848 Remove vex dialog from infobar.
Remove the control.infobar file.

Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I57a0be34b318413256d691e636510e0a32403751
2023-03-11 10:00:17 +03:00
Tor Lillqvist 3294030b37 Handle get-thumbnail also for graphic objects
I am a bit surprised that this seems to work. Thanks to Szymon Kłos
for pointing me in the right direction.

Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: Ie9740a7a281a2b82ac7ca9fdf5f6374a29feec5d
2023-03-10 19:41:16 +00:00
Tor Lillqvist 59051dc5f7 No need for any saveAs when doing a get-thumbnail
Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: I4a7887455ebb5e0c4e9c5fbaf534e5e8a57c963d
2023-03-10 19:41:16 +00:00
Tor Lillqvist b72edec3b5 There is no separate paintThumbnail() API in LibreOfficeKit any longer
It was just a thin wrapper around paintTile() anyway.

Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: I7cca1b05b1ded754ae1f50a0e9d434b505247e70
2023-03-10 19:41:16 +00:00
Szymon Kłos 7cb8005df9 Send thumbnail in binary format
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Iad5aec0cfa699f7e38a28c3c6812426ea345bafb
2023-03-10 19:41:16 +00:00
Szymon Kłos a8f0263d75 Use http::Response for extract-link-targets and get-thumbnail
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ife0d24f9cac487ad08ff18fd9e180222371c70fa
2023-03-10 19:41:16 +00:00
Szymon Kłos ffb15a2dea Send BadRequest if parameters missing
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I2acc4cb22d064994f3fca16b92b7d4528b403044
2023-03-10 19:41:16 +00:00
Szymon Kłos 50b5c06ad7 Scroll to target
using URL parameter we setup documents position on load.
example: ...&target=image6.png|graphic

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I855bdb148819966e0d51dde217a94474003a6437
2023-03-10 19:41:16 +00:00
Szymon Kłos dd4b1239e0 Introduce scrollToPos function
This shares code in few places.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I9abfb1c3e7859260f568072b6c6f7d1ebcb51ef8
2023-03-10 19:41:16 +00:00
Szymon Kłos e82aa05293 Handle target in get-thumbnail
Using target parameter we move cursor to the desired position.
Thumbnail then is created and sent to the client.
Example target: "image7.png|graphic"

Original author was Mert Tümer.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I170f6af6fd29c420565feca69b8bef034fd91a66
2023-03-10 19:41:16 +00:00
Szymon Kłos 3bec642b02 Add get-thumbnail endpoint
Which generates PNG of selected link target in the document

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Icfdca2f0b58ea370ca0125c188759e942aacc2e0
2023-03-10 19:41:16 +00:00
Szymon Kłos f116a8e619 Merge extract-link-targets and convert-to request handling
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I0d3787dd33c103f128f4b16bb9b4c1d1195658c0
2023-03-10 19:41:16 +00:00
Szymon Kłos 18e304e87c Add extract-link-targets endpoint
Original author was Mert Tümer.

Example output for: POST http://localhost:9980/cool/extract-link-targets/

{
    "Targets": {
        "Tables": {
            "Table1": "Table1|table"
        },
        "Frames": {},
        "Images": {
            "image7.png": "image7.png|graphic"
        },
        "OLE objects": {},
        "Sections": {
            "Table of Contents1": "Table of Contents1|region"
        },
        "Headings": {},
        "Bookmarks": {
            "_lh2zfxamp5al": "_lh2zfxamp5al"
        },
        "Drawing objects": {}
    }
}

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Iab55ec631d78dbe25b2800ed9296bc0cb8997e97
2023-03-10 19:41:16 +00:00
Michael Meeks 7987af35c4 coolmap: accelerate handling large ascii strings without \0 termination.
Change-Id: I6831f455da038a20eb611fbbb0902dc495dc31d7
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2023-03-10 17:08:59 +00:00
Gökay Şatır 9d5155f463 Remove vex dialog from command.js.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I76370dfab1c6c793a76ba14324878c0b656613ba
2023-03-10 16:26:22 +03:00
Szymon Kłos 2ab0304c2b jsdialog: post process also elements in buttonbox
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ice3d0dbdf9c089925219c9b094c55a36136b7cc7
2023-03-10 18:39:11 +05:30
Ashod Nakashian acdce2e72f wsd: check if SysTemplate is writable once per update
Change-Id: I3bc77eaf42cc84e7e5b6365f7fc446ea38df5dc0
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-03-10 07:45:12 -05:00
Ashod Nakashian d0ed6cd3d2 wsd: test: do not start the next test if test is not finished
Change-Id: Ibdcf66f9a037f6b4e2e575cb61fe1459c912e44f
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-03-10 07:45:12 -05:00
Ashod Nakashian 5f0248ef7f wsd: not an error to not support storage locking
Change-Id: I0314a37bbda40808bd7d225540e69b93a1ab18d2
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-03-10 07:45:12 -05:00
Ashod Nakashian 9c39ebad1f wsd: string::empty() is clearer than size() == 0
Change-Id: If2e25d344b5718c35cb9ae7b7519010ee88f0f60
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-03-10 07:45:12 -05:00
Ashod Nakashian 268aed2f73 wsd: remove always-false conditionals
Change-Id: I2b37b91dd6e5ac9517dfac8a777dc8eeec9254c9
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-03-10 07:45:12 -05:00
Ashod Nakashian 26c27bd738 wsd: initialize ClientSession::_lastStateTime
Change-Id: I6c40e1a2464a19978d32d49cfa6fdb77294a2ddd
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-03-10 07:45:12 -05:00
Ashod Nakashian af504e3384 wsd: make sessions readonly on disk errors
Change-Id: I0c59c4fb3c99dee0f6e18850ca795467a9421b33
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-03-10 07:00:31 -05:00
Gökay Şatır a3e29e23cf Remove vex from parts.js.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I85a754f2bb6bd738bd30384c9b40f40104daacc5
2023-03-10 10:49:59 +01:00
Pranam Lashkari 61d8f49e71 jsdialog: use display grid for vertical button box
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I288b1c1b013dd0a1395f6f18890b09582f309fbc
2023-03-10 10:06:41 +01:00
Gökay Şatır b7a0828a73 Remove vex dialogs from alertdialog.js file.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: Ibc437f14d36594763ddf70639d0c5d3fa2531d72
2023-03-10 09:43:15 +03:00
Michael Meeks 4ca7070ba8 Warn and clamp unreasonable values of max_concurrency.
There are costs to many threads, and diminishing returns.

Change-Id: I4d4dc0491c48af303375d09d8eb19ffebedcad83
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2023-03-10 00:04:11 +01:00
Pedro Pinto Silva a2202d44ef Mobile: calc: formulabar element: align to top on expanded part 2
fixes wrong value from
Mobile: calc: formulabar element: align to top on expanded
8b378e9965

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I8b5706957dff007137e3aa1ce677b825ada3e261
2023-03-09 17:43:38 +01:00
Martin Srebotnjak abca1ce880 Translated using Weblate (Slovenian)
Currently translated at 100.0% (525 of 525 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: Ib70db79325a6cccc8d989e37d73f7eff422a4f19
2023-03-09 16:07:46 +01:00
SC 8f39987c33 Translated using Weblate (Portuguese)
Currently translated at 100.0% (525 of 525 strings)

Co-authored-by: SC <lalocas@protonmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pt/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ib7151eb453e87b8e3ee848d12d11e2e1b5f3e94d
2023-03-09 16:07:45 +01:00
Stanislav Horáček da97ef4911 Translated using Weblate (Czech)
Currently translated at 100.0% (525 of 525 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: I8083a17c57f1b7807f5845d5c1e9fcb6c901b965
2023-03-09 16:07:45 +01:00
Joan Montané db3e8da47b Translated using Weblate (Catalan)
Currently translated at 100.0% (525 of 525 strings)

Co-authored-by: Joan Montané <jmontane@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ca/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I3000c8500d7e1fc54f14a83a8e53893288a60c29
2023-03-09 16:07:45 +01:00
Ihor Hordiichuk d37b1a376f Translated using Weblate (Ukrainian)
Currently translated at 100.0% (525 of 525 strings)

Co-authored-by: Ihor Hordiichuk <igor_ck@outlook.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/uk/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Idb44fbb9c4cb8857583ea63c1397cd1e10c56f6b
2023-03-09 16:07:45 +01:00
tygyh 461c132ea3 Translated using Weblate (Swedish)
Currently translated at 100.0% (525 of 525 strings)

Co-authored-by: tygyh <jonis9898@hotmail.com>
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: I5eb214d82f35d6e885af6d93fdde0a4e3bde8f00
2023-03-09 16:07:45 +01:00
Matthaiks 9a13fc9069 Translated using Weblate (Polish)
Currently translated at 100.0% (525 of 525 strings)

Co-authored-by: Matthaiks <kitynska@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pl/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I098012f80357358af03368acd96e8c82535aabec
2023-03-09 16:07:45 +01:00
Sebastiaan Veld 35e63a7dae Translated using Weblate (Dutch)
Currently translated at 100.0% (525 of 525 strings)

Co-authored-by: Sebastiaan Veld <sebastiaan.veld@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/nl/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I38c032fd284760d33de10d81d13f41248b0121af
2023-03-09 16:07:45 +01:00
Yaron Shahrabani fbd47e943c Translated using Weblate (Hebrew)
Currently translated at 100.0% (525 of 525 strings)

Co-authored-by: Yaron Shahrabani <sh.yaron@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/he/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I0448f3dc3ece2f0e627adbadbd6929f4fb07d55d
2023-03-09 16:07:45 +01:00
gallegonovato 7f27cdaea8 Translated using Weblate (Spanish)
Currently translated at 100.0% (525 of 525 strings)

Co-authored-by: gallegonovato <fran-carro@hotmail.es>
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: Ic03e6e64b152176058984eb0945643274531a38f
2023-03-09 16:07:45 +01:00
Andi Chandler 682b5b0f6a Translated using Weblate (English (United Kingdom))
Currently translated at 100.0% (525 of 525 strings)

Co-authored-by: Andi Chandler <andi@gowling.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/en_GB/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I5b80d63f82a42ebdaf9e3ae5f54beaa576da0681
2023-03-09 16:07:45 +01:00
Andras Timar 3678cccc43 Translated using Weblate (Hungarian)
Currently translated at 100.0% (525 of 525 strings)

Translated using Weblate (German)

Currently translated at 100.0% (525 of 525 strings)

Co-authored-by: Andras Timar <andras.timar@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/de/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/hu/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Id6726ca8513b8da5ce177bd1db50edbce31cefd1
2023-03-09 16:07:45 +01:00
Pedro Pinto Silva 584df7116e Mobile: calc: formulabar element: align to top on expanded
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I1579f526daa18c45af0e7106eff43d5491aaf89b
2023-03-09 15:57:31 +01:00
Pedro Pinto Silva 572803a3c7 Mobile: calc: Fix addressinput misalignment
In some browsers addressinput was misaligned (no initial margin)
  - Remove FF specific margin-left
  - Add non LTR specific margin to every browser
  - Use the same dimension (8px) as used in the .formulabar.toolbox's
  grid-column-gap

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I6a2e86a9a56f05bbf514d12a080fbcb2408cb816
2023-03-09 15:57:31 +01:00
Pedro Pinto Silva ebf51c77a6 Calc: fix formulabar expander being cropped on mobile
- Make sure all elements within formulabar toolbox fit even
on smaller devices
    - Do not user margins to position, use instead grid
- Remove Equal sign (startformula). Before this commit the
startformula icon was visible and then invisible once the user
enter the cell to type -> it seems this was initially intended to save
space but the truth of the matter is that it causes a flicker and
where the position of the elements shift making even harder to write
on mobile.
    - Solution: do not create that element in the first place on
mobile. Plus when the user enter the cell can always press the "="
right via the native keyboard anyhow.

note: avoid multiple instances of the same condition in FormulaBarJSDialog

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ic4f3b7fddb9d862170a0e95243f4b19a89340575
2023-03-09 15:57:31 +01:00
Pedro Pinto Silva 7744d009e4 Hyperlink: Fix thumbnail overflow
Before this commit:
 - Images (coming from link preview) could brake html parent element
 - Metadata (p element) could brake html parent element

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I362afe9eadd86b88dc6afc584f635d50fac0ad03
2023-03-09 15:57:09 +01:00
Rash419 7dedd17f2e cypress: disabled flaky tests
Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I066470a1284420aa8a906deeec47b2c6829916b9
2023-03-09 14:02:05 +01:00
Rash419 40abccbe31 cypress: fix spreadsheet-tab1 element getting detached from dom
Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I3ad4c775d08095493dbde02d67dcd5727c07a699
2023-03-09 14:02:05 +01:00
Gökay Şatır fe1b57c328 Remove vex from delete sheet modal.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I605104e16ab02d106717319e4a9bff537db13e3c
2023-03-09 10:38:51 +03:00
Ashod Nakashian 216572e584 Revert "wsd: break cyclic setModified call"
The setModified is on an internal, AdminModel
specific, Document object. It is not the
DocumentBroker.

This reverts commit e33d6aa2ca.

Change-Id: Ib706927051678cfc19dc1246d679ef530eb8d586
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-03-09 12:51:23 +05:30
Parth Raiyani eebe0cf986 fixed missing % upon pressing the escape key
Signed-off-by: Parth Raiyani <pmr642001@gmail.com>
Change-Id: I0ac901dc0d5a53e82be70d3c89f17e03b8872989
2023-03-08 16:50:44 +05:30
Szymon Kłos 9f3b15bf07 Allow Insert Hyperlink dialog to send uno command
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I78dd8c189a3d5ec5ce6527028c9117edb2fbbf7d
2023-03-07 16:21:02 +01:00
Szymon Kłos 7eb9771601 Allow Repair Document to send message
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ia75f12f155b80bfadcc164c0c8b4d3ed57ec1d44
2023-03-07 16:21:02 +01:00
Szymon Kłos ab124ab097 Blink also when using internal Online commands
We prevent using uno commands multiple times to open the same
dialog - let's do this also for dispatch() which executes
commands used in Online, eg. for custom dialogs like Add Citation.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ia022ac4c1b7223c630f3d83eb9b3ce2f1a2e2e1a
2023-03-07 16:21:02 +01:00
Szymon Kłos e6d15a799e jsdialog: don't allow opening multiple dialogs
We had this for tunneled dialogs but also for jsdialog it
should be done. When trying to execute uno command when any
dialog is opened - blink dialog to indicate that user has to
close it to open next one. This blocks possibility to open
multiple instances of the same dialog.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I1777ce23292799edc3bbb896bf63872a354d7ad7
2023-03-07 16:21:02 +01:00
Noel Grandin 6cb5570b87 no need for shared_ptr here
avoid an allocation and some pointer chasing

Signed-off-by: Noel Grandin <noel.grandin@collabora.co.uk>
Change-Id: I29711075d4bf840c2ef992341a6dadeeb87c6edd
2023-03-07 14:46:59 +01:00
Szymon Kłos a7359becd5 jsdialog: multilineedit is not a container
this prevents from creating additional containers for
text views with multiple child nodes

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Id65fbe805c58e30ffa5ff86e3fdfaab5dc3a0153
2023-03-07 13:10:47 +01:00
Szymon Kłos a23003e3a7 Add missing icons for function wizard
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ie46ac7526136d2dcb1e4074168a6ce8876bf368d
2023-03-07 13:10:47 +01:00
Szymon Kłos e83f136194 jsdialog: avoid using undefined value
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Iaf84c0a42841aa0db692f8525f63cbf598639e8a
2023-03-07 13:10:47 +01:00
Szymon Kłos 280ba62c7d Add missing icons for chart wizard
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ifb25ebfa570894657f9f057fdc096119aebd48d7
2023-03-07 13:10:47 +01:00
Szymon Kłos 4e7cf6c6ff jsdialog: style disabled treeview
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I42ece74428b860ad1d74e4dff302cfca6f743a9b
2023-03-07 13:10:47 +01:00
Szymon Kłos ed49ce09d9 jsdialog: handle tabpage container
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I81c295ad981186c6a57c3ac69300427841c49751
2023-03-07 13:10:47 +01:00
Szymon Kłos bc2eb20821 jsdialog: handle cancel and help button types
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I1a2c7dd4474b91545692cc0e5d8eae492a3dacf4
2023-03-07 13:10:47 +01:00
Szymon Kłos dc4b556a8c jsdialog: avoid use of undefined value
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ia5bef3dc1ef714bbe52f31407ae33f0f3db478b5
2023-03-07 13:10:47 +01:00
Pedro Pinto Silva 975508fb54 Mobile: Fix no-color and auto-color alignment
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ice1e397a75a8c8225087944fed80ed74a138ac31
2023-03-07 12:32:20 +01:00
Bayram Çiçek 2b9e7a8255 Mobile: add extra space to color-control-label(s)
in labels(classes):
- .no-color-control-label
- .auto-color-control-label

the value of padding-left property is
increased from 4px to 8px.

Signed-off-by: Bayram Çiçek <bayram.cicek@libreoffice.org>
Change-Id: Ide0b810cab18d63748678e3007b8ee8c7234114e
2023-03-07 12:32:20 +01:00
Gökay Şatır e82f58e5f6 Send close message to core side when closing all jsdialog windows.
Add an empty callback for the busypopup window.

Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I84ed797feed93cfad6a66f1a4981ecacce23f104
2023-03-07 09:46:22 +03:00
Julius Härtl 8a13e98dc0 fix(SaveAs): Fix format extraction on SaveAs with filenames that contain multiple dots
Signed-off-by: Julius Härtl <jus@bitgrid.net>
Change-Id: Ice038846b265438d619ab64908c6b7e931e7d905
2023-03-06 22:36:44 +01:00
Patrick Luby 650438283e Fix issue #5843 escape non-ASCII characters only for image data
Passing non-ASCII, UTF-8 text from native to JavaScript works
fine, but images become corrupted if any non-ASCII bytes are
not escaped.

The Socket._extractTextImg() JavaScript function assumes that,
in the iOS app, the first newline separates text from image data
so assume all bytes after the first new line are image data.

Signed-off-by: Patrick Luby <patrick.luby@collabora.com>
Change-Id: I06f4377bb3b7002a76041a198076decfee9e3733
2023-03-06 18:01:39 +01:00
Patrick Luby 8d15281d35 Partial fix #5885 Close the font picker when a font is tapped
This is a near duplicate of pull request #5898

Signed-off-by: Patrick Luby <patrick.luby@collabora.com>
Change-Id: Ib05a285f3642ec0ca745b0c74157190fda5bd3ed
2023-03-06 18:01:39 +01:00
Patrick Luby 1790073298 Remove pre-23.05 release notes
Signed-off-by: Patrick Luby <patrick.luby@collabora.com>
2023-03-06 18:01:39 +01:00
Patrick Luby 23d449b978 Remove template list URL from application settings
Copy pull request #5890 but completely remove the old code in the master
branch

Signed-off-by: Patrick Luby <patrick.luby@collabora.com>
Change-Id: I69d03bb3f10e756823ba2e32aae0c099c54928c5
2023-03-06 18:01:07 +01:00
Ashod Nakashian 74d6739f0d wsd: time the duration of fork
Change-Id: I92f624139f274df95a47f430802a29d33d587689
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-03-06 08:43:37 -05:00
Ashod Nakashian ed341a61ad wsd: better logging around new child management
Change-Id: Id108ef7a635975bb4fd30ceb509fd2d39c3456f1
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-03-06 08:43:37 -05:00
Ashod Nakashian d88956ae8b wsd: minor cleanup of Storage::create logs
Change-Id: Ic0b32d9ccf67e06d5a3b8f389a7fa4e8d305edf3
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-03-06 08:43:37 -05:00
Ashod Nakashian 3fda293103 wsd: name fields in logs and standardize bracketing
Change-Id: I3fe0acf47ebdb0b2551ad20299fe7d720872cbb2
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-03-06 08:43:37 -05:00
Ashod Nakashian 29193de7cd wsd: improved socket creation/destruction logging
Change-Id: I3f2919b646aad4c7c8b2b464155066008fbe25ae
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-03-06 08:43:37 -05:00
Ashod Nakashian 903bb76c36 wsd: fix DEBUG_HTTP in HttpRequest
Change-Id: Iebc61b6632d33528ad362c943cb44cea56418b16
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-03-06 08:43:37 -05:00
Ashod Nakashian e3deb96152 wsd: log the socket FD of http::Response
Change-Id: Ibd02ee6656f4db2e7b09e0b7702a6db55ec8269e
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-03-06 08:43:37 -05:00
Ashod Nakashian 8fac85b5c2 wsd: log the socket FD of http::Session
Change-Id: I9c0eb3fde6577185bce63277147a6a453311f1ec
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-03-06 08:43:37 -05:00
Ashod Nakashian 359017ef10 wsd: log the socket FD of PrisonerRequestDispatcher
Change-Id: I6a000e53d8baca231a2fb8f6df2251a4f57d9876
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-03-06 08:43:37 -05:00
Ashod Nakashian 547c97988a wsd: log the socket FD of WebSocketHandler
Change-Id: I5c06ae44437cac32fb726861a5bc49b149ecd0c4
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-03-06 08:43:37 -05:00
Ashod Nakashian 1dd2aba82d wsd: log the socket FD of ProtocolHandlerInterface
Change-Id: I362aca685f79868bdf685695d625a832eee02821
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-03-06 08:43:37 -05:00
Ashod Nakashian da29e2c45d wsd: log the socket number of http::Request
Change-Id: Ia0d52b38a1da73ae92765169d5e5064015dc7f40
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-03-06 08:43:37 -05:00
Ashod Nakashian 990f8f2375 wsd: support logging without a prefix from static members
Change-Id: Id9105f1a066e290ae20f8409c8fe6bd003678192
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-03-06 08:43:37 -05:00
Ashod Nakashian 3b3e936e4f wsd: better logging of DocBroker loading
Change-Id: I1138f42f954086cff5fc9c8465a02802235ca5dd
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-03-06 08:43:37 -05:00
Ashod Nakashian 38daf70f0a wsd: test: minor test server logging improvement
Change-Id: I509952c80be91dc6d0b97dfdb1df0a98d4051e24
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-03-06 08:43:37 -05:00
Ashod Nakashian 0b4e9e071c wsd: minor improvements to socket logs
Change-Id: I4a07124e8adada4c7dbcf0a3b7b07ffa566c57d2
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-03-06 08:43:37 -05:00
Gökay Şatır 00b0fd48c9 Remove vex dialog from AdminSocketOverview.js file.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I04bab594327d9e75fe612bf84ee047e58a71ff22
2023-03-06 16:23:20 +03:00
Andras Timar 8406af5c9b Update l10n files for Weblate
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I2448c2b3643d7cc72b079c4fcdc452fe35b6fdcf
2023-03-06 13:18:59 +01:00
Alex Gabilondo cdbd217644 Translated using Weblate (Basque)
Currently translated at 100.0% (526 of 526 strings)

Co-authored-by: Alex Gabilondo <alexgabi@disroot.org>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/eu/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Iaa5dd6919829519829faee85719b399ee43f6b74
2023-03-06 13:17:28 +01:00
Rob Pearson b1b4fcbe9c Translated using Weblate (English (South Africa))
Currently translated at 100.0% (526 of 526 strings)

Translated using Weblate (English (New Zealand))

Currently translated at 100.0% (526 of 526 strings)

Translated using Weblate (English (Australia))

Currently translated at 100.0% (526 of 526 strings)

Co-authored-by: Rob Pearson <rob.dunedin@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/en_AU/
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/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I4d4a886398bcdc86a454775948c06f9cdb8bb1f7
2023-03-06 13:17:28 +01:00
Weblate 6406cfc122 Added translation using Weblate (Persian)
Added translation using Weblate (Persian)

Added translation using Weblate (Persian)

Added translation using Weblate (Persian)

Co-authored-by: Weblate <noreply@weblate.org>
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I69ea7181f2ae9c640262866d436722bf3bc27810
2023-03-06 13:17:28 +01:00
HM ad053b7535 Translated using Weblate (Persian)
Currently translated at 4.5% (5 of 110 strings)

Translated using Weblate (Persian)

Currently translated at 1.8% (2 of 110 strings)

Translated using Weblate (Persian)

Currently translated at 0.9% (1 of 110 strings)

Added translation using Weblate (Persian)

Co-authored-by: HM <goodlinuxuser@chmail.ir>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/android-app/fa/
Translation: Collabora Online/Android app
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Icefa2f4b73cfe3e40e82aa7c51ddba5990c7feaa
2023-03-06 13:17:28 +01:00
Oğuz Ersen 0de4b45baa Translated using Weblate (Turkish)
Currently translated at 100.0% (526 of 526 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: I09ea8f9da5ea7941b2e3b27d80b289e6cda61ba9
2023-03-06 13:17:28 +01:00
SC ed3f464e2f Translated using Weblate (Portuguese)
Currently translated at 100.0% (526 of 526 strings)

Co-authored-by: SC <lalocas@protonmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pt/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ibe31ad4d15fa39066676674fa8c12cdc30ad4559
2023-03-06 13:17:28 +01:00
Andi Chandler 47e736a1de Translated using Weblate (English (United Kingdom))
Currently translated at 100.0% (526 of 526 strings)

Co-authored-by: Andi Chandler <andi@gowling.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/en_GB/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I02f93fbb814f904c963af19953562e145258bd3d
2023-03-06 13:17:28 +01:00
Martin Srebotnjak 44b8ffae47 Translated using Weblate (Slovenian)
Currently translated at 100.0% (526 of 526 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: I69a74d53954fb451800a99401df1058f66b83028
2023-03-06 13:17:28 +01:00
Miloš Šrámek d826092ea6 Translated using Weblate (Slovak)
Currently translated at 90.1% (474 of 526 strings)

Translated using Weblate (Slovak)

Currently translated at 88.7% (467 of 526 strings)

Co-authored-by: Miloš Šrámek <msramek22@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/sk/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I489103f653d695e42206aa37d173167e7607d13c
2023-03-06 13:17:28 +01:00
Milo Ivir bd293f8a9e Translated using Weblate (Croatian)
Currently translated at 100.0% (526 of 526 strings)

Co-authored-by: Milo Ivir <mail@milotype.de>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/hr/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I707d835d442bf7e84574c38652fa17f7e4c98150
2023-03-06 13:17:28 +01:00
Ihor Hordiichuk 4f8e33c1fd Translated using Weblate (Ukrainian)
Currently translated at 100.0% (526 of 526 strings)

Co-authored-by: Ihor Hordiichuk <igor_ck@outlook.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/uk/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I135d70667f45eb841499e479840d4c24a01395a9
2023-03-06 13:17:28 +01:00
tygyh 0377763c26 Translated using Weblate (Swedish)
Currently translated at 100.0% (526 of 526 strings)

Co-authored-by: tygyh <jonis9898@hotmail.com>
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: I6ca81fb285319885f4bc209c9ae3a05acd1e332a
2023-03-06 13:17:28 +01:00
Matthaiks 183fb277da Translated using Weblate (Polish)
Currently translated at 100.0% (526 of 526 strings)

Co-authored-by: Matthaiks <kitynska@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pl/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I143dc898ea4b227005440bc1b4c9a63511f9fc2b
2023-03-06 13:17:28 +01:00
Sebastiaan Veld 245974c59b Translated using Weblate (Dutch)
Currently translated at 100.0% (526 of 526 strings)

Co-authored-by: Sebastiaan Veld <sebastiaan.veld@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/nl/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Iece61b5e7c39defcad3ad62f1563f492c86f1eb4
2023-03-06 13:17:28 +01:00
Yaron Shahrabani 8a8ad2427a Translated using Weblate (Hebrew)
Currently translated at 100.0% (526 of 526 strings)

Co-authored-by: Yaron Shahrabani <sh.yaron@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/he/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Icdcc964f10a73564ccd39486491f0ecaca0e80ad
2023-03-06 13:17:27 +01:00
gallegonovato ed4848fe87 Translated using Weblate (Spanish)
Currently translated at 100.0% (526 of 526 strings)

Co-authored-by: gallegonovato <fran-carro@hotmail.es>
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: Ieea6f85534d727578af24b6a7be1b2ef79981a80
2023-03-06 13:17:27 +01:00
Stanislav Horáček 324e93afad Translated using Weblate (Czech)
Currently translated at 100.0% (526 of 526 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: I0ee2bf695c4b0a2f8d2eb98f037b1ecdc433bf92
2023-03-06 13:17:27 +01:00
Andras Timar 82aca4dee7 Translated using Weblate (French)
Currently translated at 98.0% (516 of 526 strings)

Translated using Weblate (German)

Currently translated at 100.0% (526 of 526 strings)

Translated using Weblate (Hungarian)

Currently translated at 100.0% (526 of 526 strings)

Co-authored-by: Andras Timar <andras.timar@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/de/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/fr/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/hu/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I3366752a41e14dbd68a0b7000136eaa36639531f
2023-03-06 13:17:27 +01:00
Gökay Şatır 86e8491707 For .eslintrc change, see: https://github.com/typescript-eslint/typescript-eslint/issues/1824
idle handler is moved into typescript and outside of map variable.

vex dialog of handler is replaced with JDSdialog.

Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I341c28e9e3f1659987b871a235a50757f42d4d2e
2023-03-06 15:10:10 +03:00
Pedro Pinto Silva 6bcc3c7032 Improving message on TTL expiry handling
when session expires some users might need to login again
in their integrator. Do not exclude those users. Otherwise
they might try to refresh and no session renewal happens.

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I305d185fc8e9072e52b668e12e7ea80c55e9b93d
2023-03-06 11:39:59 +01:00
Pranam Lashkari 3694258e99 jsdialog: support toggle event for push buttons
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: Ibd5a2d6de35c2f7142afe0254f4133746152226d
2023-03-03 17:06:51 +01:00
Szymon Kłos 5457c51d76 jsdialog: send correct id on tab switch
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ie098b2f6f2e6333765658e4d27eab6052735bc8f
2023-03-03 19:59:49 +05:30
Szymon Kłos 3dde59c9d7 jsdialog: don't show error on closing busypopup
This is regression from:
a2d666d53a
JSDialog overlay: Use CSS rules for positioning.

When auto-save or save is performed we show busypopup.
We shoudn't send any messages to the server as it is
pure JS dialog.

Parsing error was caused by sending close message:
1677832085616 OUTGOING: control: 'dialog' id:'__DIALOG__' event: 'close' state: 'null'
1677832085617 OUTGOING: dialogevent busypopup {"id":"__DIALOG__", "cmd": "close", "data": "null", "type": "dialog"}
1677832085620 INCOMING: error: cmd=dialogevent kind=syntax
1677832085621 INCOMING: jsdialog: {"id":"busypopup","jsontype":"dialog","type":"modalpopup","action":"fadeout"}
1677832094401 OUTGOING: userinactive

Let's don't send that message for fade out effect we use to close it.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ibe430c389ba90f7ec53cc167ff860b24935a2241
2023-03-03 10:32:24 +01:00
Gökay Şatır fdd039e502 Modify cypress tests for JSDialogues.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I566ddb2c3111d2d1689b91c678ac9aa92e88ab05
2023-03-03 11:38:33 +03:00
Gökay Şatır e1f1399ace Hide also the wrapper of pushbutton when the button is hidden.
Make the modal helper's ids unique.

Turn vex dialogs in clipboard.js into JSDialogs.

Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I99b06dafb95a2cf82004141b18012972fde7f836
2023-03-03 11:38:33 +03:00
Gökay Şatır e116a4d3e8 Use a JSDialog for pasteSpecial dialog.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I70d1c7788afc0c16c679000e78210a255f46461d
2023-03-03 11:38:33 +03:00
Henry Castro aed7a68ec0 browser: add author data to calc comment
The recent changes in LO Core, when edit a comment
in Calc the author data is not preserved.

Change-Id: I4f26ef2044d28bf55ff6a00a2e585ece79c6eb9b
Signed-off-by: Henry Castro <hcastro@collabora.com>
2023-03-02 14:56:41 +01:00
Pranam Lashkari 92a7495b4f zotero: fetch citation style when zotero is initialized
when document is loaded zotero may not be initialized,
this caused problem and citation style was never fetched

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I827bf4edf03dc81bbf8e246280ed14370e438494
2023-03-02 13:50:04 +01:00
Pranam Lashkari 428213386a zotero: avoid updating bibliography if no citations
sending requests without citation keys returns bibliography for all the items in library
this causes problem is the document already has some kind of bibliography which is updated unintentionally

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I34976f94bf3cbb6d07fe06e8b1ca974b2ee59ebb
2023-03-02 13:49:39 +01:00
Rash419 0edefdf994 fix: writer: zooming into document with multiple view doesnot work
- msgData is undefined when we get graphicselection: EMPTY message
- "Cannot read properties of undefined" error was stopping the further execution
  therefore the view was not getting updated

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I4fefd9205ae46fee24c91d070e3f3f16c4912aa2
2023-03-02 13:33:49 +01:00
Szymon Kłos d21155f778 Update jsdialog widgets headers
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I07be0d9e917db3f0e2f924d04ed19cfdcdb23e56
2023-03-02 11:53:44 +00:00
Szymon Kłos 9bdb0692f0 Verify if preview matches currently displayed link
Download time can be longer and user can already switch to
other link. Verify if received and displayed link matches.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I502133d71a0a9032947c6233a0ac2750625b8650
2023-03-02 12:27:45 +01:00
Szymon Kłos 331f510cac Use selected text for link text
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I5fe42036bb48a066af4b7f43e36cc1f3b14bc562
2023-03-02 12:27:45 +01:00
Szymon Kłos 29b983ea1c Limit preview height and width
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ia6227c7f605bc7c34ae47749ea6896dc55de9038
2023-03-02 12:27:45 +01:00
Szymon Kłos 662979deda Get link preview functionality
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I80c4a15731cc05cc6deb36b5aac7f73c94e94432
2023-03-02 12:27:45 +01:00
Szymon Kłos 07cf933a8c Add Pick Link button
Button is shown when CheckFileInfo contains 'EnableRemoteLinkPicker'.
After press UI_PickLink is send via postMessage.
Action should be finished with sending Action_InsertLink to editor.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I53c61a25d1fab655771742ec6d97dc056192642a
2023-03-02 12:27:45 +01:00
Szymon Kłos 6e2f023664 jsdialog: handle multiple tab controls inside dialog
It was possible to use only one tab control.
Now useSetTabs parameter for builder is introduced
which defines if we want to use custom placement
of tabs handled by the parent container or put
tabs in the place where they are defined in JSON.

Custom placement is needed in mobile-wizard and notebookbar
as for them tabs needs to be placed at the top bar.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I6420e303de248058a7a94ead47b6672b717360df
2023-03-02 09:44:23 +01:00
Gökay Şatır e665b58772 Update vex based tests for about dialogue.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I8d572a1256b51bdce9b5ad4605ab0c0105d75b07
2023-03-02 11:29:58 +03:00
Gökay Şatır b34d0fe4a6 Turn about dialog into a JSDialog.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I95620ef2dc50af054be4c7a1774516ac4fe8c3ff
2023-03-02 11:29:58 +03:00
Gökay Şatır a2d666d53a JSDialog overlay: Use CSS rules for positioning.
Set position rule and some others of the overlay to absolute. So we can use it both for popups and documentareapopups.
Set max-height of the pop-up so it doesn't look ugly when the height of the popup is bigger than the window height.
Modify JSDialog for the new behaviour.
I also split the code into functions for easier maintaining while updating.

Add special rule for comments. They are not contained in the container.

Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: Ia7d12de23bc64d811156f565b076463cb22ee38e

Turn help popup into JSDialogue.

Change-Id: I81b198863f959de1047589fc028ac6c2ce3b1ff1
2023-03-02 11:29:58 +03:00
Rash419 507d0f1a4a js: added localization for jquery-ui datepicker
replaced jquery-ui-dist node_module with jquery-ui
for localization

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I6dd95cb8859cd2e0626195a0b87b496fe44afc49
2023-02-28 15:51:36 +01:00
Gökay Şatır 9d09dccecc Hide sidebar button on readonly mode.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I29a899a1113c6188558e8b85bf9adde5bc9049fe
2023-02-28 11:57:11 +01:00
Miklos Vajna e4298ccf31 fuuzer, httpresponse: clear state before each run
The max input size is 16384, so in case the input is saved after each
run, then this can allocate ~300MB of memory. This is considerable
amount, given that the upper limit of the fuzzer process is 2GB.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: Ieedb6a537d5b539255ed8bacd79ff23db3c15e9f
2023-02-28 10:18:41 +01:00
Andras Timar c05c2692ab Update l10n files for Weblate
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Id54db427bce6a7be1e2aea3d82c550b11867ca8b
2023-02-27 15:10:14 +01:00
Pedro Pinto Silva a60f38e48f Improve You are leaving editor message (open hyperlink)
- Improves modal title instead of generic 'Open Link'(which is
already used in the button) use instead a more informative
tile: 'External Link'
- Indicate to the user that the web page will open in a new tab
as per request:
  - Fixes: https://github.com/CollaboraOnline/online/issues/5893

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ia4770d13ed0e5ef4f33aaa85054b0d21bea9e449
2023-02-27 15:05:41 +01:00
Nathan 6bccfb14d1 Translated using Weblate (French)
Currently translated at 99.2% (516 of 520 strings)

Co-authored-by: Nathan <bonnemainsnathan@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/fr/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I71a9a45bc5be1ccc4add82aed45a4474d89d7c45
2023-02-27 14:55:50 +01:00
Adolfo Jayme Barrientos de48496da7 Translated using Weblate (Asturian)
Currently translated at 50.9% (265 of 520 strings)

Co-authored-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ast/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I4a267786aec23f3443a6d88c5769545e9a7dfb4c
2023-02-27 14:55:50 +01:00
Andika Triwidada 6ad1d6e148 Translated using Weblate (Indonesian)
Currently translated at 100.0% (520 of 520 strings)

Co-authored-by: Andika Triwidada <andika@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/id/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ib9605858fa020bdcb3444e5ebc081f2672b46b5a
2023-02-27 14:55:50 +01:00
Pedro Pinto Silva 13b1807a7f Compact view: Do not show translate if the respective op is false
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I9d8ae8c4585c86b53eff952a96b1494da7197746
2023-02-27 14:38:38 +01:00
Pedro Pinto Silva 76bb99ca1c Tablet: tabbed view: Allow user to go back to read only mode
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I7938f042e3d8a49887bd15e4e5e2331bcfff133c
2023-02-27 11:36:21 +01:00
Szymon Kłos 5e3cf57605 jsdialog: show overlay for all modals
All modals shown with uiManager.showInfoModal should
have overlay which helps to focus on modal dialog.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Id6f159bba6c6be289dadf666b25bd610f2df0cc1
2023-02-27 10:52:09 +01:00
Andras Timar 3e6705a3b6 fix include_path with non-system libs in test/Makefile
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ic6dfa7086e1b7fc55b007cee679577a584adeee9
2023-02-26 19:19:22 +01:00
Andras Timar e23bb604b8 add OPENSSL_CFLAGS to include path when SSL is enabled
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I1a65f15bd8bfa7a25e368fa54c62fd8f06a3bd8a
2023-02-26 18:50:58 +01:00
Andras Timar 26b6d51d94 Some packages will not be required by coolwsd rpm package
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I87fd9a5d5a6f7e5f6f8a71a279ffb30e74f67298
2023-02-26 17:04:14 +01:00
Jan Holesovsky 1f0135121c File Notices recommendation
Change-Id: I98d5bf92cd1c354b9f448272f397681101b81715
Signed-off-by: Jan Holesovsky <kendy@collabora.com>
2023-02-23 18:45:16 +00:00
Pedro Pinto Silva b1afc5ae3d Accessiblity checker tabbed item should only exist for text doctype
Since the helptab is shared between different doctypes we need to
make sure that writer's accessibility check doesn't bleed out to
other doctypes

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ic4d35fe080cbefc2564db1a250dbf6d62274de69
2023-02-23 14:08:49 +01:00
Ashod Nakashian c045fc8bea wsd: test: minor cleanup of UnitWopiLock
Change-Id: I66973743c2c84d4f9ad459da323e2db9ba76d5c1
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-02-23 07:58:56 -05:00
Ashod Nakashian d1b1f960aa wsd: test: new test to verify refresh lock behavior
Change-Id: If28ab29c43f638f111169673d9a8ee5651fa6da8
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-02-23 07:58:56 -05:00
Ashod Nakashian 104b354f1e wsd: handle errors from locking/unlocking a document
Change-Id: I69e2c26aaa572e5ca215fd8cf3413ed043861f0f
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-02-23 07:58:56 -05:00
Ashod Nakashian 9ab65faee3 wsd: detect unuathorized locking/unlocking response
Change-Id: Ia46ad6859f5ce21e506d8c1f96a28430c5f70954
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-02-23 07:58:56 -05:00
Ashod Nakashian 2da70b1cc0 wsd: avoid function-local static configs in LockContext
The function-local static prevents tests
from changing the value of a config.

Change-Id: I5febdbf029293fab39f18afa6d905fd571d59545
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-02-23 07:58:56 -05:00
Ashod Nakashian fa069dca50 wsd: test: support controlling the response to LOCK/UNLOCK
Change-Id: Ie0d836a475f257bded5c73783398a6c300ac9d67
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-02-23 07:58:56 -05:00
Ashod Nakashian 7d93076ff2 wsd: minor log improvement
Change-Id: I5a38e8b311be336cc42fab05a94236dc73be32fa
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-02-23 07:58:56 -05:00
Szymon Kłos 0b814c70a6 cypress: mobile hyperlink converted to jsdialog
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I3bcc7d82f03ae5f9abfba796e482a0eefac6f3bc
2023-02-22 17:59:49 +01:00
Szymon Kłos 65349e6eae Cancel insert link on map click
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: If50ffe68298f575b7e966ff21db09fab9c4a61bb
2023-02-22 17:59:49 +01:00
Szymon Kłos 7e5ef7552b jsdialog: share close method for modals
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Idc1e86998a11f8ddc5c15a3ba9aad3068545931f
2023-02-22 17:59:49 +01:00
Pedro Pinto Silva 72c9b2f60a Fix JSDialog input field on Mobile (chrome/mium), no scrolling
This  affects hyperlink text area

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I0f98ce5cbd3ecf124141e680fe68d2d5b97d400e
2023-02-22 17:59:49 +01:00
Pedro Pinto Silva 7339a9d754 Fix JSDialog input field on Mobile (chrome/mium)
Otherwise they do not fully expand

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Idaee2c10be2fd13e99b8d28336ec8738df431adb
2023-02-22 17:59:49 +01:00
Pedro Pinto Silva 14a4ed6852 Style hyperlink-text-box so it looks like an inputfield
Hyperlink's text field needs to be a  multiline but that doesn't
look right on 90% of the case. So better to style it as if it was
an input field but keep it as a text area so multiline text selection
doesn't get pasted back as one super long line

Ideally: if the user selects multiple lines and the Ctrl + k it should
concatenate it only for the purpose of presenting it in the dialog but
then the text in the document should retain the multilinear aspect and
be clickable . < - this is impossible to have currently without
over engineering so probably best simply style it differently

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I640f148ffd5bd76592fb30dde5545e2c26eda016
2023-02-22 17:59:49 +01:00
Szymon Kłos 4193f79fa7 cypress: hyperlink converted to jsdialog
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I2b79fdb15102fe4a7631cbb8ee654f9be9c72709
2023-02-22 17:59:49 +01:00
Szymon Kłos 58bcdc36ae jsdialog: convert insert hyperlink from vex
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: If09bc53ec3265fe78afec7cb9f38390aabcd537b
2023-02-22 17:59:49 +01:00
Szymon Kłos 61712b10b6 Improve hyperlink edit dialog
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I6a46ff07bd84d81ea6644a0b299c08abb97d0127
2023-02-22 17:59:49 +01:00
Pedro Pinto Silva 34b4ff6a4e Mobile: spreadsheet: Allow user to define and remove print area
This fixes #353

For now add only the .uno:DefinePrintArea and DeletePrintArea
- Edit triggers a tunneled dialog and thus is not ready for mobile
- Add (allows to add multiple) is should not be added to mobile until
Edit is available

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I27b5377d00080e745aab465da4dd65fffeaa3217
2023-02-22 12:54:26 +01:00
Pedro Pinto Silva 2f314e94c4 Add sheet RTL switch to Calc tabbed view
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I8932c149452fba8952824e5313876645093c0074
2023-02-22 11:44:43 +01:00
Aron Budea e2394b5725 browser: add switch between RTL/LTR to Calc main menu
Signed-off-by: Aron Budea <aron.budea@collabora.com>
Change-Id: I2781b7ff4a0ba4fa93a49ae2d62ba18d35789e52
2023-02-22 11:44:43 +01:00
Bayram Çiçek 21b632d9d4 hide Formatting Marks when on read-only mode
On mobile, the Formatting marks
should not be visible in the hamburger
menu when on read-only mode.

- new menuItem.id added for Formatting Marks
as "formattingmarks"
- the id is added to the switch case so that
it can be hidded on read-only mode

Signed-off-by: Bayram Çiçek <bayram.cicek@libreoffice.org>
Change-Id: I17098e0cd0b59556ab85d93b51745ff376f6156e
2023-02-22 11:00:07 +01:00
Henry Castro df095cafaf browser: send ".uno:JumpToMark" command
for internal links.

Change-Id: I5af0677bf9e2f9a2a7559facfe1ff04eab20c673
Signed-off-by: Henry Castro <hcastro@collabora.com>
2023-02-22 09:36:54 +01:00
Henry Castro 1347bd1c60 browser: enable URL popup internal hyperlink
The popups were enabled only for http or https.

Change-Id: I98b5ecf31faed28cfa91c13a3efb3b32ea5f8b42
Signed-off-by: Henry Castro <hcastro@collabora.com>
2023-02-22 09:36:54 +01:00
Henry Castro 4da165cfdc browser: extract internal link bookmark
See documentation:

https://wiki.documentfoundation.org/Documentation/Calc_Functions/HYPERLINK

HYPERLINK(URL[; Cell Text])

Change-Id: I9faa330bb0b632d057aa5b191e4fdd9018c8f90a
Signed-off-by: Henry Castro <hcastro@collabora.com>
2023-02-22 09:36:54 +01:00
Szymon Kłos 4ba872456c Better display of graphic selection
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ia214b194a3fc58b23282c84afc95217ea75b0e4d
2023-02-22 09:36:54 +01:00
Szymon Kłos 4111ed6835 formulabar: handle ctrl+a
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I9fce315a5bf91239b26b596b233d8874ec5211a1
2023-02-22 09:09:10 +01:00
Szymon Kłos ab6bf68ce5 formulabar: allow pasting from external source
this fixes regression introduced in:
commit 164b148d6e
formulabar: allow copying using keyboard

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I7fa5a114daea7a748cb3033a40670b6719a63cc0
2023-02-22 09:09:10 +01:00
Tor Lillqvist 0b74d4ead1 Drop POCO_HAVE_FD_EPOLL for Emscripten
Not sure why I now suddenly needed this, too, when I recompiled Poco
for WASM (with different options than before).

Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: I7221947e0cd2264535b6d34e0640b95d7cfc7cf4
2023-02-22 09:00:39 +01:00
Szymon Kłos ad8f35462e jsdialog: command is better id than text
When id is missing for uno button - command is better source
than text, because it is not translated.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I57d8442b7c826aae6ba5a12c74172871103a3670
2023-02-22 08:48:07 +01:00
Szymon Kłos e7f77af7bd notebookbar: simplify insert symbol button
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ib1615525ba702527ec9b7ac7ac98954d1cc02a2c
2023-02-22 08:48:07 +01:00
Szymon Kłos 824f002808 notebookbar: simplify presentation button
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ia23703365a352a09ca8a8f255d9937b9fb99b433
2023-02-22 08:48:07 +01:00
Szymon Kłos 92007951bc notebookbar: simplify share as button
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I1b1da8dc83f7880bcd8035b071891dd40db27635
2023-02-22 08:48:07 +01:00
Szymon Kłos 94e2be3e87 notebookbar: simplify revision history button
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I524e1768858ce21a7839bde90fd74ce9e69eab7a
2023-02-22 08:48:07 +01:00
Szymon Kłos c1ef1f6a06 notebookbar: simplify insert hyperlink button
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ief7afc1d3583ae138a7e4a8aef59c6eb7dadc7d8
2023-02-22 08:48:07 +01:00
Szymon Kłos a9a4038b40 jsdialog: keep focus on map when using custom buttons in NB
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I2d06c807c098782feb82823a11cb0176782293dd
2023-02-22 08:48:07 +01:00
Gökay Şatır 5f7e385ba2 Remove vex usage from AdminSocketBase.js
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I73192156e7a5a95bf757111db01f95bb38c6e80e
2023-02-22 09:32:04 +03:00
NickWingate e6b26f3daf Consistent captial letters on tests
Signed-off-by: NickWingate <nick.wingate@collabora.com>
Change-Id: Id8300044ef8a9f6cf60b0cb24b2ec18d82aae15d
2023-02-21 21:15:45 +05:30
NickWingate e63b58eeff Specify which part of comment box to click
Three elements have the `.cool-annotation-collapsed` tag
Specify the correct one

Signed-off-by: NickWingate <nick.wingate@collabora.com>
Change-Id: I1c8f16c9ef7cfedecf02fe0c46afbf5cbde90a7c
2023-02-21 21:15:45 +05:30
NickWingate 8ef1cb153b Document repair checks for jsdialog
Previous code checked for a tunneled dialog

Signed-off-by: NickWingate <nick.wingate@collabora.com>
Change-Id: I87f78bd8ef6542dc11132f5938d8c5f3838c5c5c
2023-02-21 21:15:45 +05:30
Patrick Luby 5c40ab722a Fix font name combobox style bug in issue #5838
Swap the ID names of the font name combobox elements and don't add the
"select2-selection--single" class.

Unfortunately, this change does not set the height of the font name combobox
to the font size combobox. I made a few tries at overriding the CSS that
sets the height of buttons to 36px but I was unsuccessful.

Signed-off-by: Patrick Luby <patrick.luby@collabora.com>
Change-Id: Iee8b51a114f5a89627c7b83a4c937c71cad4b213
2023-02-21 16:43:29 +01:00
Patrick Luby 656f93acdf Add list of bugs fixed in the last TestFlight build and reorganize text
Signed-off-by: Patrick Luby <patrick.luby@collabora.com>
Change-Id: If745359b758ed4d5db25b0811bdcf10adacf424c
2023-02-20 21:33:46 +01:00
Patrick Luby 6e36981ad0 Add App Store "Test Details" text
Signed-off-by: Patrick Luby <patrick.luby@collabora.com>
Change-Id: I3ac19f5891bc9219aad267b5189f7d7b01567731
2023-02-20 21:33:46 +01:00
Patrick Luby eba7746e6f Fix issue #5838 Use unique IDs for font name combobox elements
Signed-off-by: Patrick Luby <patrick.luby@collabora.com>
Change-Id: Ie7cedf80ed50ca133282b5805ec0e1417ca6846b
2023-02-20 21:33:46 +01:00
Patrick Luby 681255152d Set log level to "trace" when running within Xcode
Signed-off-by: Patrick Luby <patrick.luby@collabora.com>
Change-Id: I195817990c92e48cdeceb713ee27f0f162785d94
2023-02-20 21:33:46 +01:00
Patrick Luby 8418a033fe Fix issue #5840 by not using base64 encoding for PNG data
The new delta messsage feature expects PNG data to be unencoded or zstd
compressed only.

Signed-off-by: Patrick Luby <patrick.luby@collabora.com>
Change-Id: I776fb8e79fc9617edc5178ec66d6f0bac0706c71
2023-02-20 21:33:46 +01:00
Patrick Luby 24a74c7165 Bump version to 23.05.0
Signed-off-by: Patrick Luby <patrick.luby@collabora.com>
Change-Id: Ib3ae781ec258583c9312459b59ce6aeecb005f47
2023-02-20 21:33:13 +01:00
Patrick Luby 97b9498bdc Issues #5532 and #5831 Replace assert with a log message
Remove assert and allow delta messages to be handled even if
there is no keyframe. Although it might make sense to skip
delta messages if there is no keyframe, that causes some
content, at least in Impress documents, to not render.

Signed-off-by: Patrick Luby <patrick.luby@collabora.com>
Change-Id: I9b1cdc0812d008a6174648b9bc4854519018ffc9
2023-02-20 21:32:10 +01:00
Patrick Luby 3bd8dd063f Modify the Info.plist to ensure that CFBundleVersion is always incremented
AppStoreConnect requires each upload, whether it is released or not, to be
higher than the previous successful upload's CFBundleVersion. So this
script sets the CFBundleVersion to the first and second components of
CFBundleShortVersionString and the UTC timestamp of when this script was
run is appended as the third component (or the second component if there
isn't a second component in CFBundleShortVersionString).

Signed-off-by: Patrick Luby <patrick.luby@collabora.com>
Change-Id: I90a667ed5634dc347eaff2fc0d8e83c3ea005d54
2023-02-20 21:32:10 +01:00
Patrick Luby 8cff1597fe Simplify iOS application test builds in Xcode
Replace leading "../" in absolute paths with "$(SOURCE_ROOT)/../" to avoid
the need to manually edit paths in the Xcode project file.

Also, all group files that have their group set to "path relative to group"
so replace all absolute paths in group files with the appropriate number
of leading "../" and replace "ios-device" in paths with "lobuilddir-symlink".

Lastly, verify that every file listed in the Xcode sidebar exists. A couple
dozen files in the core group have been moved or deleted in LibreOffice so
those were removed.

Signed-off-by: Patrick Luby <patrick.luby@collabora.com>
Change-Id: I09ef66273b049e75066e0a5b2589c80c93db0a77
2023-02-20 21:32:10 +01:00
Marco Cecchetti 7643a76773 handle incoming mouse pointer style msg
Problem: pointer style was set up for a <div> element wrapping the map
pane, anyway a further <div> element in the middle had the pointer
style always set up to 'text', so any incoming mouse pointer msg had
no effect.
Now the pointer style is set up on the same <div> element.

Moreover I noticed that in writer mouse pointer hovering over an
edited text box had a wrong style. This commit fix this issue, too.

Signed-off-by: Marco Cecchetti <marco.cecchetti@collabora.com>
Change-Id: I3f62908b00ab748d19a3651270babb926252fe21
2023-02-20 13:54:14 +01:00
Pedro Pinto Silva d3518f7fe0 Improve connectors popup dropdown #5418
Fixes #5418

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I12efe479c77ebd4c91ebe50687799da9e695e262
2023-02-17 10:34:10 +01:00
Adolfo Jayme Barrientos af466f9447 Translated using Weblate (Esperanto)
Currently translated at 74.4% (387 of 520 strings)

Co-authored-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/eo/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I29d3546f6378485d5e9573d025e52557b22fd3c8
2023-02-16 15:22:06 +01:00
Sveinn í Felli 97a1f2320b Translated using Weblate (Icelandic)
Currently translated at 100.0% (520 of 520 strings)

Co-authored-by: Sveinn í Felli <sv1@fellsnet.is>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/is/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I26e96be690d5cb0c77ab9e32dcdb5e64887a7495
2023-02-16 15:22:06 +01:00
Alex Gabilondo 9937b4273b Translated using Weblate (Basque)
Currently translated at 100.0% (457 of 457 strings)

Co-authored-by: Alex Gabilondo <alexgabi@disroot.org>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/eu/
Translation: Collabora Online/Help
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I3da7fec0fe1086a8261437ec4d839dfabc121321
2023-02-16 15:22:06 +01:00
Andras Timar e158f33e96 Bump version to 23.05.0.1
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Iccd099258d6bb6f965b145fcdad46bcae1da994b
2023-02-16 15:17:20 +01:00
Pedro Pinto Silva 3ad0247f2c GitHub Actions to automate project: Add issues to project
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I0774e7961377c6f8506c2aee528093e135aa1991
2023-02-16 14:50:55 +01:00
Pedro Pinto Silva 1a5f38c34a GitHub Actions to automate project: Add PR to project
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ib28cf0dd5381cd5617ff8f6f2cdc7c564a0ebe0a
2023-02-16 14:50:55 +01:00
Szymon Kłos 44df504098 Zotero: hide also in compact mode when not supproted
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I277476676546ed7518aadd4d1df7e75573436171
2023-02-16 13:05:29 +01:00
Szymon Kłos a60fd0f508 Zotero: don't show if integrator doesn't support
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I5d8ab1fda1760b038009f0bf13779cddbabfef09
2023-02-16 13:05:29 +01:00
Ashod Nakashian add1e10447 browser: handle no graphic-selection when showing media
Change-Id: I6760ade82caf4b268955642181b04cfff83b3f4e
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-02-15 19:06:18 -05:00
Ashod Nakashian 5665b7d2bc wsd: .uno:Copy is allowed for internal use
When copying is disabled, we still allow
copy/pasting *within* the document. What
is disabled is exporting the copied data
to the browser.

Luckily, this code was broken, and it
wasn't really blocking .uno:Copy at all.

Change-Id: I50a01eefbe1de3758b4451385bbc51fbde5878a8
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-02-14 16:37:13 +01:00
Rash419 bd3dee9cbc admin: fix: monitor doesnot try connecting again after disconnecting
regression from 49bac0da17

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: Id006db718d49da2b1f9142c4d6d5c6985b18ecc9
2023-02-14 14:55:48 +01:00
Ashod Nakashian 7bdf97b183 wsd: play media when selected by other views
This fixes an issue with video not playing back
when another view has selected it. We also move
the URL handling to graphicselection, which simplifies
and improves things, albeit at the expense of
unpacking graphicselection payload, which isn't
as clean as one hopes.

Change-Id: I64f81eabf0f0bc850db83233812eaae6d9e036da
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-02-14 12:56:18 +01:00
Ashod Nakashian d8072ad178 wsd: log improvements around media handling
Change-Id: I762226f4457ec180b829d299b85c714ee92581de
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-02-14 12:56:18 +01:00
Aron Budea 698df45bfe browser: Add LTR/RTL text direction commands to Calc tab bar and menu
Signed-off-by: Aron Budea <aron.budea@collabora.com>
Change-Id: I1be5a42b99571309782d6624e6487d6d5817dc57
2023-02-13 16:38:37 +01:00
Tor Lillqvist 6d26fe07a2 Provide separate documentation for building COWASM without the container
Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: I8c1697732a9102197d4c273c23e60378420e598a
2023-02-13 13:57:43 +01:00
Alex Gabilondo abeb9a68c0 Translated using Weblate (Basque)
Currently translated at 100.0% (520 of 520 strings)

Co-authored-by: Alex Gabilondo <alexgabi@disroot.org>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/eu/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ie71fa620d383e1801dad311ba437c64664778f14
2023-02-13 10:51:38 +01:00
Ayhan Yalçınsoy c822989156 Translated using Weblate (Turkish)
Currently translated at 100.0% (520 of 520 strings)

Co-authored-by: Ayhan Yalçınsoy <ayhanyalcinsoy@pisilinux.org>
Co-authored-by: PhD. Ayhan YALÇINSOY <ayhanyalcinsoy@pisilinux.org>
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: I3550892302873457383b07dbadbf5e9ea8e5f4a1
2023-02-13 10:51:37 +01:00
Marc Rodrigues cbd3a91351 Translated using Weblate (Esperanto)
Currently translated at 94.9% (434 of 457 strings)

Translated using Weblate (Esperanto)

Currently translated at 74.0% (385 of 520 strings)

Co-authored-by: Marc Rodrigues <marc.rodrigues@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/eo/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/eo/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I8fc312f16cac74c4568d6f6f8eb5ca94cf9a853f
2023-02-13 10:51:37 +01:00
Andrej Shadura 07fd750116 Translated using Weblate (Slovak)
Currently translated at 89.2% (464 of 520 strings)

Translated using Weblate (Czech)

Currently translated at 100.0% (520 of 520 strings)

Co-authored-by: Andrej Shadura <andrew@shadura.me>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/cs/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/sk/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I484868c79f02a37af14fba9b39c94214bd0bdce8
2023-02-13 10:51:37 +01:00
Weblate 406251e4c0 Added translation using Weblate (Belarusian (latin))
Added translation using Weblate (Belarusian (latin))

Added translation using Weblate (Belarusian (latin))

Added translation using Weblate (Belarusian (latin))

Added translation using Weblate (Belarusian (latin))

Co-authored-by: Weblate <noreply@weblate.org>
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I89ef368a3db30a20d21494771ec00bcd97f7f419
2023-02-13 10:51:37 +01:00
Luna Jernberg 8c1ebd1be7 Translated using Weblate (Swedish)
Currently translated at 100.0% (457 of 457 strings)

Translated using Weblate (Swedish)

Currently translated at 100.0% (520 of 520 strings)

Co-authored-by: Luna Jernberg <droidbittin@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/sv/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/sv/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ibf9f4a0919c8c249432206e013aaafad8ae69ba8
2023-02-13 10:51:37 +01:00
SC 5fbffa76c4 Translated using Weblate (Portuguese)
Currently translated at 100.0% (520 of 520 strings)

Co-authored-by: SC <lalocas@protonmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pt/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I6081620f9c0f0ba2838d225bfd99686b47ef5c9b
2023-02-13 10:51:37 +01:00
Gülşah Köse 3014cb9ede Prevent double feature unlock dialog
If we have already a feature unlock dialog open, don't let open the
second one.

Signed-off-by: Gülşah Köse <gulsah.kose@collabora.com>
Change-Id: I7c7235bc1a64c48ba69f11d0599bbb9839b7fe71
2023-02-13 10:14:34 +01:00
Tor Lillqvist 31135177e4 Fix compiler warnings when building for WASM.
Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: I0fd4fe36cece9caaeb076a0e91894890186706d0
2023-02-12 15:55:24 +01:00
Szymon Kłos 4aeed8fb8c jsdialog: implemented language dialog
- unified menus in notebookbar
- unified 10 favourite languages and More... button
  in statusbar, menubar and notebookbar
- dialog for "more..." languages

This helps with LanguageTool where we have available
lots of languages and list cannot appear fully on the
screen.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I90c59ee4e7abdafc5b81e8ca8aaa89745effb467
2023-02-11 09:53:36 +01:00
Szymon Kłos a4099c6675 Keep list of languages in app properties
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I4557e436847fef82023a63925ee1e849bc44114d
2023-02-11 09:53:36 +01:00
Szymon Kłos 0c10ed7a11 Move language selector to separate file
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I0c327b42ce381cb0be3aac5a3a6a995d15831421
2023-02-11 09:53:36 +01:00
Andras Timar 4ec5c9e8b7 Better documentation of remote grammar checker settings (2)
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I68c0d8f59197c8c8d5dc84522ea6363644ed8c97
2023-02-11 00:02:39 +01:00
Tor Lillqvist 78a1b062b2 Bin superfluous logging of what we are about to send to the JS bits
We are logging what we are evaluating as JavaScript later in the
function anyway.

Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: I79972ec585dee128bbcca910def1d46e8134cdc5
2023-02-10 18:37:16 +01:00
Tor Lillqvist 70baa3a467 Avoid CodeQL warning
Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: I17bb678d0bc977b4355745142f4ccc882652a677
2023-02-10 16:28:21 +01:00
Rash419 7d63a55119 cypress: disable impress searchbar tests
Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: Id3a2555cc9e3adbcf1a616ec3c5d4404c7293c5b
2023-02-10 18:45:16 +05:30
Andras Timar ba48f2917c l10n of Translate button of Writer's notebookbar
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I46f723fc91a28be352044c2d92a4b93e74e1e047
2023-02-08 08:22:49 +01:00
Adolfo Jayme Barrientos 9d84ff75ca Translated using Weblate (Spanish)
Currently translated at 100.0% (457 of 457 strings)

Translated using Weblate (Spanish)

Currently translated at 100.0% (520 of 520 strings)

Translated using Weblate (Catalan)

Currently translated at 100.0% (520 of 520 strings)

Co-authored-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/es/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ca/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/es/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I67426725382fa0e120e8d7c1cd848717cd8d3bd0
2023-02-08 07:50:38 +01:00
Milo Ivir 0266848a1b Translated using Weblate (Croatian)
Currently translated at 100.0% (520 of 520 strings)

Translated using Weblate (Croatian)

Currently translated at 99.8% (519 of 520 strings)

Co-authored-by: Milo Ivir <mail@milotype.de>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/hr/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Iee1a37f505b89db8a5962f3393b6dd1dd6345130
2023-02-08 07:50:38 +01:00
Martin Srebotnjak 52dccc0305 Translated using Weblate (Slovenian)
Currently translated at 100.0% (520 of 520 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: I9f2868b3d12c91c6a5e61ca89df67b47c75457d8
2023-02-08 07:50:38 +01:00
Quentin Pagès b2d3c875b7 Translated using Weblate (Occitan)
Currently translated at 53.6% (279 of 520 strings)

Co-authored-by: Quentin PAGÈS <quentinantonin@free.fr>
Co-authored-by: Quentin Pagès <quentinantonin@free.fr>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/oc/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I9f004194e633044ccf1924443549b20cc4c1712c
2023-02-08 07:50:38 +01:00
Sebastiaan Veld 103baa9b0e Translated using Weblate (Dutch)
Currently translated at 100.0% (520 of 520 strings)

Co-authored-by: Sebastiaan Veld <sebastiaan.veld@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/nl/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ia65f4861dc18f4eb152d5039fc992498cab11fda
2023-02-08 07:50:38 +01:00
Rob Pearson c4be282bc6 Translated using Weblate (English (South Africa))
Currently translated at 100.0% (520 of 520 strings)

Translated using Weblate (English (New Zealand))

Currently translated at 100.0% (520 of 520 strings)

Translated using Weblate (English (United Kingdom))

Currently translated at 100.0% (520 of 520 strings)

Translated using Weblate (English (Australia))

Currently translated at 100.0% (520 of 520 strings)

Co-authored-by: Rob Pearson <rob.dunedin@gmail.com>
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/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I994d14fde07325dd63eea8cf0cdd00c0d416c311
2023-02-08 07:50:38 +01:00
Stanislav Horáček 96abd33b71 Translated using Weblate (Czech)
Currently translated at 100.0% (520 of 520 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: I9286e536973de6ce18d2e4d44c3bee382ab579ad
2023-02-08 07:50:38 +01:00
Ihor Hordiichuk 294d99fd84 Translated using Weblate (Ukrainian)
Currently translated at 100.0% (520 of 520 strings)

Co-authored-by: Ihor Hordiichuk <igor_ck@outlook.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/uk/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ia044752498853cffd6477279823cc81da22ad13c
2023-02-08 07:50:38 +01:00
Matthaiks ffe116cf3a Translated using Weblate (Polish)
Currently translated at 100.0% (520 of 520 strings)

Co-authored-by: Matthaiks <kitynska@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pl/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I421eaf07b5df4c4c31e64ae7a1e86d6c990b38fe
2023-02-08 07:50:38 +01:00
Andras Timar c4d9c9ec7c Translated using Weblate (German)
Currently translated at 100.0% (520 of 520 strings)

Translated using Weblate (Hungarian)

Currently translated at 100.0% (520 of 520 strings)

Co-authored-by: Andras Timar <andras.timar@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/de/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/hu/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I32d63db785227e5eb6e27b764c10d45ebb049e90
2023-02-08 07:50:38 +01:00
Yaron Shahrabani d981516000 Translated using Weblate (Hebrew)
Currently translated at 100.0% (520 of 520 strings)

Co-authored-by: Yaron Shahrabani <sh.yaron@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/he/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I25c84f822dca4038387b4c099059cd03761b12d1
2023-02-08 07:50:37 +01:00
gallegonovato 5dd53ee870 Translated using Weblate (Spanish)
Currently translated at 100.0% (520 of 520 strings)

Co-authored-by: gallegonovato <fran-carro@hotmail.es>
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: Ifc6bcbc7a5ebfb0829526898d85a0d92a7ba8fb6
2023-02-08 07:50:37 +01:00
Joan Montané abc2dc7721 Translated using Weblate (Catalan)
Currently translated at 100.0% (457 of 457 strings)

Translated using Weblate (Catalan)

Currently translated at 99.8% (519 of 520 strings)

Translated using Weblate (Catalan)

Currently translated at 97.6% (508 of 520 strings)

Co-authored-by: Joan Montané <jmontane@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/ca/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ca/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: If803a571e5453daf90f3be7cb98dbe3fbff7c4ee
2023-02-08 07:50:37 +01:00
Andras Timar e4b056bfbf Better documentation of remote grammar checker settings
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I0350cc2005325cec378a8942e3294ed18a66538a
2023-02-07 11:26:51 -04:00
Ashod Nakashian cdec13ce76 wsd: test: simplify UnitWOPIExpiredToken
Change-Id: Ie9e2ccb828479cb2c9b9a072e712552d3a2383e1
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-02-07 14:36:51 +01:00
Ashod Nakashian 318f3f6eb8 wsd: more accurate possible-modification flagging
This improves the flagging of possible-modification
in cases where there might be a race between the
arrival of the ModifiedStatus flag from Core
and the closing of the document. This can happen,
for example, when the user makes an edit and
immediately closes the document. In these cases
we want to be able to assume modification based
on the last activity from the user that may have
modified the document.

The issue this patch fixes is that we were too
aggressive in our assumption of modification,
because it was better to be wrong and try to
save rather than not. However, this also set
the IsModifiedByUser header to the PutFile
request when uploading the document to storage,
which was not accurate or acceptable.

Change-Id: I84228bfbb92f688d303568027171df3686d2cd2b
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-02-07 14:36:51 +01:00
Ashod Nakashian 979f836bdb wsd: const and minor cleanup
Change-Id: I81f7c957085744ee4b80a475b524f660e4b312ea
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-02-07 14:36:51 +01:00
Ashod Nakashian e33d6aa2ca wsd: break cyclic setModified call
DocBroker's setModified notifies the Admin
of modifications, there is no point in
having the Admin call back into DocBroker.

The only reason that this didn't cause
an infinite recursion is that DocBroker
calls the Admin only when the flag has
changed, and since the Admin callback
is done asynchronously, by the time
the Admin handler is called, DocBroker
had already updated its flag, so the
callback doesn't cause an infinite
recursion.

Change-Id: Ic4028d54338f8043221571c25e332b4c77f6d628
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-02-07 14:36:51 +01:00
Andras Timar 3e67787fea Update UNO command translations
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I71f8a276692db0da2e3b6577ccb7a6f391425083
2023-02-06 21:49:53 +01:00
Tushar 9a33c3b8f0 solves toggleMenubar wrong icon. Fixes issue #2816
Signed-off-by: Tushar <tusharbarman123@gmail.com>
Change-Id: I0cbbd1653ff49beb12fc51ebd8b9d66b532ca406
2023-02-06 10:38:55 +01:00
Gülşah Köse bb99f6ee7d Set inital focus widget for repair dialog
Without this change focus is on sheet and ESC does not close the dialog

Signed-off-by: Gülşah Köse <gulsah.kose@collabora.com>
Change-Id: Ib60e681726393c67b38101d6eb48e3693ba156e3
2023-02-06 10:45:38 +03:00
Andras Timar 147a59f925 Update l10n files for Weblate
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I7003ea0859e4b754bbce60a14e4d95dfcb28564f
2023-02-03 12:50:59 +01:00
Andika Triwidada 97b107498a Translated using Weblate (Indonesian)
Currently translated at 100.0% (518 of 518 strings)

Translation: Collabora Online/UI
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/id/
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I832a7d6c8c3d85418b336b643f32af4abc64ea6c
2023-02-03 12:48:04 +01:00
Ihor Hordiichuk 56327ae934 Translated using Weblate (Ukrainian)
Currently translated at 100.0% (518 of 518 strings)

Co-authored-by: Ihor Hordiichuk <igor_ck@outlook.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/uk/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I2d7c209a16220160d9518805002d0161901d950f
2023-02-03 12:48:04 +01:00
Martin Srebotnjak c71e03b07b Translated using Weblate (Slovenian)
Currently translated at 100.0% (518 of 518 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: I47c59b68a1bb29dde4a7d3b89f190de8ba353469
2023-02-03 12:48:04 +01:00
Matthaiks e755eb8911 Translated using Weblate (Polish)
Currently translated at 100.0% (518 of 518 strings)

Co-authored-by: Matthaiks <kitynska@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pl/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I48653dbd7d23e60ee08784dd3a30cbfb6d4c4427
2023-02-03 12:48:03 +01:00
Sebastiaan Veld 184f19950d Translated using Weblate (Dutch)
Currently translated at 100.0% (518 of 518 strings)

Co-authored-by: Sebastiaan Veld <sebastiaan.veld@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/nl/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I09ba302b0091ada6cd7b38f6673463011082be29
2023-02-03 12:48:03 +01:00
Sveinn í Felli 1826ea75fa Translated using Weblate (Icelandic)
Currently translated at 100.0% (518 of 518 strings)

Co-authored-by: Sveinn í Felli <sv1@fellsnet.is>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/is/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I227d6a0b28ebe105a4a89eca36a741fda2234037
2023-02-03 12:48:03 +01:00
Andras Timar e91ffb9c4b Translated using Weblate (Hungarian)
Currently translated at 100.0% (518 of 518 strings)

Co-authored-by: Andras Timar <andras.timar@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/hu/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Iac9833a188f1edb8299367a71c73e4d2fb2fbc92
2023-02-03 12:48:03 +01:00
Yaron Shahrabani c5a18a509d Translated using Weblate (Hebrew)
Currently translated at 100.0% (518 of 518 strings)

Co-authored-by: Yaron Shahrabani <sh.yaron@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/he/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ic8b0735ef9b23592c3f44be65f0b8ed45059b9d5
2023-02-03 12:48:03 +01:00
gallegonovato 94f7ec7150 Translated using Weblate (Spanish)
Currently translated at 100.0% (518 of 518 strings)

Co-authored-by: gallegonovato <fran-carro@hotmail.es>
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: I757a2030249646208c3cc7a92171d773cccaef9f
2023-02-03 12:48:03 +01:00
Rob Pearson 6915d97f1e Translated using Weblate (English (South Africa))
Currently translated at 100.0% (518 of 518 strings)

Translated using Weblate (English (New Zealand))

Currently translated at 100.0% (518 of 518 strings)

Translated using Weblate (English (United Kingdom))

Currently translated at 100.0% (518 of 518 strings)

Translated using Weblate (English (Australia))

Currently translated at 100.0% (518 of 518 strings)

Co-authored-by: Rob Pearson <rob.dunedin@gmail.com>
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/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ie0d609355aa8b03ca3ed8abbc2dae3760066caa7
2023-02-03 12:48:03 +01:00
Stanislav Horáček 1f2faeedf7 Translated using Weblate (Czech)
Currently translated at 100.0% (518 of 518 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: Ie14ee99591736fc8043948cf8c03a09157579a31
2023-02-03 12:48:03 +01:00
inductor 5ca5ed3b01 Use COPY rather than ADD
Signed-off-by: inductor <kela@inductor.me>
Change-Id: I6f34fe0f41af627a8d6966ca42ead3b324251eba
2023-02-03 12:36:02 +01:00
Szymon Kłos 23082d8db1 jsdialog: handle standard responses in messagebox
we need to use containerHandler to get response bindings

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I8d38020ac3fcf889932c1cbd16005dd06f609e27
2023-02-02 11:43:34 -04:00
Pedro Pinto Silva 3199ab9afb Fix the insertion of ghost hyperlinks
Before this commit, if the user would choose to insert a link
without text value (maybe plans to add the title later)
or when the user forgets completely to insert the text value
the hyperlink dialog would disappear and no hyperlink would be inserted.

If the text is inexistent -> take the hyperlink itself as the text value

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I4487d3f3c6084e1da11d042d5e6930d4f772d652
2023-02-02 10:31:46 +01:00
Pedro Pinto Silva ccc90c2403 Do not error out when inserting empty hyperlinks
Plus always good to inform the user of what is happening

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ia9a85062f525139f716669e9cdacf444d6055274
2023-02-02 10:31:46 +01:00
Pranam Lashkari a8cd0ef8ab feature locking: fix custom uno command handling of menu items
adding 'uno' field to menu items broke some custom feature handling
removed '.uno:' from the command and if uno field is missing add lockUno field

it is a revert of a6cc06a with some additional changes

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I1cce37c0d943be5f2cd1ec53f363fbbd73464ac8
2023-02-02 09:25:33 +01:00
Szymon Kłos a135af0db4 Show error when user not provided extension for export file name
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ida96cc7b972ba1b72f596319bcc8129d6218fd92
2023-02-01 12:16:12 +01:00
Andras Timar 719ae9bf4f Bump version to 22.05.10.1
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I90710c1ea62d42741de59928342c9afbf3b5f13c
2023-02-01 00:14:09 +01:00
Andras Timar 1f503b8681 Update l10n files for Weblate
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I92a7619a862fc36085a3964f4836600bf174b328
2023-02-01 00:11:22 +01:00
Pranam Lashkari 4a33dfc1eb zotero: fixed setting browser cached language for citation unintentionally
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I4ac11900b0f000e3acd4cb4dc1768852d133e85b
2023-02-01 00:03:21 +01:00
Pranam Lashkari 7cc870d8fc zotero: show warning citations storage type can't be changed
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I76c6ea8989ac9c5496fc497be5e56fab1d44b1ee
2023-02-01 00:03:21 +01:00
Pranam Lashkari e9a885d32f zotero: introduced support for endnote and footnote citation
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I8429e81c58e72e846ce39de47e883ab6c96c8ebe
2023-02-01 00:03:21 +01:00
Besnik Bleta f7c650c5b2 Translated using Weblate (Albanian)
Currently translated at 99.0% (109 of 110 strings)

Translated using Weblate (Albanian)

Currently translated at 0.0% (0 of 110 strings)

Translated using Weblate (Albanian)

Currently translated at 100.0% (22 of 22 strings)

Translated using Weblate (Albanian)

Currently translated at 50.1% (229 of 457 strings)

Translated using Weblate (Albanian)

Currently translated at 15.0% (69 of 457 strings)

Translated using Weblate (Albanian)

Currently translated at 96.8% (493 of 509 strings)

Translated using Weblate (Albanian)

Currently translated at 14.6% (67 of 457 strings)

Co-authored-by: Besnik Bleta <besnik@programeshqip.org>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/android-app/sq/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/android-lib/sq/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/sq/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/sq/
Translation: Collabora Online/Android app
Translation: Collabora Online/Android lib
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I7c421af6ce5301b420b3422984e0aba7f544133c
2023-01-31 22:46:30 +01:00
Matthaiks f7749d2509 Translated using Weblate (Polish)
Currently translated at 100.0% (457 of 457 strings)

Co-authored-by: Matthaiks <kitynska@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/pl/
Translation: Collabora Online/Help
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ifdb044737bb89cb72f201b31935c64aff2c10d05
2023-01-31 22:46:30 +01:00
Marc Rodrigues f88023fd0d Translated using Weblate (German)
Currently translated at 100.0% (457 of 457 strings)

Translated using Weblate (German)

Currently translated at 100.0% (509 of 509 strings)

Co-authored-by: Marc Rodrigues <marc.rodrigues@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/de/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/de/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ie2748b3550aae618c0033cbc8decddb74592cfc8
2023-01-31 22:46:29 +01:00
Milo Ivir 16d6c41125 Translated using Weblate (Croatian)
Currently translated at 100.0% (457 of 457 strings)

Translated using Weblate (Croatian)

Currently translated at 100.0% (509 of 509 strings)

Translated using Weblate (Croatian)

Currently translated at 100.0% (110 of 110 strings)

Co-authored-by: Milo Ivir <mail@milotype.de>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/android-app/hr/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/hr/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/hr/
Translation: Collabora Online/Android app
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I31259145559ea3ad50d42de491e6b809a1d4cb7c
2023-01-31 22:46:29 +01:00
Szymon Kłos f5b1aa8f43 calc: allow to select mutliple columns using mouse
click and drag mouse pointer on row/column headers to
select them in calc

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I3d62269692ffe47269bd6b7db04175c0cdcfb4bc
2023-01-31 15:54:06 +01:00
Szymon Kłos a523aba4ba formulabar: allow copying using keyboard
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I59c9ee634c4799be421649f99fca3c9be6656781
2023-01-31 15:53:07 +01:00
Szymon Kłos f290a0829a jsdialog: allow arrow up/down navigation in multiline edit
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I1e8ace0c0dae2e06f8d64788b9316e6e1914d7ab
2023-01-31 15:52:17 +01:00
Szymon Kłos 8bc3ed7d54 jsdialog: don't use jQuery in multilineedit
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I1808693c3e9b10d533a60e59f55ac293239235dd
2023-01-31 15:52:17 +01:00
Szymon Kłos 96230dddec jsdialog: move multiline edit widget to separate file
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ie47125930166ac966d057cd48c8e91b43f781bee
2023-01-31 15:52:17 +01:00
Ashod Nakashian 4ee99c992d wsd: test: add timezone tests
Currently these tests share the Language tests,
but in the future they can have their own home.

Change-Id: I8e3c0ea08bc28624f03bd8e3441d8419607173eb
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-01-31 15:38:08 +01:00
Ashod Nakashian 0f9dc9460b wsd: support per-user timezone
Change-Id: I5e2318a34cb39d8d56ec3cf4977ebd75588a7627
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-01-31 15:38:08 +01:00
Rash419 7e06860ddf js: get full uri from indirection server
instead of just routeToken

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I3755fc2536d4358d2c63effdc9e9f9e5da246504
2023-01-31 15:32:30 +01:00
Rash419 c5fd805619 admin: added new admin->client command
routing_rmdoc command is added specifically to notify indirection url
server about document getting removed with its wopiSrc

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: Ic077f210d520394e3ef8ced778604b7343436328
2023-01-31 15:32:30 +01:00
Rash419 f63d07bdea wsd: store routeToken in server
- added routeToken in ClientSession::createPublicURI

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: Ib4a211e69d96589dd735ba8e32ddbe5f98c96509
2023-01-31 15:32:30 +01:00
Rash419 c1dbe39a29 admin: monitors configurable with remote config
- make sure online connect to unique monitors
- able to disconnect monitor if uri doesnot exist in updated
  json

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: Ia6cfd6c8e56416c37d211aae55828c92a4ba27e5
2023-01-31 15:32:30 +01:00
Rash419 2529fa9ee2 notify client when route tokens get updated
- once client get notification it will update the routetoken
by refetching it from indirection url endpoint
- added support to configure indirectionurl enpoint using
remote config

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: Iead22af56c655bdece6b70cc4e97a1fa401b1bae
2023-01-31 15:32:30 +01:00
Rash419 b9914a3042 js: added routeToken as parameter in wopisrc
fetch route_token from indirectionurl and add them in wopisrc
parameter

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I6e724d0c59e12d4f7f6c125ec076e90d20b9b3c8
2023-01-31 15:32:30 +01:00
Pranam Lashkari c7dcca6a16 zotero: added warning for unreachable citation items
In cases where zotero item is added by a user and another user opens the doc,
if the new user does not have that item in the database, he may fail to do activity related to that item,
so we warn the user when we are setting up the zotero

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I9056f38334cb8d9b127ddb594adb083d25bd4472
2023-01-31 09:51:17 +01:00
Pranam Lashkari 321e27b8fc zotero: extracted repeated code into a function
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I6240558e67682b8a00d7c23437523a7170211545
2023-01-31 09:44:41 +01:00
Pranam Lashkari 26744fe861 zotero: added support for uncited and omitted bibliography
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I7d19db38e468da8f405b1d618a60dc3c9231a42b
2023-01-31 09:44:41 +01:00
Gökay Şatır 13387b8df6 Enable deleting page / part with keyboard after a preview is clicked on.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: Icffb947bbe0fb11326a9f5478aec16912248fe0a
2023-01-31 09:40:54 +01:00
Gökay Şatır 2c8cf5bc96 After one the previews is clicked, allow using the arrow keys for navigating between previews.
Left and Right arrow keys are also allowed.

If user presses one of the other keys, focus will be set to map again.

Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I3786ed4b9ef04deb7e3e05f157843fc30f3dc76e
2023-01-31 09:40:54 +01:00
Gülşah Köse 7c3035b2ed Keep focus on map after hyperlink dialog closed
Signed-off-by: Gülşah Köse <gulsah.kose@collabora.com>
Change-Id: I9b74978f7778a9772f69e0d3ad982945cd646120
2023-01-31 09:38:20 +01:00
Aron Budea 5947c08302 browser: Make navigation shortcuts work in read-only mode
F5 for slideshow, too.
Regression from 47c52b90f3

Signed-off-by: Aron Budea <aron.budea@collabora.com>
Change-Id: I056703f575460076693b245f790c7284854162be
2023-01-31 09:36:05 +01:00
Ashod Nakashian 5263305685 wsd: test: cppunit include cleanup
Change-Id: I562cba7de39589088d7c87d43523457e77e7b7f2
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-01-30 07:52:08 -05:00
Ashod Nakashian 92c36dadd9 wsd: test: start next test only after destroying the current
Change-Id: I6924ff288fddd1ad5315b2bf19345d541682bc92
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-01-30 07:52:08 -05:00
Ashod Nakashian 7569f2bcd2 wsd: test: wrap DocBroker destroy callback
This prepares to start the next test
when the DocBroker of the current one
is destroyed.

Change-Id: I3a9672d8d03ad497f15a9bca262dfe1d4f197e41
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-01-30 07:52:08 -05:00
Balázs Varga (allotropia) ceb1ba5668 WASM: Copy all the necessary files from builddir\wasm
to browser\dist, otherwise it has to be done by hand after every
wasm build.

Signed-off-by: Balázs Varga (allotropia) <balazs.varga.extern@allotropia.de>
Change-Id: I46c432116d0d42016dfc1573009d284f82c52114
2023-01-30 13:26:59 +02:00
Pranam Lashkari e6e4aad796 zotero: restric user from changing field type
if document contains existing zotero citation,
restrict user from changing the field storage type.

currently online does not have any ways to change the field type
maybe in future we can add some core APIs to support this

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I58caf403744431d34344f5a1cb635781409d7e68
2023-01-30 10:34:33 +01:00
Szymon Kłos 61e76e0b0b jsdialog: convert delete slide modal from vex
can be found in menubar -> slide -> delete

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I04db9d5a071a229c1a964c3c512582eff05256bf
2023-01-30 09:02:48 +01:00
Tor Lillqvist a07f81388c I don't see the reason to use the intermediate libonline.a for WASM
Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: I520aa232f6ac51a6a57f36d8ac775150aa095a4d
2023-01-30 10:02:06 +02:00
Tor Lillqvist b360c21c7f Avoid warning: deprecated item in EXPORTED_RUNTIME_METHODS: printErr use err instead.
We don't seem to need it anyway, so drop.

Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: Idcccb3e46de692f179f0c01b5179eb43b816dcd5
2023-01-30 08:10:17 +02:00
Tor Lillqvist c944348ad7 Adapt to newer Emscripten SDK
Newer Emscripten SDKs no longer provide <sys/epoll.h> and
<sys/inotify.h>. The corresponding functionality is not present, I
assume.

Until now we have been using Emscripten SDK 2.0.31 and that is still
the recommended known-to-work version, but I am experimenting with the
latest, 3.1.30.

Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: I26e89dc38554548aee3ce2dbf6ba352917ba6266
2023-01-30 08:10:17 +02:00
Tor Lillqvist 4417ec556b The poco-no-special-expat-sauce.diff wants -p0 to apply
Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: Ib0b7227996a7fc9b79ad976cc73b7f8dbbd6ce34
2023-01-30 08:10:17 +02:00
Tor Lillqvist 78b0e82f98 There is no need to call lok_cpp_init() here
LOKit will be initialised in the lok_init_2() call in lokit_main() in
Kit.cpp. This change also puts setting and getting the LOK_OPTIONS
environment variable in the right order.

Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: Iee6f5adcb60bb887083c67666c2d597a15686bf9
Signed-off-by: Tor Lillqvist <tml@collabora.com>
2023-01-29 22:05:20 +02:00
Tor Lillqvist 457c17d7f1 Use COOL log level 'error' instead of 'trace'
Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: I50285b974403e95f48106950a81a1ea9bbd95b86
2023-01-29 21:23:44 +02:00
Ashod Nakashian afefa43a58 wsd: better storage attribute handling
Change-Id: I80ee9ddda00769c5ef34f5f3d7265fd6c5f8648e
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-01-29 08:53:31 -05:00
Ashod Nakashian fac3f05859 wsd: test: add UnitSaveOnExitUnmodified
This tests the headers when always_save_on_exit
is set.

Change-Id: I1aa2d11db79f525f2d94ced8702514d5b3535fc8
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-01-29 08:53:31 -05:00
Ashod Nakashian 2e48738dc8 wsd: fix always_save_on_exit
This fixes the handling of the
always_save_on_exit=true setting.

Change-Id: I6993030c2af7fa080c8421c5cb4fa7cb9ea3eb9b
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-01-29 08:53:31 -05:00
Ashod Nakashian 8e2c238ee9 wsd: test: better UnitWOPISaveOnExit
Improves stability by closing the document
only after uploading has finished.

Change-Id: I20927a5d009998d9d7a25c3309fef02a45077c70
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-01-29 08:53:31 -05:00
Ashod Nakashian dd141f0a4b wsd: merge the storage attributes after uploading
This fixes a corner-case where we modify and
save during uploading, which means that the
next save will not have any modifications,
and we will not merge the attributes until
we get new modifications.

Change-Id: I621e26e04ea3e0d04a9a3d535ff2cfc607d56fef
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-01-29 08:53:31 -05:00
Ashod Nakashian 325c27997b wsd: test: add IsExitSave check in UnitWOPIAsyncUpload_Close
Change-Id: I80936316fb172e5a4ef1811a66d061e63ea0bb27
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-01-29 08:53:31 -05:00
Ashod Nakashian cb3f2627d2 wsd: set IsExitSave attribute before uploading
Change-Id: I4828133d83e66654b4151dad896bd9d6edaa0200
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-01-29 08:53:31 -05:00
Ashod Nakashian f2f6deddc5 wsd: move setForced attribute closer to usage
Change-Id: If4dc0e30e63ab5d35d5ceaad26d05fa5947d0cda
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-01-29 08:53:31 -05:00
Ashod Nakashian 58fe9b184a wsd: set IsExitSave header only when unloading
We now capture the flag that controls the
IsExitSave header directly via the result
of IsUnloading(). This makes passing it
via function parameters obsolete.

Change-Id: Idb4df4f96d66b4a9f92ff9a570f48be895e623be
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-01-29 08:53:31 -05:00
Paris Oplopoios aea0ea0582 browser: Add page number wizard to compact insert menu
Signed-off-by: Paris Oplopoios <paris.oplopoios@collabora.com>
Change-Id: Ibb92c17894166276c0e0ef33736522b282fea993
2023-01-29 12:52:33 +01:00
Tor Lillqvist 81c4adb199 Use branding.css also in the EMSCRIPTENAPP case
Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: I832414864130b9baa1ce7577b3006c7c37dc14eb
2023-01-29 12:45:28 +02:00
Tor Lillqvist cee9bf493a Change hardcoded sample document name and verify that we get it
You now must pass --with-wasm-additional-files=<path> where path
contains a file called sample.docx.

Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: I21e62feb6282833a5d60b31db26328eda63cdaea
2023-01-29 06:56:08 +02:00
Tor Lillqvist 38171388c8 Make the temporary "WASM app" work
Now I hope things are initialised in the right order and the plumbing
gets set up so that messages are passed as expected. It seems to work
most of the time.

Main changes are:

  - The online WASM executable is built using the -s MODULARIZE -s
    EXPORT_NAME=createOnlineModule options. This means that the WASM
    runtime is not automatically initialized and the main() function
    is not automatically started. Only when the createOnlineModule()
    function is called is that done. Calling exported C/C++ functions
    is a little bit more complicated.

  - Code to actually Base64-encode strings to be executed as
    JavaScript when expected is now present in wasmapp.cpp. (After
    being passed through the Base64ToArrayBuffer function on the JS
    side.) Whether this is actually necessary is not fully clear, but
    to keep the code similar to that in the GTK, iOS, and Android
    apps, this is kept as such for now. It would probably work fine to
    just directly create the ArrayBuffer in the C++ (using the EM_ASM
    magic).

  - The COOLWSD::run() function is now run in a separate thread so
    that main() can return.

  - The FakeWebSocket's onopen() function is now called from
    innerMain(), where the HULLO message is sent. It remains a bit
    unclear if this really is the ideal place.

    In the mobile apps the HULLO message is sent and the onopen()
    function is called in the window.socket.onopen() function in
    global.js.

    But note that despite that the WASM app and the mobile apps are
    largely quite similarly constructed and the FakeSocket and
    FakeWebSocket plumbing is the same, there is an important
    difference. In a mobile app the C++ code is what runs first, and
    that then loads the HTML page into WebKit, in which the JS
    runs. In the WASM app it is the other way around. The web page is
    naturaly the one that is loaded and the JS code then starts
    running the C++ code as WASM.

Finally, note that the whole concept that there is a separate "WASM
app" is temporary.

What we eventually want to achieve is that the COOL webpage upon
loading will connect a COOL server. As it does currently. The COOL
server runs the online and core C++ code to load a document, and
renders document tiles and sends those to the client JS code to
dispay.

The new thing will be that, if enabled, in addition to the HTML and JS
resources, the client will also download the WASM code and data
resources. Also, the document and updates to it will be downloaded
while being edited so that a copy can be kept in client memory. But
the WASM code and the downloaded document will remain unused most of
the time. Only if the connection to the COOL server breaks will the JS
start running the WASM code and the JS will talk to online code
running locally as WASM instead of to a COOL server. Obviously there
are still lots of things hanging in the air here regarding how exactly
this will work.

Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: Ib1786a0b485d51797b0f2302d4296aa1ff9df5c1
2023-01-28 22:04:39 +02:00
Tor Lillqvist fe7daff506 Drop the temporary experimenting with loading a document through the LOKit API
After my shortly upcoming commits the document gets loaded and its
tiles displayed by the code that normally does that. No need to
separately verify that loading a document works.

Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: Id5883f36644b5e9b79c3f80ea2131e9f35823b2f
2023-01-28 20:57:03 +02:00
Tor Lillqvist 68915535c1 Add --with-wasm-additional-files=<path>
Pass the absolute pathname to directory that contains a tree of additional
files you want to be available in the WASM in-memory file system. Relevant
only if you build for WASM with Emscripten, i.e. with
--host=wasm32-local-emscripten.

(This is not usable without my still uncommitted / unpushed WIP
hacking.)

Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: I97a4651bed89bf35c50b009e04ddaa3e03aa8006
2023-01-28 19:50:37 +02:00
Tor Lillqvist 84963dafd1 Temporarily hardcode the document URL and UI lang for WASM in more places
(Note that the existence of a window.ThisIsTheEmscriptenApp property
is also a temporary hack; the eventual goal is for a one same Online
webpage to be able to switch automatically from server-based to
WASM-based and back based on connectivity to the server.)

Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: Ia5e3f4008eaaf1543c08482418635dca0d3983e5
Signed-off-by: Tor Lillqvist <tml@collabora.com>
2023-01-28 10:30:26 +02:00
Tor Lillqvist 6514e01da2 Hardcode window.userInterfaceMode to notebookbar for EMSCRIPTENAPP for now
Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: I79611e982de2d49b125d7c887081385c6597a028
2023-01-27 22:56:56 +02:00
Gülşah Köse 83336a491f Keep focus on sheet on empty navbar and notebookbar clicked
When we click empty part of navbar or notebookbar bar, focus
should be on sheet. There are some wide containers
(eg document title) and they looking like empty area. Clicking
there makes lost the focus. Here we add aditional conditions
to check if user cliked that empty looking areas.

Without this patch, focus is on browser itself and CTRL+S
saves the HTML instead of current document.

Signed-off-by: Gülşah Köse <gulsah.kose@collabora.com>
Change-Id: I3a94c2d66dc093475e6674543b36b2c6905df2c0
2023-01-27 15:07:52 +01:00
Ashod Nakashian 048bece8a8 wsd: retry uploading when it fails
When uploading fails, we shouldn't
rely on another save or close to
happen, we should retry as soon as
possible (right after the
min_time_between_uploads_ms elapses).

Change-Id: Ieabe7656583cf391f637986f5403acc87bdc913f
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-01-27 08:44:53 -05:00
Ashod Nakashian 20332f4078 wsd: only users can force uploading
Forced uploading is used to overwrite the
file in storage. This is useful when there
is a conflict. Only the user can decide to
do (or not do) that. As such, no auto-save
or any other case should force an upload.

The issue is that we can clobber a conflicted
version in storage by accident. Forced upload
was used for always_exit_on_save=true setting,
which wasn't really needed as the feature isn't
to forcefully upload, rather to just save and
upload as necessary.

Change-Id: Ie46f38f76392493fe8f8112f05953899963da99b
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-01-27 08:44:53 -05:00
Ashod Nakashian cca0a561ed wsd: never upload using a session that is read-only
Change-Id: Ife0711de46d498e1a9b65c8e0ef7484b37266b32
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-01-27 08:44:53 -05:00
Ashod Nakashian 5dfbac3e81 wsd: remove dead code
We never enter the condition in question
if !_documentChangedInStorage, so the
code removed could never execute.

Change-Id: Ia183b63d7a13f6316eb5f24636997b6e6e417a97
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-01-27 08:44:53 -05:00
Ashod Nakashian 59172b6b6b wsd: comment typos
Change-Id: I0d75d0bd7a2057bb00d248ccd834381f0565426c
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-01-27 08:44:53 -05:00
Ashod Nakashian b862bbc539 wsd: read the always_save_on_exit config once
This is necessary for multi-test scenarios
where the flag might be changed between tests.

Change-Id: I2fd9c21bc7ccdf2c9941ca3a959b578ec226facc
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-01-27 08:44:53 -05:00
Ashod Nakashian ecc8bc5bbc wsd: exit code 0 for the exit command to kit
No reason to consider the 'exit' command
unexpected or a cause for error, so the
process exit code needs not be anything
but 0.

Change-Id: I352f706c6f174b66e9a4814fc35bb95b1a3bf3d6
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-01-27 08:44:53 -05:00
Ashod Nakashian 11eb6885a6 wsd: whitespace formatting
Change-Id: I5d6d61e6b74aabbf8cc3ac8555f40400397b6ff6
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-01-27 08:44:53 -05:00
Ashod Nakashian d585ebe02d wsd: simpler canUploadToStorage implementation
Change-Id: I445a68ef1834a7ec43e7885164b092f728607584
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-01-27 08:44:53 -05:00
Ashod Nakashian 44a27110e1 wsd: better logging
Change-Id: I98bc45d287c44beb10bfe6fbe02d208f37531515
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-01-27 08:44:53 -05:00
Ashod Nakashian 63ac54a552 wsd: test: better UnitOAuth
There was a race between the closedocument
command and the save command that caused
occassional random failures.

Change-Id: I9e0e71545bab586826273fdb6e160b624be91dbe
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-01-27 08:03:18 -04:00
Ashod Nakashian 57fe2061eb wsd: test: searchable prefix in test-server logs
Change-Id: I83cdb0f43e9681a763b964829179954e6d1b3c8a
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-01-27 08:03:18 -04:00
Ashod Nakashian 0adef5dd19 wsd: test: move UnitWOPIAsyncUpload_Close
Another failure-to-upload test that best
belongs to the UnitWOPIFailUpload suite.

Change-Id: I48f34413337f34a959a38402409e7321203dff35
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-01-27 08:03:18 -04:00
Pedro Pinto Silva 610a62be6d Sidebar: Fix to allow ratio to span across columns
There is an element displayed as a column before ratio
and we then hide it which is fine but, when ratio label
becomes to lengthly (Seitenverhältnis beibehalten) it then
gets cropped due to lack of space.
- Make it span across columns
- Do not align to the end
- Remove left margin from checkbox

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I02ec7a608c0b330a52fa70db3b453fe04fefa805
2023-01-27 12:53:26 +01:00
Tor Lillqvist fce151877e I get "warning: unsupported syscall: __sys_prlimit64" in WASM so avoid that
Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: Iabcde9bcbfd6f1a966503822c1f72d3d3ecf3571
2023-01-27 11:01:05 +02:00
Tor Lillqvist 1e55de0924 Use -gseparate-dwarf like in core
Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: Ie7814a0f0f02a577f641a7d223fbb0c81ab3b2ab
2023-01-27 10:06:12 +02:00
Tor Lillqvist 48c96e70ca More WASM hacking
Apparently handle_cool_message() gets called from a web worker thread
and then using emscripten_run_script() in wasmapp.cpp to run a JS
snippet that refers to the 'window' variable will not work. That
variable exists only in the main thread. So use MAIN_THREAD_EM_ASM()
instead.

Hardcode the document URL for now also in wasmapp.cpp.

Try to send the HULLO message from COOLWSD::innerMain().

Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: Ic48042c6d0c6239a3b82e74f0565056a15f3d98d
2023-01-26 22:01:14 +02:00
Szymon Kłos ae06a2db8b Add export to PDF & EPUB in menubar
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I4364dae88fa6943381137a554d3bde12be8a376a
2023-01-26 18:23:18 +01:00
Szymon Kłos 6510e42f8e Include PDF and EPUB in Get_Export_Formats_Resp
After rework to grouped download as and also export
entry fro PDF and EPUB - these formats were not included.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I91e5b25823017a3164fef2b63b2552e9893cf0b0
2023-01-26 13:06:57 +00:00
Szymon Kłos 3285ea6cae Don't show pdf export for readonly templates
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I0f67eb0ccd31f135da7f416b038cd7ca547fb290
2023-01-26 13:06:57 +00:00
Szymon Kłos 502c3de01d Add export as epub
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I49c152b3dda6d156b65221cfac2a06f7b79b0547
2023-01-26 13:06:57 +00:00
Szymon Kłos b0dd943089 Add export as pdf
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I61853fb2213e57acd02d7a3eee53e86f43cb36b5
2023-01-26 13:06:57 +00:00
Szymon Kłos 93e0641fd0 Use dispatch for downloadas and saveas
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I7f75e4a632dcce0c5c086ab570d2f3877f717f52
2023-01-26 13:06:57 +00:00
Tor Lillqvist 9e81cdefde Stop using Qt
Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: Icb7c280c20ed02ef5840272a0e979e1446af2b56
2023-01-26 10:02:29 +02:00
Tor Lillqvist b1bb133e52 Bump PTHREAD_POOL_SIZE to 15
Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: I9c6c7075fff9d67c921d0c525eb8c0fe474b847c
2023-01-26 09:12:06 +02:00
Tor Lillqvist b1d43c395a Leave ThreadPool max concurrency at 2 for Emscripten
The default would be std:🧵:hardware_concurrency() which can be
ridiculously high for the WASM case.

Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: I77902a58b96248d7afe638a039886712516fe905
2023-01-26 00:13:07 +02:00
Tor Lillqvist a841686c79 Avoid misleading wording in log
If we are not caching tiles, it is misleading to log "Saved cache tile".

Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: I0e0ec446d5edf266ea4acb42883c49d5f7063763
2023-01-25 23:20:12 +02:00
Pranam Lashkari f626f9b723 zotero: zotero: handle section deletion
this also helps in case of undo

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: Ib14b1772a7bfd2f9de0c0bb065c5f596c48c94b0
2023-01-25 16:56:35 +01:00
Pranam Lashkari bcf1f0fbc7 zotero: handle bookmark deletion
this also helps in case of undo

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I51cf51cab25569a43761fe81a068e608fa8d9601
2023-01-25 16:56:35 +01:00
Pranam Lashkari d0737222e9 zotero: handle refmark deletion
this also helps in case of undo

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I14154724c55c2648aace493503be92180c7aa961
2023-01-25 16:56:35 +01:00
Pranam Lashkari b5d24834f1 zotero: handle fieldmark deletion
this also helps in case of undo

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I880fa4589f4b40e3f7733ff59f3c6866f82db899
2023-01-25 16:56:35 +01:00
Pedro Pinto Silva f051b62e35 Fix checkbutton label vertical alignment and spacing
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ib32dfe4f7f2b0f8bb0b22434696143924f4fef17
2023-01-25 12:50:31 +01:00
Pedro Pinto Silva b33a0c017e Sidebar fix cropped checkbutton label
In some languages (de) some labels were being shifted and ultimately
cropped due to their length. Example: Using German; selecting an image
-> the 'Seitenverhältnis beibehalten' was being cropped

Remove padding for those labels when on the sidebar

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I4097268682a1890543c9d2a8107e621ea15335c9
2023-01-25 12:50:31 +01:00
SC 230da39a9a Translated using Weblate (Portuguese (Brazil))
Currently translated at 91.4% (418 of 457 strings)

Translated using Weblate (Portuguese)

Currently translated at 100.0% (457 of 457 strings)

Co-authored-by: SC <lalocas@protonmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/pt/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/pt_BR/
Translation: Collabora Online/Help
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I987330a2af4a95a55d1c91e78d2a414309a94e71
2023-01-25 10:00:32 +01:00
Rob Pearson e73cc059bf Translated using Weblate (English (South Africa))
Currently translated at 100.0% (457 of 457 strings)

Translated using Weblate (English (New Zealand))

Currently translated at 100.0% (457 of 457 strings)

Translated using Weblate (English (United Kingdom))

Currently translated at 100.0% (457 of 457 strings)

Translated using Weblate (English (Australia))

Currently translated at 100.0% (457 of 457 strings)

Translated using Weblate (English (South Africa))

Currently translated at 100.0% (509 of 509 strings)

Translated using Weblate (English (New Zealand))

Currently translated at 100.0% (509 of 509 strings)

Translated using Weblate (English (United Kingdom))

Currently translated at 100.0% (509 of 509 strings)

Translated using Weblate (English (Australia))

Currently translated at 100.0% (509 of 509 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: I823c8e8cf4ee0d25e865a7a73529769e0c5cf43b
2023-01-25 10:00:32 +01:00
Pedro Pinto Silva f65cf558de Translated using Weblate (German)
Currently translated at 95.2% (485 of 509 strings)

Co-authored-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Co-authored-by: Pedro Silva <pedro.silva@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/de/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ic4d48de3ce4c5964959a06d6b54b56fced87e87f
2023-01-25 10:00:32 +01:00
Gökay Şatır e4b9cfba2d Fix group headers while split panes is active.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: If2d7363c40fff420af4e4aabd4c8dc4328c28a59
2023-01-25 09:32:08 +03:00
Gökay Şatır b385b72462 Start group loop from beginning or first group won't be included.
Therefore, head won't be drawn.

Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I2200ca8a76dab01b5c019eb38c0bd3e822545b44
2023-01-25 09:32:08 +03:00
Gökay Şatır c1624571ac Fix group header drawings (Calc).
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I2ca7300ae097f8c6bc9fe7ae469b4a64dd656b53
2023-01-25 09:32:08 +03:00
Pranam Lashkari 48b893ca2c zotero: added unlink citation support for section
sections are used to represent bibliography when citations are used as refmark

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I4094cf053cb3fe1c86eb7f7f0a95816fb51fa8c7
2023-01-24 19:45:57 +05:30
Ashod Nakashian b9eb4111ae wsd: http: define named HTTP status codes
This replaces the hard-coded status-code
numbers with named compile-time constants.

Change-Id: Ibe678fb2c533b29efd696e4430f5377523eeb298
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-01-24 07:58:07 -05:00
Pedro Pinto Silva 3d7cfce80e Fix DE translation for References menu
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I8cb65493d104c601f546b302ca16668f129bd780
2023-01-24 12:21:32 +01:00
Pranam Lashkari 50f0f025f2 zotero: fixed bookmark insertion
fixed regression: user was note able to insert any citations as bookmark

This also reduces number of queries to find the citations under the cursor

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I40148e61a0109e5a807b50ea0121ab623bc41e4d
2023-01-24 16:22:50 +05:30
Pedro Pinto Silva 5068a79213 Fix w2ui menus appearing with unnecessary scrollbars
Before this commit, on chrome/mium, menus such as
image or save as in the tabbed view (and with the browser zoom
set to bellow 80%) were being displayed with scrollbars.

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Id32e86229fe5d7aad293d24a20c9bfa555fbe78b
2023-01-24 11:52:29 +01:00
SC f234e2b5e0 Translated using Weblate (Portuguese)
Currently translated at 100.0% (457 of 457 strings)

Translated using Weblate (Portuguese)

Currently translated at 100.0% (509 of 509 strings)

Co-authored-by: SC <lalocas@protonmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/pt/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pt/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I32139365ec17589f099f08291b0e24882343731e
2023-01-23 19:14:14 +01:00
Sebastiaan Veld 7ab5070c1a Translated using Weblate (Dutch)
Currently translated at 100.0% (457 of 457 strings)

Translated using Weblate (Dutch)

Currently translated at 100.0% (509 of 509 strings)

Co-authored-by: Sebastiaan Veld <sebastiaan.veld@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/nl/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/nl/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: If603c904cc76065eb1dc82799d505295be7298ab
2023-01-23 19:14:13 +01:00
Sveinn í Felli 97fa972359 Translated using Weblate (Icelandic)
Currently translated at 100.0% (509 of 509 strings)

Co-authored-by: Sveinn í Felli <sv1@fellsnet.is>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/is/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I40ee38e6a991127697009b31b0320f25cc570762
2023-01-23 19:14:13 +01:00
Stanislav Horáček 0b5a750abc Translated using Weblate (Czech)
Currently translated at 100.0% (457 of 457 strings)

Translated using Weblate (Czech)

Currently translated at 100.0% (509 of 509 strings)

Co-authored-by: Stanislav Horáček <stanislav.horacek@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/cs/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/cs/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I3c4e879c7307644347f144da774c6e9f1d2e551a
2023-01-23 19:14:12 +01:00
Ihor Hordiichuk 567144652b Translated using Weblate (Ukrainian)
Currently translated at 100.0% (457 of 457 strings)

Translated using Weblate (Ukrainian)

Currently translated at 100.0% (509 of 509 strings)

Co-authored-by: Ihor Hordiichuk <igor_ck@outlook.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/uk/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/uk/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I8d3e89572701e8b3151acc1ab1881d9d154ce9eb
2023-01-23 19:14:12 +01:00
Ayhan Yalçınsoy 4e220acbae Translated using Weblate (Turkish)
Currently translated at 100.0% (457 of 457 strings)

Translated using Weblate (Turkish)

Currently translated at 100.0% (509 of 509 strings)

Co-authored-by: Ayhan Yalçınsoy <ayhanyalcinsoy@pisilinux.org>
Co-authored-by: PhD. Ayhan YALÇINSOY <ayhanyalcinsoy@pisilinux.org>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/tr/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/tr/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I798d339057e6acd1e8baf3bb792420c61b3cd2d9
2023-01-23 19:14:11 +01:00
Martin Srebotnjak 8145f5fc38 Translated using Weblate (Slovenian)
Currently translated at 100.0% (457 of 457 strings)

Translated using Weblate (Slovenian)

Currently translated at 100.0% (509 of 509 strings)

Co-authored-by: Martin Srebotnjak <miles@filmsi.net>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/sl/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/sl/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I847782a221a6646867333dd41b1c5703565aa4a6
2023-01-23 19:14:11 +01:00
Matthaiks a76bc0629e Translated using Weblate (Polish)
Currently translated at 100.0% (457 of 457 strings)

Translated using Weblate (Polish)

Currently translated at 100.0% (509 of 509 strings)

Co-authored-by: Matthaiks <kitynska@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/pl/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pl/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Idca5d8463ab91bb389c865fe4a92a2261cb5fa90
2023-01-23 19:14:10 +01:00
Translator-3000 179333efec Translated using Weblate (Italian)
Currently translated at 100.0% (457 of 457 strings)

Translated using Weblate (Italian)

Currently translated at 100.0% (509 of 509 strings)

Co-authored-by: Translator-3000 <weblate.m1d0h@8shield.net>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/it/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/it/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Idcef95794926837bef4dc073781addf7e6ff61ed
2023-01-23 19:14:10 +01:00
Andika Triwidada e5619b2230 Translated using Weblate (Indonesian)
Currently translated at 100.0% (457 of 457 strings)

Translated using Weblate (Indonesian)

Currently translated at 75.9% (347 of 457 strings)

Translated using Weblate (Indonesian)

Currently translated at 100.0% (509 of 509 strings)

Co-authored-by: Andika Triwidada <andika@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/id/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/id/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ib7b3ed5b6cfd8844e685d413ad948cf2b57c3bd0
2023-01-23 19:14:09 +01:00
Andras Timar b6f5d84d65 Translated using Weblate (Hungarian)
Currently translated at 100.0% (509 of 509 strings)

Co-authored-by: Andras Timar <andras.timar@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/hu/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Id12abb09ed589013ad70728cdee0cfc8872fc2e4
2023-01-23 19:14:08 +01:00
Yaron Shahrabani 8e49cfe0fd Translated using Weblate (Hebrew)
Currently translated at 100.0% (509 of 509 strings)

Co-authored-by: Yaron Shahrabani <sh.yaron@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/he/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I5093e2f6ca07cc10a2e2f239f3681f859659b5c0
2023-01-23 19:14:08 +01:00
Eda 1ac761ba06 Translated using Weblate (French)
Currently translated at 100.0% (509 of 509 strings)

Co-authored-by: Eda <eda@mutu.net>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/fr/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I62216bddb4ea0a0129d2413b5d16eb8629c4cc0e
2023-01-23 19:14:07 +01:00
William Gathoye 7e1a270ea8 Translated using Weblate (French)
Currently translated at 100.0% (457 of 457 strings)

Translated using Weblate (French)

Currently translated at 100.0% (509 of 509 strings)

Co-authored-by: William Gathoye <william+weblate@gathoye.be>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/fr/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/fr/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I6b4a4a3b271b94e0ca075ac6c419f44d5d32ea20
2023-01-23 19:14:07 +01:00
gallegonovato 91baad83df Translated using Weblate (Spanish)
Currently translated at 100.0% (457 of 457 strings)

Translated using Weblate (Spanish)

Currently translated at 100.0% (509 of 509 strings)

Co-authored-by: gallegonovato <fran-carro@hotmail.es>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/es/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/es/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I3327a3a20260d145254c7e7d8344879f1750ef71
2023-01-23 19:14:06 +01:00
Pedro Pinto Silva d8f4ee20db Translated using Weblate (German)
Currently translated at 95.2% (485 of 509 strings)

Co-authored-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Co-authored-by: Pedro Silva <pedro.silva@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/de/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I2aad38838748e7ab23522c000f38647b799e01ca
2023-01-23 19:14:06 +01:00
Ashod Nakashian d9971555ef wsd: test: better assertion of string equality fail
Change-Id: Ib9dfa5cde4e1297f6d49a7c1f98ed774a425d255
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-01-23 11:07:55 -04:00
Ashod Nakashian 9ccb57b4c3 wsd: test: move UnitWOPIAsyncUpload_Modify
This is a failure-to-upload test that best
belongs to the UnitWOPIFailUpload suite.

Change-Id: I28e4e55f8298fe964537f8b67b0e717ecf2e3935
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-01-23 11:07:55 -04:00
Ashod Nakashian c311e8a5e3 wsd: test: assert backwards compatibility headers
Change-Id: If1951cb28daadb90e5ba6e2458ea10292088c4a1
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-01-23 11:07:55 -04:00
Ashod Nakashian d8505de24c wsd: test: add IsExitSave check in UnitWOPIAsyncUpload_Close
Change-Id: I80936316fb172e5a4ef1811a66d061e63ea0bb27
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-01-23 11:07:55 -04:00
Ashod Nakashian 6b8eba8949 wsd: test: UnitWOPIAsyncUpload_Close wait for DocBroker destroy
Change-Id: Ic55635c6688cfe2718519f996c32c13589edc98b
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-01-23 11:07:55 -04:00
Ashod Nakashian 87d33d123b wsd: test: new onDocumentUploaded event
Change-Id: Ia12446f1958b6df41231f5fcca4fb3e50ab07aaf
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-01-23 11:07:55 -04:00
Ashod Nakashian c8b7ebe2d8 wsd: test: minor cleanup of UnitWOPIAsyncUpload_Close
Change-Id: Ibeca18164562ca0b63d1b65e212d535eb0e5a2c6
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-01-23 11:07:55 -04:00
Ashod Nakashian 0b70dc1abf wsd: test: break the socket flushing loop if nothing to flush
During unit-tests, it is safe to break the flushing sooner
to reduce the wait time. However, this is risky when
flushing the sockets outside of tests, because there
could still be some important processing happening.
In that case, it's best to wait for the full duration
of the flushing.

Change-Id: I4841510f4e80c3e5bd13b203647828e4c5f89d4d
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-01-23 11:07:55 -04:00
Ashod Nakashian f7b33abfc2 wsd: test: modernize UnitWOPIAsyncUpload_ModifyClose
Change-Id: Ic75235e16d0280f84258bece6cf2856eb56e6a6a
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-01-23 11:07:55 -04:00
Ashod Nakashian 8003833a84 wsd: test: better UnitWOPIAsyncUpload_Modify
We now upload 3 times to succeed.

This simulates a user modifying and saving
twice before giving up and closing the
document, which succeeds in uploading.

Change-Id: Ida40f79a76fc94436c0d4b4fc1ad3e7b7acc997b
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-01-23 11:07:55 -04:00
Ashod Nakashian d7914994c4 wsd: test: modernize UnitWOPIAsyncUpload_Close
Change-Id: I798755fa6415a818bf8f9d55001c9c5cca0efeb8
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-01-23 11:07:55 -04:00
Ashod Nakashian 9211978446 wsd: test: modernize UnitWOPIAsyncUpload_Modify
Change-Id: I2be5f7b84df86060cc75c859ed164f0acb7749f1
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-01-23 11:07:55 -04:00
Ashod Nakashian db50626aff wsd: test: refactor BaseUnit self-test
The BaseUnit test didn't belong to UnitTimeout
and, more important, it needed access to
private members to both validate their state
and to reset them (since the test is artificially
initializing both WSD and Kit tests and cannot
uninitialize them, lest we unload ourselves).

As such, the self-test is now internal to
BaseUnit, with the added bonus that it
is called on all tests and not just UnitTimeout.

Also, more assertions have been added.

Change-Id: Ieaf60594f39e978a7250407262bd8bbc9b642c43
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-01-23 11:07:55 -04:00
Gökay Şatır 43626dc5d5 Remove handler assignment from mobileWizardBuilder.
Handler assignment is moved to container's function.

Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: Ic0a36273ab223ad810444abb5e6fa035d9e9576f
2023-01-23 14:50:43 +03:00
Gökay Şatır d552526d15 Improve JSON data handling for response buttons.
Sometimes there other controls other than buttons inside a button box, so use object.type instead of pushbutton directly.

Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I88441f6282f961a7b7999430538cd613ce8b60e1
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
2023-01-23 14:50:43 +03:00
Michael Meeks 1bac11462f Improve macro option documentation.
Java & beanshell macros are unlikely to work, since they would
require a JVM in the Kit process.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I390fb66d7aa835530dd7d2210fd8e1e89cdba325
2023-01-23 09:33:16 +01:00
Dennis Francis 880a1907f2 calcRTL-ui:open submenu to left
Signed-off-by: Dennis Francis <dennis.francis@collabora.com>
Change-Id: Icb08839c28847e90605cae808b9d6441d5fc2f51
2023-01-23 10:35:21 +05:30
Andras Timar 4ebb9c4b65 Revert "browser: add "More..." menu item to Language menu"
Reason: it exposes a large and complicated dialog from core that we
do not want to see in Online.
This reverts commit 1da779a2bc.

Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I78845328372e639e7c48604e990b73059a9e3995
2023-01-22 22:07:36 +01:00
Andras Timar 10f4da35ce Update UNO command translations
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: If91fa2e81ce9b20f50eb81cf7e6d84a03410d1bf
2023-01-20 13:02:48 +01:00
Andras Timar cb09109e2e Update l10n files for Weblate
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ie16a750610cd3b47b9644af61ede549883d4500e
2023-01-20 11:34:18 +01:00
Andras Timar bcd881ab79 grammar fix
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Icfb7517331cd19291f1e01acf8681bd4d74b9ce5
2023-01-20 11:29:35 +01:00
Andras Timar cc7e52f65c There can be only one biblography in the document
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ieed8c58f19232d30741b89f79e56696d3a083a24
2023-01-20 11:27:51 +01:00
Andika Triwidada 1a6eb20133 Translated using Weblate (Indonesian)
Currently translated at 75.4% (345 of 457 strings)

Translated using Weblate (Indonesian)

Currently translated at 100.0% (506 of 506 strings)

Co-authored-by: Andika Triwidada <andika@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/id/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/id/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I2e265644e5c537839aa308c4edaed8cffd5e85fc
2023-01-20 11:24:17 +01:00
Andi Chandler 1ce83915cd Translated using Weblate (English (United Kingdom))
Currently translated at 100.0% (506 of 506 strings)

Co-authored-by: Andi Chandler <andi@gowling.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/en_GB/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I646195986ef0f8f1db546bbc971f53705343402d
2023-01-20 11:24:17 +01:00
Stanislav Horáček 6933b55f07 Translated using Weblate (Czech)
Currently translated at 100.0% (506 of 506 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: I9b3d83238e3ae11c6b668c1bf54b60f192ead719
2023-01-20 11:24:17 +01:00
Mike Kaganski 94b7ff243d Translated using Weblate (Russian)
Currently translated at 100.0% (506 of 506 strings)

Co-authored-by: Mike Kaganski <mikekaganski@hotmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ru/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I61826ca70f0c672392576cf7d908ba35569baea9
2023-01-20 11:24:17 +01:00
Matthaiks 359874d647 Translated using Weblate (Polish)
Currently translated at 100.0% (506 of 506 strings)

Co-authored-by: Matthaiks <kitynska@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pl/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I51ec40001c234741b6998d3dc8a9d8efc778d9a1
2023-01-20 11:24:17 +01:00
Sveinn í Felli 9b4e922baa Translated using Weblate (Icelandic)
Currently translated at 100.0% (506 of 506 strings)

Co-authored-by: Sveinn í Felli <sv1@fellsnet.is>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/is/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I2f7c2dc76e38622ec7d6d6c08a12b4be93e65e01
2023-01-20 11:24:17 +01:00
Yaron Shahrabani 7351a866e1 Translated using Weblate (Hebrew)
Currently translated at 100.0% (506 of 506 strings)

Co-authored-by: Yaron Shahrabani <sh.yaron@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/he/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Icda5da866cf032665a54201dcf1160a9a72c29cc
2023-01-20 11:24:17 +01:00
Nathan cc2f89788f Translated using Weblate (French)
Currently translated at 100.0% (506 of 506 strings)

Co-authored-by: Nathan <bonnemainsnathan@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/fr/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Iad7f6a68a327d25808f632f908993a96cdfa9429
2023-01-20 11:24:16 +01:00
Alex Gabilondo 2a707b5554 Translated using Weblate (Basque)
Currently translated at 100.0% (506 of 506 strings)

Co-authored-by: Alex Gabilondo <alexgabi@disroot.org>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/eu/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I97a36e586b60a95fb13e42202c9fe8a2a2840d9a
2023-01-20 11:24:16 +01:00
Rob Pearson 637946cc20 Translated using Weblate (English (South Africa))
Currently translated at 99.8% (505 of 506 strings)

Translated using Weblate (English (United Kingdom))

Currently translated at 99.8% (505 of 506 strings)

Co-authored-by: Rob Pearson <rob.dunedin@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/en_GB/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/en_ZA/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I54408ef2331844ca5f45b098cff5cdf01c9be428
2023-01-20 11:24:16 +01:00
Ihor Hordiichuk 6714867f21 Translated using Weblate (Ukrainian)
Currently translated at 100.0% (506 of 506 strings)

Co-authored-by: Ihor Hordiichuk <igor_ck@outlook.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/uk/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I9ad890b1fde60fb4c89076e6b69a0eb5dd17060a
2023-01-20 11:24:16 +01:00
Ayhan Yalçınsoy 22e646ef19 Translated using Weblate (Turkish)
Currently translated at 100.0% (506 of 506 strings)

Co-authored-by: Ayhan Yalçınsoy <ayhanyalcinsoy@pisilinux.org>
Co-authored-by: PhD. Ayhan YALÇINSOY <ayhanyalcinsoy@pisilinux.org>
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: I4d472be1501913341fbff6539482d87268f607b6
2023-01-20 11:24:16 +01:00
Luna Jernberg d554e689a7 Translated using Weblate (Swedish)
Currently translated at 100.0% (506 of 506 strings)

Co-authored-by: Luna Jernberg <droidbittin@gmail.com>
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: I65235160bffa8a615e62e05be34bc83f3a30db2b
2023-01-20 11:24:16 +01:00
Martin Srebotnjak 9c3d48acbc Translated using Weblate (Slovenian)
Currently translated at 100.0% (506 of 506 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: I849584f853c4838ed708565a747b27b0be2dabec
2023-01-20 11:24:16 +01:00
Andras Timar 48506c02ed Translated using Weblate (Hungarian)
Currently translated at 100.0% (506 of 506 strings)

Co-authored-by: Andras Timar <andras.timar@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/hu/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ia51589a694468ed6649889e2930e9f2e3518e4ac
2023-01-20 11:24:16 +01:00
gallegonovato 675f364f93 Translated using Weblate (Spanish)
Currently translated at 100.0% (506 of 506 strings)

Co-authored-by: gallegonovato <fran-carro@hotmail.es>
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: I40b9352567747747def5b3ea240e71be0e30d4c7
2023-01-20 11:24:16 +01:00
Adolfo Jayme Barrientos b764318970 Translated using Weblate (Spanish)
Currently translated at 100.0% (506 of 506 strings)

Translated using Weblate (Catalan)

Currently translated at 99.8% (505 of 506 strings)

Translated using Weblate (Asturian)

Currently translated at 50.7% (257 of 506 strings)

Co-authored-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ast/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ca/
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: I822065e96636953b25780ed744b0b9b1d4f05595
2023-01-20 11:24:16 +01:00
Andras Timar 142f83f8bc Bump version to 22.05.10.0
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I8da3583a13c1745fda487d5673a8113f6a18c974
2023-01-20 11:21:18 +01:00
Pedro Pinto Silva 9d70a84e35 Fix disabled buttons inconsistencies
Primary buttons, secondary buttons and others are getting styled
differently for the same 'disabled' status. Plus, they are react
on hover which can lead the user to wrongly think they are active.
 - Fix inconsistencies and make it clear that they are all disabled

Example dialog: Find and replace

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I45be52ecda264d0af9a53a70c222d1047a3cdf73
2023-01-20 10:22:10 +01:00
Pedro Pinto Silva 5372e465af Increase color contrast on calc's dropdown marker
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I956f199bd69c32639d1b75993769c18fd85be693
2023-01-20 09:05:52 +01:00
Pedro Pinto Silva cb4e512940 Fix dropdown's arrow position
Before this commit, the text in a dropdown could be overlapped by the
triangle (arrow). Example: Insert > Page number dialog

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I770acb10b89239bce280cf44ad56b9ec2c3a8264
2023-01-19 14:45:24 +01:00
Szymon Kłos 1ade752e9c jsdialog: listbox doesnt need tabindex
it confuses our selectors for focus widgets when
widget is hidden. unfortunately this property was
added to the inner node not top one so we don't see
.hidden class. listbox doesn't need tabindex at all
so just remove it

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I0d596bf37750cd4761d61f249db0c8c398f7bf16
2023-01-19 12:25:06 +01:00
Dennis Francis 664ed117ad calcRTL: sync map area after RTL mode switch
Signed-off-by: Dennis Francis <dennis.francis@collabora.com>
Change-Id: Ie5ff495d5ea6a75963f0379bbb670b3d04f6c656
2023-01-19 10:49:55 +01:00
Dennis Francis 586289e50c calcRTL: fix rtlParts array search
Signed-off-by: Dennis Francis <dennis.francis@collabora.com>
Change-Id: Icfbaf2b1eeabb7f672d58ee62af1b645ac0e0541
2023-01-19 10:47:58 +01:00
Dennis Francis a8d9d222dc calcRTL: ability to switch sheet to RTL/LTR...
layout in the middle of a session.

Signed-off-by: Dennis Francis <dennis.francis@collabora.com>
Change-Id: Ic0152f28050621b4a7bed78160489dfebbaa44f1
2023-01-19 10:47:58 +01:00
Gülşah Köse a2913a12fe Switch focus to editor after JSDialog close event
Similar to  LokDialog _onDialogClose, after the closing a JSDialog we
should change the focus editor again.

Signed-off-by: Gülşah Köse <gulsah.kose@collabora.com>
Change-Id: I348ead91838703590d5b9753d6028ff7f70f6111
2023-01-19 10:16:51 +01:00
Gülşah Köse fb6c4c96c0 Show pdf settings dailog on mobile view.
Merge downloadas-pdf and exportpdf actions to have same functionality
on desktop and mobile view. Now we can see setup dialog on mobile view.

On mobide view Download as -> PDF should show PDF download
settings dialog before downloading the document same like
desktop view.

Signed-off-by: Gülşah Köse <gulsah.kose@collabora.com>
Change-Id: Ib0dd3877973dae025e7a6d4f15f2fa26351ea369
2023-01-19 09:54:51 +01:00
Gülşah Köse ce5d6360e0 Show epub settings dailog on mobile view.
Merge downloadas-epub and exportepub actions to have same functionality
on desktop and mobile view. Now we can see setup dialog on mobile view.

Signed-off-by: Gülşah Köse <gulsah.kose@collabora.com>
Change-Id: Iebe05e65f331de6737be88288fac34244cfcde18
2023-01-19 09:54:51 +01:00
Hannah Meeks 401f76ed11 Dialogs: Help Page - Spelling Fix
Signed-off-by: Hannah Meeks <hmeeks4135@gmail.com>
Change-Id: I87c3f9aab49dd32e6d897cadaf0f2945b82e0d4a
2023-01-18 23:44:46 +01:00
Szymon Kłos 83c1c90627 Zotero: don't duplicate entries on edit
we already have selected existing entries in the dialog
so just use pending items directly

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ibc9bf10c0a2815c2c9132100ec1beb254f42b3af
2023-01-19 02:01:02 +05:30
Szymon Kłos a860e3dc7b Zotero: mark citations already used on list
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Idc36cfa0725c11174fcdbeb0694e9415adbae073
2023-01-19 02:01:02 +05:30
Szymon Kłos 0cdf42aa82 Zotero: handle multiple citation insertion
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I18c879279da5a7a80ed58eccbe4fe39e8fb6032e
2023-01-19 02:01:02 +05:30
Szymon Kłos 0f2b035a24 jsdialog: mark checked entries in treeview
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I9dda55d5f7f7a912beaf2f8a23ee1ffa65e30dd5
2023-01-19 02:01:02 +05:30
Andras Timar a884a89620 typo: didnot -> did not
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I17cfeab42e91fbc302506d303a322c0a066ed140
2023-01-18 18:27:25 +01:00
Henry Castro c270f802b8 browser: add "More..." menu entries specific to writer
Change-Id: Id851b4b48b9c365ac416858058cfff9e8fa1a399
Signed-off-by: Henry Castro <hcastro@collabora.com>
2023-01-18 16:45:16 +01:00
Henry Castro 1da779a2bc browser: add "More..." menu item to Language menu
Change-Id: Iaddec2ffd59f6859444ab48d4e5594e263e4d610
Signed-off-by: Henry Castro <hcastro@collabora.com>
2023-01-18 16:45:16 +01:00
Henry Castro fa84abfacb browser: move "Default Language" menu to the last
position.

Change-Id: Ic853a1dd861b7e5f988bbe24aab7bb637fe56d86
Signed-off-by: Henry Castro <hcastro@collabora.com>
2023-01-18 16:45:16 +01:00
Szymon Kłos 2081c124ff Zotero: error on wrong api key
- when api key is incorrect - show snackbar
- when api key is empty but set - integrator has feature implemented
  so don't show our warnings about empty API key

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I62aaedc5a8c2033050b97db4c7e1ca1f629a10b0
2023-01-18 15:28:37 +01:00
Paris Oplopoios e7e837b7ea browser: Add PageNumberWizard button in notebook bar
Add button that opens the page number wizard in the Writer notebook bar

Signed-off-by: Paris Oplopoios <paris.oplopoios@collabora.com>
Change-Id: I108b5cb014f162a243af7d61f6ed045834ff32d0
2023-01-18 13:50:22 +01:00
Dennis Francis 3db5fd3921 browser: fix draggingSomething is private
Signed-off-by: Dennis Francis <dennis.francis@collabora.com>
Change-Id: Icc3c0d09c0ed3318dad375e3cf2d4da1e03c6ff7
2023-01-18 16:45:02 +05:30
Dennis Francis 0540e0564a browser: derive CanvasOverlay from CanvasSectionObject
Signed-off-by: Dennis Francis <dennis.francis@collabora.com>
Change-Id: I3416fe4ca729adaee6132b786349bde3894bfdc3
2023-01-18 16:45:02 +05:30
Dennis Francis a4a0786752 browser: eslint: fix cool.Comment
Signed-off-by: Dennis Francis <dennis.francis@collabora.com>
Change-Id: I16a7cd22a0d16c80d0ef89943b2f73d15173fa30
2023-01-18 16:45:02 +05:30
Dennis Francis 5aeb2af573 browser: derive ContentControlSection from CanvasSectionObject
Signed-off-by: Dennis Francis <dennis.francis@collabora.com>
Change-Id: I48b028f8ecb5422587879c443a70dd898b2bcdfb
2023-01-18 16:45:02 +05:30
Dennis Francis 311c410ece browser: use typed version of Comment class
Signed-off-by: Dennis Francis <dennis.francis@collabora.com>
Change-Id: Ia73627e4c1ba9c3b233adafcb745b0d2731b972b
2023-01-18 16:45:02 +05:30
Dennis Francis 0cd6629503 browser: derive Comment from CanvasSectionObject
Also fix TS eslint issues in this file.

Signed-off-by: Dennis Francis <dennis.francis@collabora.com>
Change-Id: I493ae8b8dc9351fe6aedb3407f78b60379173b5d
2023-01-18 16:45:02 +05:30
Dennis Francis e6d09a9807 browser: fix TS eslint issues in ScrollSection
Signed-off-by: Dennis Francis <dennis.francis@collabora.com>
Change-Id: I08d345bea972f8fac44975a915bf939cb6396d93
2023-01-18 16:45:02 +05:30
Dennis Francis 977f915106 browser: derive CommentSection from CanvasSectionObject
Also fix eslint issues in this file.

Signed-off-by: Dennis Francis <dennis.francis@collabora.com>
Change-Id: I061fdb18e35020118af9749530aaa8047d75630f
2023-01-18 16:45:02 +05:30
Dennis Francis fd7836479d browser: derive ScrollSection from CanvasSectionObject
Signed-off-by: Dennis Francis <dennis.francis@collabora.com>
Change-Id: I1f8d88638b6b2c1dfd74e2f8e46ba61483ad632a
2023-01-18 16:45:02 +05:30
Dennis Francis b1cf4ce350 browser: derive TileSection from CanvasSectionObject
Signed-off-by: Dennis Francis <dennis.francis@collabora.com>
Change-Id: Ibc96489d20357e3e41d869823dda2e199792f599
2023-01-18 16:45:02 +05:30
Dennis Francis 75fbcc4ad0 browser: addSectionFunctions is no more
Signed-off-by: Dennis Francis <dennis.francis@collabora.com>
Change-Id: Ibceebaed2f553275b206f04e4c18dd9b842a78c3
2023-01-18 16:45:02 +05:30
Dennis Francis e0017e5b8c browser: fix private canvas member access
Signed-off-by: Dennis Francis <dennis.francis@collabora.com>
Change-Id: Ia1686edb6bca6845904a4bffb698bc7e7a3bfbfe
2023-01-18 16:45:02 +05:30
Dennis Francis 8e05061f9b browser: convert calc header controls to TS
Control.Header.js -> Control.Header.ts
Control.ColumnHeader.js -> Control.ColumnHeader.ts
Control.RowHeader.js -> Control.RowHeader.ts
Control.CornerHeader.js -> Control.CornerHeader.ts

Signed-off-by: Dennis Francis <dennis.francis@collabora.com>
Change-Id: Ib0f111cf715171d91660c0672b2473df89f83b0d
2023-01-18 16:45:02 +05:30
Dennis Francis aa1ec7d9e2 browser: correction in doc-string of moveTo()
Signed-off-by: Dennis Francis <dennis.francis@collabora.com>
Change-Id: I2f4f6f2f3d7a61c5afa6628029a9adecf9b51a12
2023-01-18 16:45:02 +05:30
Dennis Francis 1d0a406e5d mocha: add unit test for L.LOUtil.Rectangle
Signed-off-by: Dennis Francis <dennis.francis@collabora.com>
Change-Id: Ib0708c41c93fd2d7680c9bc2876b75216fc5377c
2023-01-18 16:45:02 +05:30
Dennis Francis 688ea1d4ea browser: convert createRectangle() to typescript
The logic is simplified by not having to maintain redundant states for
x2, y2, area and rounded versions of all variables. Here they are
automatically calculated by using getters.

Signed-off-by: Dennis Francis <dennis.francis@collabora.com>
Change-Id: I0125c74d06bceaa69896029ce85c6437ffd3d0dc
2023-01-18 16:45:02 +05:30
Dennis Francis cb1b2611bd ts: use let/const instead of var in group controls
Signed-off-by: Dennis Francis <dennis.francis@collabora.com>
Change-Id: I217a741cb3b0a138cfd67cb631a73c9881d9d5f8
2023-01-18 16:45:02 +05:30
Dennis Francis 291494eaa9 eslint: fix errors in Control.RowGroup.ts
Signed-off-by: Dennis Francis <dennis.francis@collabora.com>
Change-Id: Ib5f24e6abe73576d63006a087bf0c7000973085b
2023-01-18 16:45:02 +05:30
Dennis Francis efbeea569c eslint: fix errors in Control.GroupBase.ts
Signed-off-by: Dennis Francis <dennis.francis@collabora.com>
Change-Id: Ibbca537988e846bf9e3c8dea72c3d46702cb5c8e
2023-01-18 16:45:02 +05:30
Dennis Francis 0a97f16b9e eslint: fix errors in Control.CornerGroup.ts
Signed-off-by: Dennis Francis <dennis.francis@collabora.com>
Change-Id: I007439abce299452a39285d3498331828413dcbe
2023-01-18 16:45:02 +05:30
Dennis Francis cac5ab0315 eslint: fix errors in Control.ColumnGroup.ts
Signed-off-by: Dennis Francis <dennis.francis@collabora.com>
Change-Id: Ifb7d2685ef2fe3c85585bf42ff7a9095788dc7fc
2023-01-18 16:45:02 +05:30
Dennis Francis b6a107291a browser: convert group controls to TS
Signed-off-by: Dennis Francis <dennis.francis@collabora.com>
Change-Id: Iab63fbee8480c40a29635985e97764c1f62fc561
2023-01-18 16:45:02 +05:30
Dennis Francis a4c890a12a use existing section/container types everywhere
Before this patch the section types were not used outside of
CanvasSectionContainer.ts and new sections were created by using objects
that looked like CanvasSectionObject.

Let us take advantage of typescript type checks by using
CanvasSectionObject class as the base class for all sections added using
addSection().

To make this happen we need to separate callbacks from member functions
of CanvasSectionObject class because typescript does not treat them as
same.

TODO: Other non-typescript sections need to be converted by follow-up patches.

Signed-off-by: Dennis Francis <dennis.francis@collabora.com>
Change-Id: Ieeac168b6a4f82a0d55accd88a07708bf9da2587
2023-01-18 16:45:02 +05:30
Dennis Francis bd40bca37f browser: add type for createSection parameter
Signed-off-by: Dennis Francis <dennis.francis@collabora.com>
Change-Id: Ic23aa1f686644de9b18daecc3a993af71add1114
2023-01-18 16:45:02 +05:30
Dennis Francis a0932fd840 browser: avoid duplication of check command
Signed-off-by: Dennis Francis <dennis.francis@collabora.com>
Change-Id: I9a31f5abb20ce230925205501b7f1e67b53cb328
2023-01-18 16:45:02 +05:30
Dennis Francis e2ef62aabd mocha: add tests for '-left' anchor flag
Signed-off-by: Dennis Francis <dennis.francis@collabora.com>
Change-Id: Ibb359bb596994204d4641b2929ac2d3cd329caf1
2023-01-18 16:45:02 +05:30
Dennis Francis f19948de9c mocha: avoid assert with absolute coordinates
Signed-off-by: Dennis Francis <dennis.francis@collabora.com>
Change-Id: Iffb3ad4e35621bb7d57e8379d59940fa2caae288
2023-01-18 16:45:02 +05:30
Dennis Francis 4ac90db720 mocha: tests for 2-vert section container
Signed-off-by: Dennis Francis <dennis.francis@collabora.com>
Change-Id: I22a1b72917508e1a1615251aa9b6183f79299432
2023-01-18 16:45:02 +05:30
Dennis Francis 98da29a609 mocha: tests for 2-horiz section container
Signed-off-by: Dennis Francis <dennis.francis@collabora.com>
Change-Id: I26b29113fcb627e1f22a3578eb82641d105a67ae
2023-01-18 16:45:02 +05:30
Dennis Francis c744ed64dc mocha: move container setup code
Signed-off-by: Dennis Francis <dennis.francis@collabora.com>
Change-Id: I5f31276c3570d2ab02a2820848cb2393dfb0b760
2023-01-18 16:45:02 +05:30
Dennis Francis df14c25fbe mocha: move Rectangle utility functions
Signed-off-by: Dennis Francis <dennis.francis@collabora.com>
Change-Id: Id441837e6939297d40870761dd191c7f4240b677
2023-01-18 16:45:02 +05:30
Dennis Francis ad71d399ef mocha: move Rectangle type to its own file
Signed-off-by: Dennis Francis <dennis.francis@collabora.com>
Change-Id: I8bfa41e9a25d5d13da62065186f8d7e7d2466b5f
2023-01-18 16:45:02 +05:30
Dennis Francis 13f746781b mocha: move jsdom setup string to helper function
Signed-off-by: Dennis Francis <dennis.francis@collabora.com>
Change-Id: I8a04aabee4691d1c0d914618a1be49bd8dac7fb2
2023-01-18 16:45:02 +05:30
Dennis Francis ee7a6e7539 add mocha tests for singleton section-container
Signed-off-by: Dennis Francis <dennis.francis@collabora.com>
Change-Id: I2d6cb530b527d891ed1490e535105c7362fcc0de
2023-01-18 16:45:02 +05:30
Tor Lillqvist 366b94a5fb Limit line length in uglified bundle.js file
Helps in the hopefully rare cases where you need to see what code some
error message points to. Otherwise bundle.js will have extremely long
lines, and many editors have a hard time with such. (For example: Line
1, column 2949562.)

Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: I229814e985348e94c8cda2d88b77ad1ea4b74ae7
2023-01-18 02:19:26 +02:00
Pranam Lashkari 7c82370446 zotero: added unlink citation support for refmarks
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I8b92d6187c60ee6656d84c4fec0cebb0eb3a1b58
2023-01-17 15:11:05 +01:00
Pranam Lashkari 4dd5c23fcf zotero: added unlink citation support for bookmark
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I8a1e8019997af230ab19ad2161153ba603af2ee9
2023-01-17 15:11:05 +01:00
Pranam Lashkari 6399d5722a zotero: added unlink citation support for field mark
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I4dd4f0e7e58c5272a965eac10537903024314029
2023-01-17 15:11:05 +01:00
Pedro Pinto Silva f5c31c89ec Inform user about all the implication related to unlinking citations
Add also notification once they are unlinked

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Id26f7228f5a845b79f941256738a0d83bd12e43f
2023-01-17 15:11:05 +01:00
Andras Timar 7b10bd0a16 Update l10n files for Weblate
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ia5d7a453c1b73ea6bf52fdf5557b855a8a357484
2023-01-16 20:20:14 +01:00
Andras Timar 8e3e2c61b7 fix a few translatable messages
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: If8313ceb7d4f7acf08958b310c378d8bea9d1887
2023-01-16 20:12:32 +01:00
Nathan 5d391a74ea Translated using Weblate (French)
Currently translated at 100.0% (479 of 479 strings)

Translation: Collabora Online/UI
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/fr/
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Id2034def8b97d54ea537c47348bfb20b8173e0cb
2023-01-16 19:35:31 +01:00
ERYpTION ec260d99c8 Translated using Weblate (Danish)
Currently translated at 73.4% (352 of 479 strings)

Translation: Collabora Online/UI
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/da/
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I2f762de7d5df820dc40e446c174b775f91c93044
2023-01-16 19:35:31 +01:00
ERYpTION e8598e2205 Translated using Weblate (Danish)
Currently translated at 100.0% (22 of 22 strings)

Translation: Collabora Online/Android lib
Translate-URL: https://hosted.weblate.org/projects/collabora-online/android-lib/da/
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I6c3f5804ad030d6917c364bd2f6816e12aa5e32a
2023-01-16 19:35:31 +01:00
ERYpTION 8ab5a56695 Translated using Weblate (Danish)
Currently translated at 100.0% (110 of 110 strings)

Translation: Collabora Online/Android app
Translate-URL: https://hosted.weblate.org/projects/collabora-online/android-app/da/
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ibe1d5e8e978e340a1b78cc6531da5f3e49d419f0
2023-01-16 19:35:31 +01:00
Herve FARNER cf841bc6e6 Translated using Weblate (French)
Currently translated at 98.7% (473 of 479 strings)

Translation: Collabora Online/UI
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/fr/
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I87cfcbbd0c11a386b19eb05fadc6ab9a3a42e44a
2023-01-16 19:35:31 +01:00
Adolfo Jayme Barrientos 812ca1b942 Translated using Weblate (Catalan)
Currently translated at 100.0% (457 of 457 strings)

Translation: Collabora Online/Help
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/ca/
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I86d9d6f7c30f455f3f306b1cd40b3cb1a27a82cd
2023-01-16 19:35:31 +01:00
Adolfo Jayme Barrientos 9178c00aa3 Translated using Weblate (Catalan)
Currently translated at 100.0% (479 of 479 strings)

Translation: Collabora Online/UI
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ca/
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I227375ec73351ae640a3a02aa5673d6021747fb5
2023-01-16 19:35:30 +01:00
Allan Nordhøy dabcb04be1 Translated using Weblate (Norwegian Bokmål)
Currently translated at 77.0% (369 of 479 strings)

Translation: Collabora Online/UI
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/nb_NO/
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Iefd8ee90aa007c0367ccd7767c8f5da40289366c
2023-01-16 19:35:30 +01:00
Adolfo Jayme Barrientos de37e40c7e Translated using Weblate (Portuguese (Brazil))
Currently translated at 90.9% (20 of 22 strings)

Translation: Collabora Online/Android lib
Translate-URL: https://hosted.weblate.org/projects/collabora-online/android-lib/pt_BR/
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I4cc09f637774043d26ad1032be7c43b748e17a48
2023-01-16 19:35:30 +01:00
Adolfo Jayme Barrientos 5441da8895 Translated using Weblate (Asturian)
Currently translated at 81.8% (18 of 22 strings)

Translation: Collabora Online/Android lib
Translate-URL: https://hosted.weblate.org/projects/collabora-online/android-lib/ast/
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ie14b952074a1919a54e4de191515a729693ca222
2023-01-16 19:35:30 +01:00
Adolfo Jayme Barrientos b04320f34d Translated using Weblate (Portuguese (Brazil))
Currently translated at 90.9% (20 of 22 strings)

Translation: Collabora Online/Android lib
Translate-URL: https://hosted.weblate.org/projects/collabora-online/android-lib/pt_BR/
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ie1fc29fe1c10cdedb650dd0af97135b83b70ad15
2023-01-16 19:35:30 +01:00
Flavio F. M 5d55443d24 Translated using Weblate (Portuguese (Brazil))
Currently translated at 90.9% (20 of 22 strings)

Translation: Collabora Online/Android lib
Translate-URL: https://hosted.weblate.org/projects/collabora-online/android-lib/pt_BR/
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I238c07175cc948a786b14f7b287f6e6787924358
2023-01-16 19:35:30 +01:00
Flavio F. M 29374b869b Translated using Weblate (Portuguese (Brazil))
Currently translated at 86.3% (19 of 22 strings)

Translation: Collabora Online/Android lib
Translate-URL: https://hosted.weblate.org/projects/collabora-online/android-lib/pt_BR/
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I6c3624dd3d48a3f0c9ee1ef49c0c0e393ca7bb0e
2023-01-16 19:35:30 +01:00
Adolfo Jayme Barrientos 528f31b004 Translated using Weblate (Portuguese (Brazil))
Currently translated at 99.7% (478 of 479 strings)

Translation: Collabora Online/UI
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pt_BR/
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ic1aaad94dc508f1d13c4583a0f7c821fc65351b9
2023-01-16 19:35:30 +01:00
Flavio F. M b88b852e6c Translated using Weblate (Portuguese (Brazil))
Currently translated at 98.1% (108 of 110 strings)

Translation: Collabora Online/Android app
Translate-URL: https://hosted.weblate.org/projects/collabora-online/android-app/pt_BR/
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I50b19f424db9d6acca1d30d2e596d109490edfe3
2023-01-16 19:35:30 +01:00
Flavio F. M b820df9947 Translated using Weblate (Portuguese (Brazil))
Currently translated at 99.7% (478 of 479 strings)

Co-authored-by: Flavio F. M <flavius_androiduser@protonmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pt_BR/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I9b14ed8c7ce1ed059206431c72ebff801ed176da
2023-01-16 19:35:30 +01:00
Adolfo Jayme Barrientos 856bae94b8 Translated using Weblate (Portuguese (Brazil))
Currently translated at 99.7% (478 of 479 strings)

Co-authored-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pt_BR/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I0d2ce743f6e3c67a89012008afffc7743621a796
2023-01-16 19:35:30 +01:00
Luna Jernberg 60dfb52b8e Translated using Weblate (Swedish)
Currently translated at 100.0% (479 of 479 strings)

Co-authored-by: Luna Jernberg <droidbittin@gmail.com>
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: I26bb3e8f909c2aba4179b3aa9a438af4033c8e97
2023-01-16 19:35:30 +01:00
Translator-3000 086d7010e9 Translated using Weblate (Italian)
Currently translated at 100.0% (479 of 479 strings)

Co-authored-by: Translator-3000 <weblate.m1d0h@8shield.net>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/it/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I04fb3f4a21b35a01c6a5b062e0853536a3d52bb3
2023-01-16 19:35:30 +01:00
Tor Lillqvist 3c39657ae5 Add debug output and simplify use of QtLoader
Also, don't load online.js. It seems that it will be loaded into the
JS "web worker" for each thread automatically by
online.worker.js. (But hmm, what loads online.worker.js? I am probably
completely confused here. Probably getting rid of Qt things
(qtloader.js) and using only JS that Emscripten produces (modified if
necessary) will make things simpler to understand.)

Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: I050a20a553b7c0f6ebe9db0e7cb9cab2f9829f9e
2023-01-16 18:43:21 +02:00
Tor Lillqvist 7978e74434 Try to send the HULLO message only after the WASM runting has been initialised
Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: Ida3e01482db0e18d17e8e6db0c75667c39adae59
2023-01-16 18:43:21 +02:00
Tor Lillqvist 2c5522aebe Add some debugging output
Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: I2db4a002dfafd5db15362a3ab8d8df33b1153138
2023-01-16 18:43:21 +02:00
Tor Lillqvist cd592a4ec2 We use String.locale unconditionally so make sure it always gets set
Even if the URL did not have a query parameter called "lang".

And yes, we should stop using String.locale for that, and instead add
our locale property to window.app, which seems to be the place for our
code to store various global state. Using String.locale is hugely
confusing. I naturally thought it was some built-in JavaScript thing
and was very confused when it was undefined and I couldn't find any
documentation on it.

Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: I549d3dac1be0991f87f1ca3aa3f147b081e898b1
2023-01-16 18:43:21 +02:00
Tor Lillqvist 01953730f2 Do build also the browser dir in the (quick-and-dirty) Emscripten case
Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: Ibe7782c8dadd232b4ee4f2f9585e0649d4eb71f1
2023-01-16 18:43:21 +02:00
Tor Lillqvist d9024e8955 Add patch that prevents expat in Poco from causing trouble with WASM
As we build a single statically linked bunary for WASM, we will end up
with just one copy of each function in it. Both LO core and Poco
include expat. Upstream Poco builds one of the expat source files as
C++. That causes trouble as it then isn't compatible with what LO core
wants to call. Or something like that. You get "RuntimeError: null
function or function signature mismatch". (The "signature" concept in
WASM is orthogonal to C++ name mangling.)

Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: Iacf75ed34eea98611cb6aa6867e460697ea1fc4a
2023-01-16 18:43:21 +02:00
Tor Lillqvist f8819137c5 Experiment with explicitly loading a document through LOKit
This revealed some interestring problems related to expat, static
linking, and how expat was built in Poco.

Don't bother saving the document, though.

Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: I6715beb46ad6c4854ffc8aff6a26419c05727ae7
2023-01-16 18:43:21 +02:00
Tor Lillqvist 40f53c6696 Initial attempt to load the WASM using code from Qt
Obviously just this is not a good reason to involve Qt, but we want
now initially to get something to even show up, so let's start by
using HTML and from the Qt-based WASM-LibreOffice. Let's see.

Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: I7841fce8e5680a983cc00d516c3fca3a6747e9dc
2023-01-16 18:43:21 +02:00
Pranam Lashkari 7d75902d0e zotero: added support for multiple citations with refmark
now refmarks support to cite multiple sources at a place

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I07639bbc7206dd69a604b7aeabe4cf1a6fea5ca3
2023-01-16 16:31:53 +01:00
Pranam Lashkari e13e28de24 zotero: added support for multiple citations with bookmarks
now bookmark support to cite multiple sources at a place

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: Iafc65224d35ff6af5bcae09988567901ffd64dbc
2023-01-16 16:31:53 +01:00
Pranam Lashkari da345e6de6 zotero: added support for multiple citations with fieldmark
now fieldmarks support to cite multiple sources at a place

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: Iea3b6f7bee208d0a7c01780ec5b837d7f1042b4d
2023-01-16 16:31:53 +01:00
Szymon Kłos 8780b35fea Zotero: don't show errors on load
- allow reading bibliography properties on load without api key
- if fieldType is missing - use default

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ic4ece4b4d61032a29f03cf57852cbdf6694a5294
2023-01-16 14:23:35 +01:00
Gökay Şatır 06916902cf Disable start/stop updates for Calc.
Another method is used for Calc while scrolling.
Remove unnecessary call to draw in control.header.js
Add condition for draw calls while scrolling on desktop view. Scroll bar is visible by default on desktop.

Remove commented-out code.

Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: Iaaa0267c63a9a92aa67786231baf53a625541440
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
2023-01-16 16:02:15 +03:00
Pedro Pinto Silva 1727383e7c Fix invisible text on primary button (hover)
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ic07482aebe79e1dbd796acafbbd132a1449fe121
2023-01-16 12:08:13 +01:00
Pedro Pinto Silva c2b3cb1d59 Add Social media to readme
Fixes #5550

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Iaee12f7d77cb27a8169a4cd178515f6bab0a147c
2023-01-16 11:02:01 +01:00
Gülşah Köse b406a28af1 Prevent the conflict of welcome and missig font dialogs
If the welcome dialog will be shown we postpone showing missing font
dialog to user.

Signed-off-by: Gülşah Köse <gulsah.kose@collabora.com>
Change-Id: Ie19a81588873842f92f4d482c14f07f112b1bcc3
2023-01-16 10:40:21 +01:00
Pedro Pinto Silva 283b225b96 Fix Missing title on showInfoModal when on a mobile
Before this commit dialogs such as hyperlink leave editor warning
or fontmissing didn't have a title

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Icded55a489dbfebc2fb7e12fe0b04da70938a416
2023-01-16 10:40:21 +01:00
Gülşah Köse 1fb15d4179 Missing Fonts dialog: Use JSDialog instead of Vex, allow dismiss
Before this commit it, it was impossible to:
- Dismiss the dialog by clicking anywhere else
- Dismiss when using mobile (it blocked both editing and reading)

Signed-off-by: Gülşah Köse <gulsah.kose@collabora.com>
Change-Id: I3caeef327e653a054994fb01e8e53c5023c20055
2023-01-16 10:40:21 +01:00
Szymon Kłos 4c2c8833c5 Zotero: show snackbar when API key missing
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I2d05d29096bef0eb27cb4cf684bae2a3a175c57f
2023-01-16 10:18:04 +01:00
Szymon Kłos 5269851595 Zotero: handle disabled state in config
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Id65ec60a9832872cf24dd7f295ffb90ad9b377d3
2023-01-16 10:18:04 +01:00
Szymon Kłos 3b3d648e39 Zotero: ask integrator if key is missing
It sends post message to the integrator: UI_ZoteroKeyMissing
if API key was not provided in CheckFileInfo and user tried
to perform any action on bibliography

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ia7d04cbdd337d989e33bd4e1500efe113131a326
2023-01-16 10:18:04 +01:00
Pranam Lashkari a493190392 zotero: renumber numeric bibliography
renumber the identification number in bibliography to match the citation number

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: Ic1eec6044e45c2b24aff1f9127fdb13cdab97313
2023-01-15 19:47:07 +01:00
Tor Lillqvist bc5f8d16e9 Add _handle_cool_message to EXPORTED_FUNCTIONS
Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: I93d987284e2b14a08c4dd1613101572a72e85136
2023-01-15 19:46:37 +01:00
Tor Lillqvist 3441dc27d8 Just run the COOLWSD run() method directly in main()
No need to start a separate thread to run it, like in the gtk+
"mobile" app, I think.

Also no need for a cleanup function, I think.

Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: I23e94200047a195b7fecbdf370142daebc3df55c
2023-01-15 19:46:37 +01:00
Tor Lillqvist 6b05db3c89 Don't expect any command-line arguments at least for now
We want the code to go further and not stop right away.

Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: Id285f119dde0894cda59b68ebd02a9f6b0e2fbee
2023-01-15 19:46:37 +01:00
Tor Lillqvist fc0b538a19 Increase PTHREAD_POOL_SIZE
Just 4 is very likely not nearly enough. I think I did see some error
that could be related to running out of threads. Does
PTHREAD_POOL_SIZE limit how many threads can exist simultaneously?

Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: I5da637b5660e89655f7049b6754f70c74dff6da2
2023-01-15 19:46:37 +01:00
Balázs Varga (allotropia) 158fe2f93a Trying to init LOKit cause mysterious runtime error
Also using soffice.data name instead online.data: online.js
looking for soffice.data

Signed-off-by: Balázs Varga (allotropia) <balazs.varga.extern@allotropia.de>
Change-Id: I62cee3f4866a2824a08b472f15bcdec06a6407b9
2023-01-15 19:46:37 +01:00
Michael Stahl db532e12d0 WASM rename executable and copy missing data files from core
* add dependency on soffice.html.linkdeps to rebuild if core was rebuilt
* copy needed data files as-is from core build
* rename executable by setting automake EXEEXT var - appears to work

Signed-off-by: Michael Stahl <michael.stahl@allotropia.de>
Change-Id: I458b49290dae9d621a8043b1b3103d8b8fd606b8
2023-01-15 19:46:37 +01:00
Tor Lillqvist b248787bfa We do want to temporarily use the idea that a "WASM app" is a separate thing
Only once we have that working will we go back to having a COOL client
that on the fly can switch from a normal COOL server to using local
online and core code in WASM.

Note that the --with-wasm-fallback configure option now then
temporarily is a no-op, and the ENABLE_WASM_FALLBACK Automake
conditional and WASM_BUILDDIR Autoconf macro are not used anywhere.

Once we have something that barely works as a proof of concept, we can
go back to working towards what we really want.

(Yeah, yeah, I know that "temporary" solutions have a tendency to
become more permanent than you expect...)

Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: I2f01acd418686e672fd9d2e12cbbd688b128dfa5
2023-01-15 19:46:37 +01:00
Tor Lillqvist b66baf43fb Drop unused and bogus ENABLE_EMSCRIPTENAPP
In the C++ code we can check for __EMSCRIPTEN__ to know whether we are
being compiled for WASM. In JS and HTML there is no separate WASM or
Emscripten version, but the same code should be able to switch between
talking to a normal COOL server and talking to local WASM code running
in the browser.

Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: If87245aa26fb1b10f6da2e3894605a8ab2e0aced
2023-01-15 19:46:37 +01:00
Tor Lillqvist 0a85ca0c2a Some initial thoughts how to handle messaging when WASM fallback is active
Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: I4146c5b93a3f5988b16836231e529640e9126392
2023-01-15 19:46:37 +01:00
Tor Lillqvist ee157c0810 Clean up WASM-related stuff in configury and the cool HTML page
There is no "Emscripten app", but a COOL client that additionally can
fall back to using in-client WASM code instead of a COOL server.

Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: I86517c6a8f6e0397f6c466278c7be19db001e6d8
2023-01-15 19:46:37 +01:00
Tor Lillqvist 1889fe2016 When we are building WASM we don't build the browser subdirectory
This is how I imagine that this stuff should work:

- In one tree you build with --host=wasm32-local-emscripten. This
  results in only the WASM binary being built, containing C++ code
  from Collabora Office core and C++ code from Online (to a similar
  extent as in the iOS, Android, and gtk apps). No HTML and JS for the
  client's browser is produced in this tree. The embedded filesystem
  from the corresponding WASM core build could be copied into this
  tree for use as below. (Or, alternatively the build in the other
  tree could look into the config.status file in this tree to figure
  out where to pick up the embedded fs data file.)

- In another tree you build with --with-wasm-fallback=<path to the
  above WASM tree>. Note that the C++ code will be built normally in
  this case, for Linux. This build results in an otherwise normal COOL
  build, with the added feature that the COOL server sends the whole
  document file also to the COOL client whenever it is saved. The HTML
  and JS browser code will have code that enables receiving the
  document in this case, plus incremental updates to the document (if
  possible), and code to detect that the connection to the COOL server
  is broken and then fall back to using the local WASM in the
  browser. Obviously the WASM binary and related JS and other data
  (like the embedded file system from core) will have to be downloaded
  into the client right at the start, to be present if the connection
  breaks, but the WASM will likely not need to be started until
  needed.

Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: I945c93451d3f5f0b1bc6ad8550da64e8e6453b6b
2023-01-15 19:46:37 +01:00
Tor Lillqvist e9720a2680 Add --with-wasm-fallback configure option
Use this when building an otherwise "normal" COOL to indicate that the
client will be able to fall back to a local WASM binary in the browser
containing the necessary core and online code.

The value of the option should be the folder where the corresponding
WASM build of COOL was done.

This commit only adds the option.

Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: I1a8c3eb1518cadb12b4159af14f4dd9dfd95a5bd
2023-01-15 19:46:37 +01:00
Michael Meeks bc3684026e kit: default timeout to ~5 seconds when we get a negative wait.
I can only assume that recent LOK's often don't have any lingering
timeouts for cursor blinking or whatever, such that we get an
infinite wait passed as a negative microseconds-count.

Best not to interpret that as a zero wait to avoid a busy loop.

Change-Id: If79228af969f4598f07681deb355c72f72602d19
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2023-01-15 06:22:24 -05:00
Pranam Lashkari 4e5a9ddd6a zotero: update bibliography together with citations
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I0387d01e3e4eaec7a11e9ef58c790b1719f9abee
2023-01-15 11:08:29 +01:00
Pedro Pinto Silva 46f392bd0d Add min and max width to jsdialog modalPopup
with the introduction of showModal:
https://github.com/CollaboraOnline/online/pull/5518 we now have
a type of a dialog that, without this commit, can grow without
limits and can be as small as its content which is not ideal.

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I8768925377606924fd70fab8be40b0b755d802ac
2023-01-15 11:08:13 +01:00
Pedro Pinto Silva 73f2dfc591 Zotero: CSS: Ensure spacing between labels and other elements
While avoiding to add extra space to first elements

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ia4102a783525e801e3adcd7dd8b621bb10ff2eb3
2023-01-14 09:41:47 +01:00
Pedro Pinto Silva 8336217607 Zotero: CSS refactoring: do not use id to target labels
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I312143e0c1764c7ecd761b95605b6f1e611e39c6
2023-01-14 09:41:47 +01:00
Szymon Kłos 7a9e18164a Zotero: fix error when not selected style
When ok is enabled and style selected - just use it
When style wasn't selected in the pase - ok is not enabled

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I2f36dd967e44dfdaf5210f030521fb6c1ec6ecf5
2023-01-14 09:41:47 +01:00
Szymon Kłos ea54185c3a Zotero: split JSON and add field type in settings
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I8a96be86b00e80f1777a544a2385741b060008e2
2023-01-14 09:41:47 +01:00
Pranam Lashkari f68ffa4356 zotero: extract item key from item URL
online stores keys as item id,
but other softewares use numbers for id and no other fields store keys.
keys are required in order to fetch the data from API.
So extract the item key from item URL

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: Ib2d25df81f975d0e926627408047b79c624394fb
2023-01-14 09:04:27 +01:00
Rash419 3434c0c67c cypress:refactor: undo_redo_spec.js
- make sure jsdialog-overlay doesnot exist

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: Ic04ed73d91d3a019d89406322045221370349ac7
2023-01-14 02:29:53 +05:30
Rash419 488194c974 fix: helm chart error validating data: unknown object type nil in ConfigMap.data.server_name
Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: Ia1723829088ae28b45551aca7d2c6f0c32ec0010
2023-01-13 14:15:39 +05:30
Pranam Lashkari dad74756c9 zotero: fixed style attribute storage in xml
style settings were treated as html instead of xml,
which caused attributes to lose its camelCase naming,
due to which some attributes were unrecognised and caused regression

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I34f211c54f9692ec67e08a872a68f516b1f82944
2023-01-12 21:29:28 +01:00
Szymon Kłos 50148416be Zotero: check available languages
it reads citation style and shows only available languages
if last used locale is available - use it
if not - use default defined by style

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I7539ffeb3942d3a1f8b44c5a17b69b4b4b9b475c
2023-01-11 21:56:21 +01:00
Szymon Kłos 0d5590e7d3 Zotero: add message for failed requests
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I123c629947fd357aec2430a5736cf5c08ee15cb3
2023-01-11 18:15:49 +01:00
Dennis Francis 678e7e88fa writer: vex-desktop: clicking away drops comment
In case of desktop browser window whose size is only a little bigger
than the page, our native comments get collapsed and we use vex. In this
case don't close the comment dialog on clicking outside the dialog or
when switching browser tabs.

Signed-off-by: Dennis Francis <dennis.francis@collabora.com>
Change-Id: I92c9d800d58a6910d6df01371e6748c864641cff
2023-01-11 13:12:38 +01:00
Michael Meeks 506c739233 delta: add trace events to monitor delta performance better.
Change-Id: I1e537108e4ad43f5e7161e629c8fa72387eac3e2
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2023-01-11 11:52:29 +01:00
Dennis Francis cb85497cdd Revert "share css-url renamer with branding"
This reverts commit 089b6d235a0e38d5b1d021fab024becc2def0ada.

Reason for revert: For packaging builds the global.js is in minified
form hence marker comments are not present and it is difficult to
extract the css url renamer function without js-language analysis tools
or packages - this needs more thought.

Signed-off-by: Dennis Francis <dennis.francis@collabora.com>
Change-Id: I86755cd74c8f92105b157477f7da8f6e439f1f99
2023-01-11 11:49:36 +01:00
Pranam Lashkari d86a0b48bc zotero: update existing bibliography
if bibliography already exists, update existing and avoid inserting a new copy

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: Ief742a5c18d2cc9acd9fb14d5c3545bc7fcaa4da
2023-01-11 11:48:02 +01:00
Pranam Lashkari 2bbe4e0aa0 zotero: add support for refmark and bookmark for bibliography
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: Ic8c5e02a58c43a137246fd92cfa8378530131349
2023-01-11 11:48:02 +01:00
Pedro Pinto Silva 1c69fe0dcc Show citation snackbar also when loading up document
Before this commit, when opening a document with citations,
citations would be updated and the document refreshed but without
any information of what is happening

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I474e8cdf9c31e18027501ebfc9bd6dd2f55a58a5
2023-01-11 11:47:51 +01:00
Dennis Francis f583ca47c9 browser: hide fontworks ui for non-odf files
Signed-off-by: Dennis Francis <dennis.francis@collabora.com>
Change-Id: I8497a6b34186ce4167e4f864579a49a7d9910fb6
2023-01-11 16:15:18 +05:30
Gülşah Köse 966e62adc7 Use thin instead of auto for scrollbar width
On Windows firefox auto setting is not handled properly. Scrollbar
flows on the sidebar elements. We use thin instead.

Signed-off-by: Gülşah Köse <gulsah.kose@collabora.com>
Change-Id: Ife27f461639e6b034ac9071624d628cd35709191
2023-01-11 10:42:31 +01:00
Tor Lillqvist 8891cc1091 Remove TODO, we added a --pre-js a few commits ago
Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: Id372422578c9d6f49e453ede6a70cdc9db01c8b1
2023-01-11 09:27:36 +02:00
Tor Lillqvist a65b36c051 Avoid warning when ENABLE_DEBUG && MOBILEAPP
Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: I43a50763ce8f12a117efd421022898bee3ca7738
2023-01-11 09:27:36 +02:00
Tor Lillqvist d575447e5b Need DEBUG_ABSSRCDIR here, too, for build with --enable-debug
Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: I02ee35797216135de79484e5929a4f72a1bb20b2
2023-01-11 09:27:36 +02:00
Tor Lillqvist b004971e11 For now, link the WASM thing with the emscripten_fs_image from LO
The LO build directory in question needs to be one separately
configured for this (not one that would use Qt5 for UI, for instance),
so in the long run perhaps it does not make sense to create the FS
image there in core, but we should do it here in online? And we will
surely need additional files in the fs image anyway that core knows
nothing about.

Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: I2cff0421da6075eefc017603ddf9d2ecf9dc79e2
2023-01-11 09:27:36 +02:00
Tor Lillqvist 933a8088c4 Clarify how handle_cool_message() in the WASM app would be used
It is called from JavaScript with one parameter, the string containing
the message to be sent to the Online C++ code. (See
browser/html/cool.html.m4.) It is not called from the mobile app glue
code.

Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: I893dfff3b7d2dbfe4bd48393e58a8c6bfc6e2931
2023-01-11 09:27:36 +02:00
Balázs Varga (allotropia) c6bdf11bb9 Add read and write functions from local files to emscripten filesystem
Signed-off-by: Balázs Varga (allotropia) <balazs.varga.extern@allotropia.de>
Change-Id: I7ea6d19573db4771d170692fab6a221e174f17ca
2023-01-11 09:27:36 +02:00
Tor Lillqvist 99afb66870 Add FIXME: We don't want a separate HTML file for a "WASM app"
Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: I3ce8d34e987350a82e9d86dcc0877bc12952c522
2023-01-11 09:27:36 +02:00
Balázs Varga (allotropia) a5740dcde7 Using handle_cool_message and send2JS in wasmapp.cpp
Include emsripten headers and init some variables for later.

Signed-off-by: Balázs Varga (allotropia) <balazs.varga.extern@allotropia.de>
Change-Id: Ic2c8228d44a60b25ae495a2e9d75c10160161f11
2023-01-11 09:27:36 +02:00
Balázs Varga (allotropia) 5e2d9bb36a WASM init fakesocket on a new thread and adding some necessary headers for later
Also feature/wasm rebased with online master.

Signed-off-by: Balázs Varga (allotropia) <balazs.varga.extern@allotropia.de>
Change-Id: I1ecba4091c22878aacc3d6033ad350b0aa2276dc
2023-01-11 09:27:36 +02:00
Tor Lillqvist 28ca327640 Need to pass strings to C++ with allocateUTF8()
Also need to free them afterwards. Later.

Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: Ie09f268132d01fb51a7126fc3c97272f1e11246c
2023-01-11 09:27:36 +02:00
Tor Lillqvist 8cc1c1baa5 Preparations for a "WASM app"
The WASM C++ bits (in wasm/wasmapp.cpp) will have to export functions
hande_cool_message(), handle_error_message(), and
handle_debug_message() to receive the calls from JS.

Change-Id: Ic7f2cffdeb4408a9f726ad70a8ceb8db372787dd
Signed-off-by: Tor Lillqvist <tml@collabora.com>
2023-01-11 09:27:36 +02:00
Pedro Pinto Silva d43243bc47 Fix Zotero labels
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I25e0cbb871c7631d14cc14aca497ef944c37b58f
2023-01-10 22:35:47 +01:00
Michael Stahl a4b31d4966 WASM add a note about memory required for linking
Signed-off-by: Michael Stahl <michael.stahl@allotropia.de>
Change-Id: Ic7f2cffdeb4408a9f726ad70a8ceb8db372787d9
2023-01-10 22:02:22 +02:00
Tor Lillqvist 9f8c4f6741 No need to export _doc_postUnoCommand from the wasm here
That is needed by core:feature/wasm for the way it implements
conversion to PDF. Not relevant here.

Signed-off-by: Tor Lillqvist <tml@collabora.com>
2023-01-10 22:02:22 +02:00
Michael Stahl ad6ea1a1db WASM improve README
Remove the dumb hard-coded home dir and add a section how to use the
pre-built dependencies from the container.

Signed-off-by: Michael Stahl <michael.stahl@allotropia.de>
Change-Id: Ibdc8d766be54dcde440682d2c77fb47f042f6056
2023-01-10 22:02:22 +02:00
Michael Stahl 244ca9a123 WASM add dummy main function, executable links successfully
Signed-off-by: Michael Stahl <michael.stahl@allotropia.de>
Change-Id: I698750236de88e76a493c075479a447add73dd7f
2023-01-10 22:02:22 +02:00
Michael Stahl b1a1522a2b WASM use same CXXFLAGS as core
-pthreads is required, or wasm-ld reports errors about
"was not compiled with 'atomics' or 'bulk-memory' features"

Also, POCO needs to be built with this, add it in README.

Signed-off-by: Michael Stahl <michael.stahl@allotropia.de>
Change-Id: Ie83e3942e5fc689e6df5a5a705d7ee2e1325ce03
2023-01-10 22:02:22 +02:00
Michael Stahl fdea5cde94 WASM WIP link an executable
Use the newly introduced soffice.html.linkdeps from core to get the
recursive dependencies into the link command.

This currently fails due to some problem with POCO:
wasm-ld: error: --shared-memory is disallowed by AtomicCounter.o because it was not compiled with 'atomics' or 'bulk-memory' features.

Signed-off-by: Michael Stahl <michael.stahl@allotropia.de>
Change-Id: I76b0a2265f67e89f6992d556525f1263ad1b45db
2023-01-10 22:02:22 +02:00
Michael Stahl 160362e21a WASM configure: prevent libtool from adding -rpath to link command
Signed-off-by: Michael Stahl <michael.stahl@allotropia.de>
Change-Id: Ided8a2abd781b19275b6fe16f8f47e262fef0541
2023-01-10 22:02:22 +02:00
Pranam Lashkari 1c73ec45dd zotero: introduce bookmark support for zotero citation
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I2cddea94988c12459e35c83ca9327c2a0a32f0f9
2023-01-10 19:28:14 +01:00
Dennis Francis a0d86c8a6f share css-url renamer with branding
Signed-off-by: Dennis Francis <dennis.francis@collabora.com>
Change-Id: I849948c69e9cc656c410513f9f95db2e7fb07e03
2023-01-10 11:40:50 +01:00
Szymon Kłos f542aff8ea Zotero: show placeholder text when loading
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ib3ce91ddaa80645e844e760f5a5e90d7b78c25eb
2023-01-09 22:00:00 +01:00
Szymon Kłos a4ebc7fda2 Zotero: use private info for key
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ie2459b8002d33a6e9a5c4bc21e129df602fe588b
2023-01-09 21:55:06 +01:00
Michael Stahl 9b40d40713 WASM fix includes in C++ code
Emscripten is very opinionated about sys/poll.h so use poll.h instead.

Signed-off-by: Michael Stahl <michael.stahl@allotropia.de>
Change-Id: I9691519e27a080f03a19f0cc0dd8f796fe323062
2023-01-09 22:01:47 +02:00
Szymon Kłos c973cb99d7 Zotero: remember last used style
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I01877c0a22f71d21cb146b350dbd8449452764a9
2023-01-09 14:46:34 +01:00
Pedro Pinto Silva b308ba68e9 JSDialog: Add padding in between columns and fix th alignment
Before this table columns were getting "glued" (content of one
col would end and immediately would start content of another col).
Plus, we were having table content normally aligned to th start
while headers were being centered aligned

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ie0908c26d1e7bedc37b3c5d768d941b091946524
2023-01-09 14:30:39 +01:00
Tor Lillqvist b2ea380bca Try to work around a bug in older Automake versions
Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: I6af557dc0d6824011aeffd981b9a0f51f27fabbf
2023-01-09 15:21:37 +02:00
Michael Stahl 901ad84339 WASM add simple automake file and dummy cpp file
Copy the list of .cpp files from the Android project, assuming this will
be similar in scope.

Signed-off-by: Michael Stahl <michael.stahl@allotropia.de>
Change-Id: I57c7ad2f10d1867307ff4fcea3d0c650726d18d8
2023-01-09 15:21:37 +02:00
Michael Stahl e53ea70799 WASM document how to build dependencies in wasm/README
Signed-off-by: Michael Stahl <michael.stahl@allotropia.de>
Change-Id: I88977976be9212088f7a758940852719931b4263
2023-01-09 15:21:37 +02:00
Michael Stahl be552175a2 WASM configure: disable checks that look irrelevant for emscripten
Signed-off-by: Michael Stahl <michael.stahl@allotropia.de>
Change-Id: I9cab5f105f518e1901c46b46c31e411d3708341c
2023-01-09 15:21:37 +02:00
Szymon Kłos b338c3faec jsdialog: scroll treeview to selected entry
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I7c88df039fc0358b3444be3552f2e200ee3bf71f
2023-01-09 13:33:00 +01:00
Szymon Kłos 8371ce4437 Zotero: show snackbar on citations update
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I225d62fa006d444ac70014058e20a2dc865b5d96
2023-01-09 12:55:05 +01:00
Pedro Pinto Silva c9a170463d JSSidebar: remove non-effective rules for expanders
These have no effect on the ui-expander-content since they
are set to display: block somewhere else (jsdialogs.css)
plus, (and even testing with flex) this does not seem to improve
or fix anything

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I0260f44413ff46f79b9ea6a15e154ee62fb1e53f
2023-01-09 12:43:53 +01:00
Pedro Pinto Silva ac2db46325 JSSidebar: Align vertically every widget
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: If18a47848790bdf1898aab712c8900f46cd6cdbe
2023-01-09 12:40:37 +01:00
Pedro Pinto Silva 58a29afffa Revert "toolbox widgets get vertical center aligned"
This commit was initially intended to affect sidebar but it is
affecting every toolbox (dialogs, formula bar) causing regression
in the formula bar buttons

This reverts commit c0302a8d93.

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ie872d26ec7dcfb396c7ccba13dcbf6142655be7a
2023-01-09 12:40:37 +01:00
Pedro Pinto Silva c6e28eee58 Add float logical values fallback for buttonboxes
Before this commit, browsers such as chrome (without enabling
experimental features) were not supporting those float values

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I2530e7bf46d161ac980559c181a4e03947edbeee
2023-01-09 10:26:27 +01:00
Gökay Şatır de1e9fa334 Re-show formula bar if only the document is a spreadsheet.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: Id82bb40ef7a86f6c2a068896cdfb3084e63aaf60
2023-01-09 12:06:43 +03:00
Pedro Pinto Silva 7f26249041 Add possibility to target item images within treeview widget
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I17de1fee0a4d508fbe1cc6e5b2530ee1a3caf3d3
2023-01-09 09:13:52 +01:00
Gökay Şatır 01b378ea71 Remove extra sidebar command.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I59b5c7a66ae5811331a53288146c5965dcf610e3
2023-01-08 15:40:18 +01:00
Pranam Lashkari 4b932f24aa Util: introduce random string generator function
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: Iaf99240f5a4bdda7a39420eab05813187a89e2bd
2023-01-08 13:16:14 +01:00
Pranam Lashkari 3cb8a99e67 zotero: introduce refmark support for zotero citation
now odf documents will by default use refmarks,
MS docs will use field marks by default

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I57ef5de9bef8d1e5f6b5029e478d9a43e38dbc4d
2023-01-08 13:16:14 +01:00
Michael Meeks 616197d7a1 calc cell cursor: get the layout and sizing right.
The cursor should minimally obscure the cell content - so the border
should go outside and over the cell border, and the white contrast
line inside it.

Similarly the autofill handle should not obscure the number in the
cell you're trying to read - so move it out and down to a more
familiar position, shrink the size somewhat, and correct the
white boarders around it too.

Change-Id: Ib107adc2927172d69b8cd9a6523b50327d4f81cb
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2023-01-08 07:24:36 +01:00
Tor Lillqvist 8233d030e5 Don't pointlessly assign global.socket = app.socket
Note that the code changed is inside an anonymous function that is
called with one argument: window, for the function parameter called
global. Thus the assignment that this change removes sets
window.socket.

The window.socket variable is not used by code later, so this change
can be this minimal.

The window.socket variable has earlier been set to the WebSocket
object used to communicate with the COOL server. Let's keep it for
that purpose. app.socket is the app.definitions.Socket object. Even
though JavaScript is not type-safe, it is very confusing to use the
same variable for completely different object types at different
stages in the code execution. I am working on some new code that will
want to access the WebSocket object also later.

Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: I6273a6d6acee3fa46ab9fedc5742ae44c8bfa567
2023-01-07 00:16:02 +02:00
Tor Lillqvist 410270fd14 Actually use the safer (escaped) string we construct
Also, no reason to append a null byte to it.

Don't know why this worked even when not escaping "dangerous"
characters. Does Webkit have a more relaxed lexical analyser?

Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: Idfedcbf11a9ee565b954ba972e7e3bc9b804a122
2023-01-06 16:09:52 +02:00
Pranam Lashkari 383b6a7080 zotero: implement citation refresh
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: Id91acbed6c651dfed02777d7fa4142edf597a55a
2023-01-06 12:47:34 +01:00
Pranam Lashkari 46d1f930de zotero: renumber citations on citation insertion for numeric style
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I5cc8b7d6cb16a7f849bf42dd893487c95a7a3e8d
2023-01-06 12:47:34 +01:00
Pranam Lashkari 9be49e17c7 Zotero: introduce the citation update mechanism
Commit introduces the following capabilities:
1. Users can now change the style and the existing citations will respond to it and update
2. Citations numbers are handled
3. Citation clusters(multiple citations) can be read and handled now

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I1e7d85ab955db49bf962303f3b6a0471b37e6ae7
2023-01-06 12:47:34 +01:00
Pranam Lashkari fb5be17057 zotero: fetch the selected citation style details
fetching selected style language details will allow us to make adjustments to citation texts
this is particularly helpful in handling citation numbers and citation clusters

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: Ia469e0e44fc0550c083ce572f8fe9f512947a1f4
2023-01-06 12:47:34 +01:00
Szymon Kłos f6a2d93265 Add missing icon for macro dialog
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Id9f5929886703c3881b550dec6987b26203fafcd
2023-01-06 11:15:23 +01:00
Szymon Kłos 85ada3b6f8 Add UserPrivateInfo
it will be used to store user data which shouldn't
be shared between views

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I58b7f22e4364ce9e07bb6cc74e8431363912a872
2023-01-06 10:36:43 +01:00
Ashod Nakashian 12f3f1e6a4 browser: package.json always get resorted anyway
On every build, nodejs (v12.22.9 for me) re-sorts
the packages in package.json. I expect this is
the case for everyone, so best to commit it
sorted.

Change-Id: Ifa69989ae1bee0fda5a9cc19c2215db92959a434
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-01-06 11:19:18 +03:00
Ashod Nakashian faddcc8103 gitignore: differentiate files from dirs
Change-Id: I2fbf7284a82ecc272ab9b55ce9fb83ea079574f6
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2023-01-06 11:19:18 +03:00
Pedro Pinto Silva 6ad1b900e0 Remove zotero search label and use placeholder instead
Remove citation search label and instead use placeholder

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I0eef0cd9321babd7239b18b4fd5a422cc4d09831
2023-01-05 19:21:29 +01:00
Szymon Kłos 350ce691b8 cypress: skip failing macro test
now we have text + icon in the cell

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I2634ef8b23dff1ab3226f7a20e5305f9cb69487a
2023-01-05 15:24:18 +01:00
Szymon Kłos 4d2b020513 Add missing icons for macro dialog
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I9ee72a697b30571234af9314acc64513ee8184c9
2023-01-05 15:24:18 +01:00
Pranam Lashkari 16349472eb zotero: avoid asking unnecessary bibliography data
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I6aab932715cdfc9511f0b96b4f6aaf671f0b6efb
2023-01-04 17:29:12 +05:30
Pranam Lashkari 8086aba917 zotero: keep citation JSON in same sequence as the desktop
makes it easy to compare for debugging

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I948b79d1f17224dfe40dd70671abfb35f49d7336
2023-01-04 17:28:55 +05:30
Pranam Lashkari 60a11b58f8 zotero: add missing fields in style property
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I048d351e5590413fe57e1ac009bd96933e73b5df
2023-01-04 17:28:55 +05:30
Szymon Kłos 1aeeda61ac jsdialog: use unified naming for treeview icons
unified header and no header treeviews
icon shouldn't contain old extension

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I0778d49395c084e4ac9adc848b3327529ee37e61
2023-01-04 07:27:20 +01:00
Pedro Pinto Silva 7dcd8a12fc Citations: fix Refresh btn alignment, add json leftaligned property
Move refresh button under a buttonbox so it can automatically inherit
container's offset

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I405eddc56ab806b33404221f64255ea676240134
2023-01-03 17:04:32 +01:00
Pedro Pinto Silva 1cc519ccf3 Citations: Fix extra h margins affecting search and locale controls
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I5e1bf9cedbce7de1a5ca18c014b30914f9f6f046
2023-01-03 17:04:32 +01:00
Pedro Pinto Silva 3f27c6b1bc JSDialog: edit controls (input fields): do not force their width
setting it at 100% was leading to element getting passed their
container. Example of the referred bug:

https://archive.org/download/jsdialog-ui-edit-has-forced-width/jsdialog-ui-edit-has-forced-width.png

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I64a65e3149356f0094d0ce8e2ace8ffd8fba28fd
2023-01-03 17:04:32 +01:00
Pedro Pinto Silva f1a86aedd5 JSdialog: Fix container's padding
Do not set sub container with a margin. This was resulting in
some elements (that are inside of that container) to be properly
contained but all the rest were being set without any surrounding
margins -> leading to misalignment

- Main jsdialog container shouldn't inherit lokdialog padding 0
- We do not need to specifically set `padding: .5em 1 em` because it
- has been already set and inherit from jquery ui CSS rules

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I957c93c099692a5bd202248731b16bc6bf358234
2023-01-03 17:04:32 +01:00
Pedro Pinto Silva 5f29c731fb JSDialog: add margin offsets to buttonbox L and R
Fixes the misalignment, before this commit: the safe margin
present in every button was correct but for the cases where
the button is placed to the further left or further right
edge of the dialog -> it looked misaligned

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ibadeaf6cf736b07229d60f99b5af72865f26e23f
2023-01-03 17:04:32 +01:00
Tor Lillqvist 49660dbb94 Fix error in conversion from microseconds to whole milliseconds
I had added some extra debugging output to the !MOBILEAPP branch to
log values of timeoutMaxMicroS and timeoutMaxMS and was wondering why
I saw things like:

    timeoutMaxMicroS=5000000 timeoutMaxMS=5009

and

    timeoutMaxMicroS=0 timeoutMaxMS=9

Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: Iac8599ce5b00ef90d62eabc29c5d92858e276bb6
2023-01-03 11:54:17 +00:00
Szymon Kłos ba3aa1b4c4 Zotero: refresh insert note dialog
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Idbb7dfe88072fb2071e75efd961317b4184ddcae
2023-01-03 10:19:12 +01:00
Szymon Kłos 130433f8d5 Zotero: don't duplicate notes on insert
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I586e83b05d7757df11dac263b8ed3317efd58575
2023-01-02 20:51:37 +01:00
Szymon Kłos c3f98060d6 Zotero: show notes from groups
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Id24ee1282703f2cb1eea15f828c134151b11352d
2023-01-02 20:51:37 +01:00
Szymon Kłos c49ae2a78f Zoteor: don't shorten the note
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I452eaf484fd91ad8f3e2d88d0a1270b85f17be99
2023-01-02 20:51:37 +01:00
Szymon Kłos 8d86da3c43 Zotero: show all notes
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I42a9686b275f42615a36d0e02519f2037a0d129b
2023-01-02 20:51:37 +01:00
Szymon Kłos 7d8c7ede3d jsdialog: don't use deprecated string color parameter
There was a bug in the core with duplicated filds, also
we can use original numeric argument to pass colori (tdf#150339).
Let's don't use string color so we can remove that
from the core in the future.

Related core commit: https://gerrit.libreoffice.org/c/core/+/144866
Resolves: tdf#150339 two arguments called "Color"

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I880552b7af4408e568db878dc862e548e901124d
2023-01-02 16:26:25 +01:00
Henry Castro 857e3f35a6 browser: menu: ignore menu item with empty text
if command "None" and empty item text, there is
an unhandled exception, and no grammar suggestions are shown.

Change-Id: Ie2c832a2a3ff7fe9944024fa003370819b16a432
Signed-off-by: Henry Castro <hcastro@collabora.com>
2023-01-02 11:14:31 +03:00
Henry Castro 03365b3aeb config: add REST API Protocol to LanguageTool
Change-Id: I0e05ed89d02a9b467e1707db1638fc9ee554586a
Signed-off-by: Henry Castro <hcastro@collabora.com>
2023-01-02 11:14:15 +03:00
Pranam Lashkari f7968b4fc1 zotero: fix locale drop down showing incorrect language
user was allowed to select language without selecting the style,
if style is not selected language data will also be not written in the doc.

force user to select style too if want to set the language.

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: Ie323b19189858e601f3fa979d747d7c688e4baf1
2022-12-30 12:03:27 +01:00
Pranam Lashkari 852d12960f zotero: in style dialog show selected style
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I420c5f22f8b4aa880f202fe8b0d981f091c1dfa7
2022-12-30 12:02:57 +01:00
Rash419 3f8f3dcf55 updated helm chart
- now works with default configuration
- updated readme
- fixed unknown field "spec.terminationGracePeriodSeconds" in deployment.yaml
  error. This field should be defined in pod spec not in deployment spec
- improved how aliasgroups are defined in helm chart
- change default to kubernetes "Deployment" instead of "StatefulSet"
- added support for kubernetes hostAliases

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: Ief1e2b3f0ea130425853babbd28462d48e50280f
2022-12-29 21:52:30 +05:30
Andras Timar 652eb4f16f zotero: localized bibliography
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I2df13cbc1b818ab26551161f18673e9e1a4770d3
2022-12-29 11:48:23 +01:00
Pranam Lashkari 1c7987b87e zotero: fixed broken item query function
fixed regression form 9529215

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: Id375958bd17b528dee7e9000d056ca60da064133
2022-12-28 06:19:50 +05:30
Pranam Lashkari 60ac1e18b2 zotero: fetch and set locale language from doc if set
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I5a003d065b062d9631c00ade65e969b21db121ce
2022-12-27 22:46:22 +01:00
Pranam Lashkari e045552ab0 zotero: added language selection support
some style may differ in languages
i.e: in APA style a citation may appears as (Abrikosov, n.d.) like "no date". When I switch language to Hungarian, it becomes (Abrikosov, é. n.) like "évszám nélkül".

language can be selected in document preference dialog

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: Ida1cd91b189fc468e0205e9f1e332238f3ebbe7b
2022-12-27 22:46:22 +01:00
Pranam Lashkari 952921577d zotero: extract repeated query in a separate function
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I27db5073fcd46f0853e947c4cf9a246477271d84
2022-12-27 22:46:22 +01:00
Andras Timar ef1cf7cf49 #5609 add '# syntax=docker/dockerfile:1.2' to dockerfiles that use --mount option
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I57600aa071c9f190ded05867bffc3bad7d54da1d
2022-12-23 10:07:21 +01:00
Szymon Kłos 1480df81d2 Zotero: add note
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I3696bd1115ac996c2f5d163ddcb0238036436aac
2022-12-22 21:31:07 +01:00
Szymon Kłos aa7503c03c Zotero: unify command naming
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ib2b6cda94817e544d2fe37181d4aae105f2ea201
2022-12-22 21:31:07 +01:00
Szymon Kłos dde1057ac2 Zotero: fix broken requests
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I6dd1e198e6870c62a53bdca141b55c69a9d4a47a
2022-12-22 12:40:16 +01:00
Pranam Lashkari b7db80cfb4 zotero: insert bibliography
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: If6d1f2189eb27785cd2bb2d15a50ee01c4735afc
2022-12-22 12:40:16 +01:00
Szymon Kłos 84c68b7ef9 Calc: show cursors from others
avoid comparison with undefined for mode param

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ifdcd46ae2d10aa2f203b377e7daf30aee8715802
2022-12-22 11:39:04 +01:00
Ashod Nakashian b929f01a84 wsd: correctly clear the stream caches in TileCache
It seems we were inadvertently clearing copies
of the stream caches rather than the real ones.

Change-Id: I3fcce77850e0a8f082bdb926f85ab173148c15db
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-12-22 10:10:08 +01:00
Ashod Nakashian 1b80a7b722 protocol: minor documentation fixup
Change-Id: I0f178d7753e5cc787680314c2e5ff0f50ff52b39
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-12-22 10:10:08 +01:00
Ashod Nakashian 629ff27992 wsd: minor log improvements
Change-Id: I6dba0540310bb9cafc31a63e92da306eeff8953d
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-12-22 10:10:08 +01:00
Ashod Nakashian 50fe137140 wsd: log number of unremoved sessions when destroying DocBroker
Change-Id: Ib3a172915d304b529081ada35b6ced719c757147
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-12-22 10:10:08 +01:00
Ashod Nakashian e99af3a932 wsd: correctly log the time since upload request
Change-Id: I66661d5cdc1cd5efcfb86732d86d2a7a6053f2ba
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-12-22 10:10:08 +01:00
Pranam Lashkari 80de048866 zotero: store the style property in doc in chunk of 255 char
following the standerd zotero convention, reason is unknown

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: Ie7d3167906cdce7be22dc9a201d6a1d20e880a2c
2022-12-22 09:58:46 +01:00
Pranam Lashkari 444dab1648 zotero: set document preference before performing any action
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I8c6e3c7c7b75fad59cf09a2c827bcb66a57e012b
2022-12-22 09:58:46 +01:00
Pranam Lashkari 1e0c89c956 zotero: fetch existing style from the document on load
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I377ba844fcbc6881a306668022bfa776b1916293
2022-12-22 09:58:46 +01:00
Pranam Lashkari 3e66d205f4 zotero: set citation style
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: Ib29683c96bb4037a1084baee282fb4b066018d38
2022-12-22 09:58:46 +01:00
Ashod Nakashian edd9850664 wsd: test: cleanup redundant wakupWorld after sending a command
WSD_CMD already wakes up the poll threads, so
there is no need to do so again.

Change-Id: If67df1a704582a5ecf321f089c43d0249a2546ff
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-12-21 19:41:38 -05:00
Ashod Nakashian b644904448 wsd: asyncRequest needs only wakeup its own poll thread
Apparently it woke up the world unnecessarily.

Change-Id: Iad65215da898b017860e7d7b803771f657a3e1ab
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-12-21 19:41:38 -05:00
Ashod Nakashian 53f8317e47 wsd: do not warn when waking up dead poll-thread at shutdown
When shutting down, SocketPoll threads asynchronously
stop and exit. This fundamental race means the warning
is useless and noisy.

Change-Id: I3ca9044c9a68689abb7e8f692fffd10509eadab6
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-12-21 19:41:38 -05:00
Ashod Nakashian 77cf644f28 wsd: smarter warnings and errors on kit disconnection
Change-Id: I10cba42a407296a909cde1d7e091b48f124e7fdb
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-12-21 19:41:38 -05:00
Ashod Nakashian a163ef6c82 wsd: do not send duplicate 'disconnect' to the Kit
ClientSession::disconnectFromKit() already sends
a 'disconnect' message to the Kit. There is no
point in sending the same message again right
after calling disconnectFromKit().

Change-Id: I03aafc33f85220b53c5ff024601f83132b7046f6
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-12-21 19:41:38 -05:00
Ashod Nakashian 2e01170920 wsd: request Kit termination early when unloading
DocBroker now requests the Kit process to terminate
earlier than before to give it time to disconnect
while we (DocBroker) are still around. In turn,
upon disconnection, PrisonerRequestDispatcher can
query whether we are unloading or not, to detect
unexpected disconnections.

Change-Id: Ifa102e018e32bb252a0c169b0a3df691bca4ab0c
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-12-21 19:41:38 -05:00
Ashod Nakashian 55ed57dce2 wsd: support flushing control in WSProcess::sendFrame
Change-Id: Iba1b3869a5c0aa816f78bdf59347b6e9408e8f97
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-12-21 19:41:38 -05:00
Ashod Nakashian ed82e1b18c wsd: do not warn of expected DocBroker disconnection
We avoid logging warnings when the Kit disconnects
from a DocBroker that is unloading.

Also, since the PrisonerRequestDispatcher is the
default WebSocketHandler, for ForKit we replace it
before it gets a DocBroker associated with it.
When replacing (which deletes the instance) we
no longer complain that we are disconnecting an
unknown DocBroker.

Change-Id: I94c3aec8578c66c50623196087c4cd157ba85c27
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-12-21 19:41:38 -05:00
Ashod Nakashian 206de871fb wsd: send WS close frame only when we have a socket
sendCloseFrame does check for the socket to be
there, but it logs an error if it isn't because
it assumes we expect to have a socket.

Since we are shutting down, this code could
be triggered on destruction when we no
longer have the socket.

Change-Id: I622a24394632159aa71c1c21c33c0f8a2d5c6250
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-12-21 19:41:38 -05:00
Ashod Nakashian cd980c9ba6 wsd: wait InitialPingDelayMicroS before first ping
It seems we were always pinging immediately on a
newly created WebSocket, even before upgrading to
WS, which logged a warning. That was because we
create the WebSocketHandler instance with a
timed-out lastPingSentTime.

Here we correctly set lastPingSentTime such that
it times out *after* InitialPingDelayMicroS has
elapsed. This gives it time to upgrade the
socket to WS and avoid the warning.

Change-Id: I6004348b9b4bd29f614d9e010fb7649da2bca338
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-12-21 19:41:38 -05:00
Ashod Nakashian 1b059bca0f wsd: better log levels
We no longer emit a fatal (FTL) log when
forced-exiting successfully.

Also, improved are some other logs to
better reflect the severity of the issue.

Change-Id: I22e79f685825f7ecd47cec76c9be9683deff2d55
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-12-21 19:41:38 -05:00
Ashod Nakashian 6abd8d114a wsd: preserve close reason when disconnected from Kit
If we already have a closeReason, we should preserve
it upon disconnecting from the Kit instance. For
example when unloading, we request the disconnection
ourselves, so no need to clobber the real reason
for closing in that case.

Change-Id: Ie71faed5a4051659b426e3ba6bbf30950d21c328
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-12-21 19:41:38 -05:00
Ashod Nakashian ada1dd1a0b wsd: test: better post-close check in UnitCopyPaste
At the end of the test we validate getting
the clipboard contents after disconnecting
and unloading the document. Unfortunately,
this relied on the speed at which unloading
happened.

Now we wait for the document to unload,
via the callback, before proceeding.
This makes the test more reliable and
harder to pass accidentally.

Change-Id: I4b7f4483c6827dc56689f739ec41a197759413f1
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-12-21 19:41:38 -05:00
Szymon Kłos 50cf96ee4e Zotero: use correct index for entries
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Icc366fca768d18c31ac351195ddc7680ffba290c
2022-12-22 00:04:24 +05:30
Szymon Kłos 0a3fa6951d Zotero: no expander when there is no subcollection
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ic60d72583341cfef28829c8faf8ed59efe22033e
2022-12-20 15:59:52 +01:00
Szymon Kłos 417be951e6 Zotero: handle subcollections in the tree structure
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I93f2a4f77969cf27415d882a8114a644dfced1fb
2022-12-20 15:59:52 +01:00
Szymon Kłos 389ed68493 jsdialog: a11y: handling tab in TreeView
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ic5215d6d0706e572c174e1da09afd48e44d14d5a
2022-12-20 15:59:52 +01:00
Szymon Kłos d59f930fc0 Zotero: fix selection in subcollections
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I6009c52d7f5e106bcba0186359b90489af64a4c5
2022-12-20 15:59:52 +01:00
Szymon Kłos c3cdad6c61 zotero: use correct index for selection
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I2076c84539fd499eb3a231f6866f22e2e4f99fd9
2022-12-20 15:59:52 +01:00
Aron Budea 6bf8fd1905 browser: Disable F2 handling in Writer
It tries to bring up formula bar, which is unsupported,
and causes issues.

Signed-off-by: Aron Budea <aron.budea@collabora.com>
Change-Id: I9aaf445fde9ed5fa507e503e72319b6c7a146e44
2022-12-20 12:21:54 +01:00
Szymon Kłos a55b0451b8 Zotero: map missing icons to thesis icon
in the future we can make icons different for every type

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I039f412e9d89b08b86ef9fe0b45bc868343de122
2022-12-20 07:00:12 +01:00
Szymon Kłos c42a7d891f Zotero: show icons
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I864228b2628f7e58c7d5f9eb404145ce482028d7
2022-12-20 07:00:12 +01:00
Szymon Kłos abb829b736 Zoteor: use camel case naming for icons
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Id049146c7b9b91c9054b4f3a4259cb5b178b79ae
2022-12-20 07:00:12 +01:00
Szymon Kłos fb854ffc1f Zotero: avoid error on keypress
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I8071486fe0d8c6ed157dc2565d2aff871f8002fd
2022-12-20 07:00:12 +01:00
Szymon Kłos 5bb2949da6 Zotero: add caching
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I4df342b0c9e2ffd5532a8eff7fdfbcb484614ecf
2022-12-20 07:00:12 +01:00
Szymon Kłos 67e93f49ca Zotero: add my publications subcollection
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Idcb8938c8e7c1dc2d45bc6406aca406e26e14f79
2022-12-20 07:00:12 +01:00
Szymon Kłos 67bbab812c jsdialog: optimize TreeView filtering
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Id79fe6d8e56753810880acb430fedbd10731e2a1
2022-12-20 07:00:12 +01:00
Andras Timar 15ad0e84ab Export PDF dialog (Calc, Draw, Impress) in case of non-grouped download
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I48735b41a0c970ed83dd3571d209a452193e3f12
2022-12-20 06:59:48 +01:00
Szymon Kłos e55d65a225 jsdialog: support inlineLabel property in custom item
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ic2b58a5dbdbd1cf4276174722c10e687cae515b9
2022-12-20 06:59:48 +01:00
Andras Timar 5d26df995d add icon aliases for exportpdf and exportepub
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I059b4144b27ad2758f9a0a95d1a17ab77743508d
2022-12-20 06:59:48 +01:00
Andras Timar 0c6651e600 Make export EPUB/PDF always with options dialog (Calc, Impress, Draw)
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I86880ab3c54994554ab7f91921d028f962318e5a
2022-12-20 06:59:48 +01:00
Andras Timar c77f60c2a7 Zotero: l10n of dialog elements
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I4cc51f5f58a1801fc4d016eb3e0646ae6e10e1b4
2022-12-20 06:59:05 +01:00
Pranam Lashkari b6ce991c4d zotero: add zotero citation data json with field mark
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I52710acb3a56e8930438d07cfe28be491e0161b7
2022-12-19 15:18:42 +01:00
Tor Lillqvist ffa0a9027c Use window.ThisIsAMobileApp instead of checking for iOS or Android
The code that is conditionally called based on that check verifies
using ThisIsAMobileApp anyway.

Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: Ic86cf102e061d90bedecb6efcb4ef171dc494004
2022-12-19 15:25:07 +02:00
Andras Timar 6d1b392b7e Bump version to 22.05.9.2
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I75c82104da273c939279ead679ae708a6bf778d8
2022-12-17 20:49:10 +01:00
Andras Timar 2a9ba59eb9 Bump version to 22.05.9.1
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Iefc36a0a4ddd53879047b1134f2aee937bbc7bca
2022-12-16 21:04:06 +01:00
Егор Ермаков 9882be9870 Translated using Weblate (Russian)
Currently translated at 98.7% (473 of 479 strings)

Co-authored-by: Егор Ермаков <eg.ermakov2016@yandex.ru>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ru/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I24e5d65ed44befbc36b11a0339dcda0a2fad2003
2022-12-16 21:01:43 +01:00
Gülşah Köse 944e72ccea Fix the insert hyperlink behaviour on Calc
To switch to edit mode in a cell, firstly we have to select a cell.
During that selection Clipboard (here _clip object) has a context
normally. When we do double click to switch edit mode, that selection
should be invalidated because actually we don't select anything yet
in that case.

Here we clean the selection when we switch to edit mode.

Signed-off-by: Gülşah Köse <gulsah.kose@collabora.com>
Change-Id: Ib8d5bedba3a6d9c05a26a73edd81b52cd94e3358
2022-12-16 19:33:24 +01:00
Gülşah Köse cee5a5baea Set the checked state of the FreezePanes item
To show a checkmark for "Freeze Rows and Columns" item on hamburger menu,
we have to set "checked" propery of the item according to uno command's
status.

Signed-off-by: Gülşah Köse <gulsah.kose@collabora.com>
Change-Id: Icfc2ac07a84ed8a843b3bb8b2fe4c75de8ad9233
2022-12-16 16:16:56 +01:00
Szymon Kłos 8a07ce5217 Zotero: avoid undefined in the search field
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I1086acba86f710f80d3638be804ea8c69ae8cfde
2022-12-16 14:15:33 +01:00
Szymon Kłos 425471634b Zotero: add basic icons
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I6b38667c660c165afc7d762bced1a1c4d8213554
2022-12-16 14:15:33 +01:00
Szymon Kłos 976b466796 Zotero: show only standard items
exclude notes, full text and snapshot entries

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ib2183d95c4b0f90d3fd80504625f989ccafe3fb9
2022-12-16 14:15:33 +01:00
Szymon Kłos b70f6e6213 jsdialog: keep icons column in line with header
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I2ed3b97dced0e0be686a602de9dda05a3322745e
2022-12-16 14:15:33 +01:00
Szymon Kłos 82205c98e1 jsdialog: support checkbox in all TreeViews
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I34a86b45751bee5534301c1062ae83412855669c
2022-12-16 14:15:33 +01:00
Szymon Kłos 3afd9156b6 jsdialog: support icon in the TreeView entry
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I33c76cef7164e2bb1abf6522f514d36924845272
2022-12-16 14:15:33 +01:00
Szymon Kłos 5e5873b8fc Zotero: setup minimal size for dialog
to avoid large position change when loaded

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I67a5e1f4dec6db370dc01c1c469ce516601a70ac
2022-12-16 14:15:33 +01:00
Szymon Kłos 7c443599c8 jsdialog: set minimal width for spinfileds
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ic78abc37b4ad0cf610b923dc1e28cb14f811b07b
2022-12-16 10:52:59 +01:00
Szymon Kłos c19b3fe0b5 jsdialog: align vertically grid content
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ied87fb00a4859386a06719903e255489bc72beae
2022-12-16 10:52:59 +01:00
Rash419 8c2c732727 cypress: fix: inconsistent writer/image_operation_spec.js
Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: Iff79e224fa10b4b8462280dcae650c96b3a933e4
2022-12-16 09:09:07 +01:00
Szymon Kłos 42d7348a18 jsdialog: share code for modals
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I69526f47d5315aa23a99e20567a1c4135b4119db
2022-12-16 09:09:07 +01:00
Szymon Kłos abb3e91571 jsdialog: improve styling for input modal
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ifa57a0ae876e79a665082ec23cf784603321798c
2022-12-16 09:09:07 +01:00
Szymon Kłos 80ebb7735c Simplify rename of tab
introduce JSDialog based input modal

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: If0525c3baa50f8f45777f196e13e542cee789051
2022-12-16 09:09:07 +01:00
Ashod Nakashian 87456e2f8e wsd: test: add read-only storage tests
This creates the scenarios where the
storage is read-only (i.e. UserCanWrite=false)
and we have an editable document.

Change-Id: I2878e5e27bc3c3a809dde16f7c39a5ccda4a35a3
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-12-14 20:30:11 -05:00
Ashod Nakashian 843620d4de wsd: disable editing when Storage UserCanWrite=false
This ensures that when the Storage has
UserCanWrite=false no editing can happen,
no new versions could be saved, and no
attempts to upload would happen, even
on view-only documents (by means of
allowing comments).

When the Storage has disabled writes for
the current user/document, we override
the read-only and allow-change-comments
flags.

Change-Id: Ic140fab4f76209fb143f3f5edef70bc3c80cad1b
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-12-14 20:30:11 -05:00
Ashod Nakashian 115b9cf2ab wsd: support isWritable flag in Session
We need to differentiate between a document
that cannot be edited (due to permissions)
and Storage being read-only.

The distinction isn't always important,
except when readonly is set either by
the client side permissions, or is due
to opening a view-only document (such as
a PDF). Since for a view-only document,
adding and editing comments might be
allowed, while the document is read-only
and cannot be otherwise edited, we
still need to upload it to storage.
This is to preserve the changes done
to comments.

Since we need to differentiate between
read-only Storage vs the above cases,
we use a new flag in Session: isWritable.

Change-Id: I028e7908db7f0f10e5407a45c71d89aaab858390
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-12-14 20:30:11 -05:00
Ashod Nakashian 2b7e2bda96 wsd: move isWritable to Session and rename
This helper is only true if editing of the document
is enabled and not whether or not the document is
writable in storage. Since it unifies isReadOnly
and isAllowChangeComments, which are in Session,
there is no advantage in having it in ClientSession.

It is now renamed to isEditable in Session.

Change-Id: Ib923b6162a8075be145049bc1442c42479c8ce4b
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-12-14 20:30:11 -05:00
Ashod Nakashian 30fc5ed649 wsd: correct setting read-only and allow-comments
We should always set the read-only flag when
the storage disables writing for the doc/user.
Similarly when the user is locked.

This breaks down the logic of setting these
two flags such that it's explicit and more
readable.

Change-Id: I99ea19b85a529c08fa50b91fb73bffcfba47f996
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-12-14 20:30:11 -05:00
Ashod Nakashian 4884455f88 wsd: set _isViewFileExtension for LocalStorage
And reuse it for WopiStorage.

Change-Id: I37666300830fd872b3d38fe2d824ae3895e0d22d
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-12-14 20:30:11 -05:00
Milo Ivir 09e467c267 Translated using Weblate (Croatian)
Currently translated at 100.0% (479 of 479 strings)

Translated using Weblate (Croatian)

Currently translated at 99.7% (478 of 479 strings)

Co-authored-by: Milo Ivir <mail@milotype.de>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/hr/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ib32b8d001305efaee88744febf628a67d57b3732
2022-12-14 21:02:48 +01:00
Andras Timar ddf23b7be1 allow quote in tab name
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ie49a420bc1d8721c276a7aed5b889b6a17236b5a
2022-12-14 21:02:37 +01:00
Szymon Kłos b61305985e jsdialog: filteing also non header list
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I93c5157a39644264ed744002d7ad6950d63eefb6
2022-12-14 18:39:27 +01:00
Szymon Kłos ad3db4797d jsdialog: TreeView case insensitive filtering
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: If4a9524e4ce97896e40d920ac87ef103175911f6
2022-12-14 17:31:38 +01:00
Szymon Kłos 6346bdc42e Zotero: add search field
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Id0842b6c24953a447068ca4b6aea8f2d49d11d8d
2022-12-14 17:31:38 +01:00
Szymon Kłos cbaab44d08 jsdialog: add TreeView JSON documentation
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I7bc259eb43a42cc79bb1d7ceaaca60eea63e7410
2022-12-14 17:31:38 +01:00
Szymon Kłos 9a5edea123 jsdialog: reduce jquery usage in TreeView
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Id814010bdf1d5f0be8ba1437fb64044882c39a6f
2022-12-14 17:31:38 +01:00
Szymon Kłos 9296d06891 jsdialog: add sorting the column to TreeView
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I93ff95affe3eb27b988477491fbc9b8a855160af
2022-12-14 17:31:38 +01:00
Szymon Kłos e98e530b66 jsdialog: extract TreeView widget file
This starts cleanup in JSDialogs, we will move
widgets to separate files for easier maintaining.
In the future we will be able to convert single files
to TypeScript

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I4ca26bd51f895476a17ba1d54d9cdb684e8c8e2b
2022-12-14 17:31:38 +01:00
Szymon Kłos d3f746021d Zotero: avoid request when url is not set
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I9ebdafcc8c18f7bab11b52dd87577eb2f08e570e
2022-12-14 17:31:38 +01:00
Szymon Kłos dd840148bb jsdialog: mark correct primary button
use deterministic querySelector to avoid usage of
button from the old window to remove

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I49f7b563666fad614b1f688e80ccb0cdc8d6dcb7
2022-12-14 15:56:07 +01:00
Szymon Kłos 5bc7f274a9 jsdialog: on full update don't refresh position
mark as invalidated when this is full update
so we don't change position on any update in the
future

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I90f79937c5a69ccb2ee36cda7860cddcd36e9311
2022-12-14 15:56:07 +01:00
Szymon Kłos cbce2feb39 Make export EPUB/PDF always with options dialog
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Id8d6c6e6ddbeb510e476365728f4957d3938dfd6
2022-12-14 15:56:07 +01:00
Szymon Kłos f2f6b0ba24 Expose export as EPUB
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I43b2df08f6973b4d7baa8286d5ffa54e88c9d1d5
2022-12-14 15:56:07 +01:00
Szymon Kłos 924a2cea9c Handle exported pdf correctly
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ib3adbaeed30227fcb108fdb6c2e1188fd1bc0320
2022-12-14 15:56:07 +01:00
Szymon Kłos a9f7931144 Expose Export to PDF also in menubar
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I85ed12907d7d39823ccdf6039669f914a3a9704f
2022-12-14 15:56:07 +01:00
NickWingate cc508630e5 Add callback logic for LOK_CALLBACK_EXPORT_FILE
Signed-off-by: NickWingate <nick.wingate@collabora.com>
Change-Id: I3ca6be3ff26c5f847abc64f1c38b67d131191143
2022-12-14 15:56:07 +01:00
NickWingate c5aadfc4d1 Expose pdf-export dialog online
Signed-off-by: NickWingate <nick.wingate@collabora.com>
Change-Id: I7655f37a9a461612990059d24d7443a438e37a68
2022-12-14 15:56:07 +01:00
Andras Timar 45196f545e Set group_download_as to true as default
... when it's not in the config file. Follow-up to 53e6bdd62a

Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ib6a414a3d2d8112255c329f5ef7eedae2901a68b
2022-12-14 14:07:02 +01:00
Ashod Nakashian 3f0faf7c5d wsd: clang-tidy fix of initializing a string member
Change-Id: Id7bee875d023962215049dd97199e1cb906ad89e
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-12-14 04:38:26 -05:00
Ashod Nakashian 8fb40f8075 wsd: DocBroker dumps isStorageOutdated
Change-Id: Ic46cf8bf0367749b38edc46525e3e35008563f00
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-12-14 04:38:26 -05:00
Ashod Nakashian 6ba282dc97 wsd: shorter wait between cleanup checks on exit
Change-Id: Ie21a68ed87cf22e81708cb6fea970a4ee8c68258
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-12-14 04:38:26 -05:00
Ashod Nakashian 6b29335ccf wsd: support short-form names in STATE_ENUM
In some cases we don't really need the full
name of an enum, with the enum as namespace.
For those cases, we now support nameShort
and toStringShort.

Change-Id: Iddd383e15d900bb2d2f3d77e3de6a09470d51b62
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-12-14 04:38:26 -05:00
Ashod Nakashian f7cac5296d wsd: flush sockets only when we have any
When finishing the DocBroker poll we also
flush the remaining sockets. This is noisy
if there are no sockets.

Also improves the logs around this logic.

Change-Id: Ife768dbd9db2e201702dcb6d89180fafff5dc16c
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-12-14 04:38:26 -05:00
Ashod Nakashian fe145d7c04 wsd: use ClientSession in refreshLock
Change-Id: I72bf706076489c957184ce48df0ff736d422c363
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-12-14 04:38:26 -05:00
Andras Timar 749fed14e0 add back Insert Footnote and Insert Endnote to mobile menu
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I0e33707fb4ea327943443c3bfdc7d0a10a49c1ee
2022-12-13 23:23:20 +01:00
Andras Timar 0bc8245c56 docker: allow to build image from packages without brand package
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ie8aaec40236450a371e017692e2474811c3e6849
2022-12-13 23:23:20 +01:00
Andras Timar 3571c7211d Add '(unbranded)' string to product name, when branding is missing
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I231f06f509c2d70ba092658b828e1d201cef2887
2022-12-13 23:23:20 +01:00
Martin Srebotnjak 9e4eca0c58 Translated using Weblate (Slovenian)
Currently translated at 100.0% (479 of 479 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: I1c4e6e01f463269de87326d2c33598248e9c8fd4
2022-12-13 11:13:31 +01:00
SC 4acb16373a Translated using Weblate (Portuguese)
Currently translated at 100.0% (479 of 479 strings)

Co-authored-by: SC <lalocas@protonmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pt/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I027cfa176bf3045d98b4ce662f77896b965f117e
2022-12-13 11:13:30 +01:00
Rob Pearson 4c8a94e407 Translated using Weblate (English (South Africa))
Currently translated at 100.0% (479 of 479 strings)

Translated using Weblate (English (New Zealand))

Currently translated at 100.0% (479 of 479 strings)

Translated using Weblate (English (Australia))

Currently translated at 100.0% (479 of 479 strings)

Translated using Weblate (English (New Zealand))

Currently translated at 98.3% (471 of 479 strings)

Translated using Weblate (English (United Kingdom))

Currently translated at 100.0% (479 of 479 strings)

Co-authored-by: Rob Pearson <rob.dunedin@gmail.com>
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/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I0b2ddef5b03531a297ac5a19d1168576eac560f8
2022-12-13 11:13:30 +01:00
Stanislav Horáček 48c1fc7f2e Translated using Weblate (Czech)
Currently translated at 100.0% (479 of 479 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: I117879a036b3ae561ac9dad0c50f4ebe3364694a
2022-12-13 11:13:30 +01:00
Sebastiaan Veld 9abb794d09 Translated using Weblate (Dutch)
Currently translated at 100.0% (479 of 479 strings)

Co-authored-by: Sebastiaan Veld <sebastiaan.veld@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/nl/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I5cb4dfefb4de7f125c44b347c128e87e97fa6ffa
2022-12-13 11:13:30 +01:00
Sveinn í Felli 916d750d03 Translated using Weblate (Icelandic)
Currently translated at 100.0% (479 of 479 strings)

Co-authored-by: Sveinn í Felli <sv1@fellsnet.is>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/is/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ic7b2291a8b4ed70d81893f0554fd97d29a8c90ad
2022-12-13 11:13:30 +01:00
Yaron Shahrabani 039a5ad7bc Translated using Weblate (Hebrew)
Currently translated at 100.0% (479 of 479 strings)

Co-authored-by: Yaron Shahrabani <sh.yaron@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/he/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ie4f0667406ab7a95bda56290a13497cdd72c5aee
2022-12-13 11:13:30 +01:00
Alex Gabilondo 7b6e47b860 Translated using Weblate (Basque)
Currently translated at 100.0% (479 of 479 strings)

Co-authored-by: Alex Gabilondo <alexgabi@disroot.org>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/eu/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I9e5bdff6a7edea61a48f4fd4acf734131e1a5bcf
2022-12-13 11:13:30 +01:00
Ayhan Yalçınsoy 905abdc62e Translated using Weblate (Turkish)
Currently translated at 100.0% (479 of 479 strings)

Co-authored-by: Ayhan Yalçınsoy <ayhanyalcinsoy@pisilinux.org>
Co-authored-by: PhD. Ayhan YALÇINSOY <ayhanyalcinsoy@pisilinux.org>
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: I8213efb280e33fd71f2f8b096fb4128eb101433a
2022-12-13 11:13:30 +01:00
Adolfo Jayme Barrientos 95b06ad650 Translated using Weblate (Catalan)
Currently translated at 100.0% (479 of 479 strings)

Translated using Weblate (Asturian)

Currently translated at 53.2% (255 of 479 strings)

Translated using Weblate (Portuguese (Brazil))

Currently translated at 98.1% (470 of 479 strings)

Translated using Weblate (Galician)

Currently translated at 68.0% (326 of 479 strings)

Translated using Weblate (Spanish)

Currently translated at 100.0% (479 of 479 strings)

Translated using Weblate (Catalan)

Currently translated at 100.0% (479 of 479 strings)

Translated using Weblate (Asturian)

Currently translated at 53.2% (255 of 479 strings)

Translated using Weblate (Spanish)

Currently translated at 100.0% (457 of 457 strings)

Translated using Weblate (Spanish)

Currently translated at 100.0% (479 of 479 strings)

Translated using Weblate (Catalan)

Currently translated at 100.0% (457 of 457 strings)

Translated using Weblate (Catalan)

Currently translated at 100.0% (479 of 479 strings)

Translated using Weblate (Asturian)

Currently translated at 52.1% (250 of 479 strings)

Translated using Weblate (Spanish)

Currently translated at 100.0% (110 of 110 strings)

Translated using Weblate (Catalan)

Currently translated at 100.0% (110 of 110 strings)

Co-authored-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/android-app/ca/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/android-app/es/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/ca/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/es/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ast/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ca/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/es/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/gl/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pt_BR/
Translation: Collabora Online/Android app
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Iad6b2cda2dc02dffb636a306e84147dbf33b1da4
2022-12-13 11:13:30 +01:00
Pedro Pinto Silva bf2618d2a7 References (compact view): Always show bibliography
And just disable them when engine is not present

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I6504197f096b4e48d075ee0d631217cb576f4a22
2022-12-13 09:05:59 +01:00
Pedro Pinto Silva 4dd3b733e9 References: Move missing items to compact view menu entry
- Move menu entries (that are exclusively related to references)
to References menu
- Add Missing menu entries to References menu so it has 1 to 1
parity with References tab (tabbed view)
- Update text in some menu entries so it follows what has changes
in the tabbed view
- Add separators

Note: Footnote and endnote action were also kept under insert
menu because it seems user are already very used to that. So,
now they can be found both under Insert and References menus

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Icde47f88f60c8423b9af3f6f3793bb8da056adde
2022-12-13 09:05:59 +01:00
Szymon Kłos aeac944e4b Reinitialize notebookbar after Zotero init
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I697c87bbd995800bdd69358f139fa8537fb70077
2022-12-13 09:05:48 +01:00
Szymon Kłos 45184adba9 Zotero: show categories list
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I6ecf4dd2dd26ce9f420ebe52edd06bf534575e7d
2022-12-13 09:05:48 +01:00
Szymon Kłos 7b6100d1b4 Zotero: show dialog while waiting
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I161795b2d1125b9846b0a6baa96432aeba64bef3
2022-12-13 09:05:48 +01:00
Szymon Kłos a3862571f8 notebookbar: don't show border under tabs
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ia0b54c0751f0fb3abb9e862b79895c44e890e3e2
2022-12-13 09:05:48 +01:00
Ashod Nakashian b6cd92dbcd wsd: test: modernize password tests
Change-Id: I8059c22424a337c5f4480f39d6fc6af0886cb1a4
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-12-12 18:17:14 -05:00
Ashod Nakashian 16712eadb3 wsd: test: logging fixup
Change-Id: I25fe200c18b322f4e73a8466419d3f864e7b899e
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-12-12 08:00:05 -05:00
Ashod Nakashian 13b1534f16 wsd: test: cleanup exitTest logs
There is no reason to print the test name
explicitly when each log entry is already
prefixed by the test name.

Change-Id: I72c0a0f2989a65f477902b97e6be816446fba5c3
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-12-12 08:00:05 -05:00
Ashod Nakashian a7541058ca wsd: test: do not assert after test failure
After failing a test, any assertion will simply
pile-on and add noise. There is little benefit
in seeing assertion failures (and especially
core-dumps) after a test has failed.

This change silently suppresses assertions if
a test has failed already.

Change-Id: I5146f12692c0275579510dfac7ef7b37d5af86d0
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-12-12 08:00:05 -05:00
Ashod Nakashian 0a90349f33 wsd: test: correctly calculate test timeout
Now that we may have multiple tests in a
given Test Suite (i.e. a since unit-test
.so module), it is important to calculate
the timeout not from the total elapsed
time, but form the start of the *current*
test.

To that end, we capture the start time
on the first checkTimeout call, which
gives us the elapsed time from the very
start of the Test Suite. Using this, we
offset the elapsed time to arrive at
the time the current test consumed.

Change-Id: I01ebc3572bc147a3dabac7e1fb3237ea6d479116
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-12-12 08:00:05 -05:00
Ashod Nakashian 798712301f wsd: test: support keepgoing option
Change-Id: I397e9225972e5b50b5b9c91b44ba75bc829bfb04
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-12-12 08:00:05 -05:00
Ashod Nakashian 8051543a51 wsd: test: proper test options
Change-Id: Icfe5125b8fcf1ec902fff19c594cd1ffa598de71
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-12-12 08:00:05 -05:00
Ashod Nakashian 0146f65c7c wsd: test: minor cleanup in UnitBase
Change-Id: I2e857456895e8070ec9d2479e526186d411191b2
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-12-12 08:00:05 -05:00
Ashod Nakashian c707b4dc58 wsd: test: better assertion of test target
Change-Id: I9a13ff49aa6c9fb76e5c43b1934322b97727dddc
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-12-12 08:00:05 -05:00
Ashod Nakashian b9a3115833 wsd: test: add decodeURIComponent
This decodes strings encoded using
encodeURIComponent.

For now, it wraps Poco::URI::decode,
which should be replaced in the future.

Change-Id: I608b327be81aeda37d2afc4dfd29828658e92dc8
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-12-12 08:00:05 -05:00
Ashod Nakashian eca0914e16 wsd: test: support silent assertions on success
Housekeeping assertions in tests can be noisy
and unhelpful. There is little advantage to
logging them on passing as, unlike the
assertions in tests, they don't represent
any particular progress in a given test,
nor are they specific to any test either.

Change-Id: Id1005264b7c75f01c241e36a53f24f2c656406f8
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-12-12 08:00:05 -05:00
Szymon Kłos 0ba87d1de8 Remove unused zotero variable
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I7755122da3f1a1f62ece19fb2248e76c707ca6e4
2022-12-12 13:35:29 +01:00
Szymon Kłos 85661a92c0 Fix Zotero in Notebookbar
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I8dd8d6c2792066cf602f0b9cc9d33cc5fbf24d98
2022-12-12 13:35:29 +01:00
Andras Timar a077c4288b Put all Zotero logic to browser
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ib1b071b96322511b7f319ff6b851e902b3556fbb
2022-12-12 13:35:29 +01:00
Gökay Şatır 37ee5bc600 Update image_family to a newer supported version.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I7ed2db3c2223407c6d846882206897d57c7e85ca
2022-12-12 13:09:35 +03:00
Pedro Pinto Silva 907079ea83 Bibliography: use icons for each action independent of engine used
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I96f92a4269c711652f6cac64de0ae461bc69bc42
2022-12-09 16:06:03 +01:00
Pedro Pinto Silva c0a1c1aead UI menu: Add references compact mode menu instead
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I92d0502a6f8268e28e4f2eabc5cd722b58e53a2d
2022-12-09 16:06:03 +01:00
Pedro Pinto Silva 054af102ce UI Tab: Bibliography add additional buttons conditionally
note: Ideally we would always add the buttons,
but when the extra capabilities are not available we would
switch the trigger for all of those buttons to be a warning
dialog

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I7359fe222eff31920b78116e69b45aa60cb15790
2022-12-09 16:06:03 +01:00
Pedro Pinto Silva d5a6d36c85 UI tab: Bibliography improve labeling
Use keyword citation in multiple buttons so they can be
easily understood and grouped

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I4104bdcbb555ee3f4a2b446ad70583e00727cab1
2022-12-09 16:06:03 +01:00
Pedro Pinto Silva 690bd3d425 UI tab: bibliography should be independent of engine used
Thus, Remove Zotero dedicated tab and menu
 - Add instead to existing references tab
Also remove dedicated top menu (compact)

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I8b056ac17fceb0bad2c9a864faeaf3ed2eec8d9d
2022-12-09 16:06:03 +01:00
Pedro Pinto Silva 2e25609359 Add zotero actions to menubar (compact mode)
Also make sure that new menu is only visible if zotero is
available

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I0893515dbc5495aa8251fc9ca795fea357400e6c
2022-12-09 10:18:05 +01:00
Rizal Muttaqin 3828e1fa47 Add colibre themed zotero icons
Signed-off-by: Rizal Muttaqin <riz_17_oke@yahoo.co.id>
Change-Id: I675dfc86cf9e500adae8c407e06403b3cd624864
2022-12-08 13:16:32 +01:00
Pedro Pinto Silva 826920e41d Improve Zotero tab's layout and add additional placeholder btns
Also rename the current testing button (Citation Style) to be used
temporarily as doc pref.

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I70c434a42034a1ee0d729e4aa855b37e5d195950
2022-12-08 13:16:32 +01:00
Szymon Kłos f6d2786df9 Don't scroll when cursor still visible on the screen
When we have 2 users:
A is typing on the page 0
B is at the bottom of the document

We scrolled view B when page overflow happened what caused
"flickering". This patch prevents us from scrolling when
cursor is still on the screen and visible.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Id8f3a12ba566a4b2fd03bf3ab5aa618f8e00c263
2022-12-08 13:16:12 +01:00
Andras Timar 764d443a69 Zotero is a proper name, not for translation
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ifaaa5386dc70341672ab97026a6cc1e99c10eaa6
2022-12-08 10:42:35 +01:00
Pedro Pinto Silva 431ba6206f Introducing Zotero tab
- Prefer to show zotero related actions within a dedicated tab (instead
of adding those within references tab as it was previously). This,
hopefully is more familiar to user using similar interface elsewhere
- Show this new tab conditionally (if zotero is enabled)

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I1690295724d54693aca68ade567e9d1076f26876
2022-12-08 10:14:13 +01:00
Pedro Pinto Silva 0321254443 Fix UpdateCurIndex string
Avoid using `Current Index` (uno text) and instead set custom
string that is easier to understand

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I5057b7c974a5bd33f8af5b93f5bf6a85af916f98
2022-12-07 16:42:32 +01:00
Ashod Nakashian 4e5e9de6c2 wsd: test: reduce assertion logging on each sendCommand
Change-Id: If0b0a4a4bfbfa0c1e83e62291771cc4beb4dea13
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-12-07 17:33:11 +03:00
Ashod Nakashian 8bbf7717db wsd: change message logging level to trace
Messages are high-frequency events and logging
them at debug level is too noisy. Increase the
level to trace.

Debug level should produce legible entries that
outline the main activities, rather than log
each message. That is best done at trace level.

Change-Id: I722ab8b58e0adcab6ecb2f8c571966af0d952051
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-12-07 17:33:11 +03:00
Ashod Nakashian d01b73456c wsd: catch mounting exceptions to fallback
In some cases mounting fails on /tmp, which
should be writable. This results in Poco
exception when trying to write to it during
mounting.

This catches exceptions and fails gracefully
to enable falling back to copying.

Change-Id: I38c8db4f452767ee43bb20a98d13bd5cc36fdba2
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-12-07 17:33:11 +03:00
Ashod Nakashian 155dfcee88 wsd: test: reduce the UnitWOPISlow test doc size
With the latest gcc and Core, debug builds load
and save is substantially slower. The size of
the test document for UnitWOPISlow was 100s
of pages, which took minutes to load and save.

This reduces the size and re-sorts the tests
to minimize the total run time.

Change-Id: Id1ca10d882c5ffcd1ea894279b21fedb06f287f7
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-12-07 17:33:11 +03:00
Ashod Nakashian fb4ba26ccd wsd: mark save results early and log duration
Capture the save result early and log how
long it took to save, for informational
reasons.

Change-Id: I0ca04a5b62a2dda38a058f8fa5ca62df33cc0555
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-12-07 17:33:11 +03:00
Tor Lillqvist c8d176ead9 No need to cd back before exiting a shell script that is run as a command
The autogen.sh script is not supposed to be sourced ("source
autogen.sh"), but run as a command ("./autogen.sh"). After all, it has
the executable bit set. Also, the function called "failed" in it does
an "exit" at the end. That would be a rather rude thing to do as soon
as something goes wrong if the script is sourced.

Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: Ia0e4bbb2b9bed93fb4dba5c0f46a1760ec6e50d7
2022-12-07 15:06:16 +02:00
Ashod Nakashian b2aff3e817 wsd: pass ClientSession to forwardToChild
Change-Id: I2d78687adf9e5a64b75f586b53bf983f3c8d8119
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-12-07 07:53:09 -05:00
Ashod Nakashian 98687db97e wsd: pass ClientSession to sendUnoSave and simplify
Change-Id: I155c896a3f5520a31ce5f413e0c59c2e93701ad1
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-12-07 07:53:09 -05:00
Ashod Nakashian 44aeb9e705 wsd: pass ClientSession to uploadAsToStorage
And move the validation of rename sessionId
where it belongs.

Change-Id: I3fb16ff7b648accaa20b041bf3fd6b82f516cb9b
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-12-07 07:53:09 -05:00
Andras Timar f9f858ab67 zotero: fieldmark should be read-only
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: If9d816932ff074c40ee159a8c36885c5bdda9fac
2022-12-07 13:44:00 +01:00
Ashod Nakashian 08355a3282 wsd: test: add expired-token test
Change-Id: I0055fcb287b45d3a4e1fbaf4e364e8fa323c9b30
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-12-07 15:42:04 +03:00
Ashod Nakashian f9e52bfe72 wsd: do not upload with expired authorization
We mark expired/invalid/rejected authorization
tokens and skip them in the future.

Change-Id: Iec89942198d566901cc2944f22ef86fcb4d6a820
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-12-07 15:42:04 +03:00
Ashod Nakashian 54eedce089 wsd: support invalidating Authorization objects
Change-Id: Ia2327157cdbc27ac545f8137a41dbf75897b22a1
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-12-07 15:42:04 +03:00
Andras Timar 9407c98df4 Remove the 'Insert Bibliography Entry' feature
LibreOffice has its own solution to handle bibliography. It is outdated, and
reportedly everyone prefers Zotero or similar solutions. Moreover in Online
this feature does not work, because the bibliography database is a file in
the jail that is not retained, and because tunneled dialogs have serious UX
problems.

Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ibf6195c0265c767b3acf94012ee3f82339cf34d3
2022-12-07 11:53:26 +01:00
Tor Lillqvist 4fd6279f6b sendCounter is unused
Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: Ie6f713f062e9c89ed3679d709394089413184d0d
2022-12-06 10:38:39 +02:00
andreas kainz 6031436da1 remove fontheight rule from mobilewizard.css
Signed-off-by: andreas kainz <kainz.a@gmail.com>
Change-Id: I21b8095843393d924a6790e18eaa3f868516f90d
2022-12-05 14:38:16 +01:00
Pranam Lashkari fe02dbbbd3 zotero: fix library dialog empty when collection has notes
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: Ie96550faaf3dc23e0aff0c289a38f717c6624e6f
2022-12-05 14:34:19 +01:00
Andras Timar 777c7edf96 add hasZoteroSupport to /hosting/capabilities
The idea is that the integration should look for hasZoteroSupport capability,
and if it's missing or false, then it should not enable setting of the Zotero
API key. Instead, it could write "This instance does not support Zotero, because
the feature is missing." or " ... because the feature is disabled in configuration."

Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ibff9cb61ada062f59e8b2b63ddcdb7a9cf899b82
2022-12-05 14:33:01 +01:00
Rash419 7578f43651 fix: codeql cpp unmet dependencies failure
Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I7d0ec22e5eddcd2a0bc10a79c31acb4f0a295f50
2022-12-05 10:57:53 +01:00
Szymon Kłos 3c4d8d6f24 formulabar: allow wrapping to avoid horizontal scrollbar
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I7139ef2bc213b0be681725ec329186321859f736
2022-12-05 09:37:58 +01:00
Ihor Hordiichuk bc9861fc6d Translated using Weblate (Ukrainian)
Currently translated at 100.0% (479 of 479 strings)

Co-authored-by: Ihor Hordiichuk <igor_ck@outlook.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/uk/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: If724ff4bdbb5e83998295946432412d23ca63444
2022-12-02 14:38:09 +01:00
Matthaiks 7dcf6acc33 Translated using Weblate (Polish)
Currently translated at 100.0% (479 of 479 strings)

Co-authored-by: Matthaiks <kitynska@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pl/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I1912e685f07b653abdde0a15d6ea9884c1551f6e
2022-12-02 14:38:09 +01:00
Andras Timar 95d0c365f8 Translated using Weblate (Hungarian)
Currently translated at 100.0% (479 of 479 strings)

Translated using Weblate (German)

Currently translated at 100.0% (479 of 479 strings)

Co-authored-by: Andras Timar <andras.timar@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/de/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/hu/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Idf8ea79e54be5c7c87c3e9de41744d9c2d50e1e4
2022-12-01 21:35:07 +01:00
Andras Timar 4a2d326423 Update l10n files for Weblate
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Id0cffee88c9ed61723c38e236076c5be4c181ca4
2022-12-01 21:25:22 +01:00
Andras Timar ac47e7227a commands are not for translation
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ib078a06334eb9d22f0e79a1c8168ab690a9c2fb0
2022-12-01 21:13:31 +01:00
Andras Timar 0f40ddbf8b Fix syntax error in Makefile.am
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I7b72a46379833ca8eba21e4ba39ea0271017f216
2022-12-01 21:10:37 +01:00
Adolfo Jayme Barrientos ce9c29ce79 Translated using Weblate (Asturian)
Currently translated at 52.3% (244 of 466 strings)

Co-authored-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ast/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I9fc03f2c0d06a29d3c11992564b3c94b7b2c32e3
2022-12-01 21:07:46 +01:00
Rob Pearson a8c3dc3f2f Translated using Weblate (English (South Africa))
Currently translated at 100.0% (466 of 466 strings)

Translated using Weblate (English (New Zealand))

Currently translated at 100.0% (466 of 466 strings)

Translated using Weblate (English (United Kingdom))

Currently translated at 100.0% (466 of 466 strings)

Translated using Weblate (English (Australia))

Currently translated at 100.0% (466 of 466 strings)

Co-authored-by: Rob Pearson <rob.dunedin@gmail.com>
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/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Iad33a2c2d5db2f5bf8d7e7c84ff5b1693cfa1c07
2022-12-01 21:07:46 +01:00
Matthaiks cf96637e1c Translated using Weblate (Polish)
Currently translated at 100.0% (457 of 457 strings)

Co-authored-by: Matthaiks <kitynska@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/pl/
Translation: Collabora Online/Help
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I0c67f9503f860a97620f41b782181c4975005dc4
2022-12-01 21:07:46 +01:00
Tor Lillqvist 81263e7540 Need Zotero.cpp here, too
Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: Ic0aaf8c944fa10ec370a0b733d1f5c881ea349ce
2022-12-01 15:22:56 +02:00
Szymon Kłos f991361377 Delete row/column break from menu
This feature didn't have any visual indicator

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ice0a9f953cbd2028d21f514882b7997d775b7d7a
2022-12-01 08:53:53 +01:00
Rash419 abcf097795 cypress: fix: notebookbar test failing
impress/table_operation_spec.js was failing due to split dialog converting to jsdialog
writer/top_toolbar_spec.js failing due to change in name of clear formatting button

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: Ia70b80540ebfee66b1499b931c1fc32ab6f9df95
2022-12-01 12:23:58 +05:30
Aron Budea 67e7eca6ca browser: fix JSON syntax in print settings
Follow-up to 4ba2c20997.

Signed-off-by: Aron Budea <aron.budea@collabora.com>
Change-Id: Id74c1ea9557e793386ba39844e7a03ddc766b7c0
2022-11-30 23:31:15 +01:00
Pranam Lashkari 135880dd9a added zotero style selection dialog
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: Ib761bce24ca7401285fe423b21434243a8f83dee
2022-11-30 20:37:48 +01:00
Pranam Lashkari 2cfae369af initial zotero skeleton
add zotero UI only if user is logged in
when zotero citation edit button is clicked,
fetch the library with zotero API.
Let user select what to insert

at this stage its not a complete solution but just first stage

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: Id67d8409bcd6416994713acd9ace495b24823fb0
2022-11-30 20:37:48 +01:00
Pranam Lashkari a93343997d introduced Zotero configuration
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I6c419866da9dd5c7d656be5e4ed64e813ed59e46
2022-11-30 20:37:48 +01:00
Pedro Pinto Silva b761acad81 Allow Repair Document dialog to be translated
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I4e74bf23bea0edba5dad13f53967d380567dbdc7
2022-11-30 14:34:58 +01:00
Ashod Nakashian eb2728cd0f wsd: move idleSaveInterval in SaveManager
This fixes a regression where the
per_document.idlesave_duration_secs setting
wasn't effective.

Idle save also takes into account the time
uploading finished, or if we had a recent
save issued. This is particularly helpful
for large documents and/or slow networks
where uploading takes dozens of seconds.
In that case, we don't idle-save too
frequently.

Change-Id: I76ee1869003073b5cf9bd420f610bd8a12ff71b3
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-11-30 08:59:34 -04:00
Ashod Nakashian e5c939a31a wsd: autosave -> autoSave for readability and consistency
Change-Id: I9568993a8f7ff7dac43f3f48264952f8259846d7
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-11-30 08:59:34 -04:00
Ashod Nakashian 49aec68f11 wsd: test: logging
Change-Id: I820e3ddbdb38cdde2ee34c144c08866ab6720495
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-11-30 05:14:55 -05:00
Ashod Nakashian 42ce410ff2 wsd: test: fix rare deadlock on stopping
Since UnitBase (and children) are invoked from
different threads, UnitBase::exitTest could
have a race. This ultimately results in
invoking std:🧵:join() concurrently,
which is unsafe. This can result in the
following deadlock.

In this case websrv_poll had invoked
UnitBase::exitTest concurrently and
evidently finished, leaving the main
coolwsd thread deadlocked.

	(gdb) info thread
	  Id   Target Id                                     Frame
	* 1    Thread 0x7f67528f0840 (LWP 4058508) "coolwsd" __futex_abstimed_wait_common64 (private=128, cancel=true, abstime=0x0, op=265, expected=4058510, futex_word=0x7f675285c910)
		at ./nptl/futex-internal.c:57
	(gdb) t a a bt

	Thread 1 (Thread 0x7f67528f0840 (LWP 4058508) "coolwsd"):
	#0  __futex_abstimed_wait_common64 (private=128, cancel=true, abstime=0x0, op=265, expected=4058510, futex_word=0x7f675285c910) at ./nptl/futex-internal.c:57
	#1  __futex_abstimed_wait_common (cancel=true, private=128, abstime=0x0, clockid=0, expected=4058510, futex_word=0x7f675285c910) at ./nptl/futex-internal.c:87
	#2  __GI___futex_abstimed_wait_cancelable64 (futex_word=futex_word@entry=0x7f675285c910, expected=4058510, clockid=clockid@entry=0, abstime=abstime@entry=0x0, private=private@entry=128) at ./nptl/futex-internal.c:139
	#3  0x00007f67529cd6a4 in __pthread_clockjoin_ex (threadid=140081742857792, thread_return=0x0, clockid=0, abstime=0x0, block=<optimized out>) at ./nptl/pthread_join_common.c:105
	#4  0x00007f6752d42337 in std:🧵:join() () from /lib/x86_64-linux-gnu/libstdc++.so.6
	#5  0x000055775c5fa8e0 in SocketPoll::joinThread (this=0x55775cc9b090) at net/Socket.cpp:282
	#6  0x000055775c5c8121 in UnitBase::endTest (this=this@entry=0x55775cc0fe80, reason="") at common/Unit.cpp:545
	#7  0x00007f67528df61f in UnitWSDClient::endTest (this=0x55775cc0fe80, reason="") at ./UnitWSDClient.hpp:118
	#8  0x000055775c5cc4d1 in UnitBase::exitTest (this=0x55775cc0fe80, result=result@entry=UnitBase::TestResult::Ok, reason="") at common/Unit.cpp:486
	#9  0x00007f67528d1fa3 in UnitWOPIFileUrl::invokeWSDTest (this=0x55775cc0fe80) at UnitWOPIFileUrl.cpp:269
	#10 0x000055775c4accdb in UnitWSD::invokeTest (this=0x55775cc0fe80) at ./common/Unit.hpp:318
	#11 0x000055775c4a38cd in COOLWSD::innerMain (this=0x7ffd34248650) at wsd/COOLWSD.cpp:5459
	#12 0x000055775c4a59db in COOLWSD::main (this=<optimized out>) at wsd/COOLWSD.cpp:5706
	#13 0x00007f6753ab0877 in Poco::Util::Application::run() () from /lib/libPocoUtil.so.80
	#14 0x000055775c48316c in main (argc=14, argv=0x7ffd34248898) at wsd/COOLWSD.cpp:5845

Change-Id: If6162690462719f14a35241604f8a59b38a806c0
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-11-30 05:14:55 -05:00
Ashod Nakashian ed6254ac36 wsd: test: capture the original test result
Change-Id: I7818bdac0350a1afce81266093cce32d9796bba8
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-11-30 05:14:55 -05:00
Ashod Nakashian 6c697b0cfd wsd: test: convert TestResult to STATE_ENUM
Change-Id: Ic1a7a24e35edd7a403fabe6be040b7e28b12eb79
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-11-30 05:14:55 -05:00
Ashod Nakashian 397d41a00b wsd: test: remove returnValue overrides
These only served to delete the Unit singletons,
but since we have GlobalArray, deleting them
isn't needed.

Change-Id: Ia2e53a1e3b43707196f45c06c38c6bb664c18e29
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-11-30 05:14:55 -05:00
Ashod Nakashian f6301194ae wsd: test: add endTest to clean-up tests
Change-Id: I6d97471a5ab60682da8f01675cddbd766a2c0ba9
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-11-30 05:14:55 -05:00
Ashod Nakashian a89ed3b535 wsd: test: correctly capture UnitBase in WebSocketHandler
The UnitBase reference must be a member of the class.

Change-Id: Ia0b10ccb7f0f3419470f014a23c7a48d3b390239
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-11-30 05:14:55 -05:00
Ashod Nakashian 92ccdcdeb8 wsd: test: wakeup world when starting a new test
This is needed so we stop the DocBroker of
the old test, which is now finished.

Change-Id: I05df85fbbeca254928cd9a140198e7f4ae89fec8
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-11-30 05:14:55 -05:00
Ashod Nakashian b507d5bb08 wsd: pass ClientSession to checkAndUploadToStorage
And to handleSaveResponse.

Change-Id: I01d7bc0424df7f1b4998d9698cdfcadbaaabc704
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-11-30 05:14:28 -05:00
Ashod Nakashian 68beb87b7b wsd: pass ClientSession to disconnectSessionInternal
And simplify the logic.

Change-Id: I71dfc447f2ee35b7ab54e23a9ab6db4faa463444
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-11-30 05:14:28 -05:00
Ashod Nakashian 57b0a50d18 wsd: pass ClientSession to finalRemoveSession
Change-Id: I31e34c004dd54ab8f5f942a03bdd23be88e43335
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-11-30 05:14:28 -05:00
Aron Budea 4ba2c20997 browser: adjust print/PDF export settings
- don't print to PDF forms, it's unnecessary, and buggy at the moment,
- don't print/export comments as notes, they aren't relevant.

Signed-off-by: Aron Budea <aron.budea@collabora.com>
Change-Id: I511940f1a97e1c4a6ed6afb87165c9854df56b78
2022-11-30 08:24:03 +01:00
Pedro Pinto Silva 81f65509a2 JSSidebar: fix no vertical space by adding row gap
This also allow for one single shared place to have that
"margin"

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Iac46810ac4ef219a4103bc315722dbd95e6fd169
2022-11-29 19:50:08 +01:00
Gökay Şatır 8bcdc9d975 Enable developer console for webkit debugging.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I544abda3744fc5415a4dfd935e0df864c5765ca3
2022-11-29 17:50:11 +03:00
Pedro Pinto Silva f142a28468 Remove outdated vex hyperlink warn popup related css
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I04eb48bb14d31dcb53141d245bb61fd5420a61d2
2022-11-29 15:11:38 +01:00
Pedro Pinto Silva d6ddae75b2 JSSsidebar: Fix ui-image alignment and size
We can set those so, the total size is 28px (same as the
grid cell) while keeping svg 16px size this in turn centers
the icon within its parent

Also we can then use the same 5px (that we use for normal button
margin) for the column-gap so everything aligns well

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ib13a376fe71e308f9146c291acfbe3a941a4ef57
2022-11-29 12:56:39 +01:00
Pedro Pinto Silva c86424dba0 JSSidebar: remove outdated vertical-align rule from buttons
We now use CSS grid and this rule is now not needed

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I65f5a1d05d0ac748c328c669e99be307c8721f3c
2022-11-29 12:56:39 +01:00
Tor Lillqvist 5305f14a29 The gtk app needs PNG_LIBS
Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: I075e69a385ec508d72a5d6e4b775dd932bca5184
2022-11-29 13:56:26 +02:00
Szymon Kłos dcdb577a6a sidebar: hide stack container when not needed
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Iaa23b49ab7a90604c0eab7324411ecfd81656995
2022-11-29 10:29:13 +01:00
Szymon Kłos 284b19a786 cypress: use class instead of id in writer/shape_properties_spec.js
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Icbd24e1dabe03a5acf24db5f99915125cbf165e9
2022-11-29 10:29:13 +01:00
Szymon Kłos 99f1acaa70 CSS fixes after rebase
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I39c9595710f786bc6d6f5fbbb0dc3e6ff38af585
2022-11-29 10:29:13 +01:00
andreas kainz 2f66d70ebd simplify jssidebar.css file
complete new structure of the jssidebar.css file

file is structured into sections

1. general
   for general sidebar settings

2. expander section header
   ui-expander classes

3. section content
   biggest section
   define the sidebar gap elements
   first column justify-content: start
   last column justify-content: end

4. widgets
   general staff

4.1 widget width
    defined widths

4.2 widget selected
    style for
    - selected,
    - non-selected,
    - hover

5. fixes
   specific fixes

5.1 writer fixes

5.2 calc fixes

5.3 charts fixes

5.4 not available commands
Signed-off-by: andreas kainz <kainz.a@gmail.com>
Change-Id: Ia449544a671134abebdd4bebd347d20b119c964d
2022-11-29 10:29:13 +01:00
andreas kainz 2ca91de643 Instead of grid-cell each cell item use grid-col-n so it's easy to select css class
Signed-off-by: andreas kainz <kainz.a@gmail.com>
Change-Id: Ie5dea369c7c5d52087523afff411081cd874a6c2
2022-11-29 10:29:13 +01:00
user 1fac2846b2 sidebar: dont break size and pos with rotationlabel
Signed-off-by: user <szymon.klos@collabora.com>
Change-Id: I3ad68c8442dd979dc685d6cbb5d1f061d24a0916
2022-11-29 10:29:13 +01:00
Szymon Kłos 301b302865 sidebar: keep the same position in grid on update
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I2e10dabd11690e189d2168dd106c5d410eea940a
2022-11-29 10:29:13 +01:00
Szymon Kłos 8ac4c5b672 sidebar: don't add special alignment for spinfields
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I724097f9fb60d0620f9da5d78a49b619c8fc98a0
2022-11-29 10:29:13 +01:00
andreas kainz 9c1db9919b Sidebar calc Alignment stacked push button better size
Signed-off-by: andreas kainz <kainz.a@gmail.com>
Change-Id: I394c7725b1eb507b54630b48ccef5ac8e5416fdd
2022-11-29 10:29:13 +01:00
andreas kainz dbf7738c1f Sidebar Calc Cell Appearance arrange widgets into one row
Signed-off-by: andreas kainz <kainz.a@gmail.com>
Change-Id: Ic68bea19e302ff664c09df6bf154865a7d1e200e
2022-11-29 10:29:13 +01:00
andreas kainz 1c7665ecf6 Sidebar Paragraph section alignment of spinfields
Signed-off-by: andreas kainz <kainz.a@gmail.com>
Change-Id: I439ad49c5630071896ef1f7fc4538ef446139f52
2022-11-29 10:29:13 +01:00
andreas kainz ca45b74bf5 Sidebar add padding to grid-cell similar to how notebookbar was designed
Signed-off-by: andreas kainz <kainz.a@gmail.com>
Change-Id: Ieef9e7671c0c009d59d5597b34fd23ac7e26611b
2022-11-29 10:29:13 +01:00
andreas kainz 1e58908cf5 Sidebar: align widgets left and right with space between
Signed-off-by: andreas kainz <kainz.a@gmail.com>
Change-Id: I88bda938d314cd6b0b239542b9f0fcbf367c79fa
2022-11-29 10:29:13 +01:00
andreas kainz d8d25e142d toolbox widgets get vertical center aligned
Signed-off-by: andreas kainz <kainz.a@gmail.com>
Change-Id: I741b64ea574cbf5a06251009ecd9ee538c61c673
2022-11-29 10:29:13 +01:00
Szymon Kłos 0f5dccd990 jsdialogs: cssGrid columns and rows
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Id23b85a4bb3cc5845beade9f049d2250b5bd7f55
2022-11-29 10:29:13 +01:00
Szymon Kłos 7b75b8af40 jsdialogs: use cssGrid for building
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I1da9eeb978aa7f0c0eb163b039a26dac39a3aeee
2022-11-29 10:29:13 +01:00
Szymon Kłos 6a6f94438c jsdialogs: use css grid in gridHandler
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Iabb13a348e23ec6b75f52ac7e7fac3e6348621bc
2022-11-29 10:29:13 +01:00
Ashod Nakashian 1f0b5f5a16 wsd: avoid locking weak_ptr when possible
In WebSocketHandler, we often already have
locked the weak_ptr, so we can pass that
shared_ptr around.

Change-Id: Iaedceff0acbfd747bdf89771f9309ff6f6642b53
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-11-29 03:45:32 -05:00
Ashod Nakashian 6d8e9dc758 wsd: simplify WebSocketHandler construction
This merges the two constructors, since they
overlap and initialize most members identically.

Change-Id: Idd2af580606be92bb5733b1a0f1e1e63b84b6498
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-11-29 03:45:32 -05:00
Pedro Pinto Silva 563f9b8eae Fix text styles from modalpopup on mobile
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I3a40d3c67df9674a51af8d3da4cf0945e1bbf8da
2022-11-29 09:39:28 +01:00
Szymon Kłos d02da6f985 jsdialog: introduce showModal
showModal is going to be replacement for vex

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ic339dcb0338a6a15b85b7653e09f5a721e49640b
2022-11-29 09:39:28 +01:00
Ashod Nakashian 6547138660 wsd: pass ClientSession to uploadAfterLoadingTemplate
Avoid looking up _sessions.

Change-Id: I685e9843b75ed26dd0ef78aad9a46790561f45ba
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-11-28 12:50:36 +01:00
Ashod Nakashian 20a8b8a62f wsd: pass ClientSession to uploadToStorage
Avoid looking up _session.

Change-Id: Ie0cec1802db729ead09a6da71712242fdb28bc07
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-11-28 12:50:36 +01:00
Ashod Nakashian b708dc5ee8 wsd: pass ClientSession to removeSession
This avoids an unnecessary lookup in
_sessions, as we already have the
ClientSession instance.

Change-Id: I3dfdfd322fb907f916235a5ccc5f3b76e0eb4855
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-11-28 12:50:36 +01:00
Ashod Nakashian 46f9e8de29 wsd: use client_from_this
Change-Id: I45bcb010ec6f1d091c04d2a8b2f49a6da57f8e4e
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-11-28 12:50:36 +01:00
Ashod Nakashian 7a74227164 wsd: http: improved logs
Change-Id: I075c1069b489b45283cfac75d8c8c90543a10644
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-11-28 12:50:36 +01:00
Ashod Nakashian c6365b8b18 wsd: log closed-socket state on read explicitly
Change-Id: I6a0c4c701f0ab726017d287528c761636ba91be0
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-11-28 12:50:36 +01:00
Ashod Nakashian 2262da355f wsd: breakup getWritableSessionId and getWritableSession
Change-Id: If08a9984c75a84d85b5f3c37e6780cc0b99a1800
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-11-28 12:50:36 +01:00
Andras Timar d17fb50487 enable link to non-system libpng and openssl
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I109242bde268e63e9918af0f44fcb456e2b8f6c5
2022-11-28 12:41:59 +01:00
Ashod Nakashian c41c8d8f53 wsd: faster forwardToChild
The 'load' command is special-cased in the
forwardToChild function. To that end, we
had to parse the message in full, which
is very costly. This patch optimizes
this special casing logic.

Change-Id: I54ff8899b8d250ce996ddabf873a45d92e0f59b1
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-11-28 06:41:04 -05:00
Ashod Nakashian 21dd54086c wsd: improve DocBroker state dumping logic
We dump the state of a DocBroker when we
detect data-loss, or when running a
unit-test that failed.

This simplifies the logic and improves it
by avoiding duplicate dumps and unnecessary
dumps.

Change-Id: I1cf2199d35073a762937ce2cf2377061e40b06b5
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-11-28 06:41:04 -05:00
Ashod Nakashian 19b6633625 wsd: more flexible 'save' command parsing
We expected the arguments passed to the save
command to be in a specific order, which is
restritive.

Here we allow for any argument(s) in any order
and omitting any/all of them is acceptable.

Change-Id: Ia582f0ac113b3d987c085d3a7975d1b3054ff889
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-11-28 06:41:04 -05:00
Pedro Pinto Silva 134d223a3b Fix contentControl dropdown rendering on mobile
- List should be full width
- List should be full height to avoid
double scrollbars
- Options should have dividers in between

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I2a05f1ee5ddf3989a6bf64e81aa3c4a12a4f70dc
2022-11-25 17:30:39 +01:00
Pedro Pinto Silva f57518ce41 ContentControl: do not use generic ids
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I027a4e95a3f018f40b74b0ca2f4d2e91d5fe5662
2022-11-25 17:30:39 +01:00
Szymon Kłos 863476ba9e cypress: add content controls mobile test
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I80963a7877d73be7075cdfab1a73eaad742e8d8a
2022-11-25 17:30:39 +01:00
Szymon Kłos 6c73ce064d mobile-wizard: restore title on windows switching
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ia1869d903c46a18b34d88e19bbda7828799873cf
2022-11-25 17:30:39 +01:00
Szymon Kłos a2363d71f7 mobile-wizard: restore classes when switching windows
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Iee44f2427a7dff5dd116f19018410ea432926118
2022-11-25 17:30:39 +01:00
Szymon Kłos 80cb63ad91 mobile-wizard: restore tabs when switching windows
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ie28a1d06e54475623cf1d20510336b2267cdf338
2022-11-25 17:30:39 +01:00
Szymon Kłos 433f4043e9 mobile-wizard: scroll indicators owned by windows
Every window has it's own scroll indicator.
Simplified code, based on calculation not hardcoded values.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I48020ca8916139bf168c6a8e3d25e2f9eb684b40
2022-11-25 17:30:39 +01:00
Szymon Kłos b835a68a44 mobile-wizard: don't use close events from tunneled dialogs
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: If788339373ff37283baf035f7f5e14332e8ac201
2022-11-25 17:30:39 +01:00
Szymon Kłos 07c3538589 mobile-wizard: create separate window container
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I8317cb7ec9ae31de07c3f2dd4a691afafce9073d
2022-11-25 17:30:39 +01:00
Tor Lillqvist da0e05a7a1 Make the gtk app work again
Apparently using a debug=true query parameter breaks tile
rendering. So let's not use that then. Now tiles show up.

Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: Ia458a6bdf35b956bf2570801d132211f600513f6
2022-11-24 16:09:03 +02:00
Tor Lillqvist a2d8957000 Log socket messages through the C++ code in the gtk app
Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: Icab9cc94eabf63512a1517c2bb935bf8590fc69d
2022-11-24 16:09:03 +02:00
Tor Lillqvist 81c7d3aa1b Seems that the lang and userinterfacemode query parameters are needed
Now some UI stuff shows up on the cool page. No document tiles yet,
though.

Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: I5cc33cc8df3a700ee752a3ad437cdb3aabfbca86
2022-11-24 16:09:03 +02:00
Tor Lillqvist 8aab57ef0f It seems that the gtk app takes a pathname, not a file: URI
Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: Id0764d3097f2b9f0a4ba1b699b63e026749f802b
2022-11-24 16:09:03 +02:00
Tor Lillqvist a0fabb543c Probably must check for arbitrary binary data here, too, like in the iOS app
Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: Ic6834f5f5b57035831778305ece9228d14bed930
2022-11-24 16:09:03 +02:00
Tor Lillqvist 459bba8dc2 Make the gtk app build again
Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: I000fdcc059c39cf3c0c4a9ec066f4039c653cb70
2022-11-24 15:02:10 +02:00
Pedro Pinto Silva 98b0fd4a7f Fix jsdialog spinfield jumping on hover
Visible when using the following core change:
https://gerrit.libreoffice.org/c/core/+/142974

Note: no need to have generic CSS rules for spinfields
only for the sidebar

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Id2c9df00d1067537adb9ec5e3db0eab8bd1b2290
2022-11-24 11:33:23 +01:00
Mike Kaganski 16064f295c Add "Formula Object" button to Insert tab of notebookbar in Writer
Signed-off-by: Mike Kaganski <mike.kaganski@collabora.com>
Change-Id: Icd06d49fe18b37fd664219a951ba9ae822659150
2022-11-24 09:44:19 +03:00
Rash419 7e2360bc2a remoteconfig: enabling the locked_hosts supported from both remote json and coolwsd.xml
Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I17da8e0486124bf161c5f97781d69edab37efde6
2022-11-24 00:33:25 +05:30
Rash419 e20ace9f34 wsd:fix: memory leak properly
introduced in e075241957 commit, update AppConfigMap instead of creating
new one on each of remote_config poll

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: If11bd6e4b3a0a9f4ee32ae9bb43b076479e9bd84
2022-11-24 00:33:25 +05:30
Gökay Şatır 75958ec5b2 _userCanWrite variable is set to false when the host is read-only.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I485c5254a534365cd9defb726ed0eb705977361e
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
2022-11-23 16:29:10 +03:00
Pedro Pinto Silva 44ae9dca81 Hyperlink popup: add tooltip to the hyperlink
This allows for any hyperlink, no matter how long, to be viewed
before clicking it

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: If63d13879758371e96f02b691367952700e0fd87
2022-11-23 13:17:30 +01:00
Pedro Pinto Silva b523f1ed92 Hyperlink popup: Remove extra space and fix ellipsis
Increase the max-width from 188 to 150 for the anchor element so,
we don't have the extra space (when the url is short) at the end
of the popup (after the icons)

Fix the overflow and consequent ellipsis: it shouldn't limit/affect
the icons but the anchor (hyperlink)

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I2d0f8d2918827bef142f05a483da510d573481d3
2022-11-23 13:17:30 +01:00
Pedro Pinto Silva 5c3098bda5 Fix PDF detection when deciding if edit button should be visible
Before this commit both mobile and is_lock_readonly (upsell)
were being affected. Namely, the edit buttons was not being
shown for presentations and drawings

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I903ea43ca5ea1c94eec6b8f63b8b5626b8ee2203
2022-11-23 09:18:34 +01:00
Andras Timar 0b90a137f7 Bump version to 22.05.9.0
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I007ce044d5ab049d17cf15410ef78f5760adaeb0
2022-11-22 15:06:50 +01:00
Pedro Pinto Silva 0999dd05d1 Translated using Weblate (Portuguese (Brazil))
Currently translated at 100.0% (466 of 466 strings)

Co-authored-by: Pedro Silva <pedro.silva@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pt_BR/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ie55d2cddf3df83786e838652aa14c75ee1197fde
2022-11-22 14:51:19 +01:00
Ihor Hordiichuk 50f6e4ead7 Translated using Weblate (Ukrainian)
Currently translated at 100.0% (466 of 466 strings)

Co-authored-by: Ihor Hordiichuk <igor_ck@outlook.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/uk/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ia7b1ff4d9995c67db6f69ad982a8e0be708c86d2
2022-11-22 14:51:19 +01:00
Martin Srebotnjak 0d211a9f6c Translated using Weblate (Slovenian)
Currently translated at 100.0% (466 of 466 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: I595eb2a5b75ebfe4645755e8540c419dc7ea7279
2022-11-22 14:51:19 +01:00
SC d04e2c286d Translated using Weblate (Portuguese)
Currently translated at 100.0% (466 of 466 strings)

Co-authored-by: SC <lalocas@protonmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pt/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I96e16202183b5b9bbd5d7a2635284207b841ac70
2022-11-22 14:51:19 +01:00
Sebastiaan Veld 75c3584e2b Translated using Weblate (Dutch)
Currently translated at 100.0% (466 of 466 strings)

Co-authored-by: Sebastiaan Veld <sebastiaan.veld@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/nl/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I83d1260efc2cef6a4a9ec3bfe888be98f0c58894
2022-11-22 14:51:19 +01:00
Rizal Muttaqin 8a28c457a8 Translated using Weblate (Indonesian)
Currently translated at 100.0% (466 of 466 strings)

Co-authored-by: Rizal Muttaqin <riz_17_oke@yahoo.co.id>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/id/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Icb437212c5f27018a7c48d4305ee24669770550e
2022-11-22 14:51:19 +01:00
Milo Ivir e45d17bfe9 Translated using Weblate (Croatian)
Currently translated at 100.0% (466 of 466 strings)

Co-authored-by: Milo Ivir <mail@milotype.de>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/hr/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I50d3ff4fc67dc29b33aef4a7c3a2273716f42824
2022-11-22 14:51:19 +01:00
Alex Gabilondo 0dcceaeb12 Translated using Weblate (Basque)
Currently translated at 100.0% (466 of 466 strings)

Co-authored-by: Alex Gabilondo <alexgabi@disroot.org>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/eu/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I5ca0e7bb853414051dfa946a644481226f307f90
2022-11-22 14:51:19 +01:00
Stanislav Horáček 1f6015d6eb Translated using Weblate (Czech)
Currently translated at 100.0% (466 of 466 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: Iec6201e2473f474001cb5e7e57e7ed3f690c7bc8
2022-11-22 14:51:19 +01:00
Joan Montané cac1f8bc82 Translated using Weblate (Catalan)
Currently translated at 100.0% (466 of 466 strings)

Co-authored-by: Joan Montané <jmontane@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ca/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I8a1ac434de9e46cd4af19e344e374336175674ee
2022-11-22 14:51:19 +01:00
이정희 2d72e7ceb5 Translated using Weblate (Korean)
Currently translated at 90.9% (20 of 22 strings)

Translated using Weblate (Korean)

Currently translated at 100.0% (110 of 110 strings)

Co-authored-by: 이정희 <daemul72@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/android-app/ko/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/android-lib/ko/
Translation: Collabora Online/Android app
Translation: Collabora Online/Android lib
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I09fbb93400a43168b84e66b08f11f5b5d65639f8
2022-11-22 14:51:19 +01:00
Ayhan Yalçınsoy 0eded18f11 Translated using Weblate (Turkish)
Currently translated at 100.0% (466 of 466 strings)

Co-authored-by: Ayhan Yalçınsoy <ayhanyalcinsoy@pisilinux.org>
Co-authored-by: PhD. Ayhan YALÇINSOY <ayhanyalcinsoy@pisilinux.org>
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: I85b8ea063ad845e94ca9c8af4aff8b86a19e492b
2022-11-22 14:51:19 +01:00
Luna Jernberg d8badb0de3 Translated using Weblate (Swedish)
Currently translated at 100.0% (466 of 466 strings)

Co-authored-by: Luna Jernberg <droidbittin@gmail.com>
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: I545593f5df3730363f84a38a61c57917bfee7646
2022-11-22 14:51:18 +01:00
Mike Kaganski 7bbd48283d Translated using Weblate (Russian)
Currently translated at 100.0% (466 of 466 strings)

Co-authored-by: Mike Kaganski <mikekaganski@hotmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ru/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I32540cb2c7957a5e905c5ce877f6e4001a2d22e1
2022-11-22 14:51:18 +01:00
Matthaiks 9974299403 Translated using Weblate (Polish)
Currently translated at 100.0% (466 of 466 strings)

Co-authored-by: Matthaiks <kitynska@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pl/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ic9b11b23187cc1a69d6208352dc90f9e10c502e3
2022-11-22 14:51:18 +01:00
Translator-3000 11ebf50f64 Translated using Weblate (Italian)
Currently translated at 100.0% (466 of 466 strings)

Co-authored-by: Translator-3000 <weblate.m1d0h@8shield.net>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/it/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Id83389fbe1e7eefe07240c19a950dff2652a41cc
2022-11-22 14:51:18 +01:00
Andras Timar 23945c9997 Translated using Weblate (German)
Currently translated at 100.0% (466 of 466 strings)

Translated using Weblate (Hungarian)

Currently translated at 100.0% (466 of 466 strings)

Co-authored-by: Andras Timar <andras.timar@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/de/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/hu/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ib524ed8a4aad7ddedbc6d64cff31d086110c5504
2022-11-22 14:51:18 +01:00
Yaron Shahrabani 30cfb16167 Translated using Weblate (Hebrew)
Currently translated at 100.0% (466 of 466 strings)

Co-authored-by: Yaron Shahrabani <sh.yaron@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/he/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ib67ab6f203e9f95ce5526980608dcb5d0c61c00d
2022-11-22 14:51:18 +01:00
Jérôme Herbinet 2cd2f7cdc7 Translated using Weblate (French)
Currently translated at 100.0% (466 of 466 strings)

Co-authored-by: Jérôme Herbinet <j.herbinet@protonmail.ch>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/fr/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I0802a551d0ec92fbe23070960d867e6a0fab0b95
2022-11-22 14:51:18 +01:00
Eloy Crespo 082c9d07f7 Translated using Weblate (Spanish)
Currently translated at 100.0% (466 of 466 strings)

Co-authored-by: Eloy Crespo <eloy.crespo@collabora.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: I299189877097ab93355a3b46a115e0249ef5ee4d
2022-11-22 14:51:18 +01:00
Szymon Kłos 35f38a1eaa Log warning about deprecated config option reuse_cookies
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I93f42623be2edba3cb3877e17f6d39c2827e931e
2022-11-22 08:48:49 -05:00
Szymon Kłos 423aa0fed6 calc: refresh cursor on reconnect
When doing save as we reconnect the app to different spreadsheet.
We need to invalidate cursor position and geometry to avoid
showing incorrect selection.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: If2b4e7351b10f2f0c09292301b3ad7565b76630f
2022-11-22 12:49:21 +01:00
user b94652030a cypress: fix run-* on remote desktop
This takes coorect DISPLAY for remote desktop

Signed-off-by: user <szymon.klos@collabora.com>
Change-Id: I2abe7dc463c6b381ec54ad98d8bbffde5b38d892
2022-11-22 12:43:09 +01:00
user 371e4b41de cypress: fix check-* on remote desktop
Signed-off-by: user <szymon.klos@collabora.com>
Change-Id: I3207aa000610d2b560dd36c096c8743b2746ebb6
2022-11-22 12:43:09 +01:00
Michael Meeks ac1c386c37 Tag polls correctly as running synchronously in the client thread.
This avoids wakeup warning us that the thread is not started to wakeup.

Change-Id: Ifd5c483717024cb1c30521433d0d10acead01e2f
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-11-21 18:54:35 -05:00
Michael Meeks dadfbf0579 allow more verbose log-level during startup to be configured.
Previously this defaulted to 'trace' - now it can be configured, but
still defaults to 'trace'.

Change-Id: I0ecf2f0b991cd8cc29dbde866dd4589be4ca7957
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-11-21 21:44:05 +01:00
Szymon Kłos 737206696c Fixes #5488 : Sens UI_SaveAs also on mobile
regression from https://github.com/CollaboraOnline/online/pull/5252

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I632acddd406ef2ecd3aa862684e30a36f550d559
2022-11-21 15:30:28 +01:00
Ashod Nakashian 7fa1cff0af wsd: improve various logs
Change-Id: Ib4c0792eeba4da76c800f6afe4737f91c4d319f7
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-11-21 08:45:34 -05:00
Ashod Nakashian 4123a88b24 wsd: correct logged upload duration
Change-Id: Ic9fd69cabb782cd1a5662db1cf47fd87be6cf6b3
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-11-21 08:45:34 -05:00
Ashod Nakashian 21069484ec wsd: ssl: log the operation context in errors
Change-Id: I8b2bd675d5341354f240476ea80450b2dbbe7b76
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-11-21 08:45:34 -05:00
Ashod Nakashian 7bf0e980bb wsd: http: correct written data-size reporting
Change-Id: I9268b0c8bd99c1f06d20916503f7df7cdbde0cc4
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-11-21 08:45:34 -05:00
Ashod Nakashian 0ff29b4157 wsd: clang-tidy: suppress bogus assert diagnostics
Clang-tidy thinks, incorrectly, that an
assert(false) can be replaced with static_assert.

While the assert(false) in question is a trap
for code paths that shouldn't happen,
static_assert is a compile-time check that
has nothing to do with the execution path.

Since the assert in question is used in a
macro, it shows up countless times where
said macro is used. This silences it.

Change-Id: I19b35da6332a06335cc83b0584505a42741de97f
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-11-21 08:45:34 -05:00
Ashod Nakashian 432bec03e7 wsd: test: do not invoke WSD test when finished
Change-Id: I46b056c58ba6b214ab5a6099735767490b672ffc
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-11-21 08:45:17 -05:00
Ashod Nakashian cccf7aa0be wsd: test: filter subsequent tests
Apply the test filter on all tests,
not just the first.

Change-Id: Ib34e90e883f5de2ddcf04c710f433cb54677575d
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-11-21 08:45:17 -05:00
Ashod Nakashian 571f80c260 wsd: test: capture the UnitBase instance in WebSocketHandler
With multi-tests, the instance of UnitBase may
change while an old test thread is still running.
Here we capture the instance of the test so we
do not publish events into a different (newer)
test.

Change-Id: I3ca2c058cbd81d4077b140f24f60f3f20f12b9b5
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-11-21 08:45:17 -05:00
Ashod Nakashian 5b45b2807f wsd: test: invoke configure for each test
Now that we may have multiple tests in a
single unit-test module, we should call
UnitWSD::configure for each one, not just
once at the start. Each test can modify
the configuration settings to meet its
test conditions.

Change-Id: I08de2d998edee5b4cbade08f2496196b596a8600
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-11-21 08:45:17 -05:00
Ashod Nakashian 77acf5c18b wsd: test: improved assert logging on failure
We now capture the expected variable's name
and log the expected and actual values when
the assertion fails.

Change-Id: I1c72de9a816acd4a369e8e3f649615462372c49c
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-11-21 08:45:17 -05:00
Ashod Nakashian dad2b5e92a wsd: test: capture the reason in exitTest
When invoking exitTest it's useful to know
something about the reason. Whether it's
because the test passed or timed out,
it's useful to log this information.

Change-Id: I8e8ae525b7c2ef1de2e394d08107341cdc87c008
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-11-21 08:45:17 -05:00
Ashod Nakashian 672c958b89 wsd: test: log all test names before running
Now that multiple tests and filtering are
supported, it's useful to know what tests
exist in each unit-test module.

Change-Id: Ifaa7eccabab6b23a57edf2786c0cd726ab0265db
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-11-21 08:45:17 -05:00
Ashod Nakashian 57456f7ff6 wsd: test: filter tests using COOL_TEST_OPTIONS
Using the envar COOL_TEST_OPTIONS, which is
provisioned to support other options than
just filtering, it is now possible to
only run the tests with names partially
matching the filter's case-insensitive
string.

Change-Id: I6168887677fd0fddd72bac2538837615b10b9fae
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-11-21 08:45:17 -05:00
Ashod Nakashian 0069a41dbb wsd: test: capture the UnitWSD instance per DocBroker
Each test loads one or more document. At the end
of the test we may load a new test (a new
UnitWSD/Kit instance). However, because of the
static interface that the tests have, there
could be only one instance at a time. This
means that when we switch the current test
instance, an existing DocBroker might fire
events into the wrong (new) test, making it
fail.

By capturing the current test, we make sure
that DocBroker can never run against different
tests.

Change-Id: I161ec3c9ce1617f41d03b53d2d5fb19682930b78
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-11-21 08:45:17 -05:00
Ashod Nakashian a124356031 wsd: test: fail -> onDataLoss
The event we trigger when we detect data-loss
is best named to reflect that fact.
And since we can override the behavior,
for example if the test expected to trigger
the data-loss detection, then we can signal
the non-failure by the return value.

Change-Id: I67ca69ae783c956cfdd14d54dab5efb7cc3d258c
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-11-21 08:45:17 -05:00
Ashod Nakashian f3b8ac088f wsd: test: stop DocBroker when unit-test finishes
Change-Id: Ia23cc2e9e3ff503681600a9ab8536c50fafe4db7
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-11-21 08:45:17 -05:00
Ashod Nakashian 543f55f9c4 wsd: test: non-numeric filenames in WopiTestServer
Change-Id: I371c603e040466bfb6d0c5f7e9d52bd7b1d999fe
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-11-21 08:45:17 -05:00
Ashod Nakashian e969859ef3 wsd: test: log test start and finish visibly
Change-Id: Ie374f5d617db188faa24066d494c91f4f5d49c60
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-11-21 08:45:17 -05:00
Ashod Nakashian 03f8ed11fe wsd: test: simplify WSD_CMD_BY_CONNECTION_INDEX
Unfortunately, we can eliminate it because
we want to have the file/line where the
command is issued, for debugging. But, the
body doesn't have to be in the macro and
has now moved to a member function.

Change-Id: I02aefa6d8a8182bdfae8a1e0b4bae28a649e74bf
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-11-21 08:45:17 -05:00
Ashod Nakashian c652757724 wsd: test: return the correct type from hooks multi
Change-Id: I057c90e9b4d5f749ff0dda74a5aa20f3afc3b24f
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-11-21 08:45:17 -05:00
Michael Meeks 8ebdde2cb8 zstd: tune for speed, and compress deltas.
Small deltas were not compressed at all, now they are.

Change-Id: I0543a488723816b4140b27c5690f657aea26226e
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-11-21 11:53:59 +01:00
Pedro Pinto Silva 3f2e70dd09 Enable read-only status label for tablets
So tablet user is able to check what is the current edit mode
by looking at the status bar

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I4990ca748762eb100b0ca9e791b4ae2a0843f2f6
2022-11-21 10:22:37 +01:00
Ashod Nakashian 145f490e76 wsd: when loading fails exit Kit
In rare cases when we have a corrupted document, or
we run out of memory while loading, we end up with
a Kit that has no document and would not be reused.

If we exit the Kit, we immediately cleanup DocBroker
on the WSD side and allow for retrying.

Change-Id: I3e811a066365e94f0606b9458be1272607cc45cf
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-11-20 07:50:12 -05:00
Ashod Nakashian 432424c2c2 wsd: log save failures more visibly
Change-Id: If32b27ece8bfbdc89f600f85c9ac1af5c449135b
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-11-20 07:50:12 -05:00
Ashod Nakashian 261031c2ef wsd: reuse local variable
Change-Id: I621db21e4065e333e77453cecf174d04963c769e
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-11-20 07:50:12 -05:00
Ashod Nakashian ac52505640 wsd: getServerURL is debug/test only
Change-Id: Ic4c2fe3b467fee475cdc7c0b91b1df77f441c0aa
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-11-20 07:50:12 -05:00
Ashod Nakashian 5542a6a253 wsd: correctly set the Content-Type
Change-Id: I4f121cb15e97dec0f366a9aaab4e8e5cc80df611
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-11-20 07:50:12 -05:00
Ashod Nakashian f3b42a9941 wsd: log more info on exception in WebSocketHandler
Change-Id: I73e5a0eb17b9a059aaad2e78c64242e3ed28a8c4
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-11-20 07:50:12 -05:00
Ashod Nakashian d3ab5adfcd wsd: kill poco
Change-Id: I694ad44539f87b0d7127ee64e71768bf408447ec
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-11-20 07:50:12 -05:00
Ashod Nakashian c8aaa2e3c8 wsd: notify the client when the doc URI is invalid
Change-Id: I39a4c8d3dd9ca2899a9a8eacdb865a7121b75d3e
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-11-20 07:50:12 -05:00
Ashod Nakashian 3f926b488b wsd: detect json arrays in messages
So far, we assumed only json objects are
used, but that's only because we didn't
have arrays. This adds support for detecting
both json arrays and objects alike.

Change-Id: If91bf092ab95869298e90e4f071505471ab1db19
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-11-20 07:50:12 -05:00
Andras Timar c037f53b4b Update l10n files for Weblate
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I56a9e4d7b08dbacec05e33f9be89a1943a91391a
2022-11-18 14:53:54 +01:00
Translator-3000 8cd2b7bc82 Translated using Weblate (Italian)
Currently translated at 100.0% (462 of 462 strings)

Co-authored-by: Translator-3000 <weblate.m1d0h@8shield.net>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/it/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I2cd8abdf79e2e8efdb4e815a30a80f1e479fcbe3
2022-11-18 14:46:37 +01:00
Giacomo Bertolotti eb2752d713 Translated using Weblate (Italian)
Currently translated at 99.5% (460 of 462 strings)

Co-authored-by: Giacomo Bertolotti <giacomo.chappo@hotmail.it>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/it/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ic5955ce6453f151bb68b9e30d532ed50751d4377
2022-11-18 14:46:37 +01:00
Alex Gabilondo 79bdcd46be Translated using Weblate (Basque)
Currently translated at 100.0% (462 of 462 strings)

Co-authored-by: Alex Gabilondo <alexgabi@disroot.org>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/eu/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: If1306b1a2b78edbe1cb126807c651ee3d0a9083a
2022-11-18 14:46:36 +01:00
이정희 d0e9e2a82a Translated using Weblate (Korean)
Currently translated at 100.0% (110 of 110 strings)

Co-authored-by: 이정희 <daemul72@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/android-app/ko/
Translation: Collabora Online/Android app
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I9265c95b72c0d0b435e9189c8ccdc3caba52155e
2022-11-18 14:46:36 +01:00
Luna Jernberg 76e732c044 Translated using Weblate (Swedish)
Currently translated at 100.0% (462 of 462 strings)

Co-authored-by: Luna Jernberg <droidbittin@gmail.com>
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: I1694f94a401773d395a249477fe3e4331755dc71
2022-11-18 14:46:36 +01:00
Szymon Kłos e48a2ab2bd Deduplicate code in calc function list for mobile
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I775a01a42dec8780fe149d079667c41c7602bf89
2022-11-17 20:20:42 +01:00
Szymon Kłos 3a0d34d5c5 Fix display of functions help in calc on mobile
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Id42439405752e6f72876469f67fd61450e2cc2d7
2022-11-17 20:20:42 +01:00
Rash419 937d471d1f wsd: fix: wopi.host not working when alias_groups are not defined
regression from commit 3aa3334a7b

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I601ea3bde0419129e39c1a1454c22c676d4870bd
2022-11-17 13:51:00 +01:00
Szymon Kłos dffaeb228b masterpage: correclty refresh after switching mode
Mode is sent via status message so handle it there to avoid
race

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Iaa9c23d4c88950d88701d8adf552d606871902d8
2022-11-17 11:42:24 +01:00
Szymon Kłos cfb6fbd150 sidebar: don't send null command
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Id790bdddfb5263fe23b7ca9e9264a20041228dfa
2022-11-17 11:42:24 +01:00
Szymon Kłos 0c63531319 masterpage: remove old hack for invalidation
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ic2ad091f522e93e669ec021361ef8779cbab55d5
2022-11-17 11:42:24 +01:00
Szymon Kłos 01530c32d5 masterpage: use mode for tile rendering
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I0180e051237043f391ba01128ccfb00fe54cb539
2022-11-17 11:42:24 +01:00
Miklos Vajna bbb8d98ae9 admin: drop conditional that is now redundant with clamping
Follow-up to
<https://github.com/CollaboraOnline/online/pull/5421#pullrequestreview-1179138409>.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: Ie293218e504808d317436181639d9189eb6fb05c
2022-11-17 08:21:12 +01:00
Pedro Pinto Silva 7f8efc7c51 GitPod: Fix No package 'libzstd' found
Fixes issue #5465

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I5139fb4491cc1c6a29bfdf3ef3e0b2b7cb9c890c
2022-11-17 07:39:39 +01:00
Gökay Şatır 192e12a864 Merge permission sources into one. Use global variable for file permission.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I19b6c0e95ccc3249219c88224b8c183992cd3b6d
2022-11-16 15:58:14 +03:00
Gökay Şatır fa14b9aecf Remove unusued function.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: Ie21e4164c268d5dfac78e588630f8d30682e591d
2022-11-16 15:58:14 +03:00
Aron Budea 12f8fb200f Code cleanup around print dialog vs. directly opening PDF
Remove the comment mentioning the pdf.js issue,
which has been fixed since FF 87:
https://github.com/mozilla/pdf.js/issues/5397

Also remove the Edge and IE cases:
- Edge identifies itself as Chrome, and supports print dialog,
- IE is not supported anymore.

Follow-up to 403e9739cf.

Signed-off-by: Aron Budea <aron.budea@collabora.com>
Change-Id: I7747ee27fccc52b90212ade2a2665dcbd8aa97d4
2022-11-16 11:35:15 +01:00
Pedro Pinto Silva e3d3e1ffa0 Hide insert menu item when in readonly mode
except if we are in presence of PDF
- Insert is needed there (insert > comment)

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I604c5fd483862852bc41396e9780d06a6fdb08d8
2022-11-16 10:23:30 +01:00
Szymon Kłos e679f48acd Fix path in android README
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I9dd68d48fc8679085d6c4b7a7cc9f7e05dc1ccbb
2022-11-15 15:57:48 +01:00
Rash419 95f555b468 mention: send a postMessage to integrator when username is selected in mention popup
Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I2ad604e069b224f2642666b10d916d07f540f43d
2022-11-15 14:04:46 +01:00
Ashod Nakashian 956f37c7a7 wsd: test: merge the results of all tests
Since we can have multiple tests in a single
unit-test .so, we need to merge the results
of each test into a single result that is
used when we exit the process and flag for
failure or success.

Change-Id: Ia49f5542efd6dd998b61c17965fd3fe3245159ba
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-11-15 07:04:58 -05:00
Ashod Nakashian a4dbd25d4e wsd: test: rename setHandle to initialize
Since we no longer need to set the handle,
this function is an initialization of the
given test, before running it.

Change-Id: Ia6fb16b06dd548977fcfcc35a81ac37d979be29d
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-11-15 07:04:58 -05:00
Ashod Nakashian 370f60a8ed wsd: test: support multitests
This adds support for multiple tests
within a single unit-test .so.

We did have many, many tests within
the converted "old style" tests already.
Except, they couldn't support the proper
event-driven tests, nor were they running
as fast as possible. They also blocked the
main thread in COOLWSD.

With this support, we can now avoid
creating a new .so for each test case.
This will reduce the effort to add new
tests and the build time. In addition,
the execution of each unit-test is
dominated by the initialization, which
takes in the order of 5 seconds. Running
multiple tests after this high load time
reduces the per-test average time.

Later we will support listing tests,
running particular tests (i.e. filtering)
and other debugging and troubleshooting
facilities.

Change-Id: I7be43994265ebabdb5d379f7726bb9bd7f78795a
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-11-15 07:04:58 -05:00
Ashod Nakashian cc222a708c wsd: test: make dlhandle static and properly cleanup
We now properly cleanup unit-tests .so libs.

This helps having multiple tests by making
the dlhandle an independent variable of
all the tests.

Change-Id: Ifc8db400aebfe8ea41dcc4df2d11856c25b36074
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-11-15 07:04:58 -05:00
Ashod Nakashian 0b2afe2bfd wsd: test: use a global array to support multiple tests
This adds support to having multiple tests in
a single unit-test .so.

Change-Id: I37526484e8a692b25393f659dedd846eedc22733
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-11-15 07:04:58 -05:00
Ashod Nakashian 376a4cff02 wsd: test: improvements to UnitWSDClient
Documentation and several minor
improvements to UnitWSDClient.

Change-Id: Ia7dae5a3bbd7c1392cb044bd33d59dc108ce37c4
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-11-15 07:04:58 -05:00
Andras Timar 8410e29eb9 Hide MediaPlaybackPanel on sidebar
It does not work in Online.
Video playback controls are implemented by the browser.

Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ib1aa2bb3d8820afb375a6a2c1a71d022a4dc119e
2022-11-15 11:18:19 +01:00
Pranam Lashkari c3ac1ef0b7 annotation: fine tune the comment permission in mobile
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I6ec564d2524a9cc8735179fc282eaf8deb81a74b
2022-11-15 09:33:51 +03:00
Pranam Lashkari 8a04942023 segregate edit/read only permissions better
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I85861352929d150aaf93da5570bda960b1ad46f0
2022-11-15 09:17:19 +03:00
Ashod Nakashian 83a7797967 wsd: log edit and comment ext in discovery.xml
It's useful to know which extensions are editable
and which are commentable when loading discovery.xml.

Change-Id: Icb06a62eba14240e1d86c4b3cd641531c4fa8e37
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-11-14 18:16:02 -05:00
Ashod Nakashian c4346a62eb wsd: log the session in question
It's not very helpful to log that some
session is set to this or that without
knowing *which* session the log refers
to. There are many sessions and in a
busy log, it's not always possible to
confidently figure out the answer.

Also log the document loading time and
saving timeout at debug level.

Change-Id: I81fe5e4460f0610a5b941209bc51e4657025c4c2
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-11-14 18:16:02 -05:00
Ashod Nakashian a56721f9cf wsd: remove default parameters in Session
And make arguments explicit for a setReadOnly
and setAllowChangeComment.

Default parameters are useful for backward
compatibility, when changing an API. But
they provide no benefit when the function
in question is new and is called a couple
times anyway. Code is harder to read with
default parameters because one has to
either guess (bad) or check (wasteful).

Change-Id: I105df928f4fb73e7c341218af11903bf1ee33943
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-11-14 18:16:02 -05:00
Ashod Nakashian 5892bcba1e wsd: test: refactor client connection management
The client connection management had nothing to
do with the WopiTestServer and it was there
for convenience. The issue was that it was
not available to tests that do not need
the custom WopiTestServer and depending
on it would make them unnecessarily
complicated.

This adds a new intermediary class to manage
client connections in tests. The reason
this logic didn't move to UnitWSD or even
UnitBase is simply because the client
connection logic depends on the helpers
namespace and other test-specific code
that isn't available in COOLWSD. In short,
UnitBase and UnitWSD are primarily an
interface that COOLWSD and co depend on
and cannot contain test-specific logic
that isn't linked to coolwsd.

We also move the UnitWebSocket helper class.

Change-Id: I79567774164e137349dc162482529578f150353c
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-11-14 18:15:39 -05:00
Ashod Nakashian c25e795bad wsd: test: simplify UnitTimeout
Since we can flag a test as passed
at any point, we don't need to
use a flag and override existing
functionality.

Change-Id: I459ef0345b32233414a8fd2573ef26ecc65b92db
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-11-14 18:15:39 -05:00
Ashod Nakashian 6b3566c4ff wsd: test: header and forward declaration cleanup
Change-Id: I3161c61695a2c1daa505e8276899e0a2d6d26d18
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-11-14 18:15:39 -05:00
Ashod Nakashian 59216fa21c wsd: test: fix UnitWOPILock once and for all
This fixes a race in UnitWOPILock and the
fact that the second view wasn't really
read-only due to empty extensions being
commentable, by default.

Also, improve UnitWOPIUnlock.

Change-Id: I628852d3474042c9e7f54c3d6780e06f694ce141
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-11-14 08:39:10 -05:00
Miklos Vajna 3bf487c540 android: don't link against PocoRedis
This was added in commit 4f03f09c53
(android: Gradle project and other stuff to build., 2019-02-12), but
Online doesn't need it, probably was a copy&paste mistake that went
unnoticed till today Michael S mentioned it on IRC.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: Icb60cacfb9469a674db3f0f7a359ccdf01132558
2022-11-14 09:21:53 +01:00
Gökay Şatır 91984be1a5 Set max width for the "a" element. Hide the overflowing content
Set the height of sibling element to make them align in the row.

Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I96b7bd761b208a1000b86cb57b68c83e427bc4d4
2022-11-14 10:32:58 +03:00
Pedro Pinto Silva e0d86b05af Hyperlink popup: Add tooltips to every button
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I98c61b954118f172062ab67a4a4d21faa1d0e5a4
2022-11-14 10:32:58 +03:00
Pedro Pinto Silva bc13b66b8b Hyperlink popup: bind RemoveHyperlink uno command to button
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I2627d9fdb8fd789ded7f15d70220b5c6bcab1455
2022-11-14 10:32:58 +03:00
user 05ef47842f Hyperlink popup: setup click events
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: If447d3b4d77efb08f6b4547a53f42c7975482c79
2022-11-14 10:32:58 +03:00
Pedro Pinto Silva 13f59efdeb Hyperlink popup: add edit and remove hyperlink buttons
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ie5d3027faf7f061aaffe87820dd78b8d0ba20335
2022-11-14 10:32:58 +03:00
Pedro Pinto Silva 324d699849 Hyperlink popup improve look and feel
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I9e50fb8002b3018e5bd93c52dbe8f3ec488b880e
2022-11-14 10:32:58 +03:00
Rash419 3aa3334a7b fix: memory leak with remote config
when eTag header is not passed from remote server it keeps on parsing the new settings without clearing old ones

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: Iaad9fb6c0e7fd45be3e121b0c0bebaba17d90aab
2022-11-13 17:52:31 +01:00
Ashod Nakashian 2ad1b5f83e wsd: unlock the document only after uploading
Since uploading has become asynchronous, it
might not have finished by the time we
unlock the document. This race can result
in the upload to fail, if the document
is no longer locked.

Now, we ensure that the lock is released
only after uploading, when we remove the
session. With test.

Change-Id: Ic9ba3290dfbfde0eb4af7a70bb5b56ff28711f5c
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-11-12 19:42:30 -05:00
Ashod Nakashian 9adacb12e2 wsd: test: move assertLockRequest to WopiTestServer
Also, don't rely on the timing to have only one
(editing) session by the time we disconnect.
Instead, make the second connection read-only
so that disconnecting the first will always
result in unlocking the document.

Change-Id: Ibbe8164b22d44b52e7b89ad2a677cb196904cac3
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-11-12 19:42:30 -05:00
Ashod Nakashian c4fb6c1964 wsd: test: re-order tests to minimize execution time
Change-Id: I3e7b60962ba7d579328c48f500a062dda32e27be
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-11-12 18:45:35 -05:00
Ashod Nakashian 48c08a40d8 wsd: test: enable tile-tests
Based on the assumption that the new
number of tiles is correct, the assertion
is updated and the tile tests re-enabled.

Change-Id: I9dabe1ea4ec1b091917c4a94c549f967b9539c13
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-11-12 18:45:35 -05:00
Ashod Nakashian fc3514f74f wsd: test: log multiple exitTest cases with different results
Normally, we should exit a test with a single result:
either a success or a failure. It is, however,
possible to have an early success that forgoes
proper cleanups and cause subsequent failures.

Here, we at least log these cases, because it
could unintentionally hide real failures.

Change-Id: I17e6365bd54b3f7336976fb51437776811733eb8
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-11-12 18:45:35 -05:00
Ashod Nakashian cd4b8f13aa wsd: log the socket FD used to listen to client connections
Change-Id: I8499c707b0f9eafdd1b4715d38e222d83437aa37
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-11-12 18:45:35 -05:00
Ashod Nakashian b2aa914b13 wsd: test: reduce the duration of UnitWOPIStuckSave
Change-Id: Idcb4760d879b595eedcf2b92c15113dfe93c3aa4
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-11-12 18:45:35 -05:00
Thomas Lehmann b2267f6280 wsd: fix malformed img-src field
The generated field is

   img-src 'self' data: https://www.collaboraoffice.com/https://*:* ...;

while a space was expected before the "https://*:*"

This was introduced with

   7e94149ec4

   wsd: Only add one img-src rule to the CSP header

Signed-off-by: Thomas Lehmann <t.lehmann@strato-rz.de>
Change-Id: Ia900bb2508e7f04b111160001c6602e87eae2023
2022-11-11 19:59:56 +01:00
Pedro Pinto Silva b0a8379771 Fix send feedback svg
do not use height and width, use viewbox, fix dimensions
to be a square and scale factor

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ic468ab8ff5615e2f27c5fadfd3248f57efc6914e
2022-11-11 14:36:31 +01:00
Miklos Vajna b7f5f94527 wsd: invoke onDocBrokerRemoveSession() before dispose
Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: Id270c57864878bdcea8ca243b955a1d9069629e0
2022-11-11 11:45:24 +01:00
Pedro Pinto Silva 0478aad90e Remove unnecessary CSS for MacroSelector dialog
Also Remove unicode char in MarcoSelector. Better to  avoid
triangles all together since we have cases were the
selected row is a parent and thus having a triangle pointing to
the right makes no sense

Remove other specific rules that are not needed anymore

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ia9ad58917f29fc78ae22075672dc837a6a96318e
2022-11-10 11:48:21 +01:00
Gökay Şatır 7bc537bbfb Send row selection text when Function Wizard is open.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: If5176a34cca65ed8280b3a9ba212f6c2c3a7c310
2022-11-10 12:33:07 +03:00
Gökay Şatır 0e36b31294 Send column selection text when Function Wizard is open.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I09ca97f2f7ec19cd4836f0dbfb8cbf863f3c5f3e
2022-11-10 12:33:07 +03:00
user f5513da43e cypress: adjust desktop/calc/scrolling_spec.js
Signed-off-by: user <szymon.klos@collabora.com>
Change-Id: I6592908543595b182ca632c871ca8b2f30687800
2022-11-10 12:12:10 +03:00
Szymon Kłos 101daccc5e Don't mix mouse move and auto-scroll-to-point handling
If user moves mouse - reset current auto scroll settings.
So we don't get scheduled events changing current state
and causing movement in the other direction.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ic7e59c87ec7b9a2cba327b5ba8e84ca14b8066e0
2022-11-10 12:12:10 +03:00
Szymon Kłos 932543250b Extend scrollbar range when goes outside data
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I9c80d74cab22076ea3fa4f65fa79ff0822a9bfe5
2022-11-10 12:12:10 +03:00
Szymon Kłos 48ec2f5925 Limit scrollbar range to used area in the spreadsheet
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I44ae52809b2f7ea9ac687f2b4c9f10f0592fbfd2
2022-11-10 12:12:10 +03:00
Szymon Kłos 96aa69a2fd Don't process status message two times
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Id1f0f76e8e0624aa322ffb9d8263295b44d73903
2022-11-10 12:12:10 +03:00
Szymon Kłos eb4743a648 Introduce getDataArea in Calc
It will share information about real size of a data inside
spreadsheet so we can easily check where data ends.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I67137a4471f7eb4faaeeb680977872ccda8e9411
2022-11-10 12:12:10 +03:00
Tor Lillqvist b65c82031a RequestDetails::_isMobile is unused
Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: Ib2a6bb69b09776dbaf48216330f1c260299d9cac
2022-11-09 09:09:55 +01:00
Pedro Pinto Silva 162c7624bd Show not-allowed cursor when user mouseovers disabled items
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ie9f02a9d453ca269305f6c7e382d9dacf532dcc0
2022-11-09 08:56:26 +01:00
Rizal Muttaqin 76c47c0922 Signed-off-by: Rizal Muttaqin <riz_17_oke@yahoo.co.id>
Change-Id: Icf386e7deef067c728d0b0d18438d4823918714b
2022-11-08 14:07:45 +01:00
Tor Lillqvist be4dc66e00 Add a cross-referencing comment
Signed-off-by: Tor Lillqvist <tml@iki.fi>
2022-11-08 14:42:51 +02:00
Andras Timar 01bfc2bb66 do not explicitly require libzstd package in CentOS
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ic1aed2516f69d3ce2e65d28201d03c4fb65a4f0a
2022-11-08 11:27:30 +01:00
Andras Timar a4b9c7479d Bump version to 22.05.8.2
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I94b9c70859d68ca2b8bc2c4ad4f39d9a8653cdde
2022-11-08 11:16:28 +01:00
Pedro Pinto Silva b55f07a91e Don't use the same icon for online help and send feedback
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I2ca83fdde484d6db733e41cc15cd42245505e628
2022-11-07 15:39:02 +01:00
Pedro Pinto Silva b7e0ca73da Duplicate and place Accessibility Check in the Help tab
Accessibility checker seems hard to discover. Users tend
to look for such feature in the Help tab (near to Keyboard shortcuts)
and after all we have plenty of space to place it in the help tab.

Better to duplicate instead of moving the icon altogether since it has
been there and we might already have a user base that expects to see
it there. On top of that it makes sense to be together with other
review related action.

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ibb5fa8b681faa5a16267f8a23cdbff0ee0d42ec2
2022-11-07 14:10:03 +01:00
Tor Lillqvist e2cda4f15a Fix crash for LOK_CALLBACK_FONTS_MISSING in the mobile apps
We should just ignore that callback in the mobile apps for now.

Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: Ic1e2f79b23d75433a1f4c491bc31e43d4ebbe3c2
2022-11-07 14:29:22 +02:00
Ashod Nakashian 829ad12045 systemplate: include /lib/*/nss
It seems the location of the NSS dynamic
libraries have changed recently. This is
true on Ubuntu 22.04 and it seems on
Clear Linux.

We expected to find them in /usr/lib but
they are now in /lib. We support both
now, so the systemplate should work on
both new and old systems.

The symptom of not having the NSS libs
is failure to open password-protected
documents. The tests failed, which
helped to reproduce and debug.

Change-Id: Ifb4cbc4e2c852464ffcdcc19801689ea60355042
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-11-05 21:45:24 +00:00
Andras Timar 1cc374c9fa Do not require libzstd-devel for rpm building, because CentOS7 base repos do not have libzstd
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I41c5efcb02487914840ae6027b2b26f5c8d6711e
2022-11-05 18:59:18 +01:00
Pedro Pinto Silva db3d429124 Fix missing icon for Line Spacing: 1.5
With the following commit
4e075146b9
we need to update css to use the same lc_linespacing.svg

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ibd7131a69765b29d69de6d2bb53d1407df363345
2022-11-04 16:37:26 +01:00
Gökay Şatır 403e9739cf Enable print dialogue on FireFox browser.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: Ib1a22ce30c9b84692c673196642cf0522035d5ea
2022-11-04 14:53:55 +03:00
Andras Timar de16f8aef6 Bump version to 22.05.8.1
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I0f1431215742cb64a2a4599b059118111b8b045b
2022-11-04 09:27:37 +01:00
Tor Lillqvist cc3d1ef721 Avoid the Send Feedback functionality in the mobile apps
That is only for web-based COOL. The mobile app stores have their own
feedback and rating mechanisms.

Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: I6f28e27abdf204c7b77247136cc88924639efbd7
2022-11-03 16:04:35 +01:00
Tor Lillqvist 3fe40c13d0 Bump CFBundleShortVersionString to match configure.ac
Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: I76e35aad4115ad4dd7ddcd60b579d16ee3aa58d2
2022-11-03 16:41:12 +02:00
Rash419 737fff0830 docker: added docker file for arch linux to build from source
Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I96a3f07e32fe0132be2081db11b62c666097057d
2022-11-03 13:47:57 +01:00
Tor Lillqvist 29ac04159f Fix the iOS app: Can't use %THINGIES% in cool.html.m4
There is no "file server" in the mobile apps that would expand such
percent sequences. The generated cool.html file is used as is.

Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: I046c23c13ade6195f3f4a8b395ede7c42fc46bd2
2022-11-03 12:47:01 +02:00
Ashod Nakashian 9022c1059b wsd: improved UnitWOPILock to avoid race-condition
Change-Id: Ib91f53f4ebbfef8d93cebe24d48fea26df479dfa
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-11-03 05:17:05 -04:00
Pedro Pinto Silva 438b4e9411 Remove insert shape dropdown extra bottom padding
Before this commit the extra space was not used plus
it was making the popup bigger without necessity.

Referenced in https://github.com/CollaboraOnline/online/issues/2015

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I6b2ba82b3d522f9673e555fb4f762b563c3a9c99
2022-11-03 11:18:52 +03:00
Pedro Pinto Silva 6d6e49e214 Fix statusbar display discrepancies when in readonly mode
Before this commit the statusbar was not being set with the
.readonly css class (already present in other main parent elements)
this, in turn was resulting in enabled and shown actions not proper
for readonly mode.

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ife35a5f15c03681788bd16f007c338a9ddaeea52
2022-11-03 10:47:03 +03:00
Pedro Pinto Silva 01fcf38524 Code refactoring: avoid long statusbar css rules
We can instead, use the existent place for readonly hidden
button on Control.StatusBar.js

Also make use of _updateToolbarsVisibility to show/hide
disable/enable statusbar elements depending on permission mode,
this way changes take affect no only when statusbar is created
but also when we update it.

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I5f7186f87740156c486d7a870bf2bfff6f828501
2022-11-03 10:47:03 +03:00
Michael Meeks 9a3b1738d7 calc: add InsertCells / DeleteCells to calc row/column context menu.
Thanks to Tracie Fabb for the tip.

Change-Id: I5e8a7cb833e0d9a6257fd73324cd1fa553de1fd9
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-11-02 15:48:37 +00:00
Pranam Lashkari 88b183bc05 UI: add missing file property setting button in UI
added button in file menu in desktop view in:
calc, impress and draw

added this button in mobile too.

this will allow user to check the property or change it (i.e: password)

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: Ie9b0776e291046231755739a3c0aa48323c67725
2022-11-02 15:37:26 +01:00
Pranam Lashkari 44d0575d57 pdf: fix comment intsert short cut
regression introduced in 47c52b90f3
regression PR: #5274

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I7fc5b16b9d229c732437d921feb0bba7da5e0562
2022-11-02 15:57:43 +03:00
Tor Lillqvist a3b0eda252 Give an example how to pass the zstd directory options to the configure script
Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: I23a38265f64d037480cb9b17caa8ce4a660f62a6
2022-11-02 12:12:11 +00:00
Tor Lillqvist 3862efd37e Don't recommend using /opt/libreoffice
Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: I4cb27eaedf1af6bf2cdf1b21b43cc65d05a344e2
2022-11-02 12:12:11 +00:00
Tor Lillqvist 6656bc8ac3 iOS is only 64-bit since long
Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: Ifa0aa1c1c129a42e8d0c70c34b12c94e371ed484
2022-11-02 12:12:11 +00:00
Michael Meeks 19dff9f281 zstd: decompress blobs for testing using zstd not inflate.
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I8c2ea8b9cc3561485ec93428c1fe95a20be913fb
2022-11-02 12:09:53 +01:00
Andras Timar 8561b98791 Fix build with libzstd on iOS
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Idb94f5d359593e6098b7386ce0a9d33126d8ec2d
2022-11-02 12:09:53 +01:00
Michael Meeks 4d02d593b5 zstd: build for iOS.
Change-Id: Ifa2df0a0f9cf5bdfad5a513a37b64632b3e0a84f
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-11-02 12:09:53 +01:00
Michael Meeks ccc2c4beb9 Simplify building multiple zstds for Android.
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I58f31f3ff7be19e4770accd88a7520cc112b1e47
2022-11-02 12:09:53 +01:00
Michael Meeks a8c449642e Android - add --with-zstd-includes and libs and build instructions.
Also reduce cut/paste in configure.ac around checking for files.

Change-Id: I33f789e99ed79f08cb9cfa5ed147b764332adfde
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-11-02 12:09:53 +01:00
Michael Meeks abc469466a Clarify delta count updating.
Change-Id: Ie6d507d9aff80b90c97338ce1526a87ae0688394
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-11-02 12:09:53 +01:00
Andras Timar d6b12ab9eb Require libzstd >= 1.4.0
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ia2235a89e53c51766b6f23b647d307a4059cccc6
2022-11-02 12:09:53 +01:00
Michael Meeks b57689a2e8 in-line ZSTD_minCLevel() call as a constant.
Change-Id: Ie0877b4c3cdc3111d3a35f9ed622d8903675b96a
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-11-02 12:09:53 +01:00
Andras Timar 203e953796 FreeBSD CI: require zstd
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I2cc37caa5b32f637bc15175b730e57a978fe0d7d
2022-11-02 12:09:53 +01:00
Andras Timar 1d4c04e22d add libzstd dependency to rpm and deb
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Id55c488d02aa187b3eaff978c3a84e2e12cd8e5a
2022-11-02 12:09:53 +01:00
Michael Meeks e7b57b2fad delta: optimize away re-fetching of pixel data as we apply.
Avoid fetching and putting pixel data back to the canvas when we
apply a series of deltas to a single keyframe.

Also split high-level from low-level delta debugging.

Change-Id: If4c308b695fb236e0753490d0d20a0fef0a9a470
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-11-02 12:09:53 +01:00
Michael Meeks 2def6dc3d5 Switch to zstd image compression.
zstd provides for much faster compression server-side, as well
as better decompression.

zstd allows us to de-compress a keyframe and several deltas in a
single call in JS, so it is necessar to add a terminator to the
delta stream so that we can detect when to flush the buffer we
are working on - so the next delta applies to the correct data.

Change-Id: I0e292e3a697b4902d6488b7c04deaba2d1485e94
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-11-02 12:09:53 +01:00
Henry Castro 38764966dc browser: add fzstd lib
usage

	var decompressed = fzstd.decompress(compressed);
	// Second argument is optional: custom output buffer
	var outBuf = new Uint8Array(100000);

	// IMPORTANT: fzstd will assume the buffer is sufficiently sized, so it
	// will yield corrupt data if the buffer is too small. It is highly
	// recommended to only specify this if you know the maximum output size.
	window.fzstd.decompress(compressed, outBuf);

Change-Id: I0b378f9395b2442bac9f0790f7633e6a6cb0402e
Signed-off-by: Henry Castro <hcastro@collabora.com>
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-11-02 12:09:53 +01:00
Szymon Kłos 0b86e55339 Dont set readonly on non-critical error
When we insert empty/not esiting image - we can continue...

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ib52f530d06dc8c5cd2780a08623435c440f9eb0a
2022-11-02 12:47:07 +05:30
Gülşah Köse 6302568c1c Limit the automatic addition of percentage sign.
In mobile view there is no way to select a cell and type something into.
We had to switch edit mode or use formula bar. So automatic percentage
sign addition is useless on mobile view.

Signed-off-by: Gülşah Köse <gulsah.kose@collabora.com>
Change-Id: Ie0fca8121534a53304414d98e6fbdef82a349d89
2022-11-02 07:48:24 +01:00
Gökay Şatır cf1074b640 Hide "Translate" menu button if deepL is not configured
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I52a02ab8380468b5dc56cb90a4d8edf2fab56c06
2022-11-02 08:56:25 +03:00
Ashod Nakashian b43544da0f wsd: test: faster UnitInsertDelete::testPasteBlank
Change-Id: I4d58cc4c800a6fdd6b3096fe0f35e3c7c00c9c63
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-10-31 17:32:34 -04:00
Szymon Kłos 1822ee1121 Dont show error for wrong shape content
This happens when second time embedded video was selected.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ide47c4927b5717a1f631356dd0f183b086f6a77a
2022-10-31 08:29:34 -04:00
Pedro Pinto Silva 8e933d2cab Add read-only mode tooltip when hovering disabled menu items
So user can have yet another visual cue that the current mode
is read-only

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ie7862e963603541c04d1b6662fbc7350f6e675a0
2022-10-31 10:48:56 +03:00
Gülşah Köse 847c05adc9 Increase the timeout in case copy-paste whole column.
To copy paste whole column into another document needs more
time to get a reply from server.

Signed-off-by: Gülşah Köse <gulsah.kose@collabora.com>
Change-Id: I5321b42e321179d541464f8cbdc49fe01502c353
2022-10-31 10:19:11 +03:00
Miklos Vajna 034b37a4a9 wsd: limit memToFreeKb in Admin::triggerMemoryCleanup()
Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: Idfe4ee00be9f805f5e12c7ece4f890aa2b9d08ed
2022-10-28 11:20:51 +01:00
Szymon Kłos e1ab6ec1b0 Fix typo
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I5c87f9da2f2fb33a78db784e64143b9d5b4df6d1
2022-10-28 07:28:06 +02:00
Andras Timar bdf0c90761 Bump version to 22.05.8.0
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I8e1936ca73e7e299ae042fdc20c969056df97893
2022-10-27 22:09:52 +02:00
Gökay Şatır fea960c50c Writer: Use page twip coordiantes for switching the pages on read-only mode.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: Ie7ed6eb6d4f0178ff2f1f514e6e9f9321caf965d
2022-10-27 16:28:47 +02:00
Ashod Nakashian 10aa79f220 wsd: handle embedded video without extension
Change-Id: I4e05dfdbb78744c8d28404b5000fbc701d71ecbd
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-10-27 16:23:27 +02:00
Szymon Kłos 90f5a08d9f masterpage: don't open sidebar on master page switch
it should stay in current state

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I446ffaa7183cdb70e0a924c4ea042e280a72bb70
2022-10-27 13:58:26 +03:00
Szymon Kłos c441669d20 masterpage: correctly parse invalidatetiles message with mode
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I80b89629c3930d91a940438c82739c8a145e0024
2022-10-27 13:58:26 +03:00
Henry Castro 16f591c5f7 browser: set the document view only if it is offline
The cursor will hide and the permission will be updated
after the document is re-connected.

Change-Id: Ib0a584371317adabe9898dad8bb0cd96717cefff
Signed-off-by: Henry Castro <hcastro@collabora.com>
2022-10-27 11:40:45 +03:00
Szymon Kłos 562a1094d9 Fix alignment panel width in calc
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I119d10f58fdb3159dcd780799042c37f99dd112f
2022-10-27 10:32:50 +03:00
Pedro Pinto Silva e124c5278b Enable Show Status Bar menu entry in readonly mode
Without this commit if the status bar is hidden, it's impossible
to bring it back and so the user is unable to:
- Search within readonly mode
- View the number of pages
- Zoom in our out via selecting the specific values

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: If30a0729862788f7475ce800b643db2b386722f3
2022-10-27 10:27:31 +03:00
Szymon Kłos f2e841b01f jsdialog: apply edit field type
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I7f247333acde5319ef032c11db403b350dc07b44
2022-10-27 08:58:04 +02:00
Szymon Kłos 7f27d29b12 wsd: support embedded video - dont use 2 video tags in edit
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ia83923f5af357d0a022db881daa7cd57d3a7c4f7
2022-10-26 19:37:45 +02:00
Ashod Nakashian fc0b163732 wsd: move svg processing to ClientSession
This helps generate the public URL
easily and unifies the processing
of embedded video.

Change-Id: I07ef7f7722f368957a85e41493fe175de38464f7
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-10-26 16:26:15 +02:00
Ashod Nakashian 7f5d77f1ff wsd: move mediashape handling to ClientSession
And reuse the public URI helper.

Change-Id: I9d56e91c2df571609c575b401c6a4eea958d710a
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-10-26 16:26:15 +02:00
Ashod Nakashian 0124b42077 wsd: reuse getClipboardURI generically
This extracts the sub-path and the tag
as parameters, leaving the rest of the
logic intact.

Change-Id: I4e08537658e14412a1e56b55508ccb9529b00053
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-10-26 16:26:15 +02:00
Ashod Nakashian 06d7fd1753 wsd: extract URI encoding in a helper
This is compatible with the JavaScript
encodeURIComponent(), which supports
XML embedding.

Change-Id: I38bb64af67789bd5eea3f8f8bdb7f80e313599fb
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-10-26 16:26:15 +02:00
Tor Lillqvist c6bd7f6818 Bump IPHONEOS_DEPLOYMENT_TARGET to match core:co-22.05
Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: I15ba4ac4ccf56a1dbdfd0e7434d883625154c46c
2022-10-26 13:55:40 +02:00
Miklos Vajna 4278b601f6 wsd: fix missing tile cache check in ClientSession::getCommandValues()
Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: I59d0c4863493a02df7a05b98648eb235840f8060
2022-10-25 16:55:19 +01:00
Adolfo Jayme Barrientos bcb6dcd9a7 Translated using Weblate (Catalan)
Currently translated at 99.7% (461 of 462 strings)

Translated using Weblate (Spanish)

Currently translated at 100.0% (462 of 462 strings)

Translated using Weblate (Catalan)

Currently translated at 99.5% (460 of 462 strings)

Translated using Weblate (Galician)

Currently translated at 100.0% (22 of 22 strings)

Translated using Weblate (Galician)

Currently translated at 100.0% (110 of 110 strings)

Translated using Weblate (Asturian)

Currently translated at 82.7% (91 of 110 strings)

Co-authored-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/android-app/ast/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/android-app/gl/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/android-lib/gl/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ca/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/es/
Translation: Collabora Online/Android app
Translation: Collabora Online/Android lib
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I7fae503ce1a504e65d3cc962d214bf0ea5f64b87
2022-10-25 16:17:58 +02:00
Szymon Kłos 353e269c55 wsd: support embedded video - relative link
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I4351bc801914583ab589b424059748858d7937d4
2022-10-25 13:20:47 +01:00
Tushar b4ee1a49f0 resolved the Debian 11 dockerfile dependecies issues
This fixes the issue #4695

Signed-off-by: Tushar <tusharbarman123@gmail.com>
Change-Id: Id8a6769ffab18b1d5094799e63d851685c5b1a4f

resolved the intendation issues and duplication issue

Signed-off-by: Tushar <tusharbarman123@gmail.com>
Change-Id: I650e1417f14d156e4a39ba8e6261460d048dfa85

removed lines

Signed-off-by: Tushar <tusharbarman123@gmail.com>
Change-Id: I4ce387a20bee21c9269db6486c8261db96b76ac8

Removed further lines

Signed-off-by: Tushar <tusharbarman123@gmail.com>
Change-Id: If6d7904719cc0fb4800a9f3da1d6043903ee9fec
2022-10-25 14:16:34 +02:00
Miklos Vajna 5f54484fc6 browser: fix indent in package.json
Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: Icdba3a955783d34dc851876ee47cf15c949269ab
2022-10-25 11:59:01 +02:00
Ashod Nakashian f81a1d1c01 wsd: support embedded video in slideshow
Change-Id: I2f7621fceb6c9f267bcf86da358b6eb07d55c9f3
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-10-25 09:16:36 +02:00
Ashod Nakashian 76ac5d09c2 wsd: support embedded media
Change-Id: I28c1a813bad22c49ae759b89ad90e377890acddb
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-10-25 09:16:36 +02:00
Szymon Kłos c50b2682a4 embedded video: show inside selection marker
Draft showing example video preview when activating any shape...

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I37ab8335a3448283abd3c978eb8c62722fd8c7bb
2022-10-25 09:16:36 +02:00
genofire 3e131a9e0f improve HelmChart
Change-Id: 2995f983d09241299ccb7947a2df281aec8977a1

Signed-off-by: Klaus Erber <k.erber@erber-freelance.de>
Signed-off-by: Martin Müller <martin.mueller@dataport.de>
Signed-off-by: genofire <geno+dev@fireorbit.de>
2022-10-24 17:29:21 +02:00
genofire 686edeac1a update README
Change-Id: 4e9f7b85dfa0097d6794e0f0004d145e705db928

Signed-off-by: Martin Müller <martin.mueller@dataport.de>
Signed-off-by: genofire <geno+dev@fireorbit.de>
2022-10-24 17:29:21 +02:00
Szymon Kłos 8591d323c6 Call initializedUI on mode switch
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I19b0df193574e36be3532d0ae39f359ea706579e
2022-10-20 15:03:39 +02:00
Gabriel Masei cd106b9976 wsd: add lang param to conversion
This is needed, for example, for date type cells
for which the format language is set to default.
In this case the load language is used and it
determines the display/output format.

Signed-off-by: Gabriel Masei <gabriel.masei@1and1.ro>
Change-Id: I49ec4940377b261971224d37ea5fbe8ed7006157
2022-10-20 11:08:42 +01:00
Andras Timar b639546287 Bump package version to 22.05.7.2
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ib82128cc4c6751a62e424907751a1d02450ac848
2022-10-20 11:26:33 +02:00
Ihor Hordiichuk 43d14921b5 Translated using Weblate (Ukrainian)
Currently translated at 100.0% (462 of 462 strings)

Co-authored-by: Ihor Hordiichuk <igor_ck@outlook.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/uk/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I83e857a3b0c3cd7f226539e4bc72634ecdd4b603
2022-10-20 11:25:24 +02:00
Oğuz Ersen bb767c16cc Translated using Weblate (Turkish)
Currently translated at 100.0% (462 of 462 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: Idd8c5905fc80cdb5a610708221dfec0c5f682ef6
2022-10-20 11:25:24 +02:00
Martin Srebotnjak 91ea004b28 Translated using Weblate (Slovenian)
Currently translated at 100.0% (462 of 462 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: Ib86254274ce16cc3b2fc5aedf25bdc5abcff6dc2
2022-10-20 11:25:24 +02:00
Mike Kaganski eb42c720cd Translated using Weblate (Russian)
Currently translated at 100.0% (462 of 462 strings)

Co-authored-by: Mike Kaganski <mikekaganski@hotmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ru/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I4373ad3923e895b8fe679a0a040f767d60d57ef3
2022-10-20 11:25:24 +02:00
Pedro Pinto Silva dbc25f6d86 Translated using Weblate (Portuguese (Brazil))
Currently translated at 100.0% (462 of 462 strings)

Translated using Weblate (Portuguese)

Currently translated at 100.0% (462 of 462 strings)

Co-authored-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Co-authored-by: Pedro Silva <pedro.silva@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pt/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pt_BR/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ia4204d4fac0773d59942c2601845b7efc551cf71
2022-10-20 11:25:24 +02:00
Matthaiks a96e6b4e09 Translated using Weblate (Polish)
Currently translated at 100.0% (462 of 462 strings)

Co-authored-by: Matthaiks <kitynska@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pl/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Iffb089e4b9994d4cca0290b75fcb9ce8ec4ca66e
2022-10-20 11:25:24 +02:00
Sebastiaan Veld eb787ee954 Translated using Weblate (Dutch)
Currently translated at 100.0% (462 of 462 strings)

Co-authored-by: Sebastiaan Veld <sebastiaan.veld@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/nl/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I7607eb52090254262165138406cb258c56bf09a1
2022-10-20 11:25:24 +02:00
Sveinn í Felli 031fc0651b Translated using Weblate (Icelandic)
Currently translated at 100.0% (462 of 462 strings)

Co-authored-by: Sveinn í Felli <sv1@fellsnet.is>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/is/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I9045afa672f535b6a009804998c3bf66d024c57e
2022-10-20 11:25:24 +02:00
Milo Ivir e785fa892f Translated using Weblate (Croatian)
Currently translated at 100.0% (462 of 462 strings)

Co-authored-by: Milo Ivir <mail@milotype.de>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/hr/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I755e65e2845d80e8804aa5ee44165fd9b9364514
2022-10-20 11:25:24 +02:00
Yaron Shahrabani 75001c5d78 Translated using Weblate (Hebrew)
Currently translated at 100.0% (462 of 462 strings)

Co-authored-by: Yaron Shahrabani <sh.yaron@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/he/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ifaf48e12ec1e4ff6f5a28ee4cab133f94e14825e
2022-10-20 11:25:24 +02:00
Nathan 5d0456ba0f Translated using Weblate (French)
Currently translated at 100.0% (462 of 462 strings)

Co-authored-by: Nathan <bonnemainsnathan@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/fr/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I26138cc45820ca27e6413c6bdb5a6a3136ab3c6f
2022-10-20 11:25:24 +02:00
Andras Timar 3fc13fed76 Translated using Weblate (Hungarian)
Currently translated at 100.0% (462 of 462 strings)

Translated using Weblate (English (South Africa))

Currently translated at 100.0% (462 of 462 strings)

Translated using Weblate (English (New Zealand))

Currently translated at 100.0% (462 of 462 strings)

Translated using Weblate (English (United Kingdom))

Currently translated at 100.0% (462 of 462 strings)

Translated using Weblate (English (Australia))

Currently translated at 100.0% (462 of 462 strings)

Translated using Weblate (German)

Currently translated at 100.0% (462 of 462 strings)

Co-authored-by: Andras Timar <andras.timar@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/de/
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/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/hu/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ia5a9af0487aa09270fa79ea913022ed5bab22e9f
2022-10-20 11:25:24 +02:00
Jan Holesovsky 3f1ecb2f5f Translated using Weblate (Czech)
Currently translated at 100.0% (462 of 462 strings)

Co-authored-by: Jan Holesovsky <kendy@collabora.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: Id539677a41bae8be8e53885f7793eb61d1b51ea5
2022-10-20 11:25:24 +02:00
gallegonovato 8a9aba4134 Translated using Weblate (Spanish)
Currently translated at 100.0% (462 of 462 strings)

Translated using Weblate (Galician)

Currently translated at 100.0% (22 of 22 strings)

Co-authored-by: gallegonovato <fran-carro@hotmail.es>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/android-lib/gl/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/es/
Translation: Collabora Online/Android lib
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Icfd49ac6243ccdb8cf2d2d456a9ffac0e91ea4f2
2022-10-20 11:25:23 +02:00
Gülşah Köse 366f7ab93a Allow .uno:ResolveComment on readonly mode.
Signed-off-by: Gülşah Köse <gulsah.kose@collabora.com>
Change-Id: I7212e6a617df159a5ee42ff03bfd6d8a3aaac444
2022-10-20 10:41:37 +02:00
Gökay Şatır 5c017d85dc Move node-canvas into devdependencies.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I779dc0d4c328e5fba20b9c458152358d2038f170
2022-10-19 17:23:20 +03:00
Pranam Lashkari 47c52b90f3 keyboard: block shortcuts in readonly mode
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: Ife814304e397620cf55b57b2025143eaab9a3280
2022-10-19 11:02:25 +03:00
Andras Timar 12a912f2ed Bump package version to 22.05.7.1
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Id84ef447554e5b8b3e9fc36dd474ffb9e033ee02
2022-10-18 22:08:41 +02:00
Andras Timar ad0b809482 Updated UNO command translations
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I63be9aaea03cc733afe30322a30fa43621ddc8e5
2022-10-18 22:03:59 +02:00
Andras Timar 8dc147ca25 Update l10n files for Weblate
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I874c0524841c884e29d7e54e315102b5c71d259f
2022-10-18 22:00:17 +02:00
Stanislav Horáček d782f15c58 Translated using Weblate (Czech)
Currently translated at 100.0% (461 of 461 strings)

Translation: Collabora Online/UI
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/cs/
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I8a0167da822159eb79029962b25020ec838017a5
2022-10-18 21:57:45 +02:00
gallegonovato d28d737dd5 Translated using Weblate (Galician)
Currently translated at 100.0% (110 of 110 strings)

Translation: Collabora Online/Android app
Translate-URL: https://hosted.weblate.org/projects/collabora-online/android-app/gl/
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I5b3c88940d98af9d4353cf82276da29945d17432
2022-10-18 21:57:45 +02:00
gallegonovato ba0e2087d1 Translated using Weblate (Spanish)
Currently translated at 100.0% (461 of 461 strings)

Translation: Collabora Online/UI
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/es/
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ia03c18745b78c0143f284559bb7624439cbc4f5f
2022-10-18 21:57:45 +02:00
Sveinn í Felli 7df9f8ed2d Translated using Weblate (Icelandic)
Currently translated at 100.0% (461 of 461 strings)

Translation: Collabora Online/UI
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/is/
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I6b5edc70be05238851ac3a7b93e94a0b12e3ef96
2022-10-18 21:57:45 +02:00
Adolfo Jayme Barrientos 1092aa52c7 Translated using Weblate (Galician)
Currently translated at 69.1% (319 of 461 strings)

Translation: Collabora Online/UI
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/gl/
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ie40155531082c7d3a993e249ea3be196f953d922
2022-10-18 21:57:45 +02:00
Adolfo Jayme Barrientos 1979b777de Translated using Weblate (Spanish)
Currently translated at 100.0% (461 of 461 strings)

Translation: Collabora Online/UI
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/es/
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ie2f9f0003e57c229077d707a5c171142621e28ef
2022-10-18 21:57:45 +02:00
gallegonovato f23e6c643d Translated using Weblate (Spanish)
Currently translated at 100.0% (110 of 110 strings)

Translation: Collabora Online/Android app
Translate-URL: https://hosted.weblate.org/projects/collabora-online/android-app/es/
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I43bb6397733d1167a8571dd7aceb95d337e2c4ff
2022-10-18 21:57:45 +02:00
SC bd7f151bb5 Translated using Weblate (Portuguese)
Currently translated at 100.0% (461 of 461 strings)

Co-authored-by: SC <lalocas@protonmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pt/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I91c3fb3b6bbcf7deb537a8f08124d7b8c58c9af2
2022-10-18 21:57:45 +02:00
gallegonovato e25c6b7e46 Translated using Weblate (Spanish)
Currently translated at 100.0% (461 of 461 strings)

Co-authored-by: gallegonovato <fran-carro@hotmail.es>
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: I201ac84975ddd1a281e2d6b18093b1746ffd79e4
2022-10-18 21:57:45 +02:00
Weblate 781a30c1cc Added translation using Weblate (Korean)
Co-authored-by: Weblate <noreply@weblate.org>
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I53f4a1c5358400d2f1132b5985e757b2bd700b4a
2022-10-18 21:57:45 +02:00
Eric 3473da3cfc Translated using Weblate (Chinese (Simplified))
Currently translated at 78.9% (364 of 461 strings)

Co-authored-by: Eric <hamburger1024@mailbox.org>
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: I484af40d73d3b390a6273e68044b7873a72401e6
2022-10-18 21:57:45 +02:00
Ihor Hordiichuk 4608034149 Translated using Weblate (Ukrainian)
Currently translated at 100.0% (461 of 461 strings)

Co-authored-by: Ihor Hordiichuk <igor_ck@outlook.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/uk/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I9609d2840927e32e934601836dd61e277b4167ad
2022-10-18 21:57:45 +02:00
Oğuz Ersen 832c67aee1 Translated using Weblate (Turkish)
Currently translated at 100.0% (461 of 461 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: I6ff0045a99f1a69de20315fd0c9f37cc39cf39d0
2022-10-18 21:57:45 +02:00
Leif-Jöran Olsson a2552b808b Translated using Weblate (Swedish)
Currently translated at 100.0% (461 of 461 strings)

Co-authored-by: Leif-Jöran Olsson <info@friprogramvarusyndikatet.se>
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: I098406913dc05a74337c653f2842a2e987791678
2022-10-18 21:57:45 +02:00
Martin Srebotnjak 3192dbc7ce Translated using Weblate (Slovenian)
Currently translated at 100.0% (461 of 461 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: I2c9a6b27edb085f372b5fd9f297654edb065a9e3
2022-10-18 21:57:44 +02:00
Егор Ермаков ea5147819c Translated using Weblate (Russian)
Currently translated at 100.0% (461 of 461 strings)

Co-authored-by: Егор Ермаков <eg.ermakov2016@yandex.ru>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ru/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I988abd1f9c83ebc2e1dbf4cbba8c8bf576efa7be
2022-10-18 21:57:44 +02:00
Matthaiks 829614ec8b Translated using Weblate (Polish)
Currently translated at 100.0% (461 of 461 strings)

Co-authored-by: Matthaiks <kitynska@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pl/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I5b7704efc9b22d2ef4ee737a81f6c3e05a7376f0
2022-10-18 21:57:44 +02:00
Sebastiaan Veld 56bc2f9632 Translated using Weblate (Dutch)
Currently translated at 100.0% (461 of 461 strings)

Co-authored-by: Sebastiaan Veld <sebastiaan.veld@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/nl/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ia5f9b747bfcec9412161a3da2e39c8f88c8c5600
2022-10-18 21:57:44 +02:00
Rizal Muttaqin d46c52a696 Translated using Weblate (Indonesian)
Currently translated at 100.0% (461 of 461 strings)

Co-authored-by: Rizal Muttaqin <riz_17_oke@yahoo.co.id>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/id/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: If046135a9d3609c869f4b1fba2cb9d8fcc62def2
2022-10-18 21:57:44 +02:00
liimee f3baf598c6 Translated using Weblate (Indonesian)
Currently translated at 100.0% (461 of 461 strings)

Co-authored-by: liimee <alt3753.7@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/id/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I5145b563b884d11c69ce64cabdab097ed1caec6c
2022-10-18 21:57:44 +02:00
Andras Timar 0589519cb9 Translated using Weblate (Hungarian)
Currently translated at 100.0% (461 of 461 strings)

Co-authored-by: Andras Timar <andras.timar@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/hu/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I80c879078498432f16b16d831ae03fff9b203e96
2022-10-18 21:57:44 +02:00
Yaron Shahrabani fd5e570d01 Translated using Weblate (Hebrew)
Currently translated at 100.0% (461 of 461 strings)

Co-authored-by: Yaron Shahrabani <sh.yaron@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/he/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I48124275b66db111968247df9758f0735b283851
2022-10-18 21:57:44 +02:00
Nathan b2bab4824b Translated using Weblate (French)
Currently translated at 100.0% (461 of 461 strings)

Co-authored-by: Nathan <bonnemainsnathan@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/fr/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I8b24961c17718487c032e03de2da9f17e9a0141e
2022-10-18 21:57:44 +02:00
Gontzal Manuel Pujana Onaindia 74a8627d97 Translated using Weblate (Basque)
Currently translated at 100.0% (461 of 461 strings)

Co-authored-by: Gontzal Manuel Pujana Onaindia <thadahdenyse@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/eu/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I1f64d4d7a935bb02126971ef1163fce949d207ab
2022-10-18 21:57:44 +02:00
J. Lavoie 5c514be172 Translated using Weblate (French)
Currently translated at 100.0% (461 of 461 strings)

Translated using Weblate (English (United Kingdom))

Currently translated at 100.0% (461 of 461 strings)

Co-authored-by: J. Lavoie <j.lavoie@net-c.ca>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/en_GB/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/fr/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I3dca37e42b89fc2a2707bb00cd6b37ecbd0d41c3
2022-10-18 21:57:44 +02:00
Sargon-Isa 0612a610fc Translated using Weblate (German)
Currently translated at 100.0% (461 of 461 strings)

Co-authored-by: Sargon-Isa <Sargon_isa@hotmail.de>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/de/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Iadce3f13dd20822c17b5a39817b9340ea23bd09e
2022-10-18 21:57:44 +02:00
Adolfo Jayme Barrientos 238e80075a Translated using Weblate (Asturian)
Currently translated at 52.4% (242 of 461 strings)

Translated using Weblate (Asturian)

Currently translated at 80.9% (89 of 110 strings)

Translated using Weblate (Spanish)

Currently translated at 99.7% (460 of 461 strings)

Translated using Weblate (Catalan)

Currently translated at 99.5% (459 of 461 strings)

Co-authored-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/android-app/ast/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ast/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ca/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/es/
Translation: Collabora Online/Android app
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I73b0d3aa4bdd628bc97a3b851cfd8d574ca06318
2022-10-18 21:57:44 +02:00
이정희 7b952487f4 Translated using Weblate (Korean)
Currently translated at 100.0% (5 of 5 strings)

Translated using Weblate (Korean)

Currently translated at 100.0% (110 of 110 strings)

Co-authored-by: 이정희 <daemul72@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/android-app/ko/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ios-app/ko/
Translation: Collabora Online/Android app
Translation: Collabora Online/iOS app
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I684e28d1b6257762ce4fe35a103226dfbea5032b
2022-10-18 21:57:44 +02:00
Pedro Pinto Silva 657c150087 Fix missing lc_signdocument svg
Use iconURLAlias -> signature (already available svg)

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Icdc35aa7206efedffb88d9c87992b791de05647d
2022-10-18 18:00:52 +02:00
Szymon Kłos ed33eb4b81 notebookbar: repair icon should be big when not in 2 rows
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ibde05d8f104f25db048b8bb7ba36c29fc4ef887c
2022-10-18 16:25:47 +02:00
Jan Holesovsky 7f96d9276c Implement HideRepairOption in CheckFileInfo
When present and equal to 'true', the 'Repair' button and/or menu entry
is hidden in the UI.

Signed-off-by: Jan Holesovsky <kendy@collabora.com>
Change-Id: If8075be479551e0d1a5fa03014aa5e4412578c31
2022-10-18 13:02:11 +02:00
Pedro Pinto Silva 765ea170df Disabled menu items are not clickable
Change cursor so to make that clear

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ia448e639d98186c3e5eb5ef8ccc9236031ba3774
2022-10-18 12:49:08 +02:00
Pedro Pinto Silva fb26e95624 Admin settings: do not use duplicate ids
Before this commit we were using a-settings-tablet to try to
target the side menu but it seems we are already using that id
for the header left "Settings" element

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ic5a1fa16ef823c935c09307d00fd6848643f0c4c
2022-10-18 09:14:13 +02:00
Pedro Pinto Silva fd67d683e6 Admin setting: Make shutdown button easier to find
Before this the shutdown button was at the bottom difficult to
find. It also was a but confusing, at first sight it look like
it was a red button that clean or erases the settings options
(since it was a red button at the bottom of option form)

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I7c05b261b9d164f8fa1194eab5314abd87e9320d
2022-10-18 09:14:13 +02:00
Pedro Pinto Silva 6fd84abbd3 Admin settings: Add tabs, move version to its own place
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I54d4c2fefe4cc4bca534733387e6127020834d09
2022-10-18 09:14:13 +02:00
Pedro Pinto Silva e6e065a26d Fix missing tab on Admin settings page
Before this commit it was only visible on mobile

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ifc9737d2bcd0014aa7b7d0d05dc0ec356aaf220b
2022-10-18 09:14:13 +02:00
Pedro Pinto Silva 5a7ff0232d Allow top bar to be scroll-able when in tabbed view
Before this commit, some actions were unreachable on tablets,
small screen factor laptops. Basically  when the web browser window
is smaller then the top bar's content.

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I2e93540fa7b7d7bcf1a9f7e9f6697322528562f7
2022-10-18 09:12:27 +02:00
Aron Budea 0c0776e887 browser: Paste progress bar has double precision
So round the value in the progress bar to integer.

Signed-off-by: Aron Budea <aron.budea@collabora.com>
Change-Id: I34058b2b8e04714eb7da60d8274660b06e583702
2022-10-18 01:14:51 +02:00
Aron Budea 3df0b1126a config: HAVE_PPOLL should be 0 by default instead of undefined
Signed-off-by: Aron Budea <aron.budea@collabora.com>
Change-Id: I5ffbe723341fc5a2e4363aaa6abe11e33e262ffa
2022-10-14 13:36:19 +02:00
Tushar 59b564cd80 Replace magic numbers with keycode constants
There are directly provided numbers for key codes in some places.
We can use already defined constant variables.
This makes code more readable and obvious.
Fixes issue #4929 .

Signed-off-by: Tushar <tusharbarman123@gmail.com>
Change-Id: Iccb2e4e89381a78337a3123543d01b00f9f24e6f

Made all the required changes

Signed-off-by: Tushar <tusharbarman123@gmail.com>
Change-Id: Ifea5cf1a8bf73fc91a8b541104d23b5e5ec46981

changed keyCodes to keyCode

Signed-off-by: Tushar <tusharbarman123@gmail.com>
Change-Id: I40be65fa5c567ee2f722d78f6c226444546cb207

changed keyCode to this.keyCodes

Signed-off-by: Tushar <tusharbarman123@gmail.com>
Change-Id: I257a55fbd6a64f4e83f04d22892acbc53bca8aae

solved duplicate keys issue

Signed-off-by: Tushar <tusharbarman123@gmail.com>
Change-Id: I5de1e893996ffb626c055295bbc87a8f76cce624

changed return to enter in keyCodes dictionary

Signed-off-by: Tushar <tusharbarman123@gmail.com>
Change-Id: I54c44915c0ebd5b19f82bc699010708b411f3622

line 343 had errors, resolved it

Signed-off-by: Tushar <tusharbarman123@gmail.com>
Change-Id: I29e1556ba9e31fa74bfdb5d84c1ad06fbc39e396

duplicate subtract error, resolved it

Signed-off-by: Tushar <tusharbarman123@gmail.com>
Change-Id: Ic2b301f28cc9a0ed82df0fee3b215cc77530c86d

line 698, changed num5 to num5[0]

Signed-off-by: Tushar <tusharbarman123@gmail.com>
Change-Id: Id9aed56375e9d42911ec40267f3662bc783d86be

resolved conflicts related to keymappings

Signed-off-by: Tushar <tusharbarman123@gmail.com>
Change-Id: I8ddacf568eb560d2992b662c96a6a32825726700

 Made capital letters and few other changes

Signed-off-by: Tushar <tusharbarman123@gmail.com>
Change-Id: I477bf4d9b2fb469d7173937ca39b3a7e85f4e118

 Fixed MAC value not used

Signed-off-by: Tushar <tusharbarman123@gmail.com>
Change-Id: I654854f224ccfef0b5a477c184fa5a797c6a4795

 Fixed left and right window key for MAC
Signed-off-by: Tushar <tusharbarman123@gmail.com>
Change-Id: I1d3631099454c4846352fd475307f03f33f2038a
2022-10-14 11:09:46 +02:00
Dennis Francis 5d0dbe8b90 fix for autofilter test-case
Signed-off-by: Dennis Francis <dennis.francis@collabora.com>
Change-Id: I5e631495e0fd08e94249f22d3ed5e9f709537405
2022-10-14 11:55:39 +03:00
Dennis Francis 08f4872e90 remember scroll position on switching tabs
Signed-off-by: Dennis Francis <dennis.francis@collabora.com>
Change-Id: I7e540f08d2d493e449a41c07fe054207bb79f4ac
2022-10-14 11:55:39 +03:00
Dennis Francis 7b534c91cf duplicate sheet-geometry for same sheet...
triggers replay of other messages that disrupt the view restore during
sheet switch.

Signed-off-by: Dennis Francis <dennis.francis@collabora.com>
Change-Id: I76619ed78c78d7df6578fe9de36549e7f3f403f5
2022-10-14 11:55:39 +03:00
Dennis Francis 0939848915 cellCursorXY is expected to be a L.Point elsewhere
Signed-off-by: Dennis Francis <dennis.francis@collabora.com>
Change-Id: I816631db107adbb4d955d094b81ecba5c8930002
2022-10-14 11:55:39 +03:00
Gülşah Köse 38abc5ca91 Add percentage sign to cell automatically.
Signed-off-by: Gülşah Köse <gulsah.kose@collabora.com>
Change-Id: I422f63c6d3963bdf125fc00e7dafc4428883c7ce
2022-10-14 10:18:31 +02:00
Tor Lillqvist bded36d222 Make 'Missing fonts' translatable
Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: Ia54c53b98f0858533bdec6a61c9b26cbe9422bee
2022-10-13 17:02:08 +03:00
Tor Lillqvist 0a0f309228 Add alternative ways to handle "missing fonts": log, report, or ignore
The default is to log to the coolwsd log file.

Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: I894f8c4b19ee96f7323512e63c8c66372d8516d9
2022-10-13 17:02:08 +03:00
Tor Lillqvist 8bd276976e Downloaded fonts don't need to be visible to Kit processes any longer
After recent changes in core, it is only the ForKit process that opens
such files.

Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: I69ce1c4caf229b34e42799c525a1f1461a1841e0
2022-10-13 17:02:08 +03:00
Tor Lillqvist 48eaa195b7 Handle the callback for missing fonts properly
For now, just display it using an infobar. UI experts, feel free to
change it to something more appropriate.

Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: I0b6e592a51441299cc08d0e42ba3b5c5087b30db
2022-10-13 17:02:08 +03:00
Andras Timar 1cddb21b94 Display build config (configure options) on admin console
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Iac66ea99d23416c494b04ff92abc0bfeb646e5be
2022-10-13 11:57:17 +02:00
Rash419 0fdab6e99e wsd: added allow key to locked_hosts section of json to
define whether locked_host is allowed or not from json
only without the need coolwsd.xml value

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I4c20a56afae3b90c29badc1ecbaec5aa37d07cbd
2022-10-12 10:59:19 +02:00
Rash419 fa70614464 wsd: added additional safety checks in fetch methods of remote config poll
updated the log messages

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: Ic9caaed6111adeee6b05e3240afcbef1e919285d
2022-10-12 10:59:19 +02:00
Rash419 4544428aeb wsd: removed fetchWopiHostPatterns
fetchWopiHostPatterns was used to override old <host></host> which is deprecated and replaced
by alias_groups

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: Ic16facffdb40eaca504c47a17024cff6ff241950
2022-10-12 10:59:19 +02:00
Michael Meeks 9e9f7007f3 perf-test: disable SSL for now, and print the right url.
Seemingly rejectUnauthorized doesn't make nodejs happy either
for unknown reasons.

Change-Id: I99299489ba6af98c4088ee7b95c4d55d1291dfc6
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-10-12 07:53:46 +02:00
Rash419 6cc2dc2c98 overriding checkfileinfo using hidden input field
wopi host can add following input field to their html to override checkfileinfo, right now only
DownloadAsPostMessage is supported
<input name="checkfileinfo_override" value="DownloadAsPostMessage=true" type="hidden"/>
This can be usefull when same html is used to load collabora online in both desktop browser and mobile webview

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I8ff122f2824694d451724a832d992e08161fb448
2022-10-11 11:34:29 +02:00
Pedro Pinto Silva 52f0c3dd0d Fix multiple line list within feature_lock dialog
Before this commit, list entries with multiple lines where not being
properly aligned.

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I0ca9861289f471285ace2dc1d39104d608eb8f15
2022-10-11 11:23:42 +02:00
Pranam Lashkari 901e7ca29e fixed read only feature locking popup not working
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: Id667f4307b30eb38b0ebe0ce4ff6ee71b62020eb
2022-10-11 03:54:34 +05:30
Rash419 b1f3cdbde0 browser: fix: using IME input candidates cannot be selected correctly
don't empty the textArea when typing through IME

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I7fac8ddfcdf5eeb3f03fe79bdf538fb52d311cce
2022-10-10 09:52:55 +02:00
Andras Timar cb51998535 Update l10n files for Weblate
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Id6f89f401e21a94716665d8eaef5fbfaf108c500
2022-10-07 17:10:19 +02:00
Andras Timar f66871cf18 Enable l10n of browser/src/map/handler/Map.Feedback.js
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Iceebef11d522be1a964be35dbd6484ed44b699d4
2022-10-07 17:08:00 +02:00
Besnik Bleta d27f23b3a5 Translated using Weblate (Albanian)
Currently translated at 7.4% (34 of 459 strings)

Translated using Weblate (Albanian)

Currently translated at 14.6% (67 of 457 strings)

Translated using Weblate (Albanian)

Currently translated at 100.0% (5 of 5 strings)

Co-authored-by: Besnik Bleta <besnik@programeshqip.org>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/sq/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ios-app/sq/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/sq/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Translation: Collabora Online/iOS app
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I455691b982eedd8c88685d788e869d83d2bf05d6
2022-10-07 17:05:55 +02:00
Nathan cf3e2b2dda Translated using Weblate (French)
Currently translated at 100.0% (459 of 459 strings)

Co-authored-by: Nathan <bonnemainsnathan@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/fr/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I26bfc5404b02528567a3edcb3c15f0630753d2f6
2022-10-07 17:05:54 +02:00
HerMin 8f2215706a Translated using Weblate (Korean)
Currently translated at 64.0% (294 of 459 strings)

Co-authored-by: HerMin <jetem@me.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ko/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ib11981e72ab56e3d04f2e425ec3628a505340742
2022-10-07 17:05:54 +02:00
Gontzal Manuel Pujana Onaindia 4301a117ca Translated using Weblate (Basque)
Currently translated at 100.0% (459 of 459 strings)

Co-authored-by: Gontzal Manuel Pujana Onaindia <thadahdenyse@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/eu/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I78831e8cfa8f9be0b66fc153c1cfa4a25c7f45ad
2022-10-07 17:05:54 +02:00
George Kitsoukakis 09061fe50a Translated using Weblate (Greek)
Currently translated at 95.4% (438 of 459 strings)

Co-authored-by: George Kitsoukakis <norhorn@gmail.com>
Co-authored-by: george kitsoukakis <norhorn@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/el/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ic748ef012368e729298c2e55855c701d8c265721
2022-10-07 17:05:54 +02:00
Sveinn í Felli 8ca8c6bdda Translated using Weblate (Icelandic)
Currently translated at 100.0% (459 of 459 strings)

Co-authored-by: Sveinn í Felli <sv1@fellsnet.is>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/is/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I19987c9dc42cad0ebfb15f79130110560b88fc3c
2022-10-07 17:05:54 +02:00
Yaron Shahrabani 34e2390a2a Translated using Weblate (Hebrew)
Currently translated at 100.0% (459 of 459 strings)

Co-authored-by: Yaron Shahrabani <sh.yaron@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/he/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I3381bdd4b9e2d9c62b902649281ac01e93b09513
2022-10-07 17:05:54 +02:00
Jan Holesovsky 4cd2bf1d91 Translated using Weblate (Czech)
Currently translated at 100.0% (459 of 459 strings)

Co-authored-by: Jan Holesovsky <kendy@collabora.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: I5c4fc0fbfb513d2da0f33fe31922a226af74e84c
2022-10-07 17:05:54 +02:00
Adolfo Jayme Barrientos 613c44666d Translated using Weblate (Asturian)
Currently translated at 52.0% (239 of 459 strings)

Translated using Weblate (Spanish)

Currently translated at 100.0% (459 of 459 strings)

Translated using Weblate (Catalan)

Currently translated at 100.0% (459 of 459 strings)

Co-authored-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ast/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ca/
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: I0172849eeaf1fc2bc611b84e9cae1e86a133c3d5
2022-10-07 17:05:54 +02:00
Ashod Nakashian 237bb46eff wsd: simplify infobar fetching
Since the request is really synchronous,
there is no benefit in firing up a thread
and doing an asynchronous request when
we will block until the result is in.

Luckily, we have a much simpler sync-
request API that avoids threads and
callbacks.

Also, avoid failure logs when no
infobar URL is provided.

Change-Id: I06a2f7fb042c8e8d5599bb06ecee5b1afa51911a
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-10-07 11:19:20 +03:00
Gabriel Masei 3aa81e8ba1 add 'Connection: close' header to http responses.
If the connection is closed right after the response was sent
then it's wise to add 'Connection: close' header to the response
so that the client optimizes its behaviour: e.g. does not reuse
the socket for further http requests. Normally  a client should
retry a request if the reuse of an old socket fails and that
should solve the problem but still this is an overhead.

Signed-off-by: Gabriel Masei <gabriel.masei@1and1.ro>
Change-Id: I29f1498610c567024def3beb1ad7014f2c15a232
2022-10-04 13:45:58 +02:00
Rash419 4aaa3f2370 js: added EditPrintArea and AddPrintArea uno commands in classic and NB
updated unocommand.js using unocommand.py

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I0d972a16d5e9365af3ce31a39ceb006eb217627f
2022-09-30 13:56:50 +05:30
Szymon Kłos 21c7958549 slidesorter: use correct styles for desktop & selection more visible
Mark as important so will not be overriden by the
mobile-wizard rules.

Use primary color for selection so it will be visible...

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I7688f22c4da0121999b7f7675fcab0b0f59f8c11
2022-09-30 10:26:13 +02:00
Pedro Pinto Silva 498eab8da1 Add missing full stop at the end of the error message
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I8916172a4c7df9002b6f8d5ac2d508ab2dc6a855
2022-09-29 10:28:18 +03:00
Pedro Pinto Silva d4c4774a57 Improve infobar's component contrast
Reduce inconsistencies by inherit component properties such as
shadow, border and bg.

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ia978b229cf4c9616d1d38ccac09644114972b39b
2022-09-29 10:28:18 +03:00
Pedro Pinto Silva f133aa3ab9 Add button-primary to infobar component
The primary button should inherit styles form our common used
css class

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I923ecc58f5456cba226a35b6f9e180346908febe
2022-09-29 10:28:18 +03:00
Henry Castro 9a51d8ec52 browser: add util function getProduct
Change-Id: I51be33f5e64c716d22c11ddb1f969e9238c18884
Signed-off-by: Henry Castro <hcastro@collabora.com>
2022-09-29 10:28:18 +03:00
Henry Castro abfbf4846d wsd: add remote buy product url
Change-Id: I97617ddf8c7a0fc923788477fb077f3baa16fe13
Signed-off-by: Henry Castro <hcastro@collabora.com>
2022-09-29 10:28:18 +03:00
Henry Castro 3d8cfe87fb wsd: prefix private members (RemoteJSONPoll class)
Change-Id: I19f5d01dc190d23c79a255413ad3d805b032e625
Signed-off-by: Henry Castro <hcastro@collabora.com>
2022-09-29 10:28:18 +03:00
Henry Castro b991e6a017 wsd: add buyProductURL
Change-Id: I5ca0a84e7a927496bfe0b314967a2b11b20bd60d
Signed-off-by: Henry Castro <hcastro@collabora.com>
2022-09-29 10:28:18 +03:00
Henry Castro 6487be75e7 wsd: add optional parameter buy_product
Change-Id: I9ec71025c2ae3e0d477a8ede49dfdd96398fbbef
Signed-off-by: Henry Castro <hcastro@collabora.com>
2022-09-29 10:28:18 +03:00
Henry Castro bf8539ff9d browser: initial integrator redirection
Change-Id: I6406b6b1dc128cf8d2141626b6f968fa21cdfbf4
Signed-off-by: Henry Castro <hcastro@collabora.com>
2022-09-29 10:28:18 +03:00
Rash419 629b25b27a mention: update the popup with new data and position instead of re-creating the new one
-jsdialog: close the popup when zoom event is fired
-use callback to handle the special key event in treelistbox
-code cleanup

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: If46c840d7f751f89898ec1a54ec0a6fcb6811f7a
2022-09-27 14:43:16 +05:30
Rash419 d13d430b58 writer: introducing new mention feature
now you can insert a mention just by starting to type with @
integrator needs to implement UI_Mention postmessage api endpoint on which
online will send request of initial character what user is typing on the basis of
that integrator should send the list of user using Action_Mention postmessage api call
object where each object contains { username: '<username>', profile: '<username profile link> }
for example you can check framed.doc.html

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I38387cd05f1654b0bdb2b4f31cbac633eece5722
2022-09-27 14:43:16 +05:30
Pedro Pinto Silva b42e916a97 Don't add border nor margin to widget if dialog is a onlyChild popup
When we are in presence of a dialog with just one treeview list
please do not add border around the widget. Container takes care
of it.

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I0c99f837ac6174fa60031e773c75fbfa1162762d
2022-09-26 16:01:21 +02:00
Pedro Pinto Silva 0d7dfa92dd Fix drop-down marker (form control) size
- Better to don't set hard width or height values via CSS
JS is already setting it initially and updating it when
zoom changes
- Add min width and min height otherwise:
    - The control can become almost impossible to interact with (too
    small if we zoom too far out)
    - The arrow becomes unreadable

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Id54f7addbd8899a3e3ca97493e1865aa36b88817
2022-09-26 16:01:21 +02:00
Pedro Pinto Silva 6bf146d4ea Improve drop-down marker cosmetics, form controls
- No need to make it so dark (can be misleading, as if it was
disabled)
- Inherit border radius

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I8aaf44758ddea447b2d167d80e73c3a8a8a7e022
2022-09-26 16:01:21 +02:00
Pedro Pinto Silva 3874ab9d81 Fix drop-down marker position, form controls
Before this we were trying to align arrow via bg position
this in turn was leading to problem when the parent control
(drop-down marker) resizes which happens every time we change
document zoom.

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Iad0479b5db462e5bbe14c8e81f8a41fc024947dc
2022-09-26 16:01:21 +02:00
Szymon Kłos 53190e5058 formulabar: fix selection in multi-line cell
indexOf returns position - do not sum the positions
This fixes not working cursor position change in
formulabar when we had multiple lines.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I306ab461c832bb0a48d760b84f32938e109959fd
2022-09-26 17:53:20 +05:30
Andras Timar 42c05fda66 docker: add 'DOCKER_BUILDKIT=1' to documentation, fixes #5296
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I20384c93754b60800ba21a46b58106fa97deb75e
2022-09-25 13:50:08 +02:00
Ashod Nakashian 19c70b89f4 wsd: re-create the jail directory when mounting fails
This guarantees that the jail directory is always
created, especially in case mounting fails and
we cleanup and fallback.

Also, move the directory creation and setting
the perms into a helper, and reuse.

Change-Id: If6e9ef86afa5107638aa27050554e94c0af22b6e
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-09-23 16:39:56 +01:00
Gökay Şatır e200533b5e Remove obsolete css rules for shadow-transparency items.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: Idd1b71e1b32a1367902a230eb9f43fe18321f856
2022-09-23 14:42:21 +02:00
Pedro Pinto Silva e1345de673 Fix Online help: buttons are no buttons, also decrease vertical space
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I766076d7819dfb2034134d3cb2a3f67ed0110b2c
2022-09-23 12:24:12 +02:00
Ashod Nakashian 5c7d94206f wsd: disable mounting when unmount fails
It seems that on some systems it is possible
to succeed in mounting, but fail to unmount.

This is proving very problematic and it is
best to detect unmount failures and disable
mount-binding altogether.

Change-Id: I6f708b3a1e585dcbd95cced45c668629410562d6
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-09-23 08:53:09 +01:00
Gökay Şatır 9993453714 Make the wrapper's display "fixed" so it doesn't interfere with the window.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I7176a0dbc235f8202cbbd4028ac187293d648d8a
2022-09-21 15:45:50 +02:00
Pranam Lashkari b9f096a060 updated kubernetes HorizontalPodAutoscaler to V2
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I677dff0deb34a3c505ed0422bb359de7691d4c90
2022-09-21 17:04:28 +05:30
Rash419 1ca521b161 fix: calc: comments in frozen row headers aren't shown after scrolling
Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I6eeb716c118778c1a386437c751bda3e9e3a5a24
2022-09-21 13:39:21 +05:30
Andras Timar cc678b0abb Add libzstd-dev to CodeQL dependencies
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Id9e32efa8a0a0ed5d3fa52eaea5208342098e8cb
2022-09-20 08:10:05 +02:00
Aron Budea 384b4ce198 Hide context menu items that don't work on mobile
- Page Style, Paste Special don't work
- Group/Ungroup Sparklines should be hidden when they aren't
  relevant, let's hide completely for now

Signed-off-by: Aron Budea <aron.budea@collabora.com>
Change-Id: Iae7da11719827512307eeeade10caa56e023c8f0
2022-09-19 15:59:24 +02:00
Aron Budea 58cd55efe0 Fix missing delete comment icon on mobile
Regression from 4e075146b9.

Signed-off-by: Aron Budea <aron.budea@collabora.com>
Change-Id: I72375d5a784f9905f6a36ba805d2368c3d45900d
2022-09-19 15:59:24 +02:00
Szymon Kłos 7043365475 masterpage: get & set optional mode parameter for tiles (server side)
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I756e3d515c86a635cfa9db81106848ee3dcf684a
2022-09-19 15:18:23 +02:00
Szymon Kłos 06fbc53c9d masterpage: get & set optional mode parameter for tiles
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ied50985f85db385fb38cfb9c4006e3b87119e9fc
2022-09-19 15:18:23 +02:00
Szymon Kłos 8f84e6acff masterpage: ignore cursors and selections from other modes
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I55f82032dc5d21300abb3870c8ba660efb795249
2022-09-19 15:18:23 +02:00
Szymon Kłos 2e401a4d1b masterpage: add _selectedMode to the TileLayer
_selectedMode will be used to store current EditMode
(Page / MasterPage in Impress)

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ie3ff5c2e6d8f122fb5b6e6a6e69363bdd3a51403
2022-09-19 15:18:23 +02:00
Pedro Pinto Silva 41495bb602 Fix annotation btns tooltips discrepancies
These tooltips were not getting styled as the other ones.
Annotation btn tooltips were missing:
- padding (as seen in .ui-tooltip)
- font-size and line-height (as seen in the ones that get styles
from jquery ui css by default)

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ief46d294e36dfa0926cf668cd9a9f89589c6da40
2022-09-19 13:14:02 +02:00
Pedro Pinto Silva 587674560c Enforce annotation icons' style
currently it was getting styles from generic buttons

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I05e798cc1ba14dcd36607c6b4ec8a27dc33e585a
2022-09-19 13:14:02 +02:00
Tor Lillqvist 5f7ae4f5a4 Add a dummy handler (for now) for LOK_CALLBACK_FONTS_MISSING
Avoids logging an ERR.

Proper handling of that functionality is still a work in progress.

Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: Id6bd985ee62e6cb76641d6f866f6318868b9b2b3
2022-09-19 12:17:30 +02:00
Pedro Pinto Silva e66dfb7706 Add icons to save as drop down menu
Reuse download format icons

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ic7824159913ae2d4f02413fee000f2e1daf86238
2022-09-19 10:56:08 +02:00
Mert Tumer c74ee86262 added option to group save-as
We can provide doctype extensions for save-as much like downloadAs
but this will load the new file in the integration. instead of downloading

To achive this, args: {format: '<extension>' } parameter needs to be
sent inside UI_SaveAs postmessage. Because the integration provides
dialog with filename, there the extension will be set after the
filename. Our save-as work flow already handles the rest.

Signed-off-by: Mert Tumer <mert.tumer@collabora.com>
Change-Id: I6005846047fc0b26ea07e8eeea965965ed1b87e7
2022-09-19 10:56:08 +02:00
Andras Timar 08741ed9e4 docker: fix install script for ppc64
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ic4217880ec52061601d3e0e3403da707fd10a844
2022-09-18 21:22:41 +02:00
Andras Timar ba847a7f58 docker: support ppc64le
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ie3ba247471aec999a1af09e5a7140cf70b45ac03
2022-09-18 21:03:43 +02:00
Andras Timar b4e6fe82c7 docker: better handling of customer repo URL
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I4f750a8679e193ede399ae51d9b8b8cff5502f4d
2022-09-18 19:34:26 +02:00
Andras Timar 4e05ca3012 Bump version to 22.05.7.0
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I1d8f08aebd8abc49173a94c511d3b0f2d6b7a28f
2022-09-18 12:15:38 +02:00
Andras Timar 83dc7eef8f Bump version to 22.05.6.2
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ic95ca7bfb1932ac611e955faab456941abbfd324
2022-09-18 12:14:02 +02:00
Ihor Hordiichuk 610b80a7e4 Translated using Weblate (Ukrainian)
Currently translated at 100.0% (459 of 459 strings)

Co-authored-by: Ihor Hordiichuk <igor_ck@outlook.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/uk/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: If874c2c0fddc1d21f1cb8a9aa87b15248d9b4146
2022-09-18 10:01:54 +02:00
Gökay Şatır 0b78ad3a0d Translated using Weblate (Turkish)
Currently translated at 100.0% (459 of 459 strings)

Co-authored-by: Gökay Şatır <gokaysatir@collabora.com>
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: I5048ff671ff28d7bd4d55123005b9a36252bfd3e
2022-09-18 10:01:54 +02:00
Martin Srebotnjak e2da50a9e0 Translated using Weblate (Slovenian)
Currently translated at 100.0% (459 of 459 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: I3aaa50b11a78d13d8edcfc54398cd775a3570352
2022-09-18 10:01:53 +02:00
Mike Kaganski fa284ae09a Translated using Weblate (Russian)
Currently translated at 100.0% (459 of 459 strings)

Co-authored-by: Mike Kaganski <mikekaganski@hotmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ru/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Icf6d149dfd1c6b025d28eedc3d31c26959db55e2
2022-09-18 10:01:53 +02:00
Pedro Pinto Silva fc017e54c0 Translated using Weblate (Portuguese (Brazil))
Currently translated at 100.0% (459 of 459 strings)

Translated using Weblate (Portuguese)

Currently translated at 100.0% (459 of 459 strings)

Co-authored-by: Pedro Silva <pedro.silva@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pt/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pt_BR/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ie0aa3a60b4934e0bf20598bff981618db8179870
2022-09-18 10:01:53 +02:00
Matthaiks f870270c52 Translated using Weblate (Polish)
Currently translated at 100.0% (459 of 459 strings)

Co-authored-by: Matthaiks <kitynska@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pl/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I96b6a6658e36cdf2efcbc2c2daf930a317012b21
2022-09-18 10:01:53 +02:00
Sebastiaan Veld 5844f3b168 Translated using Weblate (Dutch)
Currently translated at 100.0% (459 of 459 strings)

Co-authored-by: Sebastiaan Veld <sebastiaan.veld@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/nl/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Iea75955387594f9789cead9df8a5966a35cdc5ba
2022-09-18 10:01:53 +02:00
Marco Cecchetti db3e01f49a Translated using Weblate (Italian)
Currently translated at 100.0% (459 of 459 strings)

Co-authored-by: Marco Cecchetti <mrcekets@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/it/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ie16308775f9fcaed96d4a9869f4009363e1993e5
2022-09-18 10:01:53 +02:00
Andras Timar a58de01d0a Translated using Weblate (Hungarian)
Currently translated at 100.0% (459 of 459 strings)

Co-authored-by: Andras Timar <andras.timar@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/hu/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I4f6ef95e89d6b2ed749ee731fa882914e298d238
2022-09-18 10:01:53 +02:00
Milo Ivir 1845b64dbd Translated using Weblate (Croatian)
Currently translated at 100.0% (459 of 459 strings)

Co-authored-by: Milo Ivir <mail@milotype.de>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/hr/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Idc8ef79e9b526d4633cabe7c0efd5e314a4f2c32
2022-09-18 10:01:53 +02:00
Rashesh Padia f0a92df1a3 Translated using Weblate (Hindi)
Currently translated at 34.4% (158 of 459 strings)

Co-authored-by: Rashesh Padia <rasheshpadia419@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/hi/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I45c86158f14f7bdb8c7b746302917e6b05289522
2022-09-18 10:01:53 +02:00
Rob Pearson 5a2e95dad0 Translated using Weblate (English (South Africa))
Currently translated at 100.0% (459 of 459 strings)

Translated using Weblate (English (New Zealand))

Currently translated at 100.0% (459 of 459 strings)

Translated using Weblate (English (United Kingdom))

Currently translated at 100.0% (459 of 459 strings)

Translated using Weblate (English (Australia))

Currently translated at 100.0% (459 of 459 strings)

Co-authored-by: Rob Pearson <rob.dunedin@gmail.com>
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/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I23208c182c449bab761d782effca8b36aad2da20
2022-09-18 10:01:53 +02:00
Marc Rodrigues a0d21683e4 Translated using Weblate (German)
Currently translated at 100.0% (459 of 459 strings)

Co-authored-by: Marc Rodrigues <marc.rodrigues@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/de/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I8fdc6bc5d959201847ef706a2814e4cb9fe9c0cd
2022-09-18 10:01:53 +02:00
Rash419 4ae16e5ce8 fix: notebookbar, tablets: sidebar toggle icons not visible in online browser
Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I5ea588e8e9b5b7e189b9d762435b69f3ed399f9c
2022-09-16 21:07:43 +05:30
Andras Timar 5fe6d503c8 Update l10n files for Weblate
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I1a9ff8df464b337e2ef1e239cc0593be310f8a42
2022-09-16 12:49:50 +02:00
Milo Ivir 7ee3ea8c2b Translated using Weblate (Croatian)
Currently translated at 100.0% (457 of 457 strings)

Translated using Weblate (Croatian)

Currently translated at 100.0% (463 of 463 strings)

Translated using Weblate (Croatian)

Currently translated at 100.0% (22 of 22 strings)

Translated using Weblate (Croatian)

Currently translated at 100.0% (110 of 110 strings)

Co-authored-by: Milo Ivir <mail@milotype.de>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/android-app/hr/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/android-lib/hr/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/hr/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/hr/
Translation: Collabora Online/Android app
Translation: Collabora Online/Android lib
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I23926d262e9bd8b5c755a0eaa53970ee443c7117
2022-09-16 12:48:21 +02:00
HerMin a6b9c452f3 Translated using Weblate (Korean)
Currently translated at 57.6% (267 of 463 strings)

Co-authored-by: HerMin <jetem@me.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ko/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ibcc89f448aa238bce9bb093015630c3a0f822dc8
2022-09-16 12:48:21 +02:00
Pranam Lashkari 5f5175ef28 improved load balancing with HAProxy
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I7297069166b33669a9c1f91f62ee35c77f2887cd
2022-09-16 06:48:10 +05:30
Pranam Lashkari a14c3bed07 updated gitignore
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: Ib2426b4af64147d8959deeb6ae5f34c431b2287f
2022-09-15 01:21:01 +05:30
Michael Meeks 242a7c6b0a Very simple HA cluster testing script.
Change-Id: I52afc3b5889343913ddfd4c27d42925654ca9661
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-09-14 10:31:22 +01:00
Michael Meeks 85e9d6e03b hosting end-points: accept WOPISrc parameter.
Change-Id: I902be8e0f9870b13794e1251d6fea90faffdbc97
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-09-14 10:31:22 +01:00
Gülşah Köse 7179a2d881 Resize cursor width according to browser zoom.
Signed-off-by: Gülşah Köse <gulsah.kose@collabora.com>
Change-Id: I15418181394d27cb379d99e7f4c688153ac7a443
2022-09-14 10:18:24 +03:00
Szymon Kłos 3b1658eff7 cypress: fix mobile repair test
rollbackPastChange function already opens the menu
so don't do it twice

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I930f669589da1f9e18840dae4013d81a49707639
2022-09-13 19:51:44 +02:00
Szymon Kłos 68d381c608 cypress: use class instead of id in impress/apply_paragraph_props_text_spec.js
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I19dec053df5039a803580c7f59f9db07195f6159
2022-09-13 16:17:24 +02:00
Ashod Nakashian 3d7ee42c38 wsd: improve SSL error reporting
ERR_get_error cleared the returned error,
which meant the subsequent call to print
the error in string form, using
ERR_print_errors_cb, didn't find anything
to report.

Change-Id: If131a8cc0d2c1d8bbf705ed38f144b38abf6c8c6
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-09-13 08:31:42 -04:00
Szymon Kłos 8585e0e933 cypress: use selectFromColorPicker which doesn't rely on generated id's
prefer picker id, not palette id with number which is generated

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I52d30c3991b516378e82455fdc104b5d94e94f91
2022-09-13 11:29:21 +03:00
Szymon Kłos 23fc2b3137 cypress: use class instead of id in calc/alignment_options_spec.js
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ic3a6035dd0ace1305f2e48fc39972f8227d24fa8
2022-09-13 11:29:21 +03:00
Szymon Kłos ff65e5af7d sidebar: show on demand
Previously sidebar was always active on launch.
This patch together with core fix changes that so
initially it is off and we don't waste resources
for rendering sidebar which is hidden just after short
time.

We don't know the state of sidebar (which deck is activated)
on the core side so in some cases we need to switch decks
in 2 steps: send SidebarShow, and when we received result
we change deck to other one or we do nothing. This allows us
to switch correctly the decks.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ib161cae73fd1344d375cb37712c5e805c4d1eefb
2022-09-13 11:29:21 +03:00
Szymon Kłos 999d2ff264 sidebar: move sidebar show action to more generic place
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ia4cddadf9d947a0fd76f6d867da9f93c70f743ce
2022-09-13 11:29:21 +03:00
Szymon Kłos b151cd9a8a sidebar: save state also in notebookbar
we need this state variable set in more generic place
not only in menubar

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I72e100ef91bbe32987ceb1e2bff5903f15c6134b
2022-09-13 11:29:21 +03:00
Gökay Şatır 6405b260d6 Save different sidebar states for Impress.
Remember them on opening if local storage is enabled.

Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I0c3e4eb65dfc16807d2a9a654d8e71f64341df67
2022-09-13 11:29:21 +03:00
Ashod Nakashian 70b8bee44b wsd: reduce logging of allowed convert-to addresses
Since this is the normal and expectd case, there
is no reason to repeatedly log that the address
is an allowed one. We do warn in case of disallowing
anyway, so this isn't necessarily adding value.

Notice that this log is generated not just when
convert-to is requested, but when generating the
capabilities json as well.

Still, we trace it for easier debugging, if necessary.

Change-Id: I08661e09bc6b8eb665c6d99437631c8df45fa8b4
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-09-13 09:45:43 +02:00
Ashod Nakashian 0969cfc988 wsd: minor log cleanup
Change-Id: I62e00b1f7676de4723729b8c6e05f193a1c88dfc
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-09-13 09:45:43 +02:00
Ashod Nakashian 0c6413bf87 wsd: fix multi-part logging
This was a regression introduced in
14d96957cd.

The result was that multi-part logs were
not flushed and therefore not written to
the output.

Change-Id: Ib22a1da83209b00872d91ca05a940226cbb4552d
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-09-13 09:45:43 +02:00
Pedro Pinto Silva 657b193eb9 Tabbed view: Add "Tap to collapse/expand" tooltip
Make the possibility to collapse/expand tabs more discoverable
by adding tooltip to the:
- selected notebookbar tab when collapsed
- selected nb tab when expanded

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ib75fc15fed6400557f6413a0d21be5c155fe8571
2022-09-12 17:07:49 +02:00
Pedro Pinto Silva 09abc4159d Tabbed view: center document name in the toolbar
Allow tabs container to grow and shrink as needed so
document name is centered in between that container
and the next element

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I8d252478a4ddfdb9362555db6797205369dab57f
2022-09-12 17:07:49 +02:00
Pedro Pinto Silva e6f407075b Add margin to tabbed view: tabs
This seems quite necessary to avoid missed-clicks between save icon and
File tab and also for white-space needs.

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Id2bd0e7bc2478684e1cb920cdb917dd43c9acc8f
2022-09-12 17:07:49 +02:00
Pedro Pinto Silva d0436fb67c Remove notebookbar tab indicators on tablet
These used to make sense in the past, when we had completely
different look and feel. Plus even back then this was not super
elegant way of showing that the tab container is draggable.
Furthermore, currently, the tab container is quite distinguishable
form its parent making it visible that the notebookbar-tabs-container
has more content to show.

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I6e4c0d5b3bc5e0e21d6cd470446d13b9811846ab
2022-09-12 17:07:49 +02:00
Yunusemre Şentürk b382fd722c Revert "Attempt to solve FreeBSD issue" and fix freebsd check
canvas module is needed for make check. --disable-werror is
required, because npm canvas module is not available as a
binary package on all target platforms, and it does not
compile without warnings from source.

Signed-off-by: Yunusemre Şentürk <yunusemre@collabora.com>
Change-Id: I03e1d72d96ec0d6863ccd6236223a87ee481eb09
2022-09-12 15:24:37 +03:00
Andras Timar 26746773b9 Bump package version to 22.05.6.1
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Icf883f86bb84b5ad9442a639996070ac30f06022
2022-09-11 23:06:47 +02:00
Eric fc322523f7 Translated using Weblate (Chinese (Simplified))
Currently translated at 69.3% (317 of 457 strings)

Co-authored-by: Eric <hamburger1024@firemail.cc>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/zh_Hans/
Translation: Collabora Online/Help
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ieec42f1d03d8d4748264ad9daa4d1a3b26515be1
2022-09-11 22:28:24 +02:00
Jason Clermont 34026fc507 Translated using Weblate (Chinese (Simplified))
Currently translated at 69.3% (317 of 457 strings)

Co-authored-by: Jason Clermont <lunme1008@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/zh_Hans/
Translation: Collabora Online/Help
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Idd85400af6572efd845cc632e90538755dcab461
2022-09-11 22:28:24 +02:00
Rob Pearson a7c75f17c7 Translated using Weblate (English (Australia))
Currently translated at 100.0% (463 of 463 strings)

Co-authored-by: Rob Pearson <rob.dunedin@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/en_AU/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ifd66b8274768cd777ecbffca0c704fec2b877923
2022-09-11 22:28:24 +02:00
Joan Montané 88133048ef Translated using Weblate (Catalan)
Currently translated at 100.0% (463 of 463 strings)

Co-authored-by: Joan Montané <jmontane@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ca/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Iac63e27a1fb3f1e677dace45424592f984b593d9
2022-09-11 22:28:24 +02:00
Yunusemre Şentürk 62ee441543 Revert "Attempt to fix FreeBSD node convas module not found error"
This reverts commit 869f7f73af.

Signed-off-by: Yunusemre Şentürk <yunusemre@collabora.com>
Change-Id: I1b7c95ace5fc2ba754cc62081b4a71e1d5e73c88
2022-09-09 16:36:09 +03:00
Pedro Pinto Silva 8f3ea93d4b Mobile: Fix missing icon on lists within mobilewizard panels
Reuse createIconURL so it runs through the iconURLAliases before
inserting image url

Example: Chart icon

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ia87b064c967df00c796d36fee577f4fd0f260a6f
2022-09-09 09:07:10 +02:00
genofire c121f5a842 fix(remote_config_pull): nullpointer if alieses not defined in host groups json
Change-Id: c94f0c69d9b31f54c755d10ac964ae8cadc5d4dc

Signed-off-by: genofire <geno+dev@fireorbit.de>
2022-09-08 19:54:32 -04:00
Pedro Pinto Silva de003ebf08 Add background to all tabs and add space in between them
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I03b8e0dc6298ddc18bad33afa3fef470f8cbe059
2022-09-08 17:10:24 +02:00
Pedro Pinto Silva ae816b000a Make tabs shorter
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I9e787c52c3ea0373eb97453cc7fc3217a87b251b
2022-09-08 17:10:24 +02:00
Pedro Pinto Silva 690be877b4 Remove tab's repositioning
Adding a margin to the first child only when it is selected is not
smart and causes tabs to move horizontally

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I89cb0c0e96cbb990ecdfb633f186ab5ea1c54078
2022-09-08 17:10:24 +02:00
Pedro Pinto Silva 389c747157 Remove hover effect on selected tabs
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I3e74899804700f20613597bc48e0669fe09e882a
2022-09-08 17:10:24 +02:00
Yunusemre Şentürk b83e3dac69 Refresh badge icon links in README.md
Signed-off-by: Yunusemre Şentürk <yunusemre@collabora.com>
Change-Id: I5721491ac1aa31039a017702c5787c10ec90abf6
2022-09-08 17:47:51 +03:00
Yunusemre Şentürk 869f7f73af Attempt to fix FreeBSD node convas module not found error
Signed-off-by: Yunusemre Şentürk <yunusemre@collabora.com>
Change-Id: Idfb32befd2dedd687554bab20607da99e3ab5aa3
2022-09-08 17:39:02 +03:00
Andras Timar b755a175df Embed images to exported HTML
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I0e42bf2efcc2aa6ecf3f6705aab621cc1ea18774
2022-09-08 16:21:22 +02:00
Gökay Şatır b412d61ca8 Attempt to solve FreeBSD issue.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I8d3e85ab0b1d590a130569dd74d3c45cade708f5
2022-09-08 10:53:47 +02:00
genofire d2b707e838 prometheus: labels are always strings
Change-Id: 4192b04373567e5470c03a984a9e40366a8c1f4d

Signed-off-by: genofire <geno+dev@fireorbit.de>
2022-09-08 08:40:41 +01:00
Skyler Grey fd0c49a0be Make the repair document dialog into a JSDialog
- The repair document dialog is a leaflet dialog
- As this dialog is online-side only, I'll use the JSDialog builder
  directly rather than writing a UI file
- Most of the code to build the dialogs is already very adaptable from
  looking at the protocol of existing JSDialogs that come from the
  server & where the code goes, however a small change had to be made to
  dialog modifications to allow us a callback function, as otherwise we
  would send off to the server whenever we pressed on a list item
- Finally, if there's no list to show, we'll show a bit of text saying
  that there's nothing, as otherwise it looks like an empty/broken dialog
- If we're on mobile, we'll need to use the alternative helper (the one
  that handles mobile wizard building)
- Fix a cypress test for writer (although impress and calc seem to have
  tests for this too that aren't implemented: this should be handled in
  a follow-up PR)
- Fix mobile tests

Signed-off-by: Skyler Grey <skyler.grey@collabora.com>
Change-Id: Iab9e943a428e66b05e28819c2ee1001a2deffd2c
2022-09-08 12:52:19 +05:30
Yunusemre Şentürk 796925d5d7 ios: Rule out LIBO_VERSION checking on master
Signed-off-by: Yunusemre Şentürk <yunusemre@collabora.com>
Change-Id: I28cdba1b82d391cf4d847c6e2e40f8e08d928519
2022-09-08 09:30:24 +03:00
Aron Budea 64b0355f64 wsd: Cache result of disk space check, too
...when it's requested.

Previously always an empty string was returned on subsequent
calls, and the error message was only shown once.

Signed-off-by: Aron Budea <aron.budea@collabora.com>
Change-Id: I7645c7770e3e1712c8ef1b3ad145daec14530fb0
2022-09-08 05:48:28 +02:00
Michael Meeks c7dece621c Update tag-line.
Change-Id: I6a3f70195b8487a4180b37a24338a6df615d8399
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-09-07 17:52:35 +01:00
Mike Kaganski d2f06e078c Drop Control.Notebookbar.lastContext
The event object in onContextChange has oldContext

Signed-off-by: Mike Kaganski <mike.kaganski@collabora.com>
Change-Id: Ic405edad4c52e51294d5fdfa5e91afa858d0bba7
2022-09-07 14:04:40 +03:00
Mike Kaganski f018beefa7 notebookbar: sidebar decks in Math
Math is activated in-place, so we need to replace current elements with
Math-specific ones temporarily, on context switch. Application ID is
required for that.

Having previous context in the event itself would allow to drop storing
it in Control.Notebookbar eventually.

For now, only have Elements deck exposed for Math, because Options deck
needs either re-implementation to host everything in itself, or JS-weld
of Math dialogs.

lc_sidebar.svg images were used for .uno:SidebarDeck.ElementsDeck as a
temporary icon, until there's a dedicated image. See also tdf#149144.

Signed-off-by: Mike Kaganski <mike.kaganski@collabora.com>
Change-Id: I37dcda962a2a6ff60e301182033384c56615a24e
2022-09-07 14:04:40 +03:00
Mike Kaganski 106cb9b158 Deduplicate getOptionsSectionData
Signed-off-by: Mike Kaganski <mike.kaganski@collabora.com>
Change-Id: Ibb33ddbfa39e22e34de6fccd220da53a4b79b354
2022-09-07 14:04:40 +03:00
Tor Lillqvist 93b4d0db81 Use the name "lok" for the iOS app Webkit message handler here, too
Follow-up to 616e9200d1.

Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: I4d9a77d34c3ae3f45df6bce9afad5c99b2142358
2022-09-07 11:14:25 +02:00
Michael Meeks 29d68aa033 prometheus: don't export string values.
continue to use the pid as a short-ish label to disambiguate metrics,
but also define the pid with more labels in the 1st instance.

doc_pid{host="localhost",key="https://localhost:9980/.../hello-world.odt",filename="hello-world.odt"} 1261609
doc_views{pid=1261609} 2
doc_views_active{pid=1261609} 2
doc_is_modified{pid=1261609} 1
...

Change-Id: I573f6d5c8ceb9a7daee83d1f2ee9f42b8e0cd089
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-09-06 21:18:29 +01:00
Miklos Vajna 616e9200d1 ios: register our script message handler as 'lok', not 'cool'
core.git supports both since commit
4063dcdc7305177b167bd20b009b1dfede8b25ec (Revert naming back to lool to
fix break with LibreOffice Online, 2022-08-26), let's go with the API
name, not with the product name.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: I204c4728628579edeb23d5ba76af4bb878130203
2022-09-06 20:30:25 +03:00
Pedro Pinto Silva e8fd0168c0 Primary button goes last
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I640d72aef88914d7c045c630dbc2a592ab4c17c3
2022-09-06 17:01:21 +02:00
Pedro Pinto Silva 191a012559 Improve 3btn dialogs: don't allow btn to have 0 height
Particularly visible when on mobile and the conflict
dialog appears. Without this change primary button can shrunk.

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Id27761b53a425d16ab4bd2ef2a801890d899ee69
2022-09-06 17:01:21 +02:00
Pedro Pinto Silva 3dd88b5af6 Cypress: Force click zoomin and zoomout plus wait before check value
Form tests seems to be a bit unreliable due to toolbar down items
- Not be visible sometimes
- And when the zoom check up is too fast

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I4319db1a833335300780d052555f33afc976f33a
2022-09-06 17:01:21 +02:00
Pedro Pinto Silva 8896ad25b5 Cypress: Scroll before attempting access StateTableCellMenu
Before scrollbar-right would get in the way making it impossible
to click in the desired element

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I6a00dfe8cddf503d39d8e7207b46bba1588f9b96
2022-09-06 17:01:21 +02:00
Pedro Pinto Silva 2e863c37ee Don't load btn hover status CSS rules when on mobile
Better to make sure we only use those on desktop. Otherwise,
a tap can trigger undesirable rules (changing bg etc)

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I838328a55ee8943eccbbe8d69b99f76640fb3a69
2022-09-06 17:01:21 +02:00
Pedro Pinto Silva 11cff31803 Fix button order on newAnnotationVex
Submit button should be last so to conform with the current order
used anywhere else.

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Id794a608621b88076a80cc7ae8dda1e69512ca4f
2022-09-06 17:01:21 +02:00
Pedro Pinto Silva 7be4219d3b Add mobile-wizard-titlebar-btn and remove hard coded rules
No need to target #insert_comment solely
- Add generic class so it can be reused
- Do not absolute position etc
  - Use flexbox

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ibeb1c517c5fd45b7a7774203cfa5e2a5210678ea
2022-09-06 17:01:21 +02:00
Pedro Pinto Silva 45341ab31e Remove master slides sidebar's btn CSS declarations
Better to inherit from button.

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I4dacfefa1f551c67e1b00910f25393897f7ccae9
2022-09-06 17:01:21 +02:00
Pedro Pinto Silva 1a29f1004a Don't use vex btn default btn CSS classes (rename)
By Renaming .vex-dialog-button-primary -> .button-primary and
.vex-dialog-button-secondary -> .button-secondary

- So we can remove duplicity on CSS buttons
- Easier to set vex primary and secondary button to use our css classes
- This way there is no need to hunt those specific cases down.
- Update cypress tests

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I82f4b33560367805eeeeb5aec9af8d1abd313788
2022-09-06 17:01:21 +02:00
Pedro Pinto Silva e2f15a6888 Reduce CSS selectors targeting buttons
You can now, since 1db5e39ef7 got merged,
rely solely on button-primary and button-secondary class.

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ic0eb08b443ab6c523d69e50df197eb0d3850fbd4
2022-09-06 17:01:21 +02:00
Aron Budea b5f6205053 Bump package version to 22.05.5.4
Signed-off-by: Aron Budea <aron.budea@collabora.com>
Change-Id: Ida3aeac18a52236833bdc96122e67c6a8c19cc64
2022-09-06 12:26:44 +02:00
Pedro Pinto Silva 53e6bdd62a Set group_download_as to true as default
There are now too many download options to have each format as
an individual icon on the tabbed view. Plus with improvements
introduced in cbf5f1ad71
we can now safely set group_download_as to true as the default
value. Of course, it can still be switched to false if so
desired.

Notes:
Ideally, and if no one objects to it, we can later on and after
a period of testing remove this option and have only one way of
implementing/showing download options (as dropdown).

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I1130684ec2ec54832f5a13648754d29ac71b9d35
2022-09-06 09:36:41 +02:00
Aron Budea 6910653a8c Temporarily disable unit-tiletest
Due to this error:
[ coolwsd ] TST  testTileProcessed  [testTileProcessed] (+12566ms):
ERROR: Assertion failure: Expected exactly the requested number of
tiles Expected arrivedTile == [25] but got [28]
| TileCacheTests.cpp:1580

Probably since 2cc955f9109c0fc8443c9f93c1bf6bd317043cb5 (core)

Signed-off-by: Aron Budea <aron.budea@collabora.com>
Change-Id: Ie854a57e4241f2c8fbf8e3d769aba8a19981feb1
2022-09-05 22:00:18 +02:00
Aron Budea c4975d01e5 Split config.h into separate headers to avoid extensive rebuild
Eg. if only the version was changed, config.h was updated, and
everything was recompiled.

New structure, maintain these manually:
config.h.in - for configured variables that are stable if
              configuration parameters are unchanged
config_version.h.in - for version/hash related variables

----
config_unused.h.in - still generated by autoheader with all
                     variables, don't use it

Signed-off-by: Aron Budea <aron.budea@collabora.com>
Change-Id: Id9a50a9f1e798a3b3814778d8683b7d7cb57bb29
2022-09-05 12:32:49 +01:00
Michael Meeks 3a1deab1d4 Prometheus - log per-document details for getMetrics.
This should perform and still be reasonably compact even
for large numbers of documents.

Change-Id: I3820af6c23806d569c23a893bd8db040dfb351e8
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-09-05 12:31:33 +01:00
Andras Timar f3f849c153 add coolstress to rpm package
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I7b98533dbbec01112b3c5b1a354178aec5e7d926
2022-09-01 21:44:51 +02:00
Michael Meeks 0ff45bd461 coolstress: remove redundant load.
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I2656fb58a0fb9ce566a47656b2080a07d980869d
2022-09-01 13:33:20 +01:00
Michael Meeks 1407aedf1f coolstress: add man-page, cleanup somewhat and document a little.
Change-Id: I57b6bb7bde6e0fa8ffd9a08cf5b9d8c8b4759bf2
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-09-01 13:33:20 +01:00
Michael Meeks ef09966978 mutex include cleanup.
Change-Id: I63d4184260d204a9d5f7658ad51fbe63dbb3c9e4
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-08-31 21:31:31 +01:00
Michael Meeks 114d181845 Prometheus - clarify live document count metric.
Change-Id: If1605bddbdbf98bb4c5d204db4b7888164cc0142
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-08-31 21:31:31 +01:00
Gülşah Köse d78bad959e Stop follow user feature if a key has been pressed by the original user.
Signed-off-by: Gülşah Köse <gulsah.kose@collabora.com>
Change-Id: Ibfd160fd8fb80a9dfd4c71dfb9a4a2725be48465
2022-08-30 16:48:23 +02:00
Andras Timar cb01192023 Translated using Weblate (Portuguese (Brazil))
Currently translated at 100.0% (463 of 463 strings)

Translated using Weblate (Hungarian)

Currently translated at 100.0% (463 of 463 strings)

Co-authored-by: Andras Timar <andras.timar@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/hu/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pt_BR/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I62217104fd86c8752d7c709130db8ec9a6889cc9
2022-08-29 15:43:20 +02:00
Stanislav Horáček f57486c807 Translated using Weblate (Czech)
Currently translated at 100.0% (463 of 463 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: I568502b1fe99337cb8445cfdbea65bd4a73df44a
2022-08-29 15:43:20 +02:00
Adolfo Jayme Barrientos 891a8e368f Translated using Weblate (Spanish)
Currently translated at 100.0% (463 of 463 strings)

Translated using Weblate (Asturian)

Currently translated at 15.3% (70 of 457 strings)

Translated using Weblate (Catalan)

Currently translated at 99.7% (462 of 463 strings)

Translated using Weblate (Asturian)

Currently translated at 52.4% (243 of 463 strings)

Co-authored-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/ast/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ast/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ca/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/es/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ic086ba71f95d85b967b14393a0ecdc3754feaf34
2022-08-29 15:43:20 +02:00
Leif-Jöran Olsson 567a14ce3f Translated using Weblate (Swedish)
Currently translated at 100.0% (463 of 463 strings)

Co-authored-by: Leif-Jöran Olsson <info@friprogramvarusyndikatet.se>
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: Ic1b6f3eade7b83f1f082d08b54bb6ea1aa14af2f
2022-08-29 15:43:20 +02:00
Sebastiaan Veld 7724e4e67f Translated using Weblate (Dutch)
Currently translated at 100.0% (463 of 463 strings)

Co-authored-by: Sebastiaan Veld <sebastiaan.veld@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/nl/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I48b22c3f66c47206974abb5142c84f76c16a62fc
2022-08-29 15:43:19 +02:00
Martin Srebotnjak 3ba41d3838 Translated using Weblate (Slovenian)
Currently translated at 100.0% (463 of 463 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: I9fd122b8fece71a5e29768bf585ccec1ada00c09
2022-08-29 15:43:19 +02:00
atilluF fdaf9522e4 Translated using Weblate (Italian)
Currently translated at 100.0% (463 of 463 strings)

Translated using Weblate (Italian)

Currently translated at 100.0% (463 of 463 strings)

Co-authored-by: atilluF <atilluf@outlook.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/it/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I9326fb03b96e4ba9d04ced02e6d79d792483ca4a
2022-08-29 15:43:19 +02:00
Sargon-Isa 13143297f6 Translated using Weblate (German)
Currently translated at 100.0% (463 of 463 strings)

Co-authored-by: Sargon-Isa <Sargon_isa@hotmail.de>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/de/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ib44e8950b39167cd6827535c9ed1d73c1b150856
2022-08-29 15:43:19 +02:00
Milo Ivir 977311812c Translated using Weblate (Croatian)
Currently translated at 96.7% (442 of 457 strings)

Translated using Weblate (Croatian)

Currently translated at 100.0% (463 of 463 strings)

Translated using Weblate (Croatian)

Currently translated at 94.0% (430 of 457 strings)

Translated using Weblate (Croatian)

Currently translated at 93.8% (429 of 457 strings)

Translated using Weblate (Croatian)

Currently translated at 84.2% (385 of 457 strings)

Translated using Weblate (Croatian)

Currently translated at 82.7% (378 of 457 strings)

Translated using Weblate (Croatian)

Currently translated at 100.0% (463 of 463 strings)

Translated using Weblate (Croatian)

Currently translated at 74.8% (342 of 457 strings)

Translated using Weblate (Croatian)

Currently translated at 100.0% (463 of 463 strings)

Translated using Weblate (Croatian)

Currently translated at 100.0% (22 of 22 strings)

Translated using Weblate (Croatian)

Currently translated at 94.6% (438 of 463 strings)

Co-authored-by: Milo Ivir <mail@milotype.de>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/android-lib/hr/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/hr/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/hr/
Translation: Collabora Online/Android lib
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I10a2c1a9e04c72e66785d550206c81c2e6bdb431
2022-08-29 15:43:19 +02:00
Sveinn í Felli e3090361db Translated using Weblate (Icelandic)
Currently translated at 100.0% (463 of 463 strings)

Co-authored-by: Sveinn í Felli <sv1@fellsnet.is>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/is/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I92ff352cb5924e29ad11d369d02fe72ef412d8a0
2022-08-29 15:43:19 +02:00
Nathan a561e5f9a2 Translated using Weblate (French)
Currently translated at 100.0% (463 of 463 strings)

Co-authored-by: Nathan <bonnemainsnathan@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/fr/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ice26b198fd6fa5289ecdd8acdd505c9a2aecfce9
2022-08-29 15:43:19 +02:00
Gontzal Manuel Pujana Onaindia 7d540e81f7 Translated using Weblate (Basque)
Currently translated at 100.0% (457 of 457 strings)

Translated using Weblate (Basque)

Currently translated at 100.0% (463 of 463 strings)

Co-authored-by: Gontzal Manuel Pujana Onaindia <thadahdenyse@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/eu/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/eu/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I1dc5086f4d89a4761f4b916792da579f4fcfd047
2022-08-29 15:43:19 +02:00
Eloy Crespo e6f92aa8e5 Translated using Weblate (Spanish)
Currently translated at 100.0% (463 of 463 strings)

Co-authored-by: Eloy Crespo <eloy.crespo@collabora.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: Ic2a26f92dec32d323cbcfc7010b0ff8f500b3233
2022-08-29 15:43:19 +02:00
Luna Jernberg 98746e04b4 Translated using Weblate (Swedish)
Currently translated at 99.1% (459 of 463 strings)

Co-authored-by: Luna Jernberg <droidbittin@gmail.com>
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: I8af5284f20e12dd9aff6b71b75d37d7cb3dbfec0
2022-08-29 15:43:19 +02:00
Ihor Hordiichuk 6d02d95359 Translated using Weblate (Ukrainian)
Currently translated at 100.0% (463 of 463 strings)

Co-authored-by: Ihor Hordiichuk <igor_ck@outlook.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/uk/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Iadc5a3387bd7df8cf2276dcfed0a9789a91e45e3
2022-08-29 15:43:19 +02:00
Oğuz Ersen 5dc10eec0e Translated using Weblate (Turkish)
Currently translated at 100.0% (463 of 463 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: Icde8cb180f188adc42120edb4c55d22696b27870
2022-08-29 15:43:19 +02:00
Егор Ермаков 23783d10b1 Translated using Weblate (Russian)
Currently translated at 100.0% (463 of 463 strings)

Co-authored-by: Егор Ермаков <eg.ermakov2016@yandex.ru>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ru/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I2f3190e90d887f2c8bd991fff5d82fee8bb35c94
2022-08-29 15:43:19 +02:00
SC 2deb8be402 Translated using Weblate (Portuguese)
Currently translated at 100.0% (463 of 463 strings)

Co-authored-by: SC <lalocas@protonmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pt/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Iea1272226eac24850310da2bcaaf13329b5ecfdf
2022-08-29 15:43:18 +02:00
Matthaiks 544f992d67 Translated using Weblate (Polish)
Currently translated at 100.0% (463 of 463 strings)

Co-authored-by: Matthaiks <kitynska@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pl/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I0f1298c8f7e1f3bfe1e2a99d5aeac89117456f64
2022-08-29 15:43:18 +02:00
Pedro Pinto Silva 1db5e39ef7 Set proper button-primary CSS class, don't rely on IDs
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: If8b01a7c29ade1f6ed17cb865a975cf38c5ea4f3
2022-08-29 13:35:34 +02:00
Pranam Lashkari 7920e2b07d Revert "HAProxy: better load balancing"
This reverts commit 22f38ef455.

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I26bafde2db40c327ba5bcb2ea2ccf49de1287b3e
2022-08-29 16:35:29 +05:30
Michael Meeks 2b20e4050d Forward setclipboard data to the Kit as a binary message:
assert: invalid utf-8 - check Message::detectType()
 #3  0x00007fce7ae57fd6 in __GI___assert_fail at ./net/WebSocketHandler.hpp",
 #4  0x0000558bd2790231 in WebSocketHandler::sendFrame at ./net/WebSocketHandler.hpp:748
 #5  0x0000558bd2851202 in WebSocketHandler::sendMessage (flush=false, code=WSOpCode::Text, len=22118,
     data=0x7fce5c227b50 "child-045 setclipboard\napplication/x-openoffice-embed-source-xml;windows_formatname=\"Star Embed Source (XML)\"\n1370\nPK\003\004\024", this=0x7fce6c003340)
     at ./net/WebSocketHandler.hpp:641
 #6  WebSocketHandler::sendTextMessage (flush=false, len=22118, ...) at ./net/WebSocketHandler.hpp:619
 #7  WebSocketHandler::sendMessage (msg="child-045 setclipboard\nappl...) at ./net/WebSocketHandler.hpp:613
 #8  WSProcess::sendTextFrame (this=0x7fce6c001300, data="child-045 setclipboard\nap...) at wsd/COOLWSD.hpp:142
 #9  0x0000558bd27d5678 in DocumentBroker::forwardToChild (this=this@entry=0x7fce64027940, viewId="045", message="setclipboard\n...) at /usr/include/c++/9/bits/shared_ptr_base.h:1020
 #10 0x0000558bd2899d50 in ClientSession::handleClipboardRequest (this=0x7fce64027dc0, type=type@entry=DocumentBroker::CLIP_REQUEST_SET, ...) at ./common/Session.hpp:76
 #11 0x0000558bd27e0999 in DocumentBroker::handleClipboardRequest (this=0x7fce64027940, type=DocumentBroker::CLIP_REQUEST_SET, ...) at /usr/include/c++/9/bits/shared_ptr_base.h:1020
 #12 0x0000558bd2847b8b in ClientRequestDispatcher::handleClipboardRequest(...) at /usr/include/c++/9/bits/shared_ptr_base.h:1020

Change-Id: I406eee0ac3a47986fdd9511e674c9228d1994d38
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-08-27 08:21:28 -04:00
Michael Meeks b475bb6018 UTF8 validation: print out offset of problem in hex to match the dump.
Change-Id: I72dfde708121f3893f934c1428d806e4c268a4cf
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-08-27 08:21:28 -04:00
Szymon Kłos c2e45d9a6c Scrollbar: auto quick scroll on mouse button hold
This is calc-only feature

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I66c2b7559c88bf42f54119bef43ef16881417767
2022-08-26 15:44:06 +02:00
Szymon Kłos bd404cef40 Scrollbar: step by step quick scroll
Instead of jump to the position on a scrollbar, the quick scroll
action (click above/below scrollbar marker) should move us one
page up/down.

This is calc-only feature.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I28f73ea88d30a9a9e313c136538bc033afb03247
2022-08-26 15:44:06 +02:00
Szymon Kłos 9e7f528778 jsdialog: correctly setup & test value for spinfields
Adding attribute by jQuery and testing in cypress was
not working: visible value was correct after change but
in DOM we had original value which was tested by cypress.

Use val() to setup value and have.value for cypress to test.

Unify inputs so we don't use attributes but always props.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I1b3acccbd6d4ba493f867044b9b3c1f17b16873e
2022-08-26 18:26:00 +05:30
Ashod Nakashian 648ab10c66 wsd: test: move UnitWOPIStuckSave
For some as-yet unknown reason, UnitWOPIStuckSave
is timing out with -j8 for me. It seems that
the issue has to do with the socket not having
the data in a timely fashion. The only thing
that reproduces the issue is the order, and
that isn't always the case. So, it seems
that at some point, on my particular system,
having this test any earlier than where I put
is causing the failure. The fix was to move it.

While I don't yet know the reason, this isn't
happening all the time. It would seem that
after restarting it goes away. So it might
be some system state that is interfering.
Still, I can't explain why this test should
suffer reliably and none of the others.

Worth investigating further, but for now
changing the order.

Change-Id: Ibbb912941f8872c4825468e940e82814b2d14168
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-08-25 15:12:10 +01:00
Ashod Nakashian f0837f45cf wsd: test: enable IsModifiedByUser assertion
Now that IsModifedByUser is reliably set, we
can finally enable this assertion to catch
regressions and verify its reliability.

Change-Id: I1254be2319ed76f0b92dc045cad7e9c45bfafb7a
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-08-25 15:12:10 +01:00
Ashod Nakashian dcde162206 wsd: test: modernize UnitWOPIAsyncUpload_ModifyClose
And assert the User-Modified attribute.

Change-Id: I44a4aaf9e978da8ff22992565ed0cbfd7e41dd30
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-08-25 15:12:10 +01:00
Ashod Nakashian cd497ba7f0 wsd: move storage attributes to DocBroker
There are a number of races with having Storage
track the attributes. To fix them, we move all
attributes to DocBroker and correct a number
of issues.

The idea of the design is based on the fact that
we want to capture the attributes between
uploads, but based on the saved document.

That is, when we upload a document version, we
want to pass to the storage whether from the
perspective of the *Storage* there has been
any user-modifications or not. Since saving
to disk may happen multiple times between
uploads (not least because of failures), and
since saving resets the modified flag, we need
to capture the modified flag at each save and
propagate it until we upload successfully.
Upon uploading successfully, we reset the
attributes.

For this reason we have two attribute instances;
one is the 'current' attributes as being uploaded
and the other the 'next' one. We capture the
current state at saving into 'next' and we merge
with 'current' when saving succeeds and we
aren't already uploading (otherwise, we update
it and then discard it when uploading succeeds,
losing the last attributes).

Furthermore, because the modified flag is
reset after each save, and because we might
save and upload immediately after a
modification, we may not have the modified flag.
This means that we need some heuristics to
decide if there has been user-issued
modifications. (It is better to be conservative
here.) We try to detect this by introspecting
the commands we receive from users.

In effect, we capture the attributes when issuing
an internal save, we transfer the captured
attributes only when saving succeeds and we aren't
uploading, and from then on, uploading has to
succeed to reset the 'current' attributes. In the
meantime, if we fail to upload and issue another
save, the new attributes will be captured and
merged with the 'current' and the next upload
will not have any lost attributes.

Change-Id: I8c5e75d25ac235c6232318343678bf5c0933c31e
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-08-25 15:12:10 +01:00
Ashod Nakashian b35625d4ca wsd: state-dumping and comments
Change-Id: I2522d1578faf28c40682f63dd487efde9c5a738d
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-08-25 15:12:10 +01:00
Ashod Nakashian e85854ed39 wsd: track modifying user commands
There is a race between the time of modifying
a document, receiving the modified flag, and
saving. This can happen when, for example,
the user modifies the document and closes
immediately. In that case, when uploading
we will not have the modified flag and will
not set the User-Modified attribute.

While this isn't 100% accurate, and it can
never be, it's still better to be conservative
and flag a version in storage as user-modified
than otherwise.

Change-Id: Ia504a7cddd4839bcbfeaaf9bf6c90ed8b68efa91
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-08-25 15:12:10 +01:00
Ashod Nakashian cb42775e53 wsd: mark last-upload as failed in early-failure
Change-Id: Ie0726141248c605409ea52ee83ee3b17df7b1b0e
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-08-25 15:12:10 +01:00
Ashod Nakashian 986ff2140d wsd: remove unused uploadLocalFileToStorage
Since we have moved to async uploading, this
synchronous version is not used. This removes
the interface from the base, merges the
implementation for the local-file, and removed
the error-returning one for wopi.

Change-Id: Iad2ba053bbdcd1690083dc69f66c751e7926ef41
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-08-25 15:12:10 +01:00
Mert Tumer 08f9b72854 DeepL translation integration
this patch relies on a core change:
https://gerrit.libreoffice.org/c/core/+/137199

Signed-off-by: Mert Tumer <mert.tumer@collabora.com>
Change-Id: Ie5f5dada18539586e7c5ea41b0a296b33ae8ee2e
2022-08-25 14:28:35 +02:00
Pedro Pinto Silva a75ab37228 Add missing translate icon
This is used in the tabbed

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I45164e2a910b7dc588b8fd7ef4bff4676f4ba331
2022-08-25 14:28:35 +02:00
Rash419 3c5cc61fb6 feature locked dialog visual improvements
fixed:
- image overlapping with high res image
- shows empty bullet when highlight text is empty
- no space between bullet points and text

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I0e3bcd11d9132913d69f8a7c74d21cc0b4ab3305
2022-08-24 14:39:09 +05:30
Szymon Kłos 0d4e4af2cf jsdialog: find real input on setText action
- it is needed for mobile wizard spin fields

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I7464d7017e54425d3ffd022a45c39af51e05e21f
2022-08-24 13:04:13 +05:30
Andras Timar cf6e22c22c Fix typos in comments
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I813f652b516c79f350b46317e589b91e0ef39a1a
2022-08-23 18:37:44 +02:00
Szymon Kłos cba04c9570 jsdialog: allow boolean as treeview entry state
after core commit:
https://cgit.freedesktop.org/libreoffice/core/commit/?h=distro/collabora/co-22.05&id=62d5622540c7251bb870a837b5ca6a836fac6f01
DumpAsPropertyTree: use more efficient overloads of JsonWriter::put

we use boolean not string

this also enables test broken by that core commit

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I029463ecf100f31ed567af2c7434b87dbfb84265
2022-08-23 18:10:04 +02:00
Miklos Vajna 3205899a31 libfuzzer: fix clientsession_fuzzer
The fuzzer case doesn't read the configuration. This is similar to
what getConfigValue() already did, now extended to
getConfigValueNonZero().

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: I14a838ea9875d81413f22140eeac627520c423ab
2022-08-23 10:50:50 +02:00
Rash419 0dff307695 cypress: temporarily disable autofilter test
problem: when we click on checkbox to filter the data in autofilter dialog the checkbox itself disappear
if that is expected behaviour then cypress test needs to modified if not bug needs to be fixed first before
enabling this test

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I4dbfcf8abebe1c65e27c8c090bfce3ed0c59d086
2022-08-23 13:13:52 +05:30
Pedro Pinto Silva 962cc850d4 Don't add hover states to generated jsdialogbuilder td elements
- This is too generic
- If in the beginning this made sense now we have to many elements
and many should not have hover states (invisible, labels etc)

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ice27ccb41cff73fa34b89453d99e3bb1fbc03edf
2022-08-22 09:30:37 +02:00
Pedro Pinto Silva 184488b953 Remove jump in impress anim sidebar when adding the first anim
Force placeholder to inherit the same rules as ui-treeview-body

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I61ecde9e35812026683c655f6a2f9ead18e10d02
2022-08-22 06:35:32 +02:00
Mike Kaganski fa19a32b41 Draw separators in IconView
Depends on core commit 5b6fd1bcdb417e73307885f92c31464fe326ec9e

Signed-off-by: Mike Kaganski <mike.kaganski@collabora.com>
Change-Id: I6093df157dd14bd6035dd7135d95810a8ba64227
2022-08-21 10:51:23 +03:00
Mike Kaganski a8c7382ae6 Use explicitly defined tooltips in IconView
Depends on core commits 0b92cf674cd44bdd2c2cdf8a5d597d4407e34002
and acf2a2f17942c21b5aca4691c738902a3dd9aa6c.

Signed-off-by: Mike Kaganski <mike.kaganski@collabora.com>
Change-Id: I981e1bb0ca76ccc27bfc96a9a0c9dae8991c1a1f
2022-08-21 10:51:23 +03:00
Mike Kaganski 77facf941c Honor "singleclickactivate" in IconView
Depends on core commit 6aa61dc78640113060889ffe69464ef2e8aab5c4

Signed-off-by: Mike Kaganski <mike.kaganski@collabora.com>
Change-Id: I416c2a73e314ac63189ad60eb8541306902fa8d0
2022-08-21 10:51:23 +03:00
Szymon Kłos d6ad36a1fd jsdialog: don't create duplicated container for tabcontrol
to avoid duplicated id and focus issues

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Id9791d92838b65b235cf901af8e4c5464133dfd2
2022-08-19 06:59:23 +02:00
Pedro Pinto Silva 1e3d3243f2 Fix jsdialog title background and re-use CSS var
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I393ec7865c8df4123a6fc7f5ac566d02a3ce534f
2022-08-19 06:59:23 +02:00
Pedro Pinto Silva 5896d80ba5 Increase jsdialog tab btn text contrast
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I1a6ac35593c945b832c92af275b759e8be0b8225
2022-08-19 06:59:23 +02:00
Pedro Pinto Silva f42c7a0297 Increase jsdialog tab btn contrast
And make sure first tab get extra padding when selected so to keep
some need space for the edge and to respect same alignment

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I96d8a1d5540336632fe75acb8eeef25bd5c4819f
2022-08-19 06:59:23 +02:00
Pedro Pinto Silva 5538f10560 Remove gray block bellow JSDialog tabs
It seems we have inline-block within inline-flex when we could
just have regular block inside of flex

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ia242c36ced9908aa07ef09580d3c812f36d437e2
2022-08-19 06:59:23 +02:00
Skyler Grey fdc8ef970d Adjust scroll test coordinates
- The test contains coordinate ranges for where the scrollbar must be
- As PR #5131 moves the scrollbars, we need to adjust these coordinates
  so the test passes

Signed-off-by: Skyler Grey <skyler3665@gmail.com>
Change-Id: I6d037a304cc86553c47e81acbc63643742db2f66
2022-08-18 11:25:27 +02:00
Skyler Grey c75dc751af Let the scrollbar go to the top of the railway
- Previously the scrollbar was limited so that it couldn't go right to
  the top, this commit removes that limit

Signed-off-by: Skyler Grey <skyler3665@gmail.com>
Change-Id: I7fec85ba013a924ca8880c54fc214dfa32387dd1
2022-08-18 11:25:27 +02:00
Pedro Pinto Silva 6e79ab2402 Decrease scrollbar thickness while retaining clickable area
Better to use a thiner scrollbar as default state.
If needed, increasing it on mouseover could be a worth follow-up

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ifb5a5f50c5d81140e5c6523061941b56e9a0b169
2022-08-18 11:25:27 +02:00
Pedro Pinto Silva 743d596124 Use darker color for scrollbarrailway
This affects greatly spreadsheet (in the other doctypes we use opacity
for that railway so, it's less evident)

Better to use a color other than white on calc for railway. Otherwise,
the document's content seems being abruptly cutoff into to white space.

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I3ed0cf0be9a0228c7862c191d8d9f09c9c8b1f25
2022-08-18 11:25:27 +02:00
Skyler Grey 5d25ce9a1d Stop the scrollbar railways overflowing bounds
- Previously the scrollbar railways started at the start of the drawable
  section, this made them draw over other elements such as the
  spreadsheet numbering in calc
- Offsetting the scrollbar railway and reducing its width lets us avoid
  drawing over anything we shouldn't

Signed-off-by: Skyler Grey <skyler3665@gmail.com>
Change-Id: I8f670c5f6c76fa849ea657b1ceb065f1a91dd087
2022-08-18 11:25:27 +02:00
Skyler Grey d9f1425f7f Fix scrollbar color
- Before the opacity for one of the scrollbars was being overwritten
  before the scrollbar was drawn. That is now fixed

Signed-off-by: Skyler Grey <skyler3665@gmail.com>
Change-Id: I0aa648c60f59bcc8a997a9176b0075831043c297
2022-08-18 11:25:27 +02:00
Skyler Grey e50a1ed47f Stop the scrollbar being offset from the edge
- This looks better with the new scrollbar railway, as for example on
  calc this stops the spreadsheet displaying beyond the scrollbars

Signed-off-by: Skyler Grey <skyler3665@gmail.com>
Change-Id: Ic99d0f173ba4a2480cd4dc1acb04797dafd1bdcf
2022-08-18 11:25:27 +02:00
Skyler Grey 340896da97 Make the scrollbar railway more transparent
- The scrollbar railway should only have 50% opacity unless we're using
  a spreadsheet, in which case it should stay at the default 100%

Signed-off-by: Skyler Grey <skyler3665@gmail.com>
Change-Id: Ia2a22bc13fa8b4f7dd9fb7d86ef81fb39b89f32c
2022-08-18 11:25:27 +02:00
Skyler Grey f0068feeca Improve the horizontal scrollbar
- Draw the railway for the horizontal scrollbar

Signed-off-by: Skyler Grey <skyler3665@gmail.com>
Change-Id: I64a8a612f7164e30c4cc086634a3b0ae43aeab1f
2022-08-18 11:25:27 +02:00
Skyler Grey 4bc5a01887 Improve the vertical scrollbar
- Draw the railway for the vertical scrollbar

Signed-off-by: Skyler Grey <skyler3665@gmail.com>
Change-Id: I57975e52700f3b91782f9be40ad9864fc8c3baf2
2022-08-18 11:25:27 +02:00
Szymon Kłos 9664627cab Revert "cypress: skip file properties for now"
Now it is merged on core side.
This reverts commit 4e3b34d6dd.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ie8f7e8f3e8d269af186e0a3d82aed73f63577789
2022-08-18 08:36:20 +02:00
Szymon Kłos 8b10055a48 comment bubbles: don't use undefined container on comment remove
- Show error instead of throwing an TypeError exception.
- Prevent us from showing empty popup when removed comment.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I55adfde01514de559eb3aeedd8c5af2bf88a2ab1
2022-08-18 08:36:01 +02:00
Ashod Nakashian e31d4023e7 wsd: log unmount errors only when mounting is enabled
When bind-mounting is disabled, we do a best-effort
to unmount any lingering mount-points. This is a
cleanup that helps with leftovers. Here, we
do a debug log level in case the unmounting fails,
and error, otherwise, when bind-mounting is enabled.

Change-Id: I199d6234aebfd84e6be812e5b7d3758273086815
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-08-17 21:27:30 +02:00
Ashod Nakashian 7ae1c9152a wsd: test: print failed assertion code
Change-Id: Iceeafd3e399da7a20f06d8ad6d4e5adffd989d93
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-08-17 08:55:12 -04:00
Ashod Nakashian ca60752515 wsd: test: print correct binary name on failure
Change-Id: I93ebe0c0e39928717e1b53becc010a334ce7bf09
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-08-17 08:55:12 -04:00
Ashod Nakashian 81399bff64 fuzzers: fixup HttpEcho
This improves the performance of fuzzing
and removes the checks that can't be guaranteed.

And fixes a test failure.

Change-Id: I987fe15b098c00d9a3d60077f0581d2ef35e306c
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-08-17 08:55:12 -04:00
Ashod Nakashian 82a5c3173d wsd: fuzzer: fix build
Change-Id: Ib52e32de04e7af230ed21eed11e0855050e97c74
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-08-17 08:55:12 -04:00
Ashod Nakashian 9419b7ef0d make: minimize fuzzer dependency duplication
Change-Id: I6ff335ab6e4ddeb950cd03ddb08a793790327579
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-08-17 08:55:12 -04:00
Ashod Nakashian 41ea9d4930 fuzzers: add httpecho fuzzer script
Change-Id: Iab296461ac47d0ee23c23bf3629f7a08f77e238a
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-08-17 08:55:12 -04:00
Ashod Nakashian 94a884ad0f fuzzers: add http corpus and dictionary
Change-Id: I1a59fd31cc8ddfd90a7e9d4d62455310e410cb88
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-08-17 08:55:12 -04:00
Ashod Nakashian 6fa5be7ecb fuzzers: more aggressive http::Response fuzzing
Change-Id: I5b714bddd6edc90ef0c8efdad42d5f78f3d74886
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-08-17 08:55:12 -04:00
Ashod Nakashian eca9b0bb4e wsd: http: check for timeout in sync requests
This should cap the loop either when we timeout
or when termination is flagged.

Change-Id: I78a6b05df99d6bac5286e4b1e4957829ea91c500
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-08-17 08:55:12 -04:00
Ashod Nakashian a87d1ae54f wsd: add HttpEcho fuzzer
This is a full round-trip http fuzzer.
It can achieve >1000 iterations per second
on a single 2 Ghz core, even while going
through the network loopback layer.
The advantage is that more networking code
is fuzzed this way, including not just
the http code, but also the sockets.

Change-Id: I75d21bd0e25221ee6621097a2605d62c4bb2ae4d
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-08-17 08:55:12 -04:00
Miklos Vajna c9cb1f4e01 wsd: fix uninitialized DocumentBroker::_savingTimeout
Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: Id004b635cfd8e77de85f932a3035870300ba1c47
2022-08-17 13:30:07 +02:00
Pedro Pinto Silva cbf5f1ad71 NB: Convert group_download_as to bigmenutoolitem
- Avoid using random UNO command (InsertGraphic) for download action
- Centralize download option (re-use bigmenubartoolitem)

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ie9cb8564acee8611221e0ff6f841de7b31b777e4
2022-08-17 13:22:06 +02:00
Pedro Pinto Silva e55812033d Remove sidebar's hardcoded :hover states for unotoolbutton parents
These should not be targeted
- ids can change (e.g. FormatPaintbrush2 ,etc)
- Also unotoolbutton is already inheriting :hover rules

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I7149cebfd52b4049a27bd3989fc88d254440df6d
2022-08-17 10:21:26 +02:00
Pedro Pinto Silva f3c7b59265 Fix sidebar's clear direct formatting hover state
No need to specifically mention unotoolbutton's parent and apply :hover
, unotoolbutton is already been targeted

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Iaa92d50f35f63dea4d10cd0906d9dadb700c25f1
2022-08-17 10:21:26 +02:00
Szymon Kłos 9dea7201b2 jsdialog: unify clear formatting icon
There is no reason for custom handler.
Thanks to that we don't need special css.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I9b576d4a6ef5668ec281c4e1348335d3b93bbac0
2022-08-17 10:21:26 +02:00
Szymon Kłos 4e3b34d6dd cypress: skip file properties for now
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I1be203229599912e3099f9a3e904e0562479ed3d
2022-08-16 16:04:22 +02:00
Szymon Kłos 2abff9a572 jsdialog: grid is a special container
don't create wrapper parent for it so we don't duplicate ids

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I2e90744bc23141ff153331a7f5bffe634f93e6f1
2022-08-16 16:04:22 +02:00
NickWingate a70415fe7b cypress: add tests for file properties
- test document description
- write test for custom properties
    - text, duration, yes/no types
    - disabled until core implements custom props

Signed-off-by: NickWingate <nick.wingate@collabora.com>
Change-Id: If0205b90d899772ac8f7f98d4eda2cbc23117d0f
2022-08-16 16:04:22 +02:00
NickWingate 23f6a66c8c Fix incorrect tab being selected
Previous implementation depended on internal IDs of tab
pages which caused problems when IDs were non-sequential.

New implemention uses the index of each tab page in the
locally stored contentDivs to change tabs.

Signed-off-by: NickWingate <nick.wingate@collabora.com>
Change-Id: I3117698e27ca5f4c90fcbc59ce0c3fe35b351be4
2022-08-16 16:04:22 +02:00
NickWingate ed2a5ce833 Fix empty grid bug
Signed-off-by: NickWingate <nick.wingate@collabora.com>
Change-Id: I0f0882df4c44f05de67e07881237db212591cf33
2022-08-16 16:04:22 +02:00
NickWingate d3c730f9f9 Expose file properties dialog
Signed-off-by: NickWingate <nick.wingate@collabora.com>
Change-Id: I33e5bccf63fea5352c559b868d6842ea3873333b
2022-08-16 16:04:22 +02:00
Bayram Çiçek 336f7c1664 Add outline to color indicator for classic mode
- In classic mode, toolbar color indicators weren't visible when no
  text is selected. The reason is that color indicators didn't have
  border(outline) color.
- In fact, color indicators were just a box-shadow property. So,
  it was not possible(?) to add properties like border and
  border-radius.
- No need to use box-shadow property. A <div> tag can represent
  color indicators.
- Removed box-shadow property.
- Added <div> tag that has class="selected-color-classic".
- Added UI specifications for mobile. (#toolbar-down)

Signed-off-by: Bayram Çiçek <bayram.cicek@libreoffice.org>
Change-Id: I1b1b68fdc015fd3719d1c59ef7f782036a5934a5
2022-08-16 15:49:49 +02:00
Pedro Pinto Silva 23715f72cd Mobile: fix missing icon on hamburger menu top level
Follow up on the changes introduced in
4e07514

Make sure the explorable list runs iconURLAliases first before
insert image url

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I9295fad934f000acdd27cac64b0c70284c0bbd2f
2022-08-12 19:04:12 +02:00
Pedro Pinto Silva e818d178a0 Fix outdated accepttrackedchanges svg references in CSS files
Follow up on the changes introduced in
4e07514 , update acceptrackedchanges svg

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Id2902602a546756d1d8e9299fa7e91d2750f5ce8
2022-08-12 14:02:39 +02:00
Aron Budea db713b9c9d docker: update files for the 22.05 release
Signed-off-by: Aron Budea <aron.budea@collabora.com>
Change-Id: I437b0a4c4eb552579548bc0ede66a8209453d360
2022-08-11 16:31:24 +02:00
Yunusemre Şentürk bacb4ed211 Bump package version to 22.05.5.3
Signed-off-by: Yunusemre Şentürk <yunusemre@collabora.com>
Change-Id: Ie52b0cbbd196ec2f54e84581faed6325b213cecb
2022-08-11 12:23:22 +03:00
Szymon Kłos 4f5845c4ec jsdialog: check before using focus widget
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I37cd8affb6c96ba506337823dd3d612a7fa93808
2022-08-11 10:15:38 +02:00
Szymon Kłos 3c6f5b5749 jsdialog: hanlde popup updates correctly
Since 22.05 popups (eg autofilter) are handled by the same
code as dialog (Control.JSDialog.js). Allow processing their
messages.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I5cd927172fb6922f20a8832fa58fd149ebdbd7c9
2022-08-11 12:40:28 +05:30
Pedro Pinto Silva 18f1a763d4 Fix outdated svg references in CSS files
Follow up on the changes introduced in
4e075146b9
- Update toolbar.css with current valid aliases
- Which fixes all a couple of missing SVG console errors

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I4eb96175d297b2a6962aa0ec6ab46b82cf060a34
2022-08-10 17:50:26 +03:00
Pedro Pinto Silva b4d3687f85 Note when in presence of an integrator with sharing capabilities
This has the intent to help any integrator in targeting  CO
and thus adding additional buttons etc when EnableShare is true.

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Id010d1e817c3d32c5a835ee0bf8aabefc977f962
2022-08-10 16:04:48 +02:00
ChrisGlad 1d2b05559a Fix UI Selection bug
Signed-off-by: ChrisGlad <chris.gladman2004@gmail.com>

This code fixes the problem that elements in the Notebookbar will
not be correctly displayed as "selected" after changing the UI
mode.

Change-Id: I4f889f8593029c375a06e17dbf1062bb9b9f5efc
2022-08-09 08:57:29 +02:00
Julius Härtl c7bdc082b9 browser: Give formulabar a fixed button width to avoid jumping
Signed-off-by: Julius Härtl <jus@bitgrid.net>
Change-Id: Id38951ddc79e99573008c63d4e6c7ed36fcc52a2
2022-08-08 08:54:30 +02:00
Skyler Grey f182183d6b Rewrite testing of splitting table cells
- This is a followup to 3ce47b0c16
  (https://github.com/CollaboraOnline/online/pull/5106)
- This commit rewrites the split cells test to work with JSDialogs
  (merged in https://gerrit.libreoffice.org/c/core/+/137791) and
  re-enables that test

Signed-off-by: Skyler Grey <skyler3665@gmail.com>
Change-Id: I7901cfa1489618d005faffe68af0883e0ca998a1
2022-08-07 08:14:53 +02:00
Ashod Nakashian 6f969932bf wsd: remove lastUploadTime as it is redundant
Change-Id: I5dee3ed1a77c3672056e3cfc894192d334ae5c15
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-08-06 20:38:09 -04:00
Ashod Nakashian b96ea2f9e7 wsd: move minTimeBetweenUploads into StorageManager
Change-Id: I3c4ff6146d2950b618effc348aa3a44c2cfa2c85
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-08-06 20:38:09 -04:00
Ashod Nakashian 2cee775e0e wsd: move minTimeBetweenSaves into SaveManager
Change-Id: I00336230f80557e0986a2ea6d29b1f498f04fe0a
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-08-06 20:38:09 -04:00
Ashod Nakashian 704a99824a wsd: cosmetic and logging
Change-Id: Icca69e8b70e93693c5c94bce897091d3b75dc385
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-08-06 20:38:09 -04:00
Ashod Nakashian 5e0c29c73b wsd: move the autosave interval into SaveManager
Change-Id: I79e33e3089a4da0c1d968b0fdbc2f4bab55c4fc6
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-08-06 20:38:09 -04:00
Ashod Nakashian b4ab083d5f wsd: config: merge auto- and idle-save comment and make uint
There is no reason to imply that a negative duration
and/or interval can be negative. 0 is perfectly
sufficient to signal disabling it, without having
to also support negative values. Internally, we
still check for < 0, but the config now doesn't
encourage setting negative values.

Change-Id: Ieaeb5f5ce1efa219a28cc5726a0bd43ef095deb4
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-08-06 20:38:09 -04:00
Ashod Nakashian caacf21710 wsd: add min_time_between_upload_ms config
This introduces a new config entry to
control the minimum time between uploads
after a failed attempt. In the case of
a successful upload, the minimum time
between uploads is bounded by the
min_time_between_save_ms config.

Change-Id: Ic7e37f97a52af2c5ec82897b6e81f57211d16553
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-08-06 20:38:09 -04:00
Ashod Nakashian 2d695a489e wsd: add min_time_between_save_ms config
This adds a new config entry to help tune
how often to save after the last save
request. This is used regardless of
the auto-save interval.

Change-Id: I58c291e69a63a3b98e72584817b408b54d9f80f1
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-08-06 20:38:09 -04:00
Ashod Nakashian ad19bb3055 wsd: test: better PutFile assertion
This enabled previously-disabled PutFile
assertions, now that these cases are fixed,
which makes a number of tests more strict.

Change-Id: I77a0d552b43c73534cd4fbd066e34025d924f793
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-08-05 15:24:27 -04:00
Skyler Grey 3ce47b0c16 Disable testing of splitting table cells
- The split cells test currently uses tunneled dialogs to make sure that
  we can split table cells
- There is an open gerrit review to switch the split cells dialog to
  JSDialogs (https://gerrit.libreoffice.org/c/core/+/137791) which is
  blocked because the tunneled dialog needs to be removed in it, and
  that fails this test
- This test needs to be temporarily disabled to give coreside a chance
  to merge that review and build a new version of the libreoffice
  archive. Once that has happened, this test should be replaced with a
  rewritten version

Signed-off-by: Skyler Grey <skyler3665@gmail.com>
Change-Id: I0bb51e3cdbc04020e03c8d87696d014a0f693554
2022-08-05 07:57:47 +02:00
Rash419 cff30c51d5 cypress: fix: ui-pushbutton element keeps getting detached
clickonIdle waits for the DOM element to be idle so test doesnot fail due to ui flickering

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I43b0800b23970326a4a6e84bfc662b67fea4f364
2022-08-05 01:06:13 +05:30
NickWingate 3747f47aa3 Remove residual callback code
'callback except-' is unused anywhere anymore.
Implemented in 68e597b
Removed in 986bcce

Signed-off-by: NickWingate <nicholas.wingate03@gmail.com>
Change-Id: Ib620e6a33639f510c8f2415cf009e4d183a353fd
2022-08-05 01:06:13 +05:30
Andras Timar 358ba77e4b Bump package version to 22.05.5.2
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ia2a719fc6fe93b544e18058a66dbc166458f24bd
2022-08-04 19:26:12 +02:00
Julius Härtl 2a7345f0f9 browser: Add proper id to StyleApply buttons on notebookbar
Signed-off-by: Julius Härtl <jus@bitgrid.net>
Change-Id: Ic654c9b3316a73a09033f58414c2e98043ccf0de
2022-08-04 17:35:56 +02:00
Pedro Pinto Silva a864d41c09 Revert "Add color-scheme-dark.css support"
This reverts commit 08b1d4b1e7.

Better to avoid backporting WIP dark mode at least until
issue number #5054 is fixed

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Id4fe8582fdebe9ad078ef5eaa7ba6be655cfb941
2022-08-04 15:26:47 +02:00
Andras Timar 7ebfb1516e Update l10n files for Weblate
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I887beb16becdd31771ba70fb62c68bc743288a8f
2022-08-04 14:33:48 +02:00
Rob Pearson 54293cfbb2 Translated using Weblate (English (South Africa))
Currently translated at 100.0% (463 of 463 strings)

Translated using Weblate (English (New Zealand))

Currently translated at 100.0% (463 of 463 strings)

Translated using Weblate (English (United Kingdom))

Currently translated at 100.0% (463 of 463 strings)

Translated using Weblate (English (Australia))

Currently translated at 100.0% (463 of 463 strings)

Translated using Weblate (English)

Currently translated at 100.0% (22 of 22 strings)

Translated using Weblate (English)

Currently translated at 100.0% (110 of 110 strings)

Co-authored-by: Rob Pearson <rob.dunedin@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/android-app/en/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/android-lib/en/
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/Android app
Translation: Collabora Online/Android lib
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ibf82272e631a0dcf6a3c0764ab9aca73891d60a5
2022-08-04 14:30:31 +02:00
Martin Srebotnjak b8a358836d Translated using Weblate (Slovenian)
Currently translated at 100.0% (463 of 463 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: I6767b04ff940eec7cbfba0f34a46c7ded5d28e9e
2022-08-04 14:30:30 +02:00
Marco Cecchetti 2fd508dd5e Translated using Weblate (Italian)
Currently translated at 100.0% (463 of 463 strings)

Co-authored-by: Marco Cecchetti <mrcekets@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/it/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ia37243fc3e2d1648b568c40da21e5b71526e4a51
2022-08-04 14:30:30 +02:00
Mert Tumer 1381812979 add .xlsm mimetype to android
Signed-off-by: Mert Tumer <mert.tumer@collabora.com>
Change-Id: I7b28870e3b1d3c4941e516871c2077e1d0695d09
2022-08-04 14:32:21 +03:00
Szymon Kłos 962e1a9a5a sidebar: show Misc panel with Table Cell Color
It was removed in:
mobile wizard: hide unsupported items in table panel
commit 1aed5ddaa4

but now works

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ia9ba8d9c7bad1c2074405617a4443e05df42ac66
2022-08-04 13:17:26 +02:00
Julius Härtl 1851926386 Unique ids and proper label for row height / column width
Signed-off-by: Julius Härtl <jus@bitgrid.net>
Change-Id: I486c2709fd2dd5d133c4c46416dcea5ef0479fc1
2022-08-04 09:42:15 +02:00
Julius Härtl 219e246742 browser: Avoid important property on sidebar border
Signed-off-by: Julius Härtl <jus@bitgrid.net>
Change-Id: Ia9cd8db9dcfa580f049c7212cfb01384d957d5cc
2022-08-04 09:41:49 +02:00
Mert Tumer 26fdb33449 fix selecting redline comment jumps to scroll to beginning
redline comments dont have position properties set
and some calculation needed in order to have it
and scrolling to comment relies on position property.

We have now instead getter for it and if it is a redline
comment it is calculated otherwise the default one is returned
because it is already set.

Signed-off-by: Mert Tumer <mert.tumer@collabora.com>
Change-Id: I6a3cefdd1c881783832de3de8fc1df7c849aad09
2022-08-03 14:19:52 +03:00
Aron Budea d30b423c07 Replace #ifdef-s with #if-s, and enable -Wundef
...for variables coming from configure.ac.

Signed-off-by: Aron Budea <aron.budea@collabora.com>
Change-Id: I39ebd21c4cb56d2a3bd38fdc35dc59b5f1fd4b49
2022-08-03 11:07:38 +02:00
Ashod Nakashian 85eaefd741 gtk: mobile: don't cleanup log when failing
Change-Id: Ibd8d3d65f5fffc0abbc410e3f265c3eea0af6c40
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-08-02 14:45:12 -04:00
Ashod Nakashian c2ba9c8a77 wsd: extend the fork timeout when copying systemplate
While bind-mounting is very fast, linking and copying
are both often much slower. Normally, we give extra
time to forking Kit the first time, but then we
reduce the timeout there after. Here, we take into
account whether or not bind-mounting is enabled
before we reduce the timeout to the normal level.
That is, if bind-mounting isn't enabled, we leave
the timeout to be higher-than-normal to accomodate
slow linking or copying.

The benefit of this is evident in the stability of
tests when bind-mounting is disabled (even on fast
filesystems with linking).

Change-Id: I959abf6d3253b2c91be8e0c9a59ec12511817bb9
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-08-02 14:45:12 -04:00
Ashod Nakashian d6cf1f0532 wsd: minor code-coverage improvements
Change-Id: If9d16bdb37944220635c27d98595c2ebcb19a51d
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-08-02 14:45:12 -04:00
Ashod Nakashian 5c6516e4e4 wsd: support code-coverage report via --with-coverage
This adds support for code-coverage HTML reporting.
To achieve this, we must use file-linking in jails
so that we can update the coverage data (.gcda files)
from the jails. This means that creating jails is
slower than with bind-mounting and we need to
account for that in our timeouts.

We also can't kill child processes with SIGKILL,
which is un-catchable. Instead, we use SIGTERM
and dump the profile data before exiting.

Change-Id: I16fa534f6ed42f7133014d841bb024423315e0a4
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-08-02 14:45:12 -04:00
Ashod Nakashian 551454c9f5 wsd: test: reorder test execution order
Now that most tests are rid of poco sockets
and fixed a number of other issues, the
tests run much faster. The relative timings
have changed, so re-ordering can yield
better total time with -j.

The new order gives ~20% shorter execution
time with -j8 (on 8c/16t i9 @ 2.0 Ghz fixed).
Actual time went from ~2:11 down to 1:46.
A saving of more than 25 seconds.

Change-Id: I0f23b86e4218fff187cdbcc756eb77522732a64b
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-08-02 09:24:46 -04:00
Ashod Nakashian f396786e28 wsd: test: break connectLOKit retries when terminating
Without this, we may end up retrying a dozen times
before giving up, all when the test is complete.

This happened rarely when the test in question didn't
care to wait for the connection to finish. Such a test
exists for wopi redirections; UnitWOPIHttpRedirect.

Change-Id: Ied43119c91343be812d7c1a2be86ba8d21b4f021
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-08-02 09:24:46 -04:00
Ashod Nakashian a8cb6a660b wsd: test: track tests in URLs
This helps detect when tests cross-connect.

A rare, and very hard to find, issue went
like this:

A test (a random one) would recieve a request
that it didn't expect. This would cause it
to fail. It was clear that this was coming
from a different test--but which?

Meanwhile, another test (UnitWOPIHttpRedirect)
was in connectLOKit retry loop due to repeated
failure to connect.

With this patch, it was easy to see what was
happening, once the source was found. The
idea is to stamp the test sending the
request so the test-server can validate.
Upon failure, we can see the source test.

The source test (UnitWOPIHttpRedirect),
in the case in question, is a
server-side test. It flagged to exit once
it verified that the redirection worked
(in the GetFile serving the document).
Unfortunately, exiting didn't stop the
connection attempts in the same test. In
most cases the document would load before
DocBroker is stopped. But every so often
everything would shutdown and the test
would keep trying to connectLOKit.
Since we shutdown everything, we also
closed the listening port, which is now
available for other tests to re-use.
This is how UnitWOPIHttpRedirect requests
ended up at different tests, causing them
to fail sporadically.

The subsequent test fixes the retry logic.
The fix is left separate since this patch
is useful on its own, and independent of
the issue and the fix. This is just a tool.

Change-Id: I2848cc578a102fc0bd981e1ac71aaabc25f1a403
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-08-02 09:24:46 -04:00
Ashod Nakashian fcb0f8557a wsd: test: killpoco for UnitCopyPaste
Change-Id: I655e29619b110fce23881dab29828ecb7966890e
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-08-02 09:24:46 -04:00
Ashod Nakashian 2986e1e9b5 wsd: test: send WS close-frame only once
Without this patch, we may end up repeatedly
sending close-frame. This impacts tests only.

Change-Id: I3c9a0cb14c9103d002508b1199647f6ff9761230
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-08-02 09:24:46 -04:00
Ashod Nakashian b1ddb1aa55 wsd: test: cleanup test helpers
Change-Id: I68d43ab78fe0a4a11b07f72c9cd7aab9500398c8
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-08-02 09:24:46 -04:00
Ashod Nakashian 50d4129ab8 wsd: test: killpoco for UnitBadDocLoad
We now use our http::Socket and SocketPoll
instead of Poco.

Change-Id: I9b89c017e4bbba81267f753cbe26419912d32be8
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-08-02 09:24:46 -04:00
Ashod Nakashian 5c874d1b9f wsd: test: correct shutdown UnitWebSocket
We cannot invoke the socket from outside the
SocketPoll and we must flag for async shutdown.

Change-Id: I223e24f5fe48a79a9d751c7cf5cdf9d720c22f7d
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-08-02 09:24:46 -04:00
Ashod Nakashian 4fdd7cac67 wsd: test: improve Upload-Conflict tests stability
This handles an edge-case that failed randomly.

Change-Id: I0e13130477698f9a4fbdb2812a592a706ba408b4
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-08-02 09:24:46 -04:00
Ashod Nakashian 8fed0fed8a wsd: test: killpoco test helpers
Change-Id: Iaf2a8cf195e29b1215076733ae268422d7384f34
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-08-02 09:24:46 -04:00
Ashod Nakashian 712e40a3f9 wsd: test: replace hard-coded test timeouts
Compile-time constants are far superior
to hard-coded magic numbers and they
make changing them trivial. We need that
when we enable profiling.

Change-Id: I9ee42fabf3feb1feecb9b76ebca663007e263680
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-08-02 09:24:46 -04:00
Ashod Nakashian 78ab6136f7 wsd: test: correct shutdown of WebSocketSession
Change-Id: I7d1aad4c26c4144038b9ed782a0f27454bb02eeb
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-08-02 09:24:46 -04:00
Ashod Nakashian 3cbee21ec1 wsd: test: break WebSocketHandler polling when terminating
Change-Id: I0b177a031a8d1115823ad5161d5129aa9447c20f
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-08-02 09:24:46 -04:00
Ashod Nakashian 7fb9a0588f wsd: test: killpoco for UnitClose
We now use our http::Socket and SocketPoll
instead of Poco.

Change-Id: I728f9c975b67da76dbbc78e94f1fb5f224c9bc57
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-08-02 09:24:46 -04:00
Ashod Nakashian b972c7e0a1 wsd: test: clang-tidy some args
Change-Id: If9dcbfb2e3eab5617fee60b8f233e400e3d38916
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-08-02 09:24:46 -04:00
Ashod Nakashian 94978498ea wsd: test: modernize some tests
Change-Id: I8968a53f1a72ddebba276eae8211d8533964b591
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-08-02 09:24:46 -04:00
Ashod Nakashian 60e64ec8c9 wsd: test: remove COOLWebSocket from WopiTestServer
Change-Id: Ia56c2a7f34503907fb1257b966125e4d94a61645
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-08-02 09:24:46 -04:00
Ashod Nakashian ba09a78721 wsd: test: modernize UnitTileCache
And disable it, since it's empty and has
no functional tests in it at all (it just
loads a document and exits the test, without
even waiting for the loading to finish).

We modernize, even though we also disable it,
because otherwise it wouldn't build.

Change-Id: I3735f28fa27af1d00e764f4e0070a25ff36b32d5
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-08-02 09:24:46 -04:00
Ashod Nakashian b3540550e8 wsd: mark copied jails early
This avoids the case where we fail to
create the jail completely, get killed,
or crash. All of which might leave the
jail unremoved.

Change-Id: I4c6b6a038110186af7be9f358a42902b224188e0
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-08-02 07:51:52 -04:00
Ashod Nakashian b77dfc47d2 wsd: remove default arg from SigUtil::killChild
Explicit is always better. We also need to
terminate more gracefully when profiling.

Change-Id: I7145cb59583c5d7c6362bbf9c74e9d21799eaa33
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-08-02 07:51:52 -04:00
Ashod Nakashian 4e9b836ea6 wsd: always use Util::forcedExit to properly cleanup
We need to flush and shutdown logging before exiting,
so we can't use _exit/_Exit directly.

In addition, with profiling (e.g. code-coverage) we
must flush the profile data, lest it's all for naught.

Change-Id: I726c5a2f4e699c17dd0d7d5b1c86d856e0118b3c
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-08-02 07:51:52 -04:00
Ashod Nakashian a1553144fa wsd: http: improved logging
Change-Id: I6576e184aa23f722a01223119ce29b509c063231
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-08-02 07:51:52 -04:00
Skyler Grey 9e1f7d96f5 Fix typo in coolwsd.xml.in
- coolwsd.xml.in is the file copied to coolwsd.xml to become the
  configuration file for COOL
- this PR fixes a typo in the languagetool section

Signed-off-by: Skyler Grey <skyler3665@gmail.com>
Change-Id: I945d6d8257df34437092ac9f9c3f395cf5c759b1
2022-08-01 19:37:15 +03:00
Marc Rodrigues 20a27a9427 Translated using Weblate (German)
Currently translated at 100.0% (463 of 463 strings)

Co-authored-by: Marc Rodrigues <marc.rodrigues@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/de/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I0dc5e67b559d47db0fffa2ef383e8a9510a0c52f
2022-08-01 16:48:44 +02:00
Mike Kaganski 1b95758712 Translated using Weblate (Russian)
Currently translated at 100.0% (463 of 463 strings)

Co-authored-by: Mike Kaganski <mikekaganski@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ru/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I825cfd70edb90271c61d8a19dd5e7d83c264958e
2022-08-01 16:48:44 +02:00
William Gathoye 9e5b797dcb Translated using Weblate (French)
Currently translated at 100.0% (463 of 463 strings)

Co-authored-by: William Gathoye <william+weblate@gathoye.be>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/fr/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ib1734912ef3ef64a2cc6d987d2feb4d26d4bfde4
2022-08-01 16:48:44 +02:00
Tor Lillqvist 30de7bce7f Translated using Weblate (Finnish)
Currently translated at 91.7% (425 of 463 strings)

Co-authored-by: Tor Lillqvist <tml@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/fi/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Id4903be58e73a8b0902b58f949b7b20e3a484859
2022-08-01 16:48:44 +02:00
Pranam Lashkari 6e344b38e2 Translated using Weblate (Hindi)
Currently translated at 34.9% (162 of 463 strings)

Translated using Weblate (Hindi)

Currently translated at 33.2% (154 of 463 strings)

Co-authored-by: Pranam Lashkari <plashkari628@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/hi/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ica85e9bf83bd2d05613c876c80c8b383a25955d9
2022-08-01 16:48:44 +02:00
Rashesh Padia 94ce0b0f70 Translated using Weblate (Hindi)
Currently translated at 33.2% (154 of 463 strings)

Co-authored-by: Rashesh Padia <rasheshpadia419@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/hi/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I5689ccc8dcf09323772d400159fe3b4ac9376aa5
2022-08-01 16:48:44 +02:00
Pedro Pinto Silva ec1a77a2e4 Translated using Weblate (Swedish)
Currently translated at 95.8% (444 of 463 strings)

Translated using Weblate (Slovak)

Currently translated at 92.2% (427 of 463 strings)

Translated using Weblate (Portuguese (Brazil))

Currently translated at 100.0% (463 of 463 strings)

Translated using Weblate (Czech)

Currently translated at 94.8% (439 of 463 strings)

Translated using Weblate (Russian)

Currently translated at 99.7% (462 of 463 strings)

Translated using Weblate (French)

Currently translated at 99.5% (461 of 463 strings)

Co-authored-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Co-authored-by: Pedro Silva <pedro.silva@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/cs/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/fr/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pt_BR/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ru/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/sk/
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: Ib3b9624fb9a5b962e0a7e6cf0bce1240b54719ca
2022-08-01 16:48:44 +02:00
Adolfo Jayme Barrientos 7f1909dd29 Translated using Weblate (Spanish)
Currently translated at 100.0% (463 of 463 strings)

Translated using Weblate (Catalan)

Currently translated at 99.7% (462 of 463 strings)

Translated using Weblate (Asturian)

Currently translated at 51.1% (237 of 463 strings)

Co-authored-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ast/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ca/
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: Ia716263d8f7f672b0971cb0c93bb3d8d4daabe7a
2022-08-01 16:48:44 +02:00
SC 4e6a408a19 Translated using Weblate (Portuguese)
Currently translated at 100.0% (463 of 463 strings)

Co-authored-by: SC <lalocas@protonmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pt/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I14f30bb28d9ed37fbfc2fdda18213eee73bf6276
2022-08-01 16:48:44 +02:00
Ayhan Yalçınsoy b905ba14cc Translated using Weblate (Turkish)
Currently translated at 100.0% (463 of 463 strings)

Co-authored-by: Ayhan Yalçınsoy <ayhanyalcinsoy@pisilinux.org>
Co-authored-by: PhD. Ayhan YALÇINSOY <ayhanyalcinsoy@pisilinux.org>
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: I02dfd042f7f2463582d0dba4e6680738df5eea61
2022-08-01 16:48:44 +02:00
Sebastiaan Veld 6aafd6573d Translated using Weblate (Dutch)
Currently translated at 100.0% (463 of 463 strings)

Co-authored-by: Sebastiaan Veld <sebastiaan.veld@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/nl/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I17090f5e07a60db9609a96c0555919d5aa9fcadd
2022-08-01 16:48:44 +02:00
Ihor Hordiichuk d4d29f44dd Translated using Weblate (Ukrainian)
Currently translated at 100.0% (463 of 463 strings)

Co-authored-by: Ihor Hordiichuk <igor_ck@outlook.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/uk/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I96c80a33faa4c5c1d10c5222d0b1ea76095399a1
2022-08-01 16:48:44 +02:00
Matthaiks fe2c7fd705 Translated using Weblate (Polish)
Currently translated at 100.0% (463 of 463 strings)

Co-authored-by: Matthaiks <kitynska@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pl/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ibfb3f1760e0799d52ed0a2fc115e15f01b9b5870
2022-08-01 16:48:44 +02:00
Andras Timar 1fec26ba3e Translated using Weblate (Hungarian)
Currently translated at 100.0% (463 of 463 strings)

Co-authored-by: Andras Timar <andras.timar@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/hu/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ibc0b2d7d5cc0f28a67013872bf7bd2bbfb0f94ef
2022-08-01 16:48:44 +02:00
Yaron Shahrabani 913fea57e4 Translated using Weblate (Hebrew)
Currently translated at 70.0% (320 of 457 strings)

Translated using Weblate (Hebrew)

Currently translated at 69.8% (319 of 457 strings)

Translated using Weblate (Arabic)

Currently translated at 100.0% (457 of 457 strings)

Translated using Weblate (Hebrew)

Currently translated at 100.0% (463 of 463 strings)

Co-authored-by: Yaron Shahrabani <sh.yaron@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/ar/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/he/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/he/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: If507f0e03897d8580d9d8eb06050f4c5ef49ec56
2022-08-01 16:48:44 +02:00
Pedro Pinto Silva 530a8992a4 Do not use classes in iconURLAliases
With changes from 4e07514
Some elements without id were being listed (using their CSS classes)
and their corresponding SVG files were removed

This reverts those lines making sure that icons within insert shapes
menu or fontwork are not missing anymore.

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I4d1ad6a0f2124867ea47c8ca5c0c636aa5646143
2022-08-01 15:23:42 +02:00
Pedro Pinto Silva 34ab177244 Fix iconURLAliases ids
With changes from 4e075146b9
4 problems were introduced, this fixes it:

- Writer > Form controls > insert date form control
  - We were trying to alias with an already inexistent SVG
- Impress > layout tab > Master slides sidebar
  - Typo: missing s in slides (masterslidespanel)
- Impress > top toolbar > Master slide sidebar
  - Same as the previous one
- Calc > style apply (next to conditional)
  - Typo: lc_ and .svg was being used

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I794dd0bbcb0593909a950e31413823a30f79bfad
2022-08-01 15:23:42 +02:00
Andras Timar a149398e97 Bump version to 22.05.5.1
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I9813fc25355b766c82fc5723b906828bd98fe404
2022-08-01 09:03:28 +02:00
Mert Tumer 2cf9f7bc1b android: fix closing the document on interactive dialogs
We get stuck on exitting the app progressbar on mobile
with the interactive dialogs such as csv import or macro security
dialog, we have a different use case for killing the document
as in the normal case. We are not running a separate process
but a thread and we dont trigger regular killing use case.

This piece is not relevant for android because we always have
one connection through fakesocket until the main thread is killed
and it is waiting on the mutex to finish before we finally exit the
document activity.

Signed-off-by: Mert Tumer <mert.tumer@collabora.com>
Change-Id: I99bd333152d40a04f95d4747705a721112317bb2
2022-07-30 10:52:16 -04:00
Ashod Nakashian 2044625122 wsd: improve logging when kit disconnects
Change-Id: I65d18aea265e5e68ee823676028266fa543e0667
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-07-29 13:59:28 -04:00
Pedro Pinto Silva f0f58a2075 Mobile: Make sure all unotoolbutton share padding and margin
and remove unnecessary CSS verbose

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I209ea7d05e7027df8127ff2e49457a9e1d55cd7e
2022-07-29 11:24:51 +02:00
Pedro Pinto Silva 7122440572 Fix non-used automatically generated spans on mobileWizard
This fix the follow issue
https://archive.org/download/mobile-wizard-generating-spans/mobile-wizard-generating-spans.png

but it also removes unnecessary css block related to all those span
elements associated with unotoolbutton. Better to avoid creating
the HTML element instead of creating and then hiding it.

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I4e9ea01456370f1f7f877de00cf1a57e15337f45
2022-07-29 11:24:51 +02:00
Michael Meeks 04ee3b9fae Add the ability to dump internal LOK core state / details.
Requires an updated core.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: Ie000e86851d7dfbc1e70a3f1631d427a3d18188f
2022-07-29 01:43:03 +03:00
Michael Meeks 8ca42a5d5a delta: fix delta cache sizing.
Change-Id: Ia6ed98534f87006ba5ffcffc8b928f16cfc892cd
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-07-28 15:22:58 +01:00
Skyler Grey 4e075146b9 Alias and remove duplicate SVG files
- This commit fixes #5052
- Files which were directly in `/browser/images` were the only ones I
  considered in-scope for this (not files in `/browser/images/dark` as I
  did not want any aliasing there to influence light theme)
- Files which weren't named `lc_*.svg` were not considered for this, as
  the function with the alias list transformed the names into that
  format
- Dupes were found with `find . ! -empty -type f -exec md5sum {} + | sort | uniq -w32 -d --all-repeated=separate`
  It is possible (although unlikely) that there was a hash collision and
  I incorrectly aliased an image. The names I was aliasing seemed sane
  though, so I doubt this was the case.
- I changed the behavior of the aliases object such that it is *after*
  the lowercasing of the name and not before; this was so that I didn't
  have to worry about if capitals were used (as there were some SVGs
  with different combinations of underscores etc. and I didn't want to
  assume they all always needed to be in CamelCase)

Signed-off-by: Skyler Grey <skyler3665@gmail.com>
Change-Id: I4d7972900195edeaa8f5f8941d18ab556319a7f7
2022-07-28 14:08:52 +02:00
Szymon Kłos cab0492e41 calc: scroll when we reached end of view on AutoFill
- allow to use auto scrolling feature by event propagation
- it required to create new modified event which will
  contain coordinates of the autofill marker

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ic7fe236833f5e1747d0d72e9560d3c9ecdccde51
2022-07-28 12:38:04 +03:00
Skyler Grey b1f3c4b56b Fix the close button on windows without a title
- Previously going into Help > About > View widgets would show a window
  where the close button was rendered slightly out of the top of the
  window
- This was because without the title taking up a line, the title bar
  shrunk to be too small to contain the close button
- This commit makes sure that the title can never take up less than a
  line in height

Signed-off-by: Skyler Grey <skyler3665@gmail.com>
Change-Id: I9ead59711e3db3cde6af485ebcccf0b8a3ea57a5
2022-07-27 14:18:41 +02:00
Skyler Grey 08e5265f16 Fix typo in CONTRIBUTING.md
Signed-off-by: Skyler Grey <skyler3665@gmail.com>
Change-Id: I916882ac1c1a83c54fa4e583f4353c00211b3606
2022-07-27 09:59:31 +02:00
Andras Timar f4510db850 Update l10n files for Weblate
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Iecf2f95395a6d9c58faa365373443987e0cbaa9c
2022-07-26 10:51:48 +02:00
Gontzal Manuel Pujana Onaindia 40027c1dbd Translated using Weblate (Basque)
Currently translated at 100.0% (462 of 462 strings)

Co-authored-by: Gontzal Manuel Pujana Onaindia <thadahdenyse@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/eu/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I1f2bdc4851b471dd01fe772cd4d0e8674ac8ad91
2022-07-26 10:48:56 +02:00
Ayhan Yalçınsoy 5ae7087fe0 Translated using Weblate (Turkish)
Currently translated at 100.0% (462 of 462 strings)

Co-authored-by: Ayhan Yalçınsoy <ayhanyalcinsoy@pisilinux.org>
Co-authored-by: PhD. Ayhan YALÇINSOY <ayhanyalcinsoy@pisilinux.org>
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: I2d7934340871ee92175b5bab78eaf169b4c30bba
2022-07-26 10:48:56 +02:00
SC 2dcce409b3 Translated using Weblate (Portuguese)
Currently translated at 100.0% (462 of 462 strings)

Co-authored-by: SC <lalocas@protonmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pt/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I8b5c0c7e4cb6e86ac222294321bf2110bb7e76a1
2022-07-26 10:48:56 +02:00
Sveinn í Felli 4ffb1903ea Translated using Weblate (Icelandic)
Currently translated at 100.0% (462 of 462 strings)

Co-authored-by: Sveinn í Felli <sv1@fellsnet.is>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/is/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I1f04aa6737a60b86a211ee7874ead864984f7572
2022-07-26 10:48:56 +02:00
Ashod Nakashian dd6c5b1d81 wsd: correctly stop DocBroker from interactive mode
When in interactive mode, the user has a dialog
to interact with. The issue is that the user may
dismiss said dialog, the Kit process may stop,
crash, or otherwise exit. This basically leaves
DocBroker in a deadlocked state, expecting
input from the interactive document, which
will never materialize.

Here, we rely on the machinery already in place
for flagging such a DocBroker that has no Kit.
We check for said flag and stop DocBroker if
such a case is detected, exiting clearly.

Change-Id: Iecb91c49226da08567cdd2c5d050d458e2f0fc9b
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-07-25 10:45:23 -04:00
Ashod Nakashian a871ab9714 docs: add note on Control-C and --cleanup
Change-Id: I705db2cbdeef05a8467f4d1a04a197019ad185eb
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-07-25 14:04:13 +01:00
Ashod Nakashian e4bdd10b11 wsd: minor log improvements
Change-Id: Id75de0548383cc0f6e983a7b226dff6c7ade56eb
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-07-25 14:04:13 +01:00
Ashod Nakashian c735429571 wsd: fix signedness warning/error
Change-Id: Ifb35c034b8e2cbf6f6031821b5ede2e2317a2c60
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-07-25 14:04:13 +01:00
Ashod Nakashian 3b04b606eb wsd: test: modernize UnitWOPISaveAS
Change-Id: I56fffb5908dbefea73a10ccded1aa46d321cfcf3
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-07-25 14:02:00 +01:00
Ashod Nakashian 176c37eaa6 wsd: test: killpoco for UnitSession
We now use our http::Socket and SocketPoll
instead of Poco.

Change-Id: Ib835b8efb7b65fee11e0a2aebf34cc4ee86dbab7
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-07-25 14:02:00 +01:00
Ashod Nakashian cd9490a3ae wsd: test: killpoco for UnitRenderingOptions
We now use our http::Socket and SocketPoll
instead of Poco.

Change-Id: I4a21902d2ef1472ac8d7a73f6881b059c683de93
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-07-25 14:02:00 +01:00
Ashod Nakashian 9368b14c77 wsd: test: killpoco for UnitPasswordProtected
We now use our http::Socket and SocketPoll
instead of Poco.

Change-Id: I814eece097823959c70954cc53a755392135965e
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-07-25 14:02:00 +01:00
Ashod Nakashian 64ee298bab wsd: test: killpoco for TileCacheTests
We now use our http::Socket and SocketPoll
instead of Poco.

Change-Id: I422c31d85e3422541a0ab367007876c3a33fa124
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-07-25 14:02:00 +01:00
Ashod Nakashian ed6565502c wsd: test: killpoco for UnitCalc
We now use our http::Socket and SocketPoll
instead of Poco.

Change-Id: I2ed85129b9a58d49f19bea0b2e4f8f09b7b36f5f
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-07-25 14:02:00 +01:00
Ashod Nakashian 9130f12d75 wsd: test: killpoco for UnitBadDocLoad
We now use our http::Socket and SocketPoll
instead of Poco.

Change-Id: Ia24ef764219f31b0610d85b63ee6000df62b8c8c
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-07-25 14:02:00 +01:00
Ashod Nakashian 4d76d7349a wsd: test: killpoco for UnitTyping
We now use our http::Socket and SocketPoll
instead of Poco.

Change-Id: Ib9142f7751ddf6a17a9a17e09898a96f5071e9a6
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-07-25 14:02:00 +01:00
Ashod Nakashian 6a0709b71b wsd: test: killpoco for UnitUNOCommand
We now use our http::Socket and SocketPoll
instead of Poco.

Change-Id: I70887502320cf1a86cd24525dcdb5af98ac6e67c
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-07-25 14:02:00 +01:00
Ashod Nakashian c3b2fe9956 wsd: test: killpoco for UnitTiffLoad
We now use our http::Socket and SocketPoll
instead of Poco.

Change-Id: Ief648126bf45376737c281dd3b9637e33339b414
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-07-25 14:02:00 +01:00
Ashod Nakashian acbf32aef5 wsd: test: killpoco for UnitRenderShape
We now use our http::Socket and SocketPoll
instead of Poco.

Change-Id: Ied70aff99ecd61571c13974d0cfb63e6ab5bda47
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-07-25 14:02:00 +01:00
Ashod Nakashian 93cf880337 wsd: test: killpoco for UnitRenderSearchResult
We now use our http::Socket and SocketPoll
instead of Poco.

Change-Id: If1a83eb4a78102c9090699934767a759c8923542
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-07-25 14:02:00 +01:00
Ashod Nakashian 74b49f41ca wsd: test: killpoco for UnitPaste
We now use our http::Socket and SocketPoll
instead of Poco.

Change-Id: I8e51c000cea0fd323c6babd9e12d81c8c8c9eeaa
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-07-25 14:02:00 +01:00
Ashod Nakashian 4e9acddc42 wsd: test: killpoco for UnitLoad
We now use our http::Socket and SocketPoll
instead of Poco.

Change-Id: I30a4dc1b762caba1ecfad8f5784871b2bba583f6
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-07-25 14:02:00 +01:00
Ashod Nakashian c4c05aa20d wsd: test: killpoco for UnitLoad
We now use our http::Socket and SocketPoll
instead of Poco.

Change-Id: I3035ea1d335b05d6ced677a91f32f0233380a5a8
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-07-25 14:02:00 +01:00
Ashod Nakashian fe629da48f wsd: test: killpoco for UnitLargePaste
We now use our http::Socket and SocketPoll
instead of Poco.

Change-Id: If6c33a53d7a01a83db718407d4f78464e07ed204
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-07-25 14:02:00 +01:00
Ashod Nakashian d3cb191fd1 wsd: test: killpoco for UnitInsertDelete
We now use our http::Socket and SocketPoll
instead of Poco.

Change-Id: Id7b63d25e497377c37f487a704c015dd7babfc32
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-07-25 14:02:00 +01:00
Ashod Nakashian 7896351a28 wsd: test: killpoco for UnitInsertDelete
We now use our http::Socket and SocketPoll
instead of Poco.

Change-Id: Ie787fb518c9e1528155d96fbe549f16678111095
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-07-25 14:02:00 +01:00
Ashod Nakashian 569203284f wsd: test: killpoco for UnitCursor
We now use our http::Socket and SocketPoll
instead of Poco.

Change-Id: I76a7d4c7640abfcf54a181c5080ae2a027c73874
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-07-25 14:02:00 +01:00
Ashod Nakashian f15c6cd8b5 wsd: test: killpoco for UnitEachView
We now use our http::Socket and SocketPoll
instead of Poco.

UnitEachView now finishes ~3x faster.
It's also much more consistent in its
runtime.

More importantly, the CPU utilization
went from ~20% to ~90%. Poco was spending
most of its time polling (and often timing
out). It has corner-cases that make it
miss events completely, for some reason.

Change-Id: Ibcc8fbd638e5ec950a34b418414521accdd443f8
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-07-25 14:02:00 +01:00
Ashod Nakashian 1d96fe827a wsd: test: remove default testname arg from helpers
Change-Id: Iecbc2c1fa2a7568aedeaa0b089c3ca0a584488f5
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-07-25 14:02:00 +01:00
Szymon Kłos 8bb881bda2 calc: correctly detect complete row was selected
After commit:
change default Calc number of columns to 16384 (tdf#50916)
https://cgit.freedesktop.org/libreoffice/core/commit/?id=4c5f8ccf0a2320432b8fe91add1dcadf54d9fd58

Last column code is 'XFD'

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I3414ca2fefe1a3bda17595610ac2aab3a7a41d8e
2022-07-25 09:54:40 +02:00
Aron Budea 81e1e0a51e wsd: slightly improve logging in case of version mismatch
Signed-off-by: Aron Budea <aron.budea@collabora.com>
Change-Id: I586da3390487727f0d4b743d4d285cce59f7d55b
2022-07-25 06:23:19 +02:00
Szymon Kłos 1c7a051044 calc: handle DoubleClick on AutoFillMarker
This will allow to fill column with formula when data
are present in neighborhood

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I3f341b57b0d40251cb10a4f7b628c5c8f438e986
2022-07-22 14:56:58 +03:00
Szymon Kłos 963b7bda4f jsdialog: formulabar: reset shift key state after focus is lost
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I03d080fbe0d99cb5e2f825ac8fb66417b4b0b130
2022-07-21 11:12:00 +02:00
Szymon Kłos 3fe3655c6c formulabar: mobile: reuse TextInput for mobile IME
Fixes typing on Android using GBoard in Chrome
before this patch we didn't get any input due to
lack of keyCode, we need to use 'input' events
which are already handled in TextInput.js

This patch does that only for mobile case, later
we can try to unify it with desktop so we remove
our custom formulabar input even there.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I318840dee78ddf0f803af74236a6c880c3f09329
2022-07-21 10:23:45 +02:00
Szymon Kłos bda3a2961d mobile: fix TypeError, missing Intl API
this error was shown on socket disconnect on mobile Chrome in older
phone

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I927880ce1848fd1d48776202679ee14a8858e065
2022-07-21 10:23:45 +02:00
Pedro Pinto Silva 9dfedf0003 Tablet: Fix Save icon floating when in presence of changes
The dot above the save icon was not scrolling together
with its parent:
     - Make sure the little dot is always under a parent with
       position set to relative
     - Adjust top position due to that ^ change
     - It also fixes for narrow window on desktop

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I5844400cd1a15fe5693bb2b0be880460d974eec1
2022-07-21 09:18:17 +02:00
Pedro Pinto Silva 160467ac96 Don't use automatic generated ids (incremental digit) for save btn
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Idaae02ce7c0ea9dab69056654df0bf15c847af3e
2022-07-21 09:18:17 +02:00
Pedro Pinto Silva ea55505346 Add log directory (typescript) to gitignore
Automatically generated .log folder relate to typescript
was not being ignored

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I0fa8bcbe9e3a9eeae8f1549d6d073865d06eb41d
2022-07-20 17:14:40 +03:00
Rash419 c91b8b01b4 wsd: new config entry to add unlock_link for feature lock dialog per alias_group
- also added unlock_link option in dynamic configuration

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I075a4aed4f82059714412def965a8ed4d3581b2f
2022-07-20 17:41:19 +05:30
Rash419 9bb0b6fabd introduce new options to customize featurelock dialog
- adds two new options
1. localize the dialog
2. change upsell image shown in dialog using proxy handler
- provides all the settings using dynamic configuration

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I7e21c1b31c806c88bf54f891de40f02fa342168f
2022-07-20 17:41:19 +05:30
Pedro Pinto Silva b00961f06a Make view menu entries behave similar across types
- Follow the same order, for generic menu entries:
  - Toggle UI Mode; Show Ruler; Show Status Bar; Sidebar
- Make sure Reset Zoom and all UI toggles are present in all apps
(doc type) when using tablet

Note:
This commit does not change the following because I do agree with
remarks stated in 70f4f8b92e
- Zoom in and Zoom out entries are not needed in tablet
- Zoom also misbehaves, so better to have it out when on a tablet

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I06f1c025dba27ae65229c38406d646da75a59aa6
2022-07-20 13:24:25 +05:30
Pedro Pinto Silva 4901779bf3 Remove unnecessary separator from view menu entries (type: text)
No need to have one item (Resolved Annotations toggle) surrounded by
separators.

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ie5e560122054fc5904e3b24f984aa682c758d373
2022-07-20 13:24:25 +05:30
Pedro Pinto Silva 898f5181bd Add UI toggles to view menu (compact view) on tablets (type: text)
Building upon 70f4f8b92e
, it makes sense but let's add back in the Reset zoom
and let's make sure all the other UI toggles are available
when using tablet ( otherwise user is not able to
toggle UI mode, ruler or status bar).

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I972a3f6f17306484a266dc3cfa2103540ca4761d
2022-07-20 13:24:25 +05:30
Andras Timar c2ec7a3468 docker: add CODE branding (optionally) to image built from source
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ibf21760668b77c8734316bf5219509ed899aba62
2022-07-19 21:54:51 +02:00
Michael Meeks b2788bf702 tracing: re-work code, improve thread safety.
We shouldn't write to the socket outside the main thread ever or
we'll get memory corruption; cf. a number of suspicious traces
around this code.

Change-Id: Ibeb36fffbecce960012a55b3ab4fd40c9996ae68
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-07-19 20:01:08 +01:00
Michael Meeks 80079f708c perf-test: cleanup un-expanded variables.
Change-Id: If2c7c055558a96c401e2be2ce031cd288bbc747e
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-07-19 20:01:08 +01:00
Tor Lillqvist ba80acc836 On iOS the tile messages arrive with e.data as a string
Now the tiles show up correctly in the iOS app again.

Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: I2b1741ed9f5fc4e4df30cb67addfa45eb0d20b92
2022-07-19 19:25:42 +01:00
Ashod Nakashian ed3b1902b7 wsd: invoke handlePoll on all sockets
Before ed5569da30
we invoked handlePoll on all sockets in
each poll. But that's not true anymore.

Since i = _pollStartIndex; (line 432),
when we assigned previ = i; (line 451)
we made previ == _pollStartIndex, which
immediately broke the loop
while (previ != _pollStartIndex)
at line 438, causing handlePoll to be
called on one socket at a time (and
likely *not* the socket that had an event).

It's inefficient to poll and ignore the
result.

Now we do handle revents on multiple
sockets correctly and efficiently for
each ppoll() by going through all sockets
and handling based on whatever revents
gave us. We need to invoke the handler
of each socket to handle timeouts (i.e.
if we don't call the handler until
the socket gets an revent, we wouldn't
be able to support timeouts properly).

Notice that we still start at
a different socket each time (although
it's not entirely clear what advantage
that has, it's maintained all the same)
as the aforementioned patch does.

Change-Id: I9c0a482792aee7df5d44f4b63f173e574db36f97
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-07-19 18:31:50 +03:00
Andras Timar 70b99be0e8 docker: strip core binaries, otherwise the docker image would be huge
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Id1b8eab2b722b22a63593a2b8b85b21ebe670271
2022-07-19 14:21:14 +02:00
Tor Lillqvist 2b84a35fe8 Also binary data is now pased through send2JS
We store each byte as one character, i.e. UTF-16 unit, in the string.
Yes, this is inefficient.

Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: I75cc211d7a8da98a4e0e5b5b3d000e7ed66c271e
2022-07-18 16:57:10 +01:00
Pranam Lashkari e65d923e9f add server id to capability list
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I1f101d8091a5fae64f19b8d4ace7b2db7d5cf5b1
2022-07-18 13:01:36 +01:00
Gökay Şatır 66c5386400 Beautify the version string.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I66e2fd6d4331361e36bc31135a45e62149f2c0f9
2022-07-15 16:50:22 +03:00
Ashod Nakashian 45b7eb778d wsd: reuse parsed message
Change-Id: I9d67f92ba99037954400e07a7d1101e5de3716fd
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-07-15 11:14:14 +01:00
Henry Castro c9178b0223 Add home mode option - enabling more configurability for CODE.
Requested by several users and partners - defaults to off/un-changed.
When set it allows optional disabling of welcome/feedback when used
in a homely environment.

Also bump default max doc/conneciton limits in configure to 10k.

Change-Id: I3c917901e02445d45f6f86b554d47a60aa4e575d
Signed-off-by: Henry Castro <hcastro@collabora.com>
2022-07-14 18:24:43 +01:00
Tor Lillqvist 3ad41e69f7 ENABLE_WELCOME_MESSAGE should now be 0 for iOS, not "false"
Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: I3d8e38aac0ed7bd783cc0d8c79b2d4d08fa478a1
2022-07-14 12:58:35 +03:00
Tobia Conforto aba9091209 Added support for setting the timezone in Docker
Added the 'tzdata' package to Ubuntu-based Docker builds and the
'timezone' package to openSUSE builds, to allow Docker users to run
the containers with a custom timezone by passing a TZ env variable.

Signed-off-by: Tobia Conforto <tobia.conforto@gmail.com>
Change-Id: Idafd84dde3383b4801ff4b3ebb8ac1826fe49fcc
2022-07-14 11:24:03 +02:00
Pedro Pinto Silva ed5ab42d38 Calc: Add missing class to toolbar-wrapper when on tabbed view
This is needed so 584aa5b8f6
is also applied on tabbed view.
Until now we were just adding that class when on compact view
(Control.TopToolbar.js)

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I8c0ac3d909f64025f301651564b3c2b1ae130e1c
2022-07-14 09:16:30 +02:00
Pranam Lashkari 3b064b0738 kubernetes: introduce config map
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: Ie7a3db6fafd164541075baf6577dd6dc7d72a5c1
2022-07-14 12:04:02 +05:30
Pranam Lashkari 22f38ef455 HAProxy: better load balancing
Instead of using URL parameter hash to direct all the users on same document to same server,
use stick-tables for it

original problem:
Problem was load balancer provided us with required persistence and balance both.
we directed traffic based on the url_param which means,
all the traffic with same url_param will go to same pod/server.
All the new values of url_param will be directed to different servers in round-robin way
this can be less efficient in a high traffic environment

solution:
this new method allows us to balance and manage persistence separately
so we can specify our desired algorithm for load balancing
and persistence is managed using stick-table

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I80d63a2fc33f796c4534d94fb8de1e44c62ee9e2
2022-07-13 14:45:26 +01:00
Ashod Nakashian e3deda303b wsd: fix warnings on GCC 12
Change-Id: Ia61f45d83223a65d1f7c444250230006a4ac098f
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-07-13 09:37:07 +01:00
Ashod Nakashian b0d6e1b859 wsd: sig: forward USR2 to child processes
We now have USR2 signal that dumps the
stack-trace of each process. This is useful for
capturing the state of misbehaving instances.
COOLWSD forwards USR2 to forkit and the kits
so they dump their stacktraces too.

This patch does not change the behavior of USR1.
Specifically, unlike USR2, USR1 is not forwarded
from wsd to frk and the kits. Also unlike USR2,
USR1 dumps into stderr.

Change-Id: I1d82f678f30f430f627692cc42961b1928f69e11
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-07-12 13:43:43 +01:00
Ashod Nakashian 3109b99d49 wsd: sig: dump backtrace with USR2
SIGUSR2 can now be used to dump the
stacktrace of coolwsd, forkit, and the
kit processes.

Also, support writing signalLog to files.
Although we write to stderr, we normalize
the interface used for signal logging and
allow for writing to any file descriptor.

Change-Id: If6366bb6ddbd9f8863baca52e4f65ebb468dc1f1
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-07-12 13:43:43 +01:00
Ashod Nakashian f6351d472d wsd: sig: write signalLog to SignalLogFD
This replaces the hardcoded STDERR_FILENO
to allow for writing to any file, including
stdout or a redirection to disk, if needed.

Change-Id: I76f6461f46fd4bc035fcf643d01e60c2e3236894
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-07-12 13:43:43 +01:00
Ashod Nakashian 7a615f1a79 wsd: sig: move signalLog helpers to SigUtil
In preparation to log to a file in the jail.
This will allow for including the log in the
log file, thus capturing all output from our
thread-group into the same log file.

Change-Id: Ia5c4ed35786d28f5d45f3065919d53f2c8492cb0
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-07-12 13:43:43 +01:00
Ashod Nakashian fc3b4ab717 wsd: sig: merge setTerminationSignals with setFatalSignals
This simplifies the signal handling setup.

Change-Id: Id121a9df45fc11bfdea627f9828e0b624b1b2284
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-07-12 13:43:43 +01:00
Ashod Nakashian bd92d00aed wsd: sig: prime libgcc and backtrace
This is to ensure that libgcc is loaded and
backtrace is available during signal handling.

Change-Id: I5bb36b69401dbedf4c991ba7d60d2e806441a625
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-07-12 13:43:43 +01:00
Ashod Nakashian b3d298bd84 wsd: minor cleanup of addNewChild
This moves the shared_ptr copy to outside the
lock, as well as reducing logging inside it.

Change-Id: Iedde95b3fe60fc40bbd035a9d43a9b95af7efdcc
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-07-12 13:43:43 +01:00
Ashod Nakashian 0d4c58fe36 wsd: jail: add Poco namespace where missing in LinkOrCopy
Change-Id: I9490ff29b48763130e5477525a96b987a4b79cf7
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-07-12 13:43:43 +01:00
Ashod Nakashian 8004653c63 wsd: jail: no need to pass loSubPath between processes
Since the value of the loSubPath (i.e. the directory
name of lo within the jail) is a compile-time constant,
there is no reason to pass it around at runtime.

Change-Id: If7457ea7f3e3fe5c42215eed3ce1ce4c8f328f16
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-07-12 13:43:43 +01:00
Ashod Nakashian e6ca54c971 wsd: jail: move LO_JAIL_SUBPATH to JailUtil
This prepares the way to remove loSubPath
being passed around at runtime, which is
completely unnecessary.

Change-Id: I728629e3cb5eb079add4232543319b89a7dc4a2a
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-07-12 13:43:43 +01:00
Ashod Nakashian b74666201c wsd: jail: rename jails to childroot to distinguish them
This is an internal rename of identifiers.

Child-Root is the top-level, configurable, directory
that stores the jails and related directories/files.

A Jail, by contrast, is the directory that contains
the filesyste tree of a Kit process. That is, it's
the directory that is chroot-ed.

To distinguish the two, we shall use "jail" for
the chroot-ed directory, and "child-root" for the
top-level directory.

Change-Id: Ie38b1c350234b75ddd15beb1c6bcdd2e53a82af0
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-07-12 13:43:43 +01:00
Andras Timar 5f985bef68 Bump version to match configure.ac
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I80f38a205f3a3b66ecb698f7f7fb7af5824919db
2022-07-11 20:22:43 +02:00
Andras Timar d069b8c3a2 updated debian/changelog
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ic83ecfe7360bd2912525661b81a3ee2ae6092190
2022-07-11 20:20:15 +02:00
Andras Timar 6fda36aaea Bump version to 22.05.4.1
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I3a9606cd2dc4be91b67348d11cb225549205bb2c
2022-07-11 19:12:47 +02:00
Егор Ермаков ffc5e4f45b Translated using Weblate (Russian)
Currently translated at 62.5% (286 of 457 strings)

Translated using Weblate (Russian)

Currently translated at 100.0% (462 of 462 strings)

Translated using Weblate (Russian)

Currently translated at 99.7% (461 of 462 strings)

Co-authored-by: Егор Ермаков <eg.ermakov2016@yandex.ru>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/ru/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ru/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I821ed266d54f8802e747aa5c558799851d93121e
2022-07-11 19:12:16 +02:00
Rob Pearson 537af141e2 Translated using Weblate (English (South Africa))
Currently translated at 100.0% (462 of 462 strings)

Translated using Weblate (English (New Zealand))

Currently translated at 100.0% (462 of 462 strings)

Translated using Weblate (English (United Kingdom))

Currently translated at 100.0% (462 of 462 strings)

Translated using Weblate (English (Australia))

Currently translated at 100.0% (462 of 462 strings)

Co-authored-by: Rob Pearson <rob.dunedin@gmail.com>
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/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: If529c436a314705de45fc5801e7bbcf11ab44ba8
2022-07-11 19:12:16 +02:00
Adolfo Jayme Barrientos 95210c9f16 Translated using Weblate (Spanish)
Currently translated at 100.0% (462 of 462 strings)

Translated using Weblate (Catalan)

Currently translated at 99.3% (459 of 462 strings)

Translated using Weblate (Asturian)

Currently translated at 50.0% (231 of 462 strings)

Co-authored-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ast/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ca/
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: If20eeac4c226f519c29c9c910e92e466f6994821
2022-07-11 19:12:16 +02:00
Yaron Shahrabani 7366f21bd3 Translated using Weblate (Hebrew)
Currently translated at 100.0% (462 of 462 strings)

Co-authored-by: Yaron Shahrabani <sh.yaron@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/he/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I5b7c69f8c73a7723bc941ceaba20bb53d1f26411
2022-07-11 19:12:16 +02:00
Henry Castro 63998720f4 browser: ensure if welcome was disabled
Change-Id: I22a90c0dd8e80870699aef12b800c85508b17920
Signed-off-by: Henry Castro <hcastro@collabora.com>
2022-07-11 14:19:00 +03:00
Henry Castro ee408c1f19 wsd: remove unused welcome code
clean up unused code

Change-Id: I2080942bed0403d3767f282c36c554e7b8bf03ca
Signed-off-by: Henry Castro <hcastro@collabora.com>
2022-07-11 14:19:00 +03:00
Andras Timar fb25b7d806 If integration theme does not exits, fall back to default theme
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I9939ee243aa81b50969168df2e8bb5c8cbf2a34c
2022-07-11 12:59:05 +02:00
Szymon Kłos 3982724e53 cypress: allow correct plain text clipboard formatting 3
Our plain text clipboard output generated additional newlines
at the beginning of every paragraph. To fix that we need
fix in core side which now fails due to expected bad format in cypress.
This is interim state where we accept both old and new format.

see for reference: https://gerrit.libreoffice.org/c/core/+/136893
lok: don't pretty print html for online
I2b17d62398d947fcf1d3fb1ed6005c3063d114f2

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ia2d75c75f40dffbe08d1c77e09c2331db18734f4
2022-07-11 11:14:27 +05:30
Pedro Pinto Silva 10c70a46a6 Mobile: Do not allow rules from busypopup to affect snackbar
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ibb3d964f66ef7f18272207b2738708b451c2e1b0
2022-07-11 07:29:26 +02:00
Pedro Pinto Silva d09157b412 Snackbar: Fix contrast, remove unnecessary rules
Use a dark solid background color - with a shadow (already existent)
- to stand out against content.

Make sure button is blue similar to test selection handles or some
icons etc. So it is visible at 1st sight what's the action

Remove unnecessary or duplicated rules

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I53a291f762c4ed40f5b39230fad8246fa280d050
2022-07-11 07:29:26 +02:00
Pedro Pinto Silva a29aeac3c0 Remove snackbar's border
It is not a normal dialog as in jsdialog or lodialog,
no need to add border

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ib7a4d3d1a89f1c69df8e7a374d4283d48b66e42b
2022-07-11 07:29:26 +02:00
Pedro Pinto Silva 3000d74e7e jsDialogs: Avoid uncertain border radius
Avoid odd number by stop relying on a division by 2.
Instead, use the same already existent border radius.

-----

In the future if we end up deciding on something else,
we should probably create a new var for that and apply
it to all dialogs

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: If0e53f0b2a965587c33156536f74fcc0a223a43a
2022-07-11 07:29:26 +02:00
Pedro Pinto da Silva e3ed04713c Writer: sidebar (table) fix row height spinner's position
Since the row height spinner is the 1st element in the row,
there is no need for margin.

Note: in the future wuld be good to have the spinner coming from the
builder with additional class or style when they are the first
element being positioned

Signed-off-by: Pedro Pinto da Silva <pedro.silva@collabora.com>
Change-Id: I2396ab662fcb4a12762b4a6e2b38582f1df7c59b
2022-07-10 21:35:34 +02:00
Pedro Pinto da Silva 9e67710e3a Writer: Fix sidebar table btns position shift
Remove unnecessary rules targetting minimalrowheight and
minimalcolumnwidth. These rules were
1. Not being apply always (sometimes jsbuilder was
setting them with different id, e.g.: with suffix 1)
2. Even when apply this rules were forcing these two btns
to go up, looking like they are mere icon for the spinner.
This is wrong. They are buttons that trigger the set to the
minimal sizes of that particular row or columns

Signed-off-by: Pedro Pinto da Silva <pedro.silva@collabora.com>
Change-Id: I53e81c69cdcc3aafd2ca5ab0f8e196d912b86608
2022-07-10 21:35:34 +02:00
Pedro Pinto da Silva ba8dfa52a9 Writer: remove sidebarbar spinner padding for table row & col
Before this change the spinner were getting unnecessary additional
padding.

Signed-off-by: Pedro Pinto da Silva <pedro.silva@collabora.com>
Change-Id: I43b8bffc8bacc13dfc633cee4cd8f7823834d402
2022-07-10 21:35:34 +02:00
Ashod Nakashian 5ff5aff95f wsd: build fix with gcc 12
With gcc-12.1 the following error is observed:

In file included from /usr/include/c++/12/string:50,
                 from wsd/ProofKey.hpp:12,
                 from wsd/ProofKey.cpp:10:
In static member function ‘static _OI std::__copy_move<false, false,
std::random_access_iterator_tag>::__copy_m(_II, _II, _OI) [with _II =
std::reverse_iterator<const unsigned char*>; _OI =
unsigned char*]’,
    inlined from ‘_OI std::__copy_move_a2(_II, _II, _OI) [with bool
_IsMove = false; _II = reverse_iterator<const unsigned char*>; _OI =
unsigned char*]’ at /usr/include/c++/12/bits/stl_algo
base.h:495:30,
    inlined from ‘_OI std::__copy_move_a1(_II, _II, _OI) [with bool
_IsMove = false; _II = reverse_iterator<const unsigned char*>; _OI =
unsigned char*]’ at /usr/include/c++/12/bits/stl_algo
base.h:522:42,
    inlined from ‘_OI std::__copy_move_a(_II, _II, _OI) [with bool
_IsMove = false; _II =
reverse_iterator<__gnu_cxx::__normal_iterator<const unsigned char*,
vector<unsigned char> > >; _OI =
 __gnu_cxx::__normal_iterator<unsigned char*, vector<unsigned char> >]’
at /usr/include/c++/12/bits/stl_algobase.h:529:31,
    inlined from ‘_OI std::copy(_II, _II, _OI) [with _II =
reverse_iterator<__gnu_cxx::__normal_iterator<const unsigned char*,
vector<unsigned char> > >; _OI = __gnu_cxx::__normal_iterator<u
nsigned char*, vector<unsigned char> >]’ at
/usr/include/c++/12/bits/stl_algobase.h:620:7,
    inlined from ‘static std::vector<unsigned char>
Proof::RSA2CapiBlob(const std::vector<unsigned char>&, const
std::vector<unsigned char>&)’ at wsd/ProofKey.cpp:188:14:
/usr/include/c++/12/bits/stl_algobase.h:385:25: error: writing 16 bytes
into a region of size 4 [-Werror=stringop-overflow=]
  385 |               *__result = *__first;
      |               ~~~~~~~~~~^~~~~~~~~~
In file included from
/usr/include/c++/12/x86_64-generic-linux/bits/c++allocator.h:33,
                 from /usr/include/c++/12/bits/allocator.h:46,
                 from /usr/include/c++/12/string:41:
In member function ‘_Tp* std::__new_allocator<_Tp>::allocate(size_type,
const void*) [with _Tp = unsigned char]’,
    inlined from ‘static _Tp*
std::allocator_traits<std::allocator<_CharT>
>::allocate(allocator_type&, size_type) [with _Tp = unsigned char]’ at
/usr/include/c++/12/bits/alloc_traits.h:464:
28,
    inlined from ‘std::_Vector_base<_Tp, _Alloc>::pointer
std::_Vector_base<_Tp, _Alloc>::_M_allocate(std::size_t) [with _Tp =
unsigned char; _Alloc = std::allocator<unsigned char>]’ at /usr
/include/c++/12/bits/stl_vector.h:378:33,
    inlined from ‘void std::_Vector_base<_Tp,
_Alloc>::_M_create_storage(std::size_t) [with _Tp = unsigned char;
_Alloc = std::allocator<unsigned char>]’ at
/usr/include/c++/12/bits/stl_vect
or.h:395:44,
    inlined from ‘std::_Vector_base<_Tp,
_Alloc>::_Vector_base(std::size_t, const allocator_type&) [with _Tp =
unsigned char; _Alloc = std::allocator<unsigned char>]’ at
/usr/include/c++/12/
bits/stl_vector.h:332:26,
    inlined from ‘std::vector<_Tp, _Alloc>::vector(size_type, const
allocator_type&) [with _Tp = unsigned char; _Alloc =
std::allocator<unsigned char>]’ at /usr/include/c++/12/bits/stl_vecto
r.h:552:47,
    inlined from ‘static std::vector<unsigned char>
Proof::RSA2CapiBlob(const std::vector<unsigned char>&, const
std::vector<unsigned char>&)’ at wsd/ProofKey.cpp:187:46:
/usr/include/c++/12/bits/new_allocator.h:137:55: note: destination
object of size 4 allocated by ‘operator new’
  137 |         return static_cast<_Tp*>(_GLIBCXX_OPERATOR_NEW(__n *
      sizeof(_Tp)));
      |                                                       ^
cc1plus: all warnings being treated as errors
make[2]: *** [Makefile:2394: wsd/ProofKey.o] Error 1

Change-Id: I6e5c6ea8187a5a60b177f6642b8b728e60b04688
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-07-09 21:10:03 -04:00
Ashod Nakashian 2c66099518 wsd: uninitialized locals
Without initialization, gcc12 complains
that these values may be uninitialized at the
usage site (in the Kit API).

Change-Id: I06df9d69977b1f89bfa2e0a3ca7404c026b570ed
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-07-09 21:10:03 -04:00
Szymon Kłos e3c6ff58f3 cypress: allow correct plain text clipboard formatting 2
Our plain text clipboard output generated additional newlines
at the beginning of every paragraph. To fix that we need
fix in core side which now fails due to expected bad format in cypress.
This is interim state where we accept both old and new format.

see for reference: https://gerrit.libreoffice.org/c/core/+/136893
lok: don't pretty print html for online
Change-Id: I2b17d62398d947fcf1d3fb1ed6005c3063d114f2

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I6adea1250bb4d54713e0a189b89930e82522a571
2022-07-09 10:05:53 +02:00
Rash419 120818c9a7 docker: improve start-collabora-online.pl
based on extra_params update the scheme and port when mapping domain->alias_groups

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: Ic5783112b8331407622f547a84d70ab2e1ba0c37
2022-07-09 10:04:40 +02:00
Henry Castro 3cdd25c340 browser: add 'dropdown' dialog type
Adjust the drop-down dialog to the #map element
to show the correct position sent by the server.

Change-Id: I74a6d7402438241aae77a18699c3297d64b34098
Signed-off-by: Henry Castro <hcastro@collabora.com>
2022-07-08 16:37:47 +03:00
Szymon Kłos 63f718e35e cypress: allow correct plain text clipboard formatting
Our plain text clipboard output generated additional newlines
at the beginning of every paragraph. To fix that we need
fix in core side which now fails due to expected bad format in cypress.
This is interim state where we accept both old and new format.

see for reference: https://gerrit.libreoffice.org/c/core/+/136893
lok: don't pretty print html for online
Change-Id: I2b17d62398d947fcf1d3fb1ed6005c3063d114f2

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I70fa8be619a62709d6e5ada32b7a670f90d7b2bf
2022-07-08 18:04:15 +05:30
Rash419 81359f5edc docker: update start-collabora-online.pl to allow regex
because we now support having regex in alias_groups.group.host
for more info: 45891d0ded

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: Ib8c16cd7db18719076d62347738e23bbefaa9204
2022-07-08 14:13:36 +02:00
Pedro Pinto Silva e1b25c69a8 Cypress: Adjust scrollbarPosition assertion
Since we remove a bottom padding in the toolbar-wrapper
with 3d27de7eb1

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Icf272e5c29455868cd43cf494935401ec10229e0
2022-07-08 13:22:08 +02:00
Pedro Pinto Silva 584aa5b8f6 Formulabar: remove bottom padding from toolbar-wrapper
This was affecting how we perceive padding around formulabar
- Making it look uneven (with more space at the bottom)
- Making toolbar-wrapper's bg visible at the bottom

Remove bottom padding when in presence of spreadsheet so to
avoid affecting the other apps

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Icce34ecb64781221428130f4a11420b5546003ad
2022-07-08 13:22:08 +02:00
Pedro Pinto Silva fb83b73587 Fix formulabar's address input vertical pos on mobile
Before item address was getting vertical aligned resulting
in misalignment when in expanded view

![image](https://archive.org/download/formulabar-mobile-addressinput/formulabar-mobile-addressinput.png)

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I8f71a99da0d813a367f75023b5ae1230378bb19c
2022-07-08 13:22:08 +02:00
Pedro Pinto Silva ae4a240fcc Formulabar: no need to use calc for line-height
Using unitless values will be automatically
multiply by the element's font size

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ice4b56c5da7e47aae83347c1bf6b6ac377a51518
2022-07-08 13:22:08 +02:00
Pedro Pinto Silva db23db6a78 Fix formulabar's item address input field vertical alignment
Make sure every element between item address parent and the
item address itself is place at the top

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ib883f6659788f4ec42ae6d953fa2d857038fc815
2022-07-08 13:22:08 +02:00
Pedro Pinto Silva 450d4611a8 Fix formulabar vertical padding and odd numbers
- Set heights to even numbers so we don't end up with uneven
  surrounding vertical spaces
- Remove individual top margins (margin-block-start) from btns
  - Instead fix underlying issue with formulabar
- Fix text-area padding inconsistencies between being expanded
  and collapsed. Problem: text area becomes taller, ending up
  occupying the top and bottom white space left from its parent
  - Leverage new css class added to the main parent #formulabar
    and add vertical padding so text-area forces parent to increase
    in size
  - Remove sub parent's (#tb_formulabar_item_formula)
    individual top padding

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I380af6cf70c0e879224329fbf9093e0778a38d8d
2022-07-08 13:22:08 +02:00
Pedro Pinto Silva e3210b4c82 Fix horizontal padding around formulabar
Avoid setting elements, located  on the edges, with margin
in the hopes we get an overall padding:
   - Remove it
   - Add instead a true padding to the main parent

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ie1690c9cc3c58f59387cb6aa73df20d42f5cc1fb
2022-07-08 13:22:08 +02:00
Szymon Kłos 47130f551e jsdialog: formulabar: fix backward selection using shift+arrow
When editing formulabar using keyboard - try to use shift + arrow
to make selection from the end in backward direction.

This patch makes it possible (visible).

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I48073214545892d98be097b38c60251ff95082f3
2022-07-08 12:32:48 +03:00
Szymon Kłos b506abad58 jsdialog: formulabar: unify behaviour of Safari/Gnome Web with other browsers
eg. Chrome setups selection only if element has focus
it prevents us from stealing focus by formulabar when
switching cells

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I46cbd4d04615478a95a36dd8bcda22d732e74d3e
2022-07-08 12:32:48 +03:00
Henry Castro 545122e933 infobar: listen 'updateviewlist' event
check infobar data when the server send
the user info data.

Change-Id: I0ba1da488f9b3d03dc7e3f42cea718273e6939b1
Signed-off-by: Henry Castro <hcastro@collabora.com>
2022-07-08 11:39:48 +03:00
Henry Castro c4681a79ba infobar: remove interval timer
Change-Id: Icf948c2f7ecc06ed2ba68224bf3fca7c22842ec0
Signed-off-by: Henry Castro <hcastro@collabora.com>
2022-07-08 11:39:48 +03:00
Pedro Pinto Silva d552fc07d4 Fix DownloadPopup close btn overlapping popup link
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I3294ce292b7921e36cb243f25149375f025e517d
2022-07-07 17:35:10 +03:00
Aron Budea 4a2f31b80c README fixes
Signed-off-by: Aron Budea <aron.budea@collabora.com>
Change-Id: I46864278e65b03e72286bda78d331e32d442705a
2022-07-07 15:04:28 +02:00
Szymon Kłos fe62d09c28 jsdialog: formulabar: fix freeze when server sent huge paragraph id
if there is no more paragraphs: exit the loop

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I7075ff5454e1ddcc11155867f835e85117bdea15
2022-07-07 15:23:20 +03:00
Michael Meeks e404ce88bb rows: ensure we don't stray beyond the last row in error.
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I04273e6c4ed8ea5b5e4398121f3d97767d7c3a2f
2022-07-07 13:09:47 +01:00
Michael Meeks 9a32c2c27a sheet geometry: build geometry array up to the last row in the range.
Improve performance by not looking up endIdx that may be over the end
of the range. Ensure we still have valid data for the pieces we do
know about.

Playing with a complex 1m row spreadsheet and re-sizing rows by
typing multi-line text into them would provoke row header problems
otherwise.

Change-Id: I5a110137e6d26e2c4b272210cf41883abb02c3af
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-07-07 13:09:47 +01:00
Szymon Kłos d1cb42e111 Keep custom buttons when switching the view
When we use API call InsertButton and we add custom buttons
we want to keep them when we switch between compact/tabbed view.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: If03520f52422ac41aa40432f068e5bc011ed2596
2022-07-06 12:18:54 +02:00
Rash419 cb080f561e writer: fix: cannot add picture using picture contentcontrol
use sendContentControlEvent to set picture instead of InsertGraphic uno command
since InsertGraphic is not allowed for a protected content control (like picture),
only sendContentControlEvent();

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I5f70919d995c51456056a8be2aa1e596df7bedc2
2022-07-06 14:57:30 +05:30
Pedro Pinto Silva 806dacecc2 Formula bar: Fix formula and sum btns shifting when expanding
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I7a235750513f8375670fa73894964b2a05acab10
2022-07-06 08:35:13 +02:00
Pedro Pinto Silva 7a6f7fd846 Formula bar: Make sure the outline doesn't bleed out
and thus avoid cropping it altogether

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: If959c617c6036daa353dc8185668aeb99d515497
2022-07-06 08:35:13 +02:00
Pedro Pinto Silva cbfe45185d Formula bar: Increase font size of the text area
Before not only it was not vertically aligned but it was difficult
to read

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I3790d51f4a90dd9bdb5158cfa16ed92de1ebfca5
2022-07-06 08:35:13 +02:00
Pedro Pinto Silva 4a6c701ae2 Formula bar: improve expander img
Set it to 24px, fix stroke and make it a path
- Result same size, smaller visual indicator

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ic41b7a1d8e798998ea9399cd68c9fc6b46e73725
2022-07-06 08:35:13 +02:00
Pedro Pinto Silva 12d269768a Formula bar: Set text area and expander with the same style
Decrease number of visual differences between the two while
by using similar style. Add border radius already in use
in other components such as drop-down menus.

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I09b51f0817d35641cfc7d028e281ae3ba362a663
2022-07-06 08:35:13 +02:00
Pedro Pinto Silva ddcf4797a6 Remove Toolbar-mobile.css, avoid bleeding out rules to desktop
The rules found in toolbar-mobile.css seem to no longer be needed
in any shape or form on desktop (even on FF). Remove file and
insert those changes within device-mobile (so it is loaded only
when on mobile)

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I58a3d52fc6313a8e32916fa2b5dd4796dd1c1cef
2022-07-06 08:35:13 +02:00
Pedro Pinto Silva cbf1db8d38 Formula bar buttons add hover effect
And make them less "shouting" by default

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I69306cbe6107ce1f7306291fe55d7f54f7fdfe8b
2022-07-06 08:35:13 +02:00
Pedro Pinto Silva 3d993d79c2 Formula bar: improve autosum menu button
- Make it clear that it is a menu button
  - Remove extra space between triangle and image
- Fix icon size, before it was overshadowing the function icon
- Redo icon, so it is more legible, less tall and less flimsy

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I95c635b9a39aaa4dd470372018c63c9f45385b25
2022-07-06 08:35:13 +02:00
Mert Tumer e834d65c73 added option to disable ssl verification for LanguageTool
this patch relies on core change
https://gerrit.libreoffice.org/c/core/+/136811

Signed-off-by: Mert Tumer <mert.tumer@collabora.com>
Change-Id: Id9fa7273631f93914afa870e2c1148a9aa01c2e7
2022-07-05 22:52:55 +02:00
Rash419 3667fbc2d8 cypress: NB: update tests to click on arrow to open color picker
Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I57cd50a532c0fdb5a6f0ebebf77e97c9e8e990e3
2022-07-05 22:12:30 +05:30
Szymon Kłos 3e1c068127 Fix TypeError when using formulabar variable in Writer
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I5e90fe04f83cacfbf4dd15a821f3d0b1310a9ab2
2022-07-05 20:47:46 +05:30
Gökay Şatır 5161d50896 Attempt to solve freebsd check issue.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: Id3e05d54c2d5b3f1dd4a9794ef4a0c455b72c04c
2022-07-05 13:59:28 +02:00
Pedro Pinto Silva 95db795a23 Allow buttons in vex dialogs to wrap
ported from:
PR: https://github.com/CollaboraOnline/online/pull/4976

In cases when the button text is too long
or when using CO in, for example, DE language and when
the length of the parent dialog was not enough the btns
would not stack up, instead that would overlap. This would
make reading those btns impossible.

![vex-btns-overlap](https://archive.org/download/csv-overlap-btn-labels/CSV-overlap-btn-labels.png)

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I801ea330db21add35d0a81466a1fba9501a61899
2022-07-05 12:01:13 +05:30
Ashod Nakashian 068907c7dd wsd: http: do not assert on net::connect returning nullptr
Apparently this is an issue for proxy.php.

Change-Id: I18090f17f22fe3145e7fa2364992a34a7e722f1b
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-07-03 18:03:35 -04:00
Ashod Nakashian 84f4267caf wsd: saving timeout set to 4x loading-time
And dump the saving timeout in the state dump.

Change-Id: If203d5434ee17f646009ee241b8484ca597840ad
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-07-03 18:03:35 -04:00
Ashod Nakashian c3b9cb6cab wsd: privatize internal JailUtil helpers
Change-Id: I86c87f162fd174d888cb167d7d89ccd0d13cadeb
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-07-03 18:03:35 -04:00
Sebastiaan Veld bd44a879fb Translated using Weblate (Dutch)
Currently translated at 100.0% (462 of 462 strings)

Co-authored-by: Sebastiaan Veld <sebastiaan.veld@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/nl/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I604d6118f1bca7242de194a84fadc16c5de51952
2022-07-02 18:39:20 +02:00
Nathan 23ad398698 Translated using Weblate (French)
Currently translated at 99.5% (460 of 462 strings)

Co-authored-by: Nathan <bonnemainsnathan@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/fr/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I38c51c48d17242e261c3e6fe849585b43609eeca
2022-07-02 18:39:19 +02:00
Yaron Shahrabani 91baaa0f7a Translated using Weblate (Hebrew)
Currently translated at 99.7% (461 of 462 strings)

Co-authored-by: Yaron Shahrabani <sh.yaron@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/he/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I494dcf5c9c176a63a66242cc2290818dfe7bd964
2022-07-02 18:39:19 +02:00
Ayhan Yalçınsoy 193bce6815 Translated using Weblate (Turkish)
Currently translated at 99.7% (461 of 462 strings)

Co-authored-by: Ayhan Yalçınsoy <ayhanyalcinsoy@pisilinux.org>
Co-authored-by: PhD. Ayhan YALÇINSOY <ayhanyalcinsoy@pisilinux.org>
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: I80302d1a3751e44219b91d3e6d349cd041303c77
2022-07-02 18:39:19 +02:00
AbsurdUsername 339d5be236 Translated using Weblate (Italian)
Currently translated at 100.0% (462 of 462 strings)

Translated using Weblate (Italian)

Currently translated at 93.0% (430 of 462 strings)

Translated using Weblate (Italian)

Currently translated at 100.0% (457 of 457 strings)

Translated using Weblate (Italian)

Currently translated at 100.0% (22 of 22 strings)

Co-authored-by: AbsurdUsername <sgso@pm.me>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/android-lib/it/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/it/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/it/
Translation: Collabora Online/Android lib
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I41053824fbb7040c79820dd95e503fe7dcf00f1b
2022-07-02 18:39:19 +02:00
Eric 0b0f483e95 Translated using Weblate (Chinese (Simplified))
Currently translated at 80.0% (370 of 462 strings)

Co-authored-by: Eric <alchemillatruth@purelymail.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: If8c4f929ec7a8a0e55f81b53df9b08bcd1afd925
2022-07-02 18:39:19 +02:00
Ihor Hordiichuk 9794a6a2d4 Translated using Weblate (Ukrainian)
Currently translated at 100.0% (462 of 462 strings)

Co-authored-by: Ihor Hordiichuk <igor_ck@outlook.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/uk/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I8a0dd12197259a4dadbddce25580ab9c1566c162
2022-07-02 18:39:19 +02:00
Andras Timar 6b524c1466 Translated using Weblate (Hungarian)
Currently translated at 100.0% (462 of 462 strings)

Co-authored-by: Andras Timar <andras.timar@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/hu/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I1620d5e529c0b1e50a93e8731ef64c13cc78d043
2022-07-02 18:39:19 +02:00
Miklos Vajna b5af14b302 TileLocation::hash(): shift when the input size_t already
Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: If4b18b96f3188489f1e5a027e08523722a2d85dc
2022-06-30 15:49:17 +01:00
Szymon Kłos 0833ec6489 jsdialog: use open/close instead of toggle for dropdowns
This helps us to be in sync with core especially with
problematic dropdowns like:
Sidebar in shape context -> Line Panel -> Line Width
This will close and not reopen the popup when we click outside.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I4daf90f2611f6caa922022e1cc6e248f6a62d02f
2022-06-30 13:53:55 +02:00
Rizal Muttaqin 7c45f7a468 Revise dark variant of Picture Control icon #4845
Signed-off-by: Rizal Muttaqin <riz_17_oke@yahoo.co.id>
Change-Id: I728152c67975fd297b2035d4bf102cc5c57695f1
2022-06-30 11:43:19 +02:00
Pedro Pinto Silva 0f97be5d05 Context menu: on hover, fix contrast
User a darker background for on mouseover items

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ib6dc6d2ed434d21765ab3d6bf3988dc918261281
2022-06-30 11:12:57 +02:00
Pedro Pinto Silva aad841a48f Fix padding in follow editor's entry (userListPopover)
Use the same padding as the user names and thus fixing the
alignment (vertical: checkbox vs avatars)

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I1acb8cf5e3e5dc8aad083151c9c54b38aa552d6c
2022-06-29 19:44:08 +02:00
Pedro Pinto Silva c3c37b3b71 Add following label to userListPopover (avatar list)
Until now user was reporting not fully understanding all the
features that user userListPopover offers. Namely, not knowing
that not only is possible to follow the editor (checkbox) but
that it is also possible to follow a specific user from the list

Make it easier to understand what's the current following status
by adding "Following" under the selected user name in the list

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I0beba5df06f2cc7a9a349ef8f93db6b403befb9b
2022-06-29 19:44:08 +02:00
Pedro Pinto Silva 8a5d87f679 Hide avatars list when follow editor changes status
Get rid of the popover once the user completes the action
Probably better to avoid having hanging popover (that have no
close btn) and instead close them, specially because this
one can always be re-opened at anytime from omnipresent
toolbar and without risk of triggering any additional change

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Id7946512e6c54622e3ed20b28d56178c05b18b5c
2022-06-29 19:44:08 +02:00
Pedro Pinto Silva dadffd8a76 Hide avatars list when a user entry is selected
Make sure the avatar list popover automatically gets out of the
way once the user selects an entry (follow user)

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ie83a587e4f9900ffb0d70cadbfb13cfe81d8b849
2022-06-29 19:44:08 +02:00
Pedro Pinto Silva 7a395f48a5 Avatars list: Add missing hover styles
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I6a5b215316a988ad0649982415c2d8ce6fab1212
2022-06-29 19:44:08 +02:00
Pedro Pinto Silva dbf88dda17 Use the same bg for #userListPopover and its pointing triangle
Before the triangle was getting a different bg when compared
to #userListPopover

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: If110d9e1178bedb7e858804e169689ee97a5a385
2022-06-29 19:44:08 +02:00
Pedro Pinto Silva 556220303d Fix position of avatar list
Instead of trying to re-position #userListPopover for every case
(compact view, tabbed view and rtl), use flex to align the elements
- This also fixes the positioning discrepancy of both the popover
but also the arrow (triangle)

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I32ed3e05efc51001db106f5baaf18012e87965fe
2022-06-29 19:44:08 +02:00
Szymon Kłos 081deb5090 comments: don't lose focus if is edited
When spreadsheet was opened after few seconds we received CellCursor
message.
If comment was opened end edited at that time - it dissapeared

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I15804bfa0bf9ccac03c2858184db327a978061b3
2022-06-29 11:34:47 +05:30
Andras Timar dcae5fa613 proxy.php: Special case for the remote image
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I98da25735a3b889824a72c2134c495abd26b3a05
2022-06-28 22:03:28 +02:00
Michael Meeks 8bb158eff2 deltas: hush warning.
Change-Id: I3e658709ee7069e194b1c34b5ab117a970d8153e
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-06-28 11:49:43 +01:00
Andras Timar 4a17ceb72b Fix release notes URL for 22.05
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: If98d3a8dd70a71d5d2f44ef4248ec1608382b764
2022-06-27 20:12:35 +02:00
Ihor Hordiichuk 4d8e29850b Translated using Weblate (Ukrainian)
Currently translated at 99.7% (461 of 462 strings)

Co-authored-by: Ihor Hordiichuk <igor_ck@outlook.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/uk/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I5d385e48f1ffdf5ec7be1a210489305bf3bf310f
2022-06-27 20:11:04 +02:00
Martin Srebotnjak 0b43c019ae Translated using Weblate (Slovenian)
Currently translated at 100.0% (462 of 462 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: I3f12ffbc3db15c6d07ff48cdc404b14ca2ad07f7
2022-06-27 20:11:04 +02:00
Matthaiks 811a34e851 Translated using Weblate (Polish)
Currently translated at 100.0% (462 of 462 strings)

Co-authored-by: Matthaiks <kitynska@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pl/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ia628d6b391a45059a8e860e0604beb9c35aa74b6
2022-06-27 20:11:04 +02:00
Andras Timar 6e2996fa61 Bump version to 22.05.3.1
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I22b777814c2d9272a29d6b1dc56291214a2df9c1
2022-06-27 20:10:23 +02:00
Henry Castro a3b4151e50 wsd: proxy: fix length static string
Change-Id: I4508fc3e32f4d13a1a8ae88c3e4b9abc6d724ac4
Signed-off-by: Henry Castro <hcastro@collabora.com>
2022-06-27 19:28:13 +02:00
Henry Castro 9d3ea331df wsd: proxy: ensure to forward only static files
Change-Id: I3d2333e1441b8acb63824affe8e21541afb12511
Signed-off-by: Henry Castro <hcastro@collabora.com>
2022-06-27 17:56:38 +02:00
Andras Timar 848d1bbcdb Update l10n files for Weblate
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I5f72c01c8ac275798e5f083e8c61c0b0789801ac
2022-06-27 17:26:36 +02:00
Matthaiks c5a490c3f4 Translated using Weblate (Polish)
Currently translated at 100.0% (457 of 457 strings)

Co-authored-by: Matthaiks <kitynska@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pl/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Id8013876ed314776258cadbe7c75de453031b9ac
2022-06-27 17:25:13 +02:00
Andras Timar 97884769ec Translated using Weblate (Hungarian)
Currently translated at 100.0% (457 of 457 strings)

Co-authored-by: Andras Timar <andras.timar@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/hu/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: If71b793017f38e29b8aa7ab91ced66e3b22b47d4
2022-06-27 17:25:13 +02:00
Rash419 04f81f8590 wsd: fix: use only alias_groups entries when defined
ignore wopi.storage.host entries when storage.wopi.alias_groups entry is defined in config

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I7ea73f147e283077b02bdacb37f8850f7613c0c3
2022-06-27 20:44:47 +05:30
Andras Timar 04eafaf323 Update UNO command translations
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I64502c9295197e6edf0a0d947e9dec138b7b9c05
2022-06-27 17:10:50 +02:00
Andras Timar 9edb092df1 Update UNO command list and unwind the damage of direct editing of the file
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I692b76eb795041d3068dc3ff50dfeba83034e2dd
2022-06-27 17:10:50 +02:00
Henry Castro 1ddbd9b098 wsd: proxy: replace std::map -> std::std::unordered_map
Change-Id: Ib0b78009100060973253f929b90d413dfb285936
Signed-off-by: Henry Castro <hcastro@collabora.com>
2022-06-27 16:04:32 +01:00
Henry Castro 720d6e4cd1 wsd: proxy: add missing catcher exception
Change-Id: Ie0dc798bbbac6f03dbcbc5c6c8a0415bfa18b3fd
Signed-off-by: Henry Castro <hcastro@collabora.com>
2022-06-27 16:04:32 +01:00
Henry Castro 3b57e7c1d6 wsd: proxy: simplify time_point
Change-Id: Ib974adbb32543d09d522f758db43883f29cce904
Signed-off-by: Henry Castro <hcastro@collabora.com>
2022-06-27 16:04:32 +01:00
Henry Castro bb77f09516 wsd: proxy: handle the proxy request
Change-Id: Icc46f286817fd6922d91e3865e0ad2808f2450e6
Signed-off-by: Henry Castro <hcastro@collabora.com>
2022-06-27 16:04:32 +01:00
Henry Castro c9a81af73d wsd: proxy: modify basic headers to forward
Change-Id: I5a2c9cc4b8564e2c5d8500aed2d5965b4b9e610a
Signed-off-by: Henry Castro <hcastro@collabora.com>
2022-06-27 16:04:32 +01:00
Henry Castro e814bb90cf wsd: proxy: handle cache max age
Change-Id: Id7716388ec776e1823f3d395100e75b31324b434
Signed-off-by: Henry Castro <hcastro@collabora.com>
2022-06-27 16:04:32 +01:00
Henry Castro 7ecbaa6c5a wsd: proxy: add cache response
Change-Id: I52844a744bd0028bef49b95da5a02fd33d9536fa
Signed-off-by: Henry Castro <hcastro@collabora.com>
2022-06-27 16:04:32 +01:00
Henry Castro b92ffb2625 wsd: proxy: add a callback response handler
common case, forward response to client or
socket error.

Change-Id: I7dc730e7cae7292b54ee8a6ac2a8b12a20c41fa4
Signed-off-by: Henry Castro <hcastro@collabora.com>
2022-06-27 16:04:32 +01:00
Henry Castro 92b2d9f6aa net: add "response" getter function
non constant.

Change-Id: I08c74100003f294ea5a513273507cfea548807eb
Signed-off-by: Henry Castro <hcastro@collabora.com>
2022-06-27 16:04:32 +01:00
Henry Castro 342a42997a net: add getter funtion "getUrl"
Change-Id: I23dd49f8f6dac784961395c6bb38e56d215b8387
Signed-off-by: Henry Castro <hcastro@collabora.com>
2022-06-27 16:04:32 +01:00
Henry Castro cd01244a76 wsd: proxy: add handler request function
common case, create an async link session.

Change-Id: Ie08fca3e74abb7329673a66f99cbe29cbcc417e3
Signed-off-by: Henry Castro <hcastro@collabora.com>
2022-06-27 16:04:32 +01:00
Henry Castro 79bd9e42cb wsd: proxy: add ProxyRequestHandler files
Change-Id: Ic61f70316e921ba3cb988a3b0f8f8d2c7df89cc6
Signed-off-by: Henry Castro <hcastro@collabora.com>
2022-06-27 16:04:32 +01:00
Henry Castro 39586d1631 Revert "wsd: add fetch external method"
This reverts commit 19ed2aa2b4.

Change-Id: I6b6762c0a7bf74dd358fcb7a4239abc37c92bd18
Signed-off-by: Henry Castro <hcastro@collabora.com>
2022-06-27 16:04:32 +01:00
Henry Castro df1ce42fa3 Revert "wsd: add indirect request logo image"
This reverts commit bc7f16fa5d.

Change-Id: I36ca708e61dc6a2423ddd2b74881f43f4eb97fc9
Signed-off-by: Henry Castro <hcastro@collabora.com>
2022-06-27 16:04:32 +01:00
Henry Castro 96061f910d Revert "wsd: fetch external resource in debug build, but not for unit tests"
This reverts commit a1aa61b163.

Change-Id: Ica424fc8242b239c0f3ceb2dcbff695138ad2f7e
Signed-off-by: Henry Castro <hcastro@collabora.com>
2022-06-27 16:04:32 +01:00
Henry Castro e3442e49ed Revert "serve lokit-extra-img.svg with integrator theme, too"
This reverts commit e99afdf83d.

Change-Id: I44dfd2d49d8f9fe9ab1b9bca51b58e2a04246e3b
Signed-off-by: Henry Castro <hcastro@collabora.com>
2022-06-27 16:04:32 +01:00
Marco Cecchetti 3f21f15d7a cypress test for fullscreen presentation anim spin, grow and shrink
Added test for 2 emphasis animations:
- spin
- grow and shrink

Signed-off-by: Marco Cecchetti <marco.cecchetti@collabora.com>
Change-Id: I3e5477b327e2d56776258cddf5de84617c1dc0a2
2022-06-27 16:01:30 +02:00
Andras Timar 6c6c44b73b Update l10n files for Weblate
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ic2076761f90483ed1a910fc151fcd9ab45d8e066
2022-06-27 15:50:09 +02:00
Sebastiaan Veld d1f6a55818 Translated using Weblate (Dutch)
Currently translated at 100.0% (5 of 5 strings)

Translated using Weblate (Dutch)

Currently translated at 100.0% (110 of 110 strings)

Co-authored-by: Sebastiaan Veld <sebastiaan.veld@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/android-app/nl/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ios-app/nl/
Translation: Collabora Online/Android app
Translation: Collabora Online/iOS app
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I30a8c5bd4f185a956b3ac0b31410c1bae2cd571d
2022-06-27 15:47:02 +02:00
Ashod Nakashian 697607d122 wsd: timeout on saving stuck with test
Change-Id: I66769e4e5131f60b41327ada9a6f0a45b2ee11ac
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-06-27 14:07:08 +01:00
Ashod Nakashian 71ce1a4f54 wsd: test: support filtering Kit messages
Change-Id: Ic747f805689ad9d639857f0ea8af1529433b5f11
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-06-27 14:07:08 +01:00
Ashod Nakashian bb1978770a wsd: Message supports new find and contains operations
Change-Id: Id5112dda76fe2aaa27392d59f9b8ecfa3cfabe54
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-06-27 14:07:08 +01:00
Ashod Nakashian 0f173cfa8c wsd: test: cleanup and cosmetics
Change-Id: I5c72922b1090c920710d3208ab42044b859336c0
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-06-27 14:07:08 +01:00
Ashod Nakashian ae71f8be82 wsd: test: filterSendMessage -> filterSendWebSocketMessage
Change-Id: I0254c05e12cde676de8fde99e16f7eface09dceb
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-06-27 14:07:08 +01:00
Szymon Kłos 1908d84bcb jsdialog: be sure popup overlay will not block user
Don't add multiple overlays with the same id.
Remove overlay always when it exists and we close.
Close dropdown entires by dropdown click - specific to 21.11
where popups in the core are handled differently.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ia1652434f38571defb817bfb29491ed0bd246e73
2022-06-27 15:05:28 +02:00
Szymon Kłos 9c81a240a2 jsdialog: use correct element to close popup
For toolitems with dropdowns we should toggle the button.
Use correct parent so we don't use button from other component.
Later we send toggle event to properly close the popup on the server.

example: Calc sidebar, Underline popup
Before this patch when we clicked in outside the popup it dissapeared
but app was completly blocked.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I124a41361df305931c66047a8799ce03393b67de
2022-06-27 15:05:28 +02:00
Artem 12126d7fb7 Translated using Weblate (Ukrainian)
Currently translated at 100.0% (110 of 110 strings)

Co-authored-by: Artem <artem@molotov.work>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/android-app/uk/
Translation: Collabora Online/Android app
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I2e2bd03a3285e2e43b8c6aca47c66afc96c02b0f
2022-06-27 13:23:37 +02:00
Eric bc0ea4e47b Translated using Weblate (Chinese (Simplified))
Currently translated at 63.6% (291 of 457 strings)

Co-authored-by: Eric <alchemillatruth@purelymail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/zh_Hans/
Translation: Collabora Online/Help
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ia9e0926ee5fca292a026eaa09b4d41d30f8c72bc
2022-06-27 13:23:37 +02:00
Ayhan Yalçınsoy 114bdcb36b Translated using Weblate (Turkish)
Currently translated at 100.0% (455 of 455 strings)

Co-authored-by: Ayhan Yalçınsoy <ayhanyalcinsoy@pisilinux.org>
Co-authored-by: PhD. Ayhan YALÇINSOY <ayhanyalcinsoy@pisilinux.org>
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: I22617b15f0fe476be93f4629fec1ccfa5e8fe26a
2022-06-27 13:23:37 +02:00
Sebastiaan Veld 6f4c4a3738 Translated using Weblate (Dutch)
Currently translated at 100.0% (457 of 457 strings)

Translated using Weblate (Dutch)

Currently translated at 100.0% (455 of 455 strings)

Translated using Weblate (Dutch)

Currently translated at 100.0% (5 of 5 strings)

Translated using Weblate (Dutch)

Currently translated at 100.0% (457 of 457 strings)

Translated using Weblate (Dutch)

Currently translated at 100.0% (455 of 455 strings)

Co-authored-by: Sebastiaan Veld <sebastiaan.veld@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/nl/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ios-app/nl/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/nl/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Translation: Collabora Online/iOS app
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I4ad42f81a439d04a053b18b5669ba6f42f116d7b
2022-06-27 13:23:37 +02:00
Nathan ea25a391bb Translated using Weblate (French)
Currently translated at 99.5% (453 of 455 strings)

Co-authored-by: Nathan <bonnemainsnathan@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/fr/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I7ff86a18fa35b26c29422213c2b1a6393eca029a
2022-06-27 13:23:37 +02:00
Martin Srebotnjak 42568612ac Translated using Weblate (Slovenian)
Currently translated at 100.0% (455 of 455 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: Idd9269476c7972ce031e6333366ab88603886aee
2022-06-27 13:23:37 +02:00
SC 4b937f9dcc Translated using Weblate (Portuguese)
Currently translated at 100.0% (455 of 455 strings)

Co-authored-by: SC <lalocas@protonmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pt/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I9d36b85abeff7adffcc0af86d728142320a7dcb6
2022-06-27 13:23:37 +02:00
Mathieu B e40862a5ad Translated using Weblate (French)
Currently translated at 98.2% (447 of 455 strings)

Co-authored-by: Mathieu B <mathieu.bousquet2@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/fr/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I72f749e51cf5ed134f975ce8b456ba5f51790964
2022-06-27 13:23:37 +02:00
Ihor Hordiichuk fbe8a51468 Translated using Weblate (Ukrainian)
Currently translated at 100.0% (455 of 455 strings)

Co-authored-by: Ihor Hordiichuk <igor_ck@outlook.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/uk/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ie74775208b6167e846c9371973068bfe1082faa4
2022-06-27 13:23:37 +02:00
Matthaiks f5bd60ea34 Translated using Weblate (Polish)
Currently translated at 100.0% (457 of 457 strings)

Translated using Weblate (Polish)

Currently translated at 100.0% (455 of 455 strings)

Co-authored-by: Matthaiks <kitynska@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/pl/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pl/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I0cb02b565a19abbb36b5c09f665a045cccbd1227
2022-06-27 13:23:37 +02:00
Andras Timar a0d779e16c Translated using Weblate (Hungarian)
Currently translated at 100.0% (455 of 455 strings)

Co-authored-by: Andras Timar <andras.timar@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/hu/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I12b393379d7a8268701c1d7699f356a2e8e35adb
2022-06-27 13:23:36 +02:00
Yaron Shahrabani 7d98c8a4de Translated using Weblate (Hebrew)
Currently translated at 100.0% (455 of 455 strings)

Translated using Weblate (Hebrew)

Currently translated at 99.7% (454 of 455 strings)

Co-authored-by: Yaron Shahrabani <sh.yaron@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/he/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I492efa1e1594cb3aeb663818a61dd26f9f2dbf95
2022-06-27 13:23:36 +02:00
Rob Pearson 68f6de23d6 Translated using Weblate (English (South Africa))
Currently translated at 100.0% (455 of 455 strings)

Translated using Weblate (English (New Zealand))

Currently translated at 100.0% (455 of 455 strings)

Translated using Weblate (English (United Kingdom))

Currently translated at 100.0% (455 of 455 strings)

Translated using Weblate (English (Australia))

Currently translated at 100.0% (455 of 455 strings)

Co-authored-by: Rob Pearson <rob.dunedin@gmail.com>
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/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I043410200c00fc39d34f06bf30bad5ee61e9ea7d
2022-06-27 13:23:36 +02:00
Szymon Kłos 896f5b9ce8 notebookbar: unify color control in all components
Keep in sync colors in sidebar and notebookbar when
we change one of them.

Followup for
    commit 13ef21aa1e
    notebookbar: unify color control with core

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ia8af727c6ba6b5b32a644ff070954c9ada584a24
2022-06-27 13:03:45 +02:00
Pedro Pinto Silva 82e9348609 Calc: formulabar item adress fix padding
Use instead logical properties

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I162f18a0249cc6a95c81418677bd03d68d9119d6
2022-06-24 21:23:25 +02:00
Pedro Pinto Silva 8f0f1c700d Calc: address bar, remove w2ui break
unclutter formula bar surrouding elements by removing the visual
break and instead add padding. Plus: we can now remove CSS
rules that were targetting that break's id

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I4a9990a5709918d7cacfac2ef41b91281f9af54a
2022-06-24 21:23:25 +02:00
Pedro Pinto Silva 182e4ce9fc Formula bar's input address: add missing border property
This fixes a odd behaviour present on chrome based browsers
where the adress input (current cell) was being rendered
with a thicker border and with emboss style due to browsers'
default values

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ib5ab745ab45415e86a2976d537b5766a72a136d3
2022-06-24 21:23:25 +02:00
Szymon Kłos b2d8fc620a Avoid TypeError by not using undefined function
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I6b2fc565f33169eca575f59a8a4b2ce398588113
2022-06-24 17:18:28 +05:30
Szymon Kłos bbd63374f3 Don't focus map on .uno:CellCursor message when widget is focused
Just after we opened spreadsheet and opened font list - it was
closed after some seconds due to focus change caused by
.uno:CellCursor update.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ifabde00163567ab7d4f3f8359d58b4251fff5ec3
2022-06-24 17:18:28 +05:30
Szymon Kłos 13ef21aa1e notebookbar: unify color control with core
in desktop case color widget should show the latest selected
color not current one. split the button into arrow with dropdown
and "last color" button (icon)

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I07fcc94d69e14b030cf9f1bfe3ae50f0df333ec7
2022-06-24 12:45:16 +02:00
andreas kainz 4e933cea51 mobilewizard.css #fontsizecombobox.mobile-wizard only
the css rule for #fontsizecombobox at file
mobilewizard.css
change also the behaviour at desktop sidebar
so added .mobile-wizard and than the rule
was for mobile only.

Signed-off-by: andreas kainz <kainz.a@gmail.com>
Change-Id: I704857bca49556abebca018ef7a284c7b2159530
2022-06-24 10:05:48 +02:00
Szymon Kłos 8cd4bbd8b9 jsdialog: don't focus containers
Be sure we focus active part of a widget. We also require
active eleme3nts to have unique ids assigned so we don't
lose focus after we update the widget.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Iaf741f4753022b7f4da92184d576623dd0300adc
2022-06-24 09:38:56 +02:00
Szymon Kłos b71c542f15 jsdialog: listbox and scrollwindow are not containers which need additional parent
This helps to keep id unique and process events correctly.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I35997ed40d09de73a7451b54243c54b041fd9c34
2022-06-24 09:38:56 +02:00
Ashod Nakashian 79f122c552 wsd: test: capture the log from unithttplib and display on failure
Change-Id: Iea7ae1c6ff129ea13aac89929f47d61a9e82eb80
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-06-24 07:08:55 +01:00
Ashod Nakashian 67c3b9548d wsd: http: support shutting down the socket
Change-Id: I9559a126048abd79db37579b5a9ca7282b0485e5
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-06-24 07:08:55 +01:00
Ashod Nakashian 48b510d4f4 wsd: test: fix heap-use-after-free
In HttpRequestTests::test500GetStatuses, since we reused
the http::Session without removing from SocketPoll,
it is possible for the poll thread to access the
Session object while we create a new request, where
we replace its Response and Socket members.

To avoid that, we can try to remove the http::Session
instance from the SocketPoll. Alternatively, we
can create a new one for each request, which is
what we do here.

Below is the results of ASan, for the record.

==949494==ERROR: AddressSanitizer: heap-use-after-free on address 0x61700005afe0 at pc 0x55dc0c092c75 bp 0x7f8b539e5a10 sp 0x7f8b539e5a08
READ of size 4 at 0x61700005afe0 thread T10 (HttpAsyncReqPol)
    #0 0x55dc0c092c74 in http::Response::logPrefix(std::ostream&) const /home/ash/prj/lo/online/test/../net/HttpRequest.hpp:835:66
    #1 0x55dc0c08f499 in http::Response::readData(char const*, long) /home/ash/prj/lo/online/test/../net/HttpRequest.cpp:641:5
    #2 0x55dc0c0998c9 in http::Session::handleIncomingMessage(SocketDisposition&) /home/ash/prj/lo/online/test/../net/HttpRequest.hpp:1248:41
    #3 0x55dc0c0f0c3b in StreamSocket::handlePoll(SocketDisposition&, std::chrono::time_point<std::chrono::_V2::steady_clock, std::chrono::duration<long, std::ratio<1l, 1000000000l> > >, int) /home/ash/prj/lo/online/test/../net/Socket.hpp:1339:33
    #4 0x55dc0c0b092d in SocketPoll::poll(long) /home/ash/prj/lo/online/test/../net/Socket.cpp:444:34
    #5 0x55dc0c10407c in SocketPoll::poll(std::chrono::duration<long, std::ratio<1l, 1000000l> >) /home/ash/prj/lo/online/test/../net/Socket.hpp:691:61
    #6 0x55dc0c10407c in SocketPoll::pollingThread() /home/ash/prj/lo/online/test/../net/Socket.hpp:648:13
    #7 0x55dc0c0ac445 in SocketPoll::pollingThreadEntry() /home/ash/prj/lo/online/test/../net/Socket.cpp:299:9
    #8 0x55dc0c12b6b9 in void std::__invoke_impl<void, void (SocketPoll::*)(), SocketPoll*>(std::__invoke_memfun_deref, void (SocketPoll::*&&)(), SocketPoll*&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/bits/invoke.h:73:14
    #9 0x55dc0c12b590 in std::__invoke_result<void (SocketPoll::*)(), SocketPoll*>::type std::__invoke<void (SocketPoll::*)(), SocketPoll*>(void (SocketPoll::*&&)(), SocketPoll*&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/bits/invoke.h:95:14
    #10 0x55dc0c12b574 in void std:🧵:_Invoker<std::tuple<void (SocketPoll::*)(), SocketPoll*> >::_M_invoke<0ul, 1ul>(std::_Index_tuple<0ul, 1ul>) /usr/bin/../lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/thread:264:13
    #11 0x55dc0c12b463 in std:🧵:_Invoker<std::tuple<void (SocketPoll::*)(), SocketPoll*> >::operator()() /usr/bin/../lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/thread:271:11
    #12 0x55dc0c12b463 in std:🧵:_State_impl<std:🧵:_Invoker<std::tuple<void (SocketPoll::*)(), SocketPoll*> > >::_M_run() /usr/bin/../lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/thread:215:13
    #13 0x7f8b5a08cde3  (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0xd6de3) (BuildId: c90e6603c7cdf84713cd445700a575d3ea446d9b)
    #14 0x7f8b59e4c608 in start_thread /build/glibc-SzIz7B/glibc-2.31/nptl/pthread_create.c:477:8
    #15 0x7f8b59d44132 in __clone /build/glibc-SzIz7B/glibc-2.31/misc/../sysdeps/unix/sysv/linux/x86_64/clone.S:95

0x61700005afe0 is located 736 bytes inside of 744-byte region [0x61700005ad00,0x61700005afe8)
freed by thread T0 here:
LLVMSymbolizer: error reading file: No such file or directory
    #0 0x55dc0bfe43dd in operator delete(void*) (/home/ash/prj/lo/online/test/unithttplib+0x20d3dd) (BuildId: 7954f6bea5efa6c39ca02e7033c014e826b9f5fd)
    #1 0x55dc0c1fe168 in std::_Sp_counted_ptr<http::Response*, (__gnu_cxx::_Lock_policy)2>::_M_dispose() /usr/bin/../lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/bits/shared_ptr_base.h:380:9
    #2 0x55dc0c033768 in std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::_M_release() /usr/bin/../lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/bits/shared_ptr_base.h:158:6
    #3 0x55dc0c0335d5 in std::__shared_count<(__gnu_cxx::_Lock_policy)2>::~__shared_count() /usr/bin/../lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/bits/shared_ptr_base.h:733:11
    #4 0x55dc0c1f972c in std::__shared_ptr<http::Response, (__gnu_cxx::_Lock_policy)2>::~__shared_ptr() /usr/bin/../lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/bits/shared_ptr_base.h:1183:31
    #5 0x55dc0c1f972c in std::enable_if<__sp_is_constructible<http::Response, http::Response>::value, void>::type std::__shared_ptr<http::Response, (__gnu_cxx::_Lock_policy)2>::reset<http::Response>(http::Response*) /usr/bin/../lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/bits/shared_ptr_base.h:1309:4
    #6 0x55dc0c1f972c in http::Session::newRequest(http::Request) /home/ash/prj/lo/online/test/../net/HttpRequest.hpp:1174:19
    #7 0x55dc0c1ee08b in http::Session::asyncRequest(http::Request const&, SocketPoll&) /home/ash/prj/lo/online/test/../net/HttpRequest.hpp:1079:9
    #8 0x55dc0c1b718f in HttpRequestTests::test500GetStatuses() /home/ash/prj/lo/online/test/HttpRequestTests.cpp:515:9
    #9 0x55dc0c219ec9 in void std::__invoke_impl<void, void (HttpRequestTests::*&)(), HttpRequestTests*&>(std::__invoke_memfun_deref, void (HttpRequestTests::*&)(), HttpRequestTests*&) /usr/bin/../lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/bits/invoke.h:73:14
    #10 0x55dc0c219de0 in std::__invoke_result<void (HttpRequestTests::*&)(), HttpRequestTests*&>::type std::__invoke<void (HttpRequestTests::*&)(), HttpRequestTests*&>(void (HttpRequestTests::*&)(), HttpRequestTests*&) /usr/bin/../lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/bits/invoke.h:95:14
    #11 0x55dc0c219dbc in void std::_Bind<void (HttpRequestTests::* (HttpRequestTests*))()>::__call<void, 0ul>(std::tuple<>&&, std::_Index_tuple<0ul>) /usr/bin/../lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/functional:416:11
    #12 0x55dc0c219d47 in void std::_Bind<void (HttpRequestTests::* (HttpRequestTests*))()>::operator()<void>() /usr/bin/../lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/functional:499:17
    #13 0x55dc0c219d47 in void std::__invoke_impl<void, std::_Bind<void (HttpRequestTests::* (HttpRequestTests*))()>&>(std::__invoke_other, std::_Bind<void (HttpRequestTests::* (HttpRequestTests*))()>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/bits/invoke.h:60:14
    #14 0x55dc0c219d47 in std::enable_if<is_invocable_r_v<void, std::_Bind<void (HttpRequestTests::* (HttpRequestTests*))()>&>, void>::type std::__invoke_r<void, std::_Bind<void (HttpRequestTests::* (HttpRequestTests*))()>&>(std::_Bind<void (HttpRequestTests::* (HttpRequestTests*))()>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/bits/invoke.h:110:2
    #15 0x55dc0c219a72 in std::_Function_handler<void (), std::_Bind<void (HttpRequestTests::* (HttpRequestTests*))()> >::_M_invoke(std::_Any_data const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/bits/std_function.h:291:9
    #16 0x55dc0c09776b in std::function<void ()>::operator()() const /usr/bin/../lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/bits/std_function.h:622:14
    #17 0x55dc0c219713 in CppUnit::TestCaller<HttpRequestTests>::runTest() /usr/include/cppunit/TestCaller.h:175:7
    #18 0x7f8b5ab23614 in CppUnit::TestCaseMethodFunctor::operator()() const (/usr/lib/x86_64-linux-gnu/libcppunit-1.15.so.1+0x24614) (BuildId: 4329d55843a6cf32b3e88d4d9aec95035315b163)
    #19 0x7ffdc354a41f  ([stack]+0x2b41f)

previously allocated by thread T0 here:
    #0 0x55dc0bfe3b7d in operator new(unsigned long) (/home/ash/prj/lo/online/test/unithttplib+0x20cb7d) (BuildId: 7954f6bea5efa6c39ca02e7033c014e826b9f5fd)
    #1 0x55dc0c1f969c in http::Session::newRequest(http::Request) /home/ash/prj/lo/online/test/../net/HttpRequest.hpp:1174:25
    #2 0x55dc0c1ee08b in http::Session::asyncRequest(http::Request const&, SocketPoll&) /home/ash/prj/lo/online/test/../net/HttpRequest.hpp:1079:9
    #3 0x55dc0c1b718f in HttpRequestTests::test500GetStatuses() /home/ash/prj/lo/online/test/HttpRequestTests.cpp:515:9
    #4 0x55dc0c219ec9 in void std::__invoke_impl<void, void (HttpRequestTests::*&)(), HttpRequestTests*&>(std::__invoke_memfun_deref, void (HttpRequestTests::*&)(), HttpRequestTests*&) /usr/bin/../lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/bits/invoke.h:73:14
    #5 0x55dc0c219de0 in std::__invoke_result<void (HttpRequestTests::*&)(), HttpRequestTests*&>::type std::__invoke<void (HttpRequestTests::*&)(), HttpRequestTests*&>(void (HttpRequestTests::*&)(), HttpRequestTests*&) /usr/bin/../lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/bits/invoke.h:95:14
    #6 0x55dc0c219dbc in void std::_Bind<void (HttpRequestTests::* (HttpRequestTests*))()>::__call<void, 0ul>(std::tuple<>&&, std::_Index_tuple<0ul>) /usr/bin/../lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/functional:416:11
    #7 0x55dc0c219d47 in void std::_Bind<void (HttpRequestTests::* (HttpRequestTests*))()>::operator()<void>() /usr/bin/../lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/functional:499:17
    #8 0x55dc0c219d47 in void std::__invoke_impl<void, std::_Bind<void (HttpRequestTests::* (HttpRequestTests*))()>&>(std::__invoke_other, std::_Bind<void (HttpRequestTests::* (HttpRequestTests*))()>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/bits/invoke.h:60:14
    #9 0x55dc0c219d47 in std::enable_if<is_invocable_r_v<void, std::_Bind<void (HttpRequestTests::* (HttpRequestTests*))()>&>, void>::type std::__invoke_r<void, std::_Bind<void (HttpRequestTests::* (HttpRequestTests*))()>&>(std::_Bind<void (HttpRequestTests::* (HttpRequestTests*))()>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/bits/invoke.h:110:2
    #10 0x55dc0c219a72 in std::_Function_handler<void (), std::_Bind<void (HttpRequestTests::* (HttpRequestTests*))()> >::_M_invoke(std::_Any_data const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/bits/std_function.h:291:9
    #11 0x55dc0c09776b in std::function<void ()>::operator()() const /usr/bin/../lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/bits/std_function.h:622:14
    #12 0x55dc0c219713 in CppUnit::TestCaller<HttpRequestTests>::runTest() /usr/include/cppunit/TestCaller.h:175:7
    #13 0x7f8b5ab23614 in CppUnit::TestCaseMethodFunctor::operator()() const (/usr/lib/x86_64-linux-gnu/libcppunit-1.15.so.1+0x24614) (BuildId: 4329d55843a6cf32b3e88d4d9aec95035315b163)
    #14 0x7ffdc354a41f  ([stack]+0x2b41f)

Thread T10 (HttpAsyncReqPol) created by T0 here:
    #0 0x55dc0bf922bc in __interceptor_pthread_create (/home/ash/prj/lo/online/test/unithttplib+0x1bb2bc) (BuildId: 7954f6bea5efa6c39ca02e7033c014e826b9f5fd)
    #1 0x7f8b5a08d0a8 in std:🧵:_M_start_thread(std::unique_ptr<std:🧵:_State, std::default_delete<std:🧵:_State> >, void (*)()) (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0xd70a8) (BuildId: c90e6603c7cdf84713cd445700a575d3ea446d9b)
    #2 0x55dc0c0aa467 in SocketPoll::startThread() /home/ash/prj/lo/online/test/../net/Socket.cpp:238:23
    #3 0x55dc0c1b57b3 in HttpRequestTests::test500GetStatuses() /home/ash/prj/lo/online/test/HttpRequestTests.cpp:482:16
    #4 0x55dc0c219ec9 in void std::__invoke_impl<void, void (HttpRequestTests::*&)(), HttpRequestTests*&>(std::__invoke_memfun_deref, void (HttpRequestTests::*&)(), HttpRequestTests*&) /usr/bin/../lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/bits/invoke.h:73:14
    #5 0x55dc0c219de0 in std::__invoke_result<void (HttpRequestTests::*&)(), HttpRequestTests*&>::type std::__invoke<void (HttpRequestTests::*&)(), HttpRequestTests*&>(void (HttpRequestTests::*&)(), HttpRequestTests*&) /usr/bin/../lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/bits/invoke.h:95:14
    #6 0x55dc0c219dbc in void std::_Bind<void (HttpRequestTests::* (HttpRequestTests*))()>::__call<void, 0ul>(std::tuple<>&&, std::_Index_tuple<0ul>) /usr/bin/../lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/functional:416:11
    #7 0x55dc0c219d47 in void std::_Bind<void (HttpRequestTests::* (HttpRequestTests*))()>::operator()<void>() /usr/bin/../lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/functional:499:17
    #8 0x55dc0c219d47 in void std::__invoke_impl<void, std::_Bind<void (HttpRequestTests::* (HttpRequestTests*))()>&>(std::__invoke_other, std::_Bind<void (HttpRequestTests::* (HttpRequestTests*))()>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/bits/invoke.h:60:14
    #9 0x55dc0c219d47 in std::enable_if<is_invocable_r_v<void, std::_Bind<void (HttpRequestTests::* (HttpRequestTests*))()>&>, void>::type std::__invoke_r<void, std::_Bind<void (HttpRequestTests::* (HttpRequestTests*))()>&>(std::_Bind<void (HttpRequestTests::* (HttpRequestTests*))()>&) /usr/bin/../lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/bits/invoke.h:110:2
    #10 0x55dc0c219a72 in std::_Function_handler<void (), std::_Bind<void (HttpRequestTests::* (HttpRequestTests*))()> >::_M_invoke(std::_Any_data const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/bits/std_function.h:291:9
    #11 0x55dc0c09776b in std::function<void ()>::operator()() const /usr/bin/../lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/bits/std_function.h:622:14
    #12 0x55dc0c219713 in CppUnit::TestCaller<HttpRequestTests>::runTest() /usr/include/cppunit/TestCaller.h:175:7
    #13 0x7f8b5ab23614 in CppUnit::TestCaseMethodFunctor::operator()() const (/usr/lib/x86_64-linux-gnu/libcppunit-1.15.so.1+0x24614) (BuildId: 4329d55843a6cf32b3e88d4d9aec95035315b163)
    #14 0x7ffdc354a41f  ([stack]+0x2b41f)

SUMMARY: AddressSanitizer: heap-use-after-free /home/ash/prj/lo/online/test/../net/HttpRequest.hpp:835:66 in http::Response::logPrefix(std::ostream&) const
Shadow bytes around the buggy address:
  0x0c2e800035a0: fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd
  0x0c2e800035b0: fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd
  0x0c2e800035c0: fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd
  0x0c2e800035d0: fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd
  0x0c2e800035e0: fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd
=>0x0c2e800035f0: fd fd fd fd fd fd fd fd fd fd fd fd[fd]fa fa fa
  0x0c2e80003600: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa
  0x0c2e80003610: fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd
  0x0c2e80003620: fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd
  0x0c2e80003630: fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd
  0x0c2e80003640: fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd
Shadow byte legend (one shadow byte represents 8 application bytes):
  Addressable:           00
  Partially addressable: 01 02 03 04 05 06 07
  Heap left redzone:       fa
  Freed heap region:       fd
  Stack left redzone:      f1
  Stack mid redzone:       f2
  Stack right redzone:     f3
  Stack after return:      f5
  Stack use after scope:   f8
  Global redzone:          f9
  Global init order:       f6
  Poisoned by user:        f7
  Container overflow:      fc
  Array cookie:            ac
  Intra object redzone:    bb
  ASan internal:           fe
  Left alloca redzone:     ca
  Right alloca redzone:    cb
==949494==ABORTING

Change-Id: I5e1539c3adbab9b5027d84cc1dbab4b90271c458
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-06-24 07:08:55 +01:00
Ashod Nakashian f69f1c720d wsd: test: HttpRequestTests timeout cleanup
Change-Id: I57facd1a79a95445c7f506a766b8c485361f2bc4
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-06-24 07:08:55 +01:00
Rash419 c3e30b88be fix: CheckFileInfo - HideSaveOption, HideExportOption and HidePrintOption do not work in NB
fix: after switching to Notebookbar view and back again to Classic View; the Save icon reappears.

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I8fda18a9148c679209f0de99b80526393a965720
2022-06-23 21:14:34 +05:30
andreas kainz 25c0c47a12 Sidebar .ui-expander-content have left and right same padding
Signed-off-by: andreas kainz <kainz.a@gmail.com>
Change-Id: Ifbeecbaef00963498ac3a1bafd2a42075856d9ca
2022-06-23 10:47:33 +02:00
Michael Meeks 91b20f6448 delta: include canonical-view-id into the TileLocation.
This avoids problems with watermarking cross-talking betwene view.

Change-Id: Ifecf098423451bf7de3827dfdf9fdc078a06c5c9
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-06-22 09:16:45 +01:00
Michael Meeks 88f84a6e2d re-factor TileLocation into its own struct.
Change-Id: Iaef52359114c14dbfbca683393ea91d09635be72
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-06-22 09:16:45 +01:00
Szymon Kłos ee996454c8 jsdialog: formulabar: handle tab key
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I5c6e679ebaa4b3d97553e212224c76583ea84fbd
2022-06-21 16:40:05 +02:00
Rash419 5ff8a38473 css: improve contentcontrol datepicker
Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: Ib03cd613672089a29ef0226813bca54a0e6b0f81
2022-06-21 18:47:55 +05:30
Szymon Kłos 1d82b32ab4 jsdialog: handle grab_focus action
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I5f53ffd5c3fbee03d1fcbbc47e110212e7882ffd
2022-06-21 12:41:20 +02:00
Pedro Pinto Silva 4b5aa6b4ca Fix images' alignment within pushbutton control, add flex classes
Bug
- pushbuttons with images get misaligned. Namely the inner image that
it's position well. Visible in some places within the sidebar
impress, calc:
https://archive.org/download/bug-pushbutton-with-img-alignments/bug-pushbutton-with-img-alignments.png

Fix
- Pushbuttons with images are now classified with .has-img and inherit
the respective global flexbox CSS classes.
  - Add global flex box CSS classes so we can avoid code duplication
- Also make sure other pushbuttons with image don't butchered with this
change (e.g. calc > pivot table dialog)

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ie37680eb02c15417c505402074bbe01d302910cb
2022-06-21 10:33:53 +02:00
Michael Meeks 4bcba760d7 deltas: assert that we don't have a delta with no keyframe.
Cleanup some debug too.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: Id7eff125f7906be1c31344e41015c9ba49bf1858
2022-06-16 19:12:05 +01:00
Michael Meeks dc4b254c13 deltas: bump per-user cache size to account for deltas.
Change-Id: I35ade1f056a2ee09cebc9d13bb89fc9d2713c621
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-06-16 19:12:05 +01:00
Michael Meeks 3f13cd7fc6 delta: saveDataToCache should handle the no-cache case properly.
We need to return a real Tile for _dontCache, and an empty one
if we want to ignore the canceltiles race.

Change-Id: Iad57fc1e3a2718aec34c0eeff97d5f58e215d174
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-06-16 19:12:05 +01:00
Michael Meeks 892474104b delta: document the function of the version property.
It ensures that we pair un-subscription for a tile change with the
request - since we can have multiple tile requests in flight at a
given time.

Change-Id: I3a00ff7f43fc8ef203b8e38c169938438286d75f
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-06-16 19:12:05 +01:00
Michael Meeks e8caabbc0b remove unused method.
Change-Id: I79839a819426a3f0eff9db4fa3864512de0e95f0
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-06-16 19:12:05 +01:00
Michael Meeks 7ff4c9ffcd delta: don't clear keyframes from the cache that have deltas coming.
These will get newer wids later of course.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I906f47255854eb065d41e629508867ffa6e9f953
2022-06-16 19:12:05 +01:00
Michael Meeks 3f17e5e502 delta: force a keyframe render we don't have a tile in the cache.
Change-Id: I4d553830b3f39fa33b509a2ad347cb22cd9d237e
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-06-16 19:12:05 +01:00
Rash419 b27cf37801 contentcontrol: use polygon to draw indicator
Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: Id6ffb0de53f3fa386ffe13c7680b48d8e104bc8b
2022-06-16 17:33:38 +02:00
Rash419 22e168031d mobile: contentcontrol improvements
add: form icon in insert menu
fix: datecontentcontrol icon in form menu, jsdialog: options for all content control types were shown

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: Id3f425f3a80cb09f58b3f83224bb19ebb365e8f3
2022-06-16 17:33:38 +02:00
Michael Meeks d8482ea7d6 Catch a second location to de-duplicate JS tilecombined requests.
Change-Id: Iec8d5a76b7add535a640aa5940fba50fea03527f
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-06-16 14:00:00 +01:00
Michael Meeks b3f654e940 check for duplicates should not itself assert.
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: Idac84099ef3f857367ee508a5e64bb2297b0e451
2022-06-16 14:00:00 +01:00
Michael Meeks 04a8462043 deltas: debug dump the state.
Change-Id: Id35f68a108c151de5d2c27800510d17de60faa4c
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-06-16 10:48:55 +01:00
Michael Meeks bef4b1ec5a delta: have own delta cache mutex, and size cache for session count.
Change-Id: I1f970a5f9045df11444f6fec8ce7e8eeb0a71bf5
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-06-16 10:48:55 +01:00
Michael Meeks 935715309a deltas: switch cache to unordered_set and manage size & lifecycle.
We should have a larger delta-cache with more users eg.

Change-Id: Idc3075636df2e7705950fcf6762e40546792a285
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-06-16 10:48:55 +01:00
Pranam Lashkari 123f9b5c41 introduce user stats
now logs can provide stats for the users each time they access a document

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I75d1637864b97c553285bc5d1850a8f75cd50d9f
2022-06-16 09:39:14 +01:00
Pranam Lashkari e9d441c490 introduce unconditional logging method
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I590ade9d6687a8b0d364a257f107559db4d81b03
2022-06-16 09:39:14 +01:00
Michael Meeks 3d2418d5f8 Ensure splitpanes cannot generate multiple tiles in a tilecombine.
Change-Id: Ic2e431c82c1a0875503064d4c01efc0ddbb41259
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-06-15 18:34:58 +01:00
Michael Meeks 25de4d898a Elide duplicate tiles in tilecombine at the perimiter of coolwsd.
Needs a run-time check to avoid breaking concurrency assumption
during compression.

Change-Id: Icc959693e19b3506497eb1aa198477445085aeb8
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-06-15 18:34:58 +01:00
Michael Meeks 05f9f2aaff elide duplicate tiles in JS created tilecombine requests.
Change-Id: Iefce276c2a44159d8f177e31dcaae8987343eacd
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-06-15 18:34:58 +01:00
andreas kainz 365b70b0bc Sidebar padding-inline instead of -left -right for RTL support
Signed-off-by: andreas kainz <kainz.a@gmail.com>
Change-Id: Ib694d2acf60b2f0058f5ef0633e19aa086498c77
2022-06-15 17:19:45 +02:00
Szymon Kłos 822bc435c3 jsdialog: formulabar: handle keyboard arrows, multiline selection
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ia65f49d578cf0a2a184ab583fb7a9694918e6e93
2022-06-15 13:40:29 +03:00
Szymon Kłos 79cc9ae23f jsdialog: formulabar: send key modifierwith all key events
This will allow to create multiline cell content using Shift+Enter

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ie1b8497063fc59e29d010c62724b88c4ad8972a0
2022-06-15 13:40:29 +03:00
Gökay Şatır fe8500681c wsd: add query parameter product name & version.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: Ia8dbc16024e8f9970d45df16550328fa8c196563
2022-06-15 11:06:40 +02:00
Rash419 45891d0ded wsd: alias: handle a case when regex is added in host tag of alias_group
if host has regex and group has no aliases, when we receive first request from host pattern we considered it as original host and all the host following first request which matches the pattern are considered as aliases
for example:
<group>
	<host>https://.*:80</host>
</group>
if we receives first request from asustuf then behaviour will similar to the following config:
<group>
	<host>https://asustuf:80</host>
	<alias>https://.*:80</alias>
</group>

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I70fb91a4bb7bf38ed79db9efd9fe4bc46db325e1
2022-06-15 11:04:36 +05:30
Pedro Pinto Silva 31b67e9b93 NB: Form tab: Move Properties to last position
Content control properties is not always an active button, it only
takes affect once a content control is selected thus best to place it
at the end.

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ie13bdc81a84730380d8462241661775d1abd1699
2022-06-15 11:04:18 +05:30
Pedro Pinto Silva f5e7f6b247 NB: promote all toolitem elements in form tab
Currently there is no plans of adding more content controls. In total
there are 5 content controls toolitems and one for accessing its
properties.
 - Make it easier to pick content controls by increase toolitem size
 (bigtoolitem)

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I86d8c1025cb4ff82fe45654076800057e17e9ea6
2022-06-15 11:04:18 +05:30
Pedro Pinto Silva 9b7970a441 Fix missing icon date picker for content control via iconURLAliases
No need to duplicate the icon, use the existent one.

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I22ad3f99778051d6b663207ad229e808a34c0e3e
2022-06-15 11:04:18 +05:30
Rash419 1efbf290dc contentcontrol: mobile added content control option in form menu
rich text, checkbox , dropdown, picture picker work correctly now
css: fix: MacroSelectorDialog rules applied on normal jsdialog

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: Ib6db879e968d45604d737cc5ee2b522fa45218af
2022-06-15 11:04:18 +05:30
Rash419 b54466a97b contentcontrol: updated protocol.txt
Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I1c2b7b446d72782d987ee3a952731b78fcfc4caf
2022-06-15 11:04:18 +05:30
Rash419 080a46d2fa browser: contentcontrol: add date type
add uno command to insert date in form tab
renamed 'Content Control Properties' -> 'Properties'

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: Ib4a439cd349bb79430d590e0b80c825372c629d3
2022-06-15 11:04:18 +05:30
Szymon Kłos 8d238eb990 sidebar: css: calc area, line, shadow, possize panels
context: shape

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I791c766a91d4ce50fc2f27e4dfe6adc01583a64e
2022-06-14 22:46:23 +02:00
Szymon Kłos 4d622e044d sidebar: css: calc number format and alignment panels
- removed not needed direct position rules

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I462b04bc64dbcf989f04cbc36c3ecc11be08113b
2022-06-14 22:46:23 +02:00
Mert Tumer 58ebdb5041 LanguageTool Grammar checker settings to enable it
Signed-off-by: Mert Tumer <mert.tumer@collabora.com>
Change-Id: Ifc494d5e9f17fc4459556ae809ef3ca12a6b7307
2022-06-14 17:14:26 +03:00
Szymon Kłos 52e703e67a notebookbar: retry to activate when needed
Don't generate spam in the console log with warnings about not
activated notebookbar in apps where we don't use any welded widgets.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I48c2d843752058923242d6678f08ec0791d08e4c
2022-06-14 10:49:52 +03:00
Szymon Kłos 87e0280a43 Allow to send view mode command when dialog is opened
We automatically send notebookbar activation command in some cases.
Allow this command when dialog is opened and don't blink.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Iac068cfca49ce6dbfe241bde752a475560d3445e
2022-06-14 10:49:52 +03:00
Andras Timar e99afdf83d serve lokit-extra-img.svg with integrator theme, too
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ia79a607ba244df56c3db1892376dce2372d127df
2022-06-13 14:23:56 +02:00
andreas kainz 7c3bd732d5 Impress add context: MasterPage
Fix #4808 by add SlideMasterPage to impress view tab
and add a context related MasterPage tab.

Update the icons to use the master*.svg colibre icons from core

Signed-off-by: andreas kainz <kainz.a@gmail.com>
Change-Id: Ibbd24d1c20a48e26591d217311c5989794aa841e
2022-06-13 11:20:11 +02:00
Szymon Kłos b371ff23ff cursor: hide current not all
when other view moved cursor outside out view - all of
them were hidden because we used selector for all the
elements matching cursor class - instead of current
instance

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: If97606f33e44ce59f747ad0b015048deacbe8657
2022-06-13 09:02:24 +02:00
Szymon Kłos abff2c7388 jsdialog: combobox is not a container type
add combobox to list of non-containers and cleanup

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I657038c960d7c606a0e437b0c24e74e83f2c2b00
2022-06-10 15:35:42 +02:00
Ashod Nakashian 758ae15e5a wsd: test: add multi-language views test
Change-Id: Idbe1ab22caa4218ead6a8598f6b2990383291dbd
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-06-10 13:14:35 +01:00
Ashod Nakashian 7e7c2131cf wsd: test: support loading arbitrary docs in wopi tests
Change-Id: I8e707d16b456eb39ac134577db24fe4120da4b2c
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-06-10 13:14:35 +01:00
Ashod Nakashian ecda47edd9 wsd: test: handle save notifications in tests
Change-Id: Ic6b0abcd2ad2f2a895ff81acaf875147d9990c8b
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-06-10 13:14:35 +01:00
Ashod Nakashian 26f7d95f67 wsd: test: WopiTestServer now loads contents from test files
Change-Id: I4daf14d01654517e18145500ed01099e350e63ac
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-06-10 13:14:35 +01:00
Ashod Nakashian 5095da017a wsd: test: simplify UnitWOPISlow
Change-Id: Ibb75531284654aa185a21820b1701ac5282064c2
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-06-10 13:14:35 +01:00
Ashod Nakashian cb6383fae2 wsd: test: simplify and unify parsing of test URI
Change-Id: Idf26ac62695a1cfe067a9ddecc1cda7d07891c82
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-06-10 13:14:35 +01:00
Ashod Nakashian 6a01fc9bb7 wsd: test: refactor WopiTestServer
Change-Id: I7a3219f09250109f936cfadfe559c7f064ee0f94
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-06-10 13:14:35 +01:00
Ashod Nakashian 2be50b7e17 wsd: test: refactor test filename
Change-Id: Ida6c181afc98928e6a5dca5b6928f900668a5ea7
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-06-10 13:14:35 +01:00
Ashod Nakashian 9fee4ef9fa wsd: test: make WopiTestServer and UnitWOPISlow consistent
Change-Id: Ifcf36de81a2a500c6c0ef128901c53b540345dc9
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-06-10 13:14:35 +01:00
Aron Budea 63c3560213 browser: adjusted Field submenu in menu bar
Signed-off-by: Aron Budea <aron.budea@collabora.com>
Change-Id: I50decd1f84dd6e91ba268dabdca2d579e8d229ec
2022-06-10 11:50:19 +02:00
Michael Meeks 0ae5a8ae5e MessageQueue: don't insert duplicates of tiles into TileCombined.
Apparently for some subset of messages (presumably on busy queues)
we have been double compressing the same tiles ...

Change-Id: I79aea4f2162caa8a5b5660c13ae2cae855d90755
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-06-10 10:10:05 +01:00
Michael Meeks 4478d2b083 Delta: add checks for bad memory usage across threads.
Change-Id: I09f5ad5b0af44399f92ccc0b62056172f1a0b220
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-06-10 10:10:05 +01:00
Michael Meeks a5aeac6eeb stress: dump connection count.
Change-Id: I3a1a4202d8f3cbabaf46794fa1c3452af1470016
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-06-10 10:10:05 +01:00
Andras Timar a1aa61b163 wsd: fetch external resource in debug build, but not for unit tests
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I208dce052ba02a4ccfc283fbb5ff3af8d8bf38bb
2022-06-09 20:15:34 +02:00
Pranam Lashkari 2990c018cc added icon for unprotect cell
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I48454b529044766c6646b15f9277a22ca0b81642
2022-06-09 18:25:28 +05:30
andreas kainz 864779be02 Compact View isn't part of Sidebar, Statusbar
Compact View is separate in the menubar from Sidebar and Statusbar
So it shouldn't be between them in the View Tab.

Signed-off-by: andreas kainz <kainz.a@gmail.com>
Change-Id: Ib46e9c4a4df24432eae5a7fef335e7cde68b1766
Signed-off-by: andreas kainz <kainz.a@gmail.com>
2022-06-09 11:58:48 +02:00
andreas kainz 97e196c370 Insert Shapes instead of Basic Shapes
In the insert tab there is the command uno:BasicShapes
by select BasicShapes the user can insert shapes
at least Basic Shapes, Symbol Shapes, Block Arrows,
Stars and Banners, Callouts, Flowchart, ...

So uno:BasicShapes will let you insert all available type of shapes
therefore the text label should be Shapes instead of Basic Shapes.

fix #4672

Signed-off-by: andreas kainz <kainz.a@gmail.com>
Change-Id: I692b7a5b03b905599648c7af4a016684b12b335a
2022-06-09 11:49:25 +02:00
Pranam Lashkari 2168c3a58e added picture control icons
closes #4845

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I93eac9d7be31c06353b6fd595f699285b7deadd5
2022-06-09 11:53:54 +05:30
Henry Castro 2e1cb5dd08 Revert "browser: css: add '#lokit-logo' style to fetch lokit-extra-img.svg"
This reverts commit dd83984896.

The logo style already exists and to avoid override rule.

Change-Id: Idf59f1acbc427ea8a33147398057de1883731830
Signed-off-by: Henry Castro <hcastro@collabora.com>
2022-06-08 21:14:58 +02:00
Szymon Kłos d11a23be72 jsdialog: focus map after popup is closed
So we can type after we closed popup in the sidebar.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ib4164cfa0b7b25b0a3aeeccdd9d0ac8c9bf7f280
2022-06-08 16:35:17 +02:00
Szymon Kłos c7ca6dc112 jsdialog: avoid focus in special popups like busypopup
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ib2089c9580c70f63cea8504cd847c583fbae9dd1
2022-06-08 12:30:11 +01:00
Pranam Lashkari b1546f96e5 added UI buttons to protect and unprotect cells in writer table
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I7d9f1457a828d4ce69a49205e65e4df0e394e8de
2022-06-08 12:09:24 +03:00
Pedro Pinto da Silva aca5503f33 Add missing Run Macro action to tabbed view
- Only visible when macros is switched on (coolwsd.xml)
- Added to the File tab because:
  - We do not have Tools tab and it seems we do not have a need or
  more > 1 action that justifies an yet another new tab
  - Run Macro could fall into Review or insert category but and
  since the icon when pressed Runs a Macro, best to place it
  within File tab since it affects the file. Plus user that is used
  to operate within classic view it's more likely to go to File tab

Signed-off-by: Pedro Pinto da Silva <pedro.silva@collabora.com>
Change-Id: I8110fc259860d285f0c911b9b553bdc67235f4e2
2022-06-08 11:40:31 +03:00
Michael Meeks fe5100183c reply: record more statistics.
Count data sent as well as received, re-factor, and measure B/W
usage too.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I5d00f0568c774cc03d2b8e4f730bfe4a8fb5b06f
2022-06-08 09:18:05 +01:00
Henry Castro bc7f16fa5d wsd: add indirect request logo image
Change-Id: Ib02cdcfffa3fa09654def787844c7f3dbbef50a9
Signed-off-by: Henry Castro <hcastro@collabora.com>
2022-06-07 15:42:53 +01:00
Henry Castro 19ed2aa2b4 wsd: add fetch external method
After file server has been initialized,
it fetches external logo image.

Change-Id: I5d47287d5fa875c3e5825567d4ff284abe2ff500
Signed-off-by: Henry Castro <hcastro@collabora.com>
2022-06-07 15:42:53 +01:00
Henry Castro ccd15ce9a6 wsd: add getter function to obtain the ...
Web server poller thread

Change-Id: I1b1785e41891e408eb6ebc360baf15c4fd07bf5f
Signed-off-by: Henry Castro <hcastro@collabora.com>
2022-06-07 15:42:53 +01:00
Henry Castro dd83984896 browser: css: add '#lokit-logo' style to fetch lokit-extra-img.svg
Change-Id: Idb7001076db52471bfd4eeb79bf37b3732aa0dfc
Signed-off-by: Henry Castro <hcastro@collabora.com>
2022-06-07 15:42:53 +01:00
Ashod Nakashian 64db149382 wsd: consistent logging of session name
Change-Id: I1f41fb33d5f550da52d43267a8387577acaeaa59
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-06-07 09:09:00 +01:00
Ashod Nakashian 562cfcae01 wsd: cosmetics and assertion
Change-Id: Ib89d1cb684250e0ebc3455423cbd991d8eecef56
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-06-07 09:09:00 +01:00
Ashod Nakashian 84f2e65d50 wsd: cleanup log initialization
Change-Id: I7d38459281acb5924809225eea4210286c62e05d
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-06-07 09:09:00 +01:00
Ashod Nakashian 6259be6fbe wsd: better logging of unix socket binding
No need to complain when bind() didn't fail.

And assert when/if we are going to overflow.

Change-Id: I66f5ff1963c0afc6652afb5a7d017e197d945736
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-06-07 09:09:00 +01:00
Ashod Nakashian 5bdd977410 wsd: simplify socket read logging
Change-Id: I083b86d6c8e6e2b3dc7b14836409281792d7b0bf
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-06-07 09:09:00 +01:00
Ashod Nakashian 3b9cc13b7a wsd: improved socket logging
More consistent logging of the socket FD.

Change-Id: Iee24ad4eb067969abfc06f78a768563351d264c7
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-06-07 09:09:00 +01:00
Ashod Nakashian f43adb76ae wsd: make socket FD log prefix implicit and cleanup logs
Change-Id: I873d19b8d4149b85f2116d363301afea1aa0b2fd
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-06-07 09:09:00 +01:00
Rash419 f890e2102d browser: contentcontrol: improve picture contentcontrol to work when there is no integration
Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: Ia53b4332d0e62166cb8f6e9d31f1abdb81bf4594
2022-06-07 08:55:30 +02:00
Rash419 9d06f8d5cc cypress: re-enable impress/table_operation_spec.js
modify the test to use 2x2 table when testing 'insert column before/after' tests
no idea why we don't get svg when there is 3x2 table

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: Id927fede691c4483206fa2b65c450f11cc980581
2022-06-06 15:48:08 +03:00
Michael Meeks 55a47214d1 stress: account for the size of each message.
Change-Id: Ie94add7197672106a2c0684405a1b15c307470e4
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-06-06 09:58:15 +01:00
Ashod Nakashian 98ae362e91 wsd: handle socket closed on read better
A corner case where read doesn't return 0
on a closed socket can result in a stuck
state where we attempt to read when we
do get ECONNRESET (which we didn't check
on reads).

This makes the interface of readIncomingData
the same as writeOutgoingData by returning
the actual return value of the read syscall.

So now we handle both return 0 as well as
error codes returned on failed calls.

The logic hasn't changed, just that now
we handle errors better and similar to the
write case.

Change-Id: I0b38a63da4e6c92a482948478d5d8d446e0b8b58
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-06-03 20:16:59 -04:00
Pranam Lashkari 0b73614cfb ignore if comment is selected while pasting
if comment is selected but is not in editing,
proceed to normal pasting in document

problem:
while pasting content multiple times with comment,
previously pasted comment stays selected and can't further normally

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: Ia594c725f4fe7108d6aea1591d88b2c306202be3
2022-06-02 18:20:47 +03:00
Luboš Luňák f84e758ebc use the more efficient getSelectionTypeAndText()
Otherwise calling getSelectionType() first and then getTextSelection()
creates the XTransferable2 twice, and then possibly converts it
to the text format twice, which may be expensive.

Also some cypress tests use selectEntireSheet() and then check
the clipboard contents, which with the switch to 16k columns in Calc
may be slow enough in debug builds when done twice to time out
the test, and this helps a bit there.

Signed-off-by: Luboš Luňák <l.lunak@centrum.cz>
Change-Id: If166f67c216281d32dbb1d3e10b51177b42a9668
2022-06-02 15:44:19 +02:00
Andras Timar 154a177979 Update l10n files for Weblate
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I65062d5ba390acaea87a8cc98771acb23e6bd1fd
2022-06-02 12:18:22 +02:00
Sveinn í Felli e20a6d80a5 Translated using Weblate (Icelandic)
Currently translated at 100.0% (447 of 447 strings)

Co-authored-by: Sveinn í Felli <sv1@fellsnet.is>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/is/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ia54d9fa6d2fe499f1ac64fecfa12c73109cb5831
2022-06-02 12:13:11 +02:00
SC 5899ca7f1a Translated using Weblate (Portuguese)
Currently translated at 100.0% (447 of 447 strings)

Co-authored-by: SC <lalocas@protonmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pt/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: If188b31aeebc99c8d8294ca1670aeb79efe0507c
2022-06-02 12:13:11 +02:00
Adolfo Jayme Barrientos 17751ffe32 Translated using Weblate (Spanish)
Currently translated at 100.0% (447 of 447 strings)

Translated using Weblate (Catalan)

Currently translated at 99.7% (446 of 447 strings)

Translated using Weblate (Asturian)

Currently translated at 49.6% (222 of 447 strings)

Co-authored-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ast/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ca/
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: I2b2ca372ee7d4ed3d1ee05077ebad9ecc465a540
2022-06-02 12:13:11 +02:00
Ayhan Yalçınsoy aa44c3184c Translated using Weblate (Turkish)
Currently translated at 100.0% (447 of 447 strings)

Co-authored-by: Ayhan Yalçınsoy <ayhanyalcinsoy@pisilinux.org>
Co-authored-by: PhD. Ayhan YALÇINSOY <ayhanyalcinsoy@pisilinux.org>
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: Iaf5c8a2f8753fce9909ed19b15b3df28f8b85cb6
2022-06-02 12:13:11 +02:00
Ihor Hordiichuk 1b0e6d4928 Translated using Weblate (Ukrainian)
Currently translated at 100.0% (447 of 447 strings)

Co-authored-by: Ihor Hordiichuk <igor_ck@outlook.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/uk/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I1f5c56965a3d2f065992ca847e1bc684bfade274
2022-06-02 12:13:11 +02:00
Martin Srebotnjak 3bfdfc8db1 Translated using Weblate (Slovenian)
Currently translated at 100.0% (447 of 447 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: Id906e228ed763edbec424c84a3af1161563ef26c
2022-06-02 12:13:11 +02:00
Matthaiks 6a9515cda6 Translated using Weblate (Polish)
Currently translated at 100.0% (447 of 447 strings)

Co-authored-by: Matthaiks <kitynska@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pl/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: If5c7a9df0d5f26de6777fdb12cc628ccfd8993d0
2022-06-02 12:13:11 +02:00
Andras Timar daac68e4c3 Translated using Weblate (Hungarian)
Currently translated at 100.0% (447 of 447 strings)

Co-authored-by: Andras Timar <andras.timar@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/hu/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I525abc85aebbc5987e07391dd3b590c6c7b86cd9
2022-06-02 12:13:11 +02:00
Yaron Shahrabani 93b1668628 Translated using Weblate (Hebrew)
Currently translated at 100.0% (447 of 447 strings)

Translated using Weblate (Hebrew)

Currently translated at 99.7% (446 of 447 strings)

Co-authored-by: Yaron Shahrabani <sh.yaron@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/he/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ib31ef778fdf841f6c5d98c2b3112b052dcf053d2
2022-06-02 12:13:11 +02:00
Nathan fb365b82dd Translated using Weblate (French)
Currently translated at 100.0% (447 of 447 strings)

Co-authored-by: Nathan <bonnemainsnathan@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/fr/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I40dacb31ae6a84045cd808e91ce78eb8823b656f
2022-06-02 12:13:11 +02:00
Szymon Kłos 1351f142a2 welcome: temporarily use only local welcome dialog
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Iade402db7fcb8ee7d58dc539ae99f49be20d697d
2022-06-02 12:11:03 +02:00
andreas kainz 334160bb51 calc formularbar use var colors for input elements for dark mode
Signed-off-by: andreas kainz <kainz.a@gmail.com>
Change-Id: I0bee881aafb52d86641243f3e614ffd60427d198
2022-06-02 10:49:02 +01:00
Gökay Şatır 9e5b8cc943 testing the cherry-pick bot.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: Id7a0acaa3aefdcde4a0cf65ccbbf133ac9510a67
2022-06-02 11:01:52 +03:00
Miklos Vajna a17894dbd7 fuzzers: avoid setcap
fuzzers use the code as a library, so we don't produce binaries like
coolwsd in such a config, leading to:

	Failed to set capabilities on file `coolforkit' (No such file or directory)

when building from scratch.

Just disable setcap in the fuzzers case, it's fine to not have these
binaries.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: I178ec7d8fa4d582e5d7289764a6ce2227c049205
2022-06-01 16:27:46 +02:00
Rash419 08969b843e browser: contentcontrol: added picture type
Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I8ba68253954c9b2052a864c61923d376220861f0
2022-06-01 15:33:47 +03:00
Rash419 0e12c85fc9 browser: contentcontrol: added dropdown type
- added a new menu button 'form' in classic and tab button in notebookbar for content control

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: Ibe06667de39199fd2541fa70ced3ff879274366d
2022-06-01 15:33:47 +03:00
Szymon Kłos 1761e703f9 jsdialog: use correct codes for shortcuts CTRL + char
we should do the same for other modifiers: shift, alt

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I75933194aee82589c787c8c31cc47b66e96e2066
2022-06-01 14:14:32 +03:00
Michael Meeks 3e32d3d4d2 perf: better identical run copying while un-pre-multiplying.
Change-Id: I8958e9a072026e8c06c820dc1ab74b44bf12d87b
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-05-31 19:06:28 +01:00
Michael Meeks ec6431b088 deltas: 64bit copy & CRC for twice the construction speed.
Change-Id: I568abed80c1e571e7a65370b7b4b1049f52ab0b4
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-05-31 19:06:28 +01:00
Michael Meeks 647d2fd708 deltas: allocate a single chunk of pixels, instead of lots of rows.
Avoid std::vector and its peculiarities, also store the crc so
that we get the perf. win from it.

Change-Id: If39ab01b5b987d707d1712076ae9a5beb32b36c2
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-05-31 19:06:28 +01:00
Michael Meeks f2df5d5ff0 deltas: re-factor deltaToDataDelta into DeltaData constructor.
cleanup accessor too.

Change-Id: I7db28780cc3394bc74f9967a1e2c2bbe0e01089c
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-05-31 19:06:28 +01:00
Pranam Lashkari e5651d0e1c annotation: unselect comment when cell cursor moves
problem solved:
some times when cell cursor is moved using keyboard,
comments were not unselected,
which caused problems when copying cell which contains comment.
i.e: comments were pasted inside the cell as plain text

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I318c850c25956d210ef9acfa631a689a4d1a71c6
2022-05-31 16:04:59 +02:00
Miklos Vajna 4433e03492 client session fuzzer: try harder to empty SocketPoll::_newCallbacks on shutdown
The DocumentBroker dtor adds a callback:

	#0  SocketPoll::addCallback(std::function<void ()> const&) (this=0x377dce0 <Admin::instance()::admin>, fn=...) at ./net/Socket.hpp:773
	#1  0x0000000000947db5 in Admin::rmDoc (this=<optimized out>, docKey=...) at wsd/Admin.cpp:544
	#2  0x0000000000bb8192 in DocumentBroker::~DocumentBroker (this=0x61900000e690) at wsd/DocumentBroker.cpp:579

So even if the fuzzer called Admin::instance().poll() on shutdown, there
was one more callback inserted to the list later, leading to OOM in the
long run.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: I0832d839b098407fa9e8aadb6f84388a85d62323
2022-05-31 15:10:51 +02:00
Michael Meeks 9ebffaa172 fuzz: cleanup constructors.
Change-Id: Ib70ad1ea7a8badd479cf3a254d5561b54088efaa
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-05-31 15:10:51 +02:00
Pedro Pinto da Silva 278d9cd8ec Form tab: Add missing icons for control actions
copied from core

Signed-off-by: Pedro Pinto da Silva <pedro.silva@collabora.com>
Change-Id: Ic22f4dd885094a268c755e1ebb60c157d775bf06
2022-05-31 10:49:27 +01:00
Michael Meeks e71e78a479 perf: deflate optimize for speed not size for full tiles.
We have many fewer full tiles to compress - so we can
trade a bit of space for some speed. Really should use zstd.

Change-Id: I7c310608173c924f175154bf6f7abb43d5e6f08d
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-05-30 12:32:14 +01:00
Michael Meeks 39de4fcc8a perf: collect unusual logging code-paths somewhere else.
Change-Id: Ifa121bdcd054544a53934e41d7ea42a67bbc8a66
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-05-30 12:32:14 +01:00
Szymon Kłos 7ddd308a50 jsdialog: treeview keyboard support
- handle tab key
- handle enter key for entry selection
- change jquery into plain JS

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ia2f8d2d9c8c2dc52c75339c4f72734a5a3e770b7
2022-05-30 12:46:46 +02:00
Szymon Kłos 8174860cfa jsdialog: handle tab key in jsdialog popup fixes #4716
This added begin and end mark to the popup so we can detect
we are leaving the popup and we should close.

This prevents us from blocking the whole UI by focusing
map and typing before popup was closed.

Also close popup when server confirmed it should be closed.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I1a290e27dd7a14eca2cd3bb8368fee27255f51a8
2022-05-30 12:46:46 +02:00
Michael Meeks 7eb357544d Proxy: send explicit charset=utf-8
https: //github.com/nextcloud/richdocuments/issues/2196
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: I4fce74290e8bf8a6681922a2165772933443703e
2022-05-30 11:32:27 +02:00
Pedro Pinto da Silva 85522f65e0 Formulabar: Make expander look like it's attached to input
Before the expander button was detached from input this in turn was:
- Making it hard to understand what that button will do
- Affecting the overall look and feel of the formulabar (different border-radius etc)

Signed-off-by: Pedro Pinto da Silva <pedro.silva@collabora.com>
Change-Id: Id17742aae8b09acd3bdcbffd05fe17181492322d
2022-05-30 10:27:35 +01:00
Pedro Pinto da Silva 4a62ae6e06 Formulabar: Fix unotoolbutton juggling
Add expand toggle class to parent and use it to align unotoolbuttons

Before, there was no way to know if the input was expanded or not by just looking at container
or any parent. thus, no way to fix alignments per MultiLine status

Signed-off-by: Pedro Pinto da Silva <pedro.silva@collabora.com>
Change-Id: Idddefc32812a3aab29ddb72c4d09bacd43b03287
2022-05-30 10:27:35 +01:00
Pedro Pinto da Silva a892412d42 Formulabar: don't force img parent to be a certain size
some unotoolbutton was being set with the same same size as it's img child
 - There is not need to do this only for :not(.has-dropdown)
 - Make sure img has correct size, let parent element to adapt, no need to
 single out this case

Signed-off-by: Pedro Pinto da Silva <pedro.silva@collabora.com>
Change-Id: I1c3734a81cb01a0d15604a2b88148a0f883a59d1
2022-05-30 10:27:35 +01:00
Dekota Nelson ac587371af Removed unused CSS related to old formulabar. Signed-off-by: Dekota Nelson nelson.dekota@gmail.com
Signed-off-by: Dekota Nelson <nelson.dekota@gmail.com>
Change-Id: I8de68b8c09410026716860ba7a097ce76dc6ae3d
2022-05-30 09:47:28 +01:00
Pedro Pinto da Silva c3130ecc96 Formulabar: fix sc_input_window height (when collapsed)
Formula input window (textarea) had different height from address input
- Set it at the same height as seen in toolbar.css:211

Signed-off-by: Pedro Pinto da Silva <pedro.silva@collabora.com>
Change-Id: Id0fc3dfb0335183050eedc00036b85dbafe2d0b4
2022-05-30 08:21:53 +01:00
Pedro Pinto da Silva d2f28a03be Fix formulabar width, use flex property
Avoid using percentages when we can already use the grow property
(it avoids different results across browsers)

Signed-off-by: Pedro Pinto da Silva <pedro.silva@collabora.com>
Change-Id: I262cfdf5d72313296620e3e522bfa97ab2b00ca5
2022-05-30 08:21:53 +01:00
Michael Meeks 30e6f08147 perf: merge deltas and keyframes into the same storage.
Simplifies and accelerates the code.

Change-Id: I56b661e566efd75e3ed46918a481c26ddd5ca4c4
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-05-27 22:01:24 +01:00
Michael Meeks 2f2b8fb2b1 TileData: write unit tests.
Change-Id: I6ce29952800cf43d95c5572201269839b5426eac
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-05-27 22:01:24 +01:00
Henry Castro e91168fc9c welcome: modify to listen view list changes
In order to get the list users and identify if it
is a guest user to not show the welcome dialog.

Change-Id: I439f46dcfd3ea5b307059952f98f49a387158e24
Signed-off-by: Henry Castro <hcastro@collabora.com>
2022-05-27 15:36:48 +03:00
Pranam Lashkari f196b45046 fix: typing after idle
Reset document info on idle

resetting document info will force to use new status of the document

problem:
reconnecting after idle, user could not type anything in document,
this was due to some properties were to set assuming they existed from last session (i.e: clientzoom)
resetting document info will force to use new status message and set all the properties again correctly

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: Ibcf395eee3a4e0b99413de0178331d42a1354253
2022-05-27 13:25:53 +03:00
Szymon Kłos cada83a778 Fixes exception introduced in:
commit 04187501c1
Unify ui switcher naming

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ic1ed669b270297fe200c3c92e38ea8f081bb1b4c
2022-05-27 13:25:53 +03:00
Michael Meeks b830ca266e perf: don't send endless stream of updates/callbacks to Admin.
Change-Id: Ic4ac1f189706f5a9b409c91e2497e5a37692c333
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-05-26 19:53:11 -04:00
Michael Meeks 6de4eb865e socket: only wakeup the mainloop on addCallback for the 1st callback.
Change-Id: I96d9f0d46a5557ba464664456ec82605780f7de1
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-05-26 19:53:11 -04:00
Michael Meeks 92d3435dd1 Admin: improve smaps parsing performance.
We have around ~8k smaps lines for each process, polled regularly.

Change-Id: I7e78b17e52aeaec55fa17c5192a940aa9e44b045
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-05-26 19:53:11 -04:00
Pedro Pinto da Silva 74f39eb1b2 Fix Insertcontentcontrols strings on tabbed view
Don't use strings coming from uno commands as they include
"Insert":
1. There is no need to say that these actions will "Insert", they
are already in the Insert tab
2. All other actions do not have Insert so it would be not consistent
3. On top of that with Insert in each icon the labels look quite long

Signed-off-by: Pedro Pinto da Silva <pedro.silva@collabora.com>
Change-Id: I286e95187d5df08cdf2d71bd99f3b77a17ef12ad
2022-05-26 11:38:05 +01:00
andreas kainz 6810f57dab btns var color name fixes
btns use var names that didn't exist

Signed-off-by: andreas kainz <kainz.a@gmail.com>
Change-Id: I13f2acbdd91cf05391da81adc721156d125f3de7
2022-05-26 11:20:38 +01:00
Michael Meeks d3f5ba64c1 deltas: avoid interpreting a keyframe as a delta.
Just apply it and move on.

Change-Id: Ib15d4438f3c3e5c0d6996784a6cd64b061b20e1c
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-05-25 21:24:20 +01:00
Michael Meeks 6483e1500a Enable deltas by default.
Cleanup some debugging, distinguish wsd/viewport delta fetches from
client-side tilecombines.

Update tests for deltas where they are expected.

Change-Id: I3dca09e4ceb094abf03db2aed2618f19351f3e28
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-05-25 20:31:06 +01:00
Michael Meeks ae3ac0e4cd De-compress back-to-back streams using pako.
We concatenate several deflated streams back to back, and need to
decompress and apply each one by one.

Change-Id: Ic31f0eae27906f7817a877c98f4cd1e5ca4ee7f3
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-05-25 20:31:06 +01:00
Michael Meeks c130231379 deltas: track, transmit and cache deltas (disabled for now)
Squashed from feature/deltas-expanded.

TileCache changes:
    + add montonic sequence (wid) numbers to TileData
    + account for sizes of TileData with multiple blobs
    + simplify saving and notifying of tiles

Sends updates (via appendChanges) based on the sequence the
right mix of keyframes and/or deltas required as a single
message, and parse and apply those on the JS side.

We continue to use PNG for slide previews and dialogs,
but remove PngCache - used by document tiles only.

Annotates delta: properly as a binary package for the websocket.

Distinguishes between deltas and keyframes we get from
the Kit based on an initial un-compressed prefix
character which we then discard.

kit can be forced to render a keyframe by oldWid=0

Track invalidity on tiles themselves - to keep the keyframe around.

    We need to be able to track that a tile is invalid, and so subscribe
    to the updated version as/when it is ready - but we also want to
    store the keyframe underneath any deltas.

force rendering of a keyframe for an empty slot in the TileCache.

force tile sequence to be zero for combinedtiles - so the client can
always request standalone tiles with explicit combinedtiles, or tile
requests.

move Blob to Common.hpp

use zero size for un-changed tiles.

remove obsolete render-id, and color deltas in debug mode.

cleanup unit tests for non-png tile results.

Change-Id: I987f84ac4e58004758a243c233b19a6f0d60f8c2
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-05-24 22:16:58 +01:00
Ashod Nakashian c11fab5b78 wsd: browser: handle 413 Entity Too Large from storage
It seems at least some storage hosts report disk-full
errors via 413. This logic of handling 413 error as
disk-full was introduced in
f8e0b8c11e.

Here we handle 413 as it is defined, as Entity Too Large.

Change-Id: I61297c2fab9de663643336a6eba47949f82d1737
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-05-24 22:48:37 +03:00
Szymon Kłos 50f2dec7bc formulabar: added expand/collapse button
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I41625adc4d421a4ef0fa9c8ac88cf7f44a0f4787
2022-05-24 12:01:05 +01:00
Ashod Nakashian dccdf9fafa wds: enable experimental blocks unconditionally
This enables code that was protected with
EnableExperimental in the socket logic (and one
case in DocBroker). These changes are now deemed
safe to enable permanently.

Change-Id: Ie62f5d7bd281ade90f38d654b51b104b8d1f14bc
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-05-23 17:00:31 +01:00
andreas kainz 0b494b6db9 add icons lc_insertcontentcontrol and lc_insertcheckboxcontentcontrol
Signed-off-by: andreas kainz <kainz.a@gmail.com>
Change-Id: I3b9ffedcbd393c612d4763433736ef6b038e3b97
2022-05-23 11:44:02 +01:00
Gökay Şatır c009faa205 Remove unused functions.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: Ifc5a4a5899e3e4ff26530e9b2f1794824e70f660
2022-05-23 11:37:14 +03:00
Andras Timar 7522caa888 typo: Hiddent->Hidden
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I08cae2b79de9c4c7d429e722dc5dbea6d3a9dc70
2022-05-22 17:55:20 +02:00
Gökay Şatır 835b6b10a3 Remove _moved function.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: Ica771fb38ea6523906d28b10fdc4842ac1d0e33e
2022-05-20 14:49:04 +03:00
Gökay Şatır c56f73a915 Remove unused ObjectFocusDarkOverlay.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I430d0c4600ee74518e9442099530c754017fe3bb
2022-05-20 14:49:04 +03:00
Dennis Francis a9b904c2f6 printranges: indicate them with dashed lines in grid
Read the print ranges for the current sheet from
LOK_CALLBACK_PRINT_RANGES message and draw dashed grid lines for the
rows/columns bordering the range.

Caveats:

* Desktop calc does not draw print ranges on document load if there are
print ranges set previously on save. Cool also has the same behaviour.

* If there are multiple print ranges in the same sheet desktop calc does
not show any dashed lines indicating the ranges. Cool also adopts this
behaviour for now.

* Styling of the dashed lines was not investigated much for writing this
patch hence it uses the same drawing style as normal grids.

Signed-off-by: Dennis Francis <dennisfrancis.in@gmail.com>
Change-Id: I318b679a232f2a6834d6e23278b24a9a96b70194
(cherry picked from commit eb94d9a864)
2022-05-20 13:00:39 +03:00
Dennis Francis ebf970fc4f calc: new callback LOK_CALLBACK_PRINT_RANGES
Signed-off-by: Dennis Francis <dennisfrancis.in@gmail.com>
Change-Id: Ia136c0675dbba51a53424916910219e8330764ac
(cherry picked from commit 817a4cd3f1)
2022-05-20 13:00:39 +03:00
Rash419 82eacd26bc cypress: skipping columns test in impress/table_operation_spec.js
cannot reproduce locally temporarily skipping the test

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I2007a2dc643306551be859b1bdcf48982fe4a33d
2022-05-19 13:33:20 +05:30
Rash419 f90fbe23bb cypress: added new function selectCellsInRange
after the jumbo sheet patch selecting entire row and merging all the cells becomes costly and cypress timeouts
therefore select first 100 cells and test the merging functionality

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I8568bbdbabdccc55c2938f886619a1d178ae7d22
2022-05-18 19:14:07 +05:30
Miklos Vajna feb19b588b unit-test: fix crash-on-shutdown
A problem since c6561a99d8 (wsd: test:
correctly stop SocketPoll in UnitTimeout, 2022-04-21), the trouble was
that calling UnitWSD::returnValue() from UnitTimeout::returnValue()
deletes the 'this' pointer, so we need to copy the interesting data
members to the stack before calling the base.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: I86583ae516e2b2f367fbf5cb2a9401cc21f1b1cf
2022-05-18 15:41:30 +02:00
Andras Timar 5ee19590f3 Update l10n files for Weblate
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I09271e641fb67c28fe50046d20a67d521151a6f0
2022-05-18 12:30:48 +02:00
Diggaj Upadhyay 8497edbafd Translated using Weblate (Nepali)
Currently translated at 77.2% (17 of 22 strings)

Co-authored-by: Diggaj Upadhyay <dcozupadhyay@duck.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/android-lib/ne/
Translation: Collabora Online/Android lib
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I21f80d2369de1d5c10c287ca2ec230744a422c39
2022-05-18 12:25:18 +02:00
Weblate f9d6cd978a Added translation using Weblate (Nepali)
Co-authored-by: Weblate <noreply@weblate.org>
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ib859e1f9352e9fb4b1131a7417291cfdd98b4982
2022-05-18 12:25:18 +02:00
Diggaj Upadhyay 08311b4e80 Translated using Weblate (Nepali)
Currently translated at 1.8% (2 of 110 strings)

Translated using Weblate (Nepali)

Currently translated at 44.8% (205 of 457 strings)

Added translation using Weblate (Nepali)

Co-authored-by: Diggaj Upadhyay <dcozupadhyay@duck.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/android-app/ne/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/ne/
Translation: Collabora Online/Android app
Translation: Collabora Online/Help
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I20cfee897e603d4701b2a495823989bfbf4ae888
2022-05-18 12:25:18 +02:00
Mikhail Pershin fc17bd110e Translated using Weblate (Russian)
Currently translated at 59.9% (274 of 457 strings)

Translated using Weblate (Russian)

Currently translated at 59.7% (273 of 457 strings)

Translated using Weblate (Russian)

Currently translated at 58.8% (269 of 457 strings)

Translated using Weblate (Russian)

Currently translated at 58.2% (266 of 457 strings)

Translated using Weblate (Russian)

Currently translated at 57.9% (265 of 457 strings)

Translated using Weblate (Russian)

Currently translated at 57.7% (264 of 457 strings)

Translated using Weblate (Russian)

Currently translated at 57.3% (262 of 457 strings)

Translated using Weblate (Russian)

Currently translated at 57.1% (261 of 457 strings)

Translated using Weblate (Russian)

Currently translated at 57.1% (261 of 457 strings)

Translated using Weblate (Russian)

Currently translated at 56.8% (260 of 457 strings)

Translated using Weblate (Russian)

Currently translated at 100.0% (444 of 444 strings)

Co-authored-by: Mikhail Pershin <mikhail@frcdr.org>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/ru/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ru/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I301ef881c66e494d98bfc113af731797bb824bf0
2022-05-18 12:25:18 +02:00
Alexander Gabilondo 7af62ac67e Translated using Weblate (Basque)
Currently translated at 96.9% (443 of 457 strings)

Translated using Weblate (Basque)

Currently translated at 93.2% (426 of 457 strings)

Co-authored-by: Alexander Gabilondo <alexgabi@openmailbox.org>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/eu/
Translation: Collabora Online/Help
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: If3e9602bbdcd5e5a6c82f7770b77f99bfab7ccf5
2022-05-18 12:25:18 +02:00
Leif-Jöran Olsson f155148e00 Translated using Weblate (Swedish)
Currently translated at 100.0% (444 of 444 strings)

Co-authored-by: Leif-Jöran Olsson <info@friprogramvarusyndikatet.se>
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: If5be1127996813e07f1efcfeb588e227cc868104
2022-05-18 12:25:17 +02:00
Adolfo Jayme Barrientos e07387539f Translated using Weblate (Vietnamese)
Currently translated at 95.7% (425 of 444 strings)

Translated using Weblate (Uzbek)

Currently translated at 22.2% (99 of 444 strings)

Translated using Weblate (Russian)

Currently translated at 98.6% (438 of 444 strings)

Translated using Weblate (Romanian)

Currently translated at 20.7% (92 of 444 strings)

Translated using Weblate (Portuguese (Brazil))

Currently translated at 100.0% (444 of 444 strings)

Translated using Weblate (Portuguese)

Currently translated at 100.0% (444 of 444 strings)

Translated using Weblate (Indonesian)

Currently translated at 98.1% (436 of 444 strings)

Translated using Weblate (Galician)

Currently translated at 73.1% (325 of 444 strings)

Translated using Weblate (Spanish)

Currently translated at 100.0% (444 of 444 strings)

Translated using Weblate (Asturian)

Currently translated at 15.0% (69 of 457 strings)

Translated using Weblate (Greek)

Currently translated at 97.7% (434 of 444 strings)

Translated using Weblate (Catalan)

Currently translated at 99.7% (443 of 444 strings)

Translated using Weblate (Bulgarian)

Currently translated at 73.4% (326 of 444 strings)

Translated using Weblate (Belarusian)

Currently translated at 0.4% (2 of 444 strings)

Translated using Weblate (Asturian)

Currently translated at 49.7% (221 of 444 strings)

Translated using Weblate (Afrikaans)

Currently translated at 29.2% (130 of 444 strings)

Co-authored-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/ast/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/af/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ast/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/be/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/bg/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ca/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/el/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/es/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/gl/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/id/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pt/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pt_BR/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ro/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ru/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/uz/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/vi/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I5fd5bb78227077cc6763ed4329670e66a454c11f
2022-05-18 12:25:17 +02:00
Nathan c0eab14c06 Translated using Weblate (French)
Currently translated at 100.0% (444 of 444 strings)

Co-authored-by: Nathan <bonnemainsnathan@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/fr/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ia13d2e61d3e55a29c7c27a7a53732b6e59bafde8
2022-05-18 12:25:17 +02:00
Luboš Luňák b999f12500 make cypress tests work also with 16384 columns
Some places tested for AMJ being the last column, but with 16k
columns it's XFD. Without this those tests run in an endless
loop when run with Calc set to 16k columns.

Signed-off-by: Luboš Luňák <l.lunak@centrum.cz>
Change-Id: I6249e0ec975634b60aaf3291e021b74b4aa3cc5d
2022-05-18 06:59:08 +02:00
Gökay Şatır a4885396bb Remove unused divOverlay parts.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I98ea380037e1653cc4635f895d472825df413c73
2022-05-16 21:52:09 +03:00
Gökay Şatır 04a049922a Remove unused boxzoom related parts.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I6ce90e4ec020f2c96ad72b54ea5c5d2182c91bc1
2022-05-16 21:51:56 +03:00
andreas kainz fee024f739 colibre-dark icons
as subfolder at images/dark

Signed-off-by: andreas kainz <kainz.a@gmail.com>
Change-Id: I720cb82715760661faa74b7a9acb96ad97808ab5
2022-05-16 13:10:20 +02:00
Rash419 d6f055d36d contentcontrol: expose checkbox unocommmand
added checkbox in mobile,classic and notebookbar

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I0bed99094c2c4bacd50529dbd00891d39cb40c13
2022-05-13 17:57:53 +03:00
Rash419 c9b9a6589e introduce content control in online
added unocommand to enter rich text in classic, NB and mobile
created a new section to draw rich text rectangles
handle the callback for content control

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: If9912b3598729c26014519c4e1c3c65000b973a4
2022-05-13 17:57:53 +03:00
andreas kainz df57005ae2 w2ui-scroll use var colors
Signed-off-by: andreas kainz <kainz.a@gmail.com>
Change-Id: I0908c446ea5eb02c5fcd82f9fe0e2ac1af491dcb
2022-05-13 18:47:23 +05:30
andreas kainz 55d9724999 jquery-ui-lightness/ui-icons_ for dark mode
switch to ffffff instead of 222222 when the prefers-color-scheme is dark

Signed-off-by: andreas kainz <kainz.a@gmail.com>
Change-Id: I3e3c68879c6b6a831d5fbf095597ddae6eb51f77
2022-05-13 18:30:10 +05:30
Rash419 2e186514f4 framed.doc.html: fix: cannot change UI view
Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: Ifa842f64ed70137f06ebdfc053fa5a3afd2f4185
2022-05-13 17:28:04 +05:30
Miklos Vajna bfb8b4431f CI: codeql-analysis: work with core co-22.05 assets
Otherwise we fail to find new callbacks, see e.g.
<https://github.com/CollaboraOnline/online/runs/6365091834?check_suite_focus=true>.

And a similar blind fix for the freebsd CI job.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: I820823d0307d0a4a5d8c51b944c01b2b9ba6632a
2022-05-13 10:43:03 +02:00
Henry Castro c802d65d82 infobar: enable info bar handler to check ...
the latest version available

Change-Id: Iff89895757fdd2ae83eb34401480253967234bbe
Signed-off-by: Henry Castro <hcastro@collabora.com>
2022-05-12 18:25:10 +01:00
Henry Castro a3d0920e18 wsd: infobar: clean up unused code
No longer used.

Change-Id: Ifdaaabc49df1b9af0fb4d436ffe2437446f5926a
Signed-off-by: Henry Castro <hcastro@collabora.com>
2022-05-12 18:25:10 +01:00
Henry Castro 78e277b764 wsd: infobar: send latest version to the client side
Change-Id: I565d9d30c86ec12e7ee96df55ac8adc2e718626a
Signed-off-by: Henry Castro <hcastro@collabora.com>
2022-05-12 18:25:10 +01:00
Henry Castro 7ed475f25c wsd: infobar: fetch and save the latest version data
Change-Id: I7988fc69d4eaa35a26463cf180c26c6fd9b083e1
Signed-off-by: Henry Castro <hcastro@collabora.com>
2022-05-12 18:25:10 +01:00
Henry Castro 59ca7a1a28 wsd: infobar: add config value "fetch_update_check"
Every number hours will fetch the latest version data.

Change-Id: I082d9ebb674058c6509dbd33537f24ec7cd9228b
Signed-off-by: Henry Castro <hcastro@collabora.com>
2022-05-12 18:25:10 +01:00
Henry Castro 994e3213f7 infobar: fire 'infobar' message
JSON data contains latest version.

Change-Id: I86e581a5a148f32178d6665425e3105d38e04127
Signed-off-by: Henry Castro <hcastro@collabora.com>
2022-05-12 18:25:10 +01:00
Henry Castro 0912d5d83d infobar: clean up unused code
The infobar div is no longer used.

Change-Id: Ic184bf1d0b6259ba7b349aca68edf4692d06e849
Signed-off-by: Henry Castro <hcastro@collabora.com>
2022-05-12 18:25:10 +01:00
Henry Castro ea9421c330 infobar: show a snackbar message
When data is received from the server.

Change-Id: I53b888acb7624d1ea909bf6fe9eadbf1948dc6b9
Signed-off-by: Henry Castro <hcastro@collabora.com>
2022-05-12 18:25:10 +01:00
Henry Castro 79562d0e17 infobar: remove unused functions
Change-Id: Ic45acc0e627b29ddcd714b74d62aaf82c95df846
Signed-off-by: Henry Castro <hcastro@collabora.com>
2022-05-12 18:25:10 +01:00
Gökay Şatır 670f6efbba Fix typo.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I4cd2782d1dbce6456cd54e45a58329eb73bf557c
2022-05-11 15:43:28 +03:00
Pranam Lashkari f5a67d37f7 browser: don't show conflict dialog to read-only users
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: Icfc95fb72bee6696dffbb194efe95aa5f9716a72
2022-05-11 15:07:47 +03:00
Pranam Lashkari ad0a1fe9e9 logging: let the log text colour be selected by the browser
browsers having different themes make it hard to read the logs
this will help make logs more readable irrespective of themes

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I9e48f75d0f1ed20221c969db6d4a6ea00910717e
2022-05-11 15:40:29 +05:30
Rash419 1ceb9784b0 docker: added new remoteconfigurl env variable
Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I735ae70e6ea335ae1a96662248e8815731654812
2022-05-10 22:31:40 +05:30
Rash419 c5d06ebbdf docker: map domain env variable to alias_groups
show a verbose warning about using domain

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I41fdea3419eb2719fa665a62de33e3a237cf3df8
2022-05-10 22:31:40 +05:30
Rash419 0a203ad91e cypress: added desktop calc/autofilter_spec.js
Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I48f4ceb591cbdf178b08b44ad1f833b52d5c004d
2022-05-10 22:31:16 +05:30
Szymon Kłos 4f8a29a2a5 formulabr: remove reference marks after use
previously when used formulabar to type: "=SUM("
then selecting some range using mouse and "ENTER"
- referenced range was still visible

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I357b1ef51ad4d46e3e332decda0332ac4f9ad1d7
2022-05-10 14:00:54 +03:00
Szymon Kłos 03f842a385 formulabar: handle ctrl and shift keys
send SHIFT and CTRL modifiers
don't add event listener if not needed (rawKeyEvents not used)

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I5c3487e8655c33f1bf9cabcb2308428a27c18a95
2022-05-10 14:00:54 +03:00
Michael Meeks 1eb03824e2 delta: disable PngCache for deltas.
Change-Id: I5019b645ccdc02ab813db5e3e421f920681f05e5
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-05-10 11:48:33 +01:00
Michael Meeks 7b595366f3 deltas: promote width before multiplication.
Change-Id: Iddbb2b29bb39f091d891faf02642953da563e31a
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-05-10 11:48:33 +01:00
Michael Meeks 486ab2fa86 deltas: add and show debug counts for both keyframes and deltas.
also color deltas as yellow when debugging.

Change-Id: I75e7f92708937adb31106e46e9771115320fb8d6
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-05-10 11:48:33 +01:00
Michael Meeks c0cd95b8fb delta: document ids decorating previews.
Change-Id: I2f6ade6c2de962c24f7b1a10c57aeb065b62e679
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-05-10 11:48:33 +01:00
Michael Meeks a67b64218a For now detect a delta by size and warn.
Change-Id: I93c0678d8329d9cb4acb9ce30d505c06888063d4
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-05-10 11:48:33 +01:00
Michael Meeks 1d3142feac Session: remove un-used headers.
Change-Id: Icd0d7c1a6abce9157fd23f0c347866a58033e48c
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-05-10 11:48:33 +01:00
Henry Castro 4a002845f6 browser: remove unused Zlib embedded library
Change-Id: I58b6146d33adce9211143083c393834bff9ece56
Signed-off-by: Henry Castro <hcastro@collabora.com>
2022-05-10 11:48:33 +01:00
Henry Castro e15a4dea4e browser: use pako to inflate zlib
Change-Id: I3486692fb38f26778ede69c14c64c3886f3565f1
Signed-off-by: Henry Castro <hcastro@collabora.com>
2022-05-10 11:48:33 +01:00
Henry Castro 9e885e025b delta: add return image size
It will be used to instrument the return output size

Change-Id: I9f779ff5532d2181da6d6c98060859842e145c0b
Signed-off-by: Henry Castro <hcastro@collabora.com>
2022-05-10 11:48:33 +01:00
Michael Meeks 47275c6f9e This should do something cooler.
Change-Id: I90d6028c91e88034b48ab91de7429ebde5ba5c25
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-05-10 11:48:33 +01:00
Henry Castro 94c42ae43b kit: simplify initialization delta data
Change-Id: Icd7e8d2614eb97790f6e2533db3cd7eec5511a4d
Signed-off-by: Henry Castro <hcastro@collabora.com>
2022-05-10 11:48:33 +01:00
Michael Meeks fb0819191c delta: optimize un-premultiplying identical runs.
Change-Id: I67baab6c6378385da65cac0090923d6abbb44382
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-05-10 09:35:47 +01:00
Michael Meeks 4b0b73bec9 js: apply multiple deltas in one blob.
Change-Id: Ied8662ad54ecf76e0e3140a54b2763539f5523d3
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-05-10 09:35:47 +01:00
Michael Meeks d8dff82f24 Don't re-use old wire-ids, we want to monotonically increase.
Change-Id: Ie819b73edba175749ed6edf170af326b7b825bac
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-05-10 09:35:47 +01:00
Michael Meeks 92f47cb4a3 Do a straight putImage without getting first for new tiles.
Change-Id: I35ef4292d3342febcb7db21348b857f0e50ecdb0
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-05-10 09:35:47 +01:00
Michael Meeks 01abe2326a Avoid re-creating and initializing canvas tiles un-necessarily.
Change-Id: I94ace82baede5c341f770cef4d910c24f95ca87e
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-05-10 09:35:47 +01:00
Michael Meeks b6445a9692 Un-pre-multiply pixels in deltas and BGRA -> RGBA swap.
Change-Id: I31eaf0580cfb9d43df3e85a5f15ae0443b6941f0
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-05-10 09:35:47 +01:00
Michael Meeks f76522c86a Compress raw images too directly with zlib.
Change-Id: Idb54db1c3a3d6970db0782b2a7a2eebbad27f153
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-05-10 09:35:47 +01:00
Michael Meeks 0df3e41879 deltas: make delta creation & caching thread-safe.
Change-Id: If134ac6212850beadb262a4b8f4c084c78d8a44e
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-05-10 09:35:47 +01:00
Michael Meeks 099ebaa089 deltas: add delta deflate compression.
Includes a horrible inlining of minified zlib de-compression (MIT)

Change-Id: Iaf5f9f5e1215458836e26d45e48e436ee52c48ef
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-05-10 09:35:47 +01:00
Michael Meeks bfc4699ffb deltas: enable monotonic wid incrementing, build deltas based on pos.
We want to always generate a delta vs. the last state we have so we
move linearly forward into the future.

Change-Id: I730d1dfb125a19e2c48b8f84ad5563664d196ab0
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-05-10 09:35:47 +01:00
Michael Meeks 8eebe1e345 Tile-deltas, expose TileData to unit tests.
Change-Id: I5f33a56009927187b460775129f0818f47843368
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-05-10 09:35:47 +01:00
Michael Meeks 71ef6cb4a5 Switch Tile to have a list of deltas.
For each tile, the wire-id will grow incrementally for each key-frame
or delta appended; so we can tell which deltas to send.

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: Ic5f201d23273c37eed232c5932b9da854e80d06a
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-05-10 09:35:47 +01:00
Michael Meeks 5abf419bc8 deltas: switch tile.el to be a canvas when that makes sense.
Makes rendering interactive again, and removes the async 'load'
from the delta application code-path.

Change-Id: Iaf95b24b299f6614b37f4188afcdbd95a4a8f673
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-05-09 16:40:57 +01:00
Henry Castro f19348f0c3 browser: fix bundling error
The uglify tool does not support es6

Change-Id: Ia87651ad39064889c99922b5e910bd4bcaf09885
Signed-off-by: Henry Castro <hcastro@collabora.com>
2022-05-09 16:40:57 +01:00
Michael Meeks 0fd95cc2ac deltas: add comments to classes.
Change-Id: I49a714ab79b37b77455a9d31b6a3e74fd43973b1
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-05-09 16:40:57 +01:00
Michael Meeks 8aff82aca7 Cleanup and fix issues in delta creation.
Change-Id: I05ac31d2b968821909e975622a0f52a7f6189369
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-05-09 16:40:57 +01:00
Henry Castro 299457e49a browser: add tmp module package
Change-Id: I2daaf027ea9888f9e543f7543cccd129e1c3bf69
Signed-off-by: Henry Castro <hcastro@collabora.com>
2022-05-09 16:40:57 +01:00
Henry Castro a56cefc56f common: move "hashSubBuffer" function
Change-Id: If171b7cf4e636e24cb7f757d893136927e8373aa
Signed-off-by: Henry Castro <hcastro@collabora.com>
2022-05-09 16:40:57 +01:00
Henry Castro e3c170cf94 browser: add pako dev dependency
https://github.com/nodeca/pako

Change-Id: I115c6c729f6783a23856a0e41f1908a7fc7f61fe
Signed-off-by: Henry Castro <hcastro@collabora.com>
2022-05-09 16:40:57 +01:00
Henry Castro 28d940eb93 browser: fix jsdom exception drawing in canvas
jsdom requires that the tile is a HTMLCanvasElement element type

Receiver.dataMessage (private/mmeeks/deltas/browser/node_modules/ws/lib/receiver.js:51
7:14) TypeError: The first argument must be an object
    at CanvasRenderingContext2D.ctx.<computed> [as drawImage] (private/mmeeks/deltas/browser/
node_modules/jsdom/lib/jsdom/living/nodes/HTMLCanvasElement-impl.js:124:17)
    at TilesSection.paintSimple (private/mmeeks/deltas/browser/dist/bundle.js:1:136355
4)
    at TilesSection.paint (private/mmeeks/deltas/browser/dist/bundle.js:1:1364132)
    at TilesSection.<anonymous> (private/mmeeks/deltas/browser/dist/bundle.js:1:136981
2)

Change-Id: I55b77e3a9ae80afd519f1a6c6c5388070c85193e
Signed-off-by: Henry Castro <hcastro@collabora.com>
2022-05-09 16:40:57 +01:00
Michael Meeks e382d52102 deltas: batch tileprocessed and send together.
Should enable a multi-tile-processed optimization later.
For now lets us see which tiles are read & applied together easily.

Change-Id: I6e0bf13fc4df7b43503637d749753aaad828464e
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-05-09 16:40:57 +01:00
Michael Meeks 104e4b35cf deltas: remove redundant copy/paste code: _onTileMsgFileBasedView
Change-Id: I57539b35a091cad3718e511270bbf57a2849a60c

Change-Id: I495a91fcdd1db8cd0e47f12131e8e5a61bb90799
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-05-09 16:40:57 +01:00
Michael Meeks 798eb25008 Cleanup performance traces.
Change-Id: Ie4a19485dc82ec3f6bc782dd3246543ac6968411
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-05-09 16:40:57 +01:00
Michael Meeks 0a983d1282 remove unused TileCache::removeStream.
Change-Id: If517f8f5426086fe40871027d241250d6d34e67f
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-05-09 16:40:57 +01:00
Michael Meeks 414c36c6f5 Add conditional delta creation back.
Change-Id: I374e4fd0404ee8caa0f81d6de24a55220ae23c91
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-05-09 16:40:57 +01:00
Michael Meeks 4140bf8741 Bring back the delta application JS from the 6.4 branch.
Change-Id: I13329e1e7ceeb1fc611193ccaa78fc4e799e1869
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-05-09 16:40:57 +01:00
Henry Castro df96b97f88 browser: allow cursor jump if text selection is empty
Otherwise, if the user selects all the document,
the clipboard blocks Page Up or Page Down cursor jumps.

Change-Id: Ia9c432646c51063775bb7cca6a998e7d1cdcdbf2
Signed-off-by: Henry Castro <hcastro@collabora.com>
2022-05-09 16:08:14 +03:00
andreas kainz dd3134d554 .w2ui-button use var color for :hover
Signed-off-by: andreas kainz <kainz.a@gmail.com>
Change-Id: I3b77ba1e99dee24e74f9f839de5590d0a0def939
Signed-off-by: andreas kainz <kainz.a@gmail.com>
2022-05-09 12:54:37 +05:30
Ashod Nakashian 1c07d507ee wsd: do not enqueue messages on closed sessions
Also corrects the counting of number of active
sessions when broadcasting messages.

Change-Id: I5ab5995ed2cbc18b215542d0b2c9568957fd6a3a
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-05-07 14:14:22 +01:00
Ashod Nakashian a674a0d52e wsd: detect lost upload on exit and dumpState once only
Change-Id: If5a9601d9baa10dcdab38c57bfba82a45d8e5024
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-05-07 14:13:41 +01:00
Henry Castro f65afcf5ff browser: fix show feedback dialog
When user click the menu options.

Change-Id: Ia53126b5c2972149839de501214d0a1cb2b5fc6c
Signed-off-by: Henry Castro <hcastro@collabora.com>
2022-05-06 18:50:54 +03:00
Ashod Nakashian 4bf085f195 wsd: correctly set termination and shutdown flag
We should always set the shutdown flag first.
Otherwise, we run afoul of a race condition.

Change-Id: Ic99793d68b3b943496ff932b4bdafd336fef7f82
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-05-06 14:45:34 +01:00
Ashod Nakashian c5e533f943 wsd: forced exit after cleaning up jails
The static instances cause a lot of grief
when they aren't called in the correct order.
Worse, when we are cleaning up, we don't
even initialize some of them (Admin, for one).
This means that a normal exit will destroy
what isn't created, in some cases (Admin) it
will even force creating instances when we
are destroying others.

This avoid all this by simply exiting bluntly.

Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
(cherry picked from commit 231fae4ebd)

Change-Id: I6a9443ca5ab999ed6ca1d27314136472cfc6ddb6
2022-05-06 14:45:34 +01:00
Ashod Nakashian 757529aad2 wsd: cosmetics
Change-Id: I85773b4c06c051ee8c52c353e26dd6149c7843de
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-05-06 14:45:34 +01:00
Ashod Nakashian c6561a99d8 wsd: test: correctly stop SocketPoll in UnitTimeout
Change-Id: I97317e8155e5c65d12e985cc837f07bfcf6a56d6
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-05-06 14:45:34 +01:00
Ashod Nakashian 9a69adf766 wsd: test: always set the test name
Change-Id: Ibce5cf049ad1a1df7b11412ed7160d280ece60f3
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-05-06 14:45:34 +01:00
Miklos Vajna cdb92d2237 wsd: add initial protocol documentation for paintwindow and windowpaint:
As Tor noted on IRC, this was forgotten when the actual protocol
commands were introduced.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: I548ac73348bceb469484ce934f7548ddb4091b63
2022-05-06 13:56:42 +02:00
Ashod Nakashian 40839e8019 wsd: browser: Reset_Access_Token API to update access-tokens
Change-Id: I92cc424c30824232eaf156ddfe49104932b2ba81
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-05-06 11:13:35 +01:00
Ashod Nakashian bed2c49ab0 wsd: test: prepare for more tests in UnitOAuth
Change-Id: I7c6949af0c87405ee18e445fd7e656cd82a9033c
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-05-06 11:13:35 +01:00
Ashod Nakashian 3bd45ca339 wsd: test: modernize UnitOAuth
Change-Id: I84f7242997eb0fd8ab297c8fbdb684c2027ae3a0
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-05-06 11:13:35 +01:00
Ashod Nakashian 623bcb2948 browser: reuse post helper in framed.doc.html
Change-Id: Iabc310a59a7c4e0522558ea0a15e260d2bf141bd
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-05-06 11:13:35 +01:00
Pedro Pinto Silva 6cfe2dab5b Notebookbar: fix sidebar icon alignment
Subcontainer `root-container notebookbar` was not able to vertical align
contents even thought it has vertical-align: middle
	- Fix it by removing parents' (notebookbar-options-section) height and
		padding

The alignment is still off due to:
sub cell is inheriting automatic padding (useful in all other places)
	- Fix it by remove padding for the cell under
		.notebookbar-options-section

Display inline seems not be needed here, we can just inherit it.

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Iafb4f83acfff5ae0923afb972cefe1201080c79e
2022-05-06 13:12:27 +03:00
Szymon Kłos bca1206e29 feedback: fix in wopi case and ask before
- prevent from multiple onDocLoaded calls
- use snackbar to ask user first before showing main dialog

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I1afb67c7bb403aa05c8e33ef48c0d55fa57350dd
2022-05-05 16:26:39 -04:00
Szymon Kłos 54fad26c34 welcome: one place with local URL
so we don't have to change 2 places
also I've noticed only one place had
proxy support

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I64af9dac9bd8449fba0de3b05e0c2102e440788b
2022-05-05 16:26:39 -04:00
Rash419 2163e2f043 wsd: cleanup setting firsthost code
we added AllHosts to give admin the err log that host is not in alias_groups but now as we removed the host list entries from configuration we don't need that log

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I8b5e9e6b7df7df59befb496c12966c7ddc60c707
2022-05-05 11:04:22 +05:30
Pedro Pinto Silva f5f7ad654a Dialogs should have white background
which is the same color as other container elements inside of it. If
we want to use a "neutral" color that can either be light or dark (due
to future plans on dark mode) then better to just create another var
for dialog backgrounds. For now better to fix (so we can avoid dialogs
such as the pivot table to be with multiple background and with less
brightness then the document that seats behind)

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I848392e3c1194963273f2950a22022eeaadbe8f0
2022-05-04 15:20:43 +03:00
Pedro Pinto Silva dab56036b6 JSdialog: fix disabled radio buttons border
radio buttons were being render with a border surrounding them, example:
insert pivot table, all disabled radio buttons have a border around it

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I003280ec929b49c8f8f0a1b9a4ca361c87a9224f
2022-05-04 15:20:43 +03:00
Pedro Pinto Silva 53e6f7252f Do not add padding too all td jsdialog cells
This was impacting alignments on dialogs. Example Find and replace,
checkbox were being pushed tot he side. Better to rely on parent
padding or table structure

also with 496256a96b -table is no longer
in use

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I60b29f818e8ec53f5c66a2772f4cda82de0011bf
2022-05-04 15:20:43 +03:00
Pedro Pinto Silva b41658a4c1 JSdialog: Don't add margins to multiple inner containers
Example: macro select dialog is getting set with multiple inner margins
- Simplify the CSS so we only target one sub element
- Remove unnecessary code (no need to add exception for sidebar and
formulabar)

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ibc35e6b8c37badbbe27b411c21986ddda0e27ef3
2022-05-04 15:20:43 +03:00
Pedro Pinto Silva 8a4d7d19cd Macro dialog: remove unecessary CSS rules
with 496256a96b we no longer need the
pre fix -table in the ids plus better to just remove any non essential
bits and share more CSS between places

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ica8ef3db2ed52a379cb75437d7b147c8b42bbd7b
2022-05-04 15:20:43 +03:00
Pedro Pinto Silva 7c2a63537e JSdialog, p element: Remove #table- from CSS it was removed from JS
from: 496256a96b

- let's not target absent ids on the CSS side
- Also better avoid target boxN (e.g.: box3)

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I41bf1540c634dcde8111ae0192a70772153c592b
2022-05-04 15:20:43 +03:00
Miklos Vajna aeea180e7f wsd: fix log message typo in COOLWSD::innerMain()
This went wrong when the forward-port of commit
b96e8b7c77 (wsd: correct use the exit code
from UnitWSD, 2021-11-29) didn't adapt the string to the updated
filename.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: Ica8047dc05dedf9e075663f405dea89913cf789a
2022-05-04 09:05:48 +02:00
Rash419 3e095928aa fix:cypress: abort without error in CI
Identified the faulty test, on heavy load the test gets stuck on waitUntil command
skipped the test for now

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: Ia4b7ca081098e7e5b6f15135304131521629e524
2022-05-04 11:13:14 +05:30
andreas kainz 592d27a409 Add color-scheme-dark.css support
@media (prefers-color-scheme: dark) setting
is available by use color-scheme-dark.css
instead of color-scheme.css

sure the scheme need some update
but there are other open points like
use dark color for document
use dark colibre icons

this is only the .css change
so no full dark mode update

Signed-off-by: andreas kainz <kainz.a@gmail.com>
Change-Id: I5c2adcbb75583a952f419af507d7cfe5c1343e3c
2022-05-03 10:40:35 +02:00
andreas kainz b3a88dd7bc writer notebookbar stylesview previews no padding
remove padding-top: 5px so there is no scrolling
needed for two rows.

Signed-off-by: andreas kainz <kainz.a@gmail.com>
Change-Id: I9a0450074cc55486d0f7de8a39b7edff8e66c752
2022-05-03 09:58:07 +02:00
andreas kainz 96bea09485 Sidebar RTL fixes
border on left and right so it work also for RTL languages

Signed-off-by: andreas kainz <kainz.a@gmail.com>
Change-Id: Ic973cfee4c8fd563008477ab38a9e4e3e69c8300
Signed-off-by: andreas kainz <kainz.a@gmail.com>
2022-05-03 09:50:02 +02:00
Jan Holesovsky 8bc02b71e8 Improve error reporting related to remote config
Signed-off-by: Jan Holesovsky <kendy@collabora.com>
Change-Id: Ie458464d60bf8e939c1408e1b0feb91090d080e4
2022-05-02 22:00:57 +02:00
Jan Holesovsky 3b6c531389 Allow specifying the remote_font_config URI in the remote_config
This way, there is only one entry point for all the remote
configuration, and the remote_font_config does not have to be specified
in coolwsd.xml, in case the remote_config JSON specifies that.

Signed-off-by: Jan Holesovsky <kendy@collabora.com>
Change-Id: I857bab3d300ddb5c0c3df0a9f62eda20f43c3ff7
2022-05-02 22:00:57 +02:00
Gökay Şatır e6af40f7fd fix: isVisible is not a function error.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: Ia63a0098b65540462dce32b54cb4910b388f9065
2022-05-02 21:20:50 +03:00
Gökay Şatır c860303345 increase the dialogue timeout to 10 secs.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I2eb5f22bd9d0f02e605179e4246fcaa89d3ade32
2022-05-02 16:42:28 +03:00
Ayhan Yalçınsoy b6b1f77c81 Translated using Weblate (Turkish)
Currently translated at 100.0% (444 of 444 strings)

Co-authored-by: Ayhan Yalçınsoy <ayhanyalcinsoy@pisilinux.org>
Co-authored-by: PhD. Ayhan YALÇINSOY <ayhanyalcinsoy@pisilinux.org>
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: I48a3cec58f5b79ea1e69fa92f3b45706014dfb6b
2022-05-02 15:09:48 +02:00
Alexander Gabilondo 353021be37 Translated using Weblate (Basque)
Currently translated at 98.6% (438 of 444 strings)

Co-authored-by: Alexander Gabilondo <alexgabi@openmailbox.org>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/eu/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ibc52f414f57843e31c144971ce37264eb5059a1c
2022-05-02 15:09:48 +02:00
Pedro Pinto Silva 9b85bfd7d2 Translated using Weblate (Portuguese (Brazil))
Currently translated at 100.0% (444 of 444 strings)

Translated using Weblate (Portuguese)

Currently translated at 100.0% (444 of 444 strings)

Co-authored-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Co-authored-by: Pedro Silva <pedro.silva@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pt/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pt_BR/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I23cc55c918f72a8cc91429c03fa86f4e101a664c
2022-05-02 15:09:48 +02:00
Nathan db6125a8df Translated using Weblate (French)
Currently translated at 99.7% (443 of 444 strings)

Co-authored-by: Nathan <bonnemainsnathan@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/fr/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I56551b4d62d8d2cdb1a19d6b20c4ff26bec498be
2022-05-02 15:09:48 +02:00
Martin Srebotnjak ad33bfd648 Translated using Weblate (Slovenian)
Currently translated at 100.0% (444 of 444 strings)

Translated using Weblate (Slovenian)

Currently translated at 99.7% (443 of 444 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: Ie519a835e45d5308e3dac9eb19b879f19dc1b726
2022-05-02 15:09:48 +02:00
Adolfo Jayme Barrientos a54ffd9c32 Translated using Weblate (Asturian)
Currently translated at 10.9% (50 of 457 strings)

Translated using Weblate (Asturian)

Currently translated at 10.9% (50 of 457 strings)

Co-authored-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/ast/
Translation: Collabora Online/Help
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I6707e1c208d3d669bd5535ca61110b8ac2467778
2022-05-02 15:09:47 +02:00
Ihor Hordiichuk 4a529ce6c7 Translated using Weblate (Ukrainian)
Currently translated at 100.0% (444 of 444 strings)

Co-authored-by: Ihor Hordiichuk <igor_ck@outlook.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/uk/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Id48bcc47729d6deb8dac79e5b3461ebcd8fa34be
2022-05-02 15:09:47 +02:00
Matthaiks fe3e67a717 Translated using Weblate (Polish)
Currently translated at 100.0% (444 of 444 strings)

Co-authored-by: Matthaiks <kitynska@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pl/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I354f7531d6b9833632621e141515ca2d81ce7fbe
2022-05-02 15:09:47 +02:00
Sebastiaan Veld 9a4925cae0 Translated using Weblate (Dutch)
Currently translated at 68.4% (313 of 457 strings)

Translated using Weblate (Dutch)

Currently translated at 67.6% (309 of 457 strings)

Translated using Weblate (Dutch)

Currently translated at 100.0% (444 of 444 strings)

Co-authored-by: Sebastiaan Veld <sebastiaan.veld@gmail.com>
Co-authored-by: sebastiaanveld <sebastiaan.veld@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/nl/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/nl/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I5690268d76c984a1920fc232c5b405b7e02a9806
2022-05-02 15:09:47 +02:00
Sveinn í Felli e4416b1c27 Translated using Weblate (Icelandic)
Currently translated at 100.0% (444 of 444 strings)

Co-authored-by: Sveinn í Felli <sv1@fellsnet.is>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/is/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I031d23fee8a424def9ef4fda111ea346d7edb495
2022-05-02 15:09:47 +02:00
Yaron Shahrabani 97f64cc908 Translated using Weblate (Hebrew)
Currently translated at 100.0% (444 of 444 strings)

Co-authored-by: Yaron Shahrabani <sh.yaron@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/he/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I0f7a8cde5b6eb9d4fdef446fc43fb8024ec15709
2022-05-02 15:09:47 +02:00
Andras Timar 005177ba14 Translated using Weblate (Spanish)
Currently translated at 100.0% (444 of 444 strings)

Translated using Weblate (Hungarian)

Currently translated at 100.0% (444 of 444 strings)

Translated using Weblate (German)

Currently translated at 100.0% (444 of 444 strings)

Co-authored-by: Andras Timar <andras.timar@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/de/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/es/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/hu/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ibbe81647634c4d95f75385659f3618e65de5424d
2022-05-02 15:09:47 +02:00
Ashod Nakashian 6458e00bc4 wsd: return status from writeOutgoingData
Without knowing whether the write succeeded
or failed, we cannot trust errno has our
error or some earlier and unrelated error.

This was caught when there were two sockets,
one of which disconnected. The write to the
disconnected one returned -1 and set errno
to ECONNRESET. We subsequently wrote to the
second socket, which succeeded. However,
because errno wasn't reset, and since
writeOutgoingData didn't return anything
to indicate the success, errno's ECONNRESET
value meant the second socket was also
disconnected, which was incorrect.

writeOutgoingData now returns the last return
value from writeData so we can make informed
decision as to whether to check errno or not.

Also, to avoid incorrecly propagating errno,
we now capture errno only when readData and
writeData return -1. This has the nice
side-effect that we reset errno to 0 when
no errors occur during our call.

Change-Id: I911b31390f37cc71938bc4a6ae75393dbf24bb9d
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-04-30 20:41:26 +01:00
Gökay Şatır 880877a6df Filter update-check messages.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: Ib4526168fda8aac0cfac1cdf67b13f2485f6183b
2022-04-30 21:24:08 +03:00
Gökay Şatır b713340f24 Improve section existence check for wizard.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I4125a8fb36358e127d9ba4212debf4c9374066dd
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
2022-04-30 21:24:08 +03:00
Gökay Şatır efe1ba3c5e Revert "Prevent errors on load when section may be missing"
This reverts commit 3db9ba06d1.

Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
2022-04-30 21:24:08 +03:00
Szymon Kłos bef3556a1f formulabar: fix focus also on mobile
- also hide autosum button - it was hidden before conversion

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I68e9301a1b3a1b3710ca4da940152839bdc80c18
2022-04-29 12:36:02 +02:00
Szymon Kłos 318bca236f notebookbar: don't show error on language menu hover
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ibe3277dadfba51606b590d8b33b2afa372356cab
2022-04-29 10:52:04 +02:00
Szymon Kłos c213992462 formulabar: add missing buttons
- sum dropdown
- equals / start formula

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I604e72388d0d1891fbadc675e47b6fe03a5f80cb
2022-04-29 10:52:04 +02:00
Szymon Kłos 475b62cdb1 formulabar: use uno command not key input to accept formula
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I9c4d5b12df70579adf54e0bf833048315ec98f6e
2022-04-29 10:52:04 +02:00
Szymon Kłos 3db9ba06d1 Prevent errors on load when section may be missing
In the past I've seen very often that for example
commentList section was missing but used without any
check.

This commit checks if section exists before use and
warns if it doesn't so we can see that in the console
logs.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Idca23c5327f5b36277479fcd3f44b92920466474
2022-04-28 14:16:18 +03:00
Szymon Kłos fc6411bd18 Remove console.error with notebookbar state
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ie482c399fc029e0dac835af990aeb0a9d716f02c
2022-04-28 14:16:18 +03:00
Pedro Pinto Silva ac61c52dfc Listbox: remove unnecessary margin and fix padding
The additional margin was affecting the surrounding elements in some
browsers in the sidebar

Better to not call padding-right or padding-left specifically:
  - Better to use shorthand and make sure how the final padding will be
  - Better for RTL

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ia61d670580258187f9fd538dcc2f2a2e20be3bdf
2022-04-28 11:07:02 +02:00
Pedro Pinto Silva 1e1e8c3284 Listbox: do not multiple font-size
use the same font-size for listox no matter where it's placeholder
  - Multiplying would make it look too big in some places

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I6436baea5ed3018e4c4cad6078fdb51bfa0d068e
2022-04-28 11:07:02 +02:00
Pedro Pinto Silva 2d3105b839 Listbox: reduce height
with refactoring from 2da8de38df1660b205392391ebada7759ee8e2d6
and with the code now in onw place we can now use the 28px height that
was used only in the sidebar to have the same visual component be that
on a dialog or on the sidebar
 - Reduce from 32px to 28px (the opposite would make the component too
 big in the sidebar)

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I4d11f74219e55a2a05e0f1c9f70ff9a8c4a88c54
2022-04-28 11:07:02 +02:00
Pedro Pinto Silva 2384e3eff2 Refactoring and generalize listbox, menubutton: share more CSS
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I4c91ea032a50df0490fe11b26cdded10074dc03a
2022-04-28 11:07:02 +02:00
Pedro Pinto Silva 4ccfdd598b Refactoring and generalize spinfield: share more CSS
Avoid to place rules within jssidebar.css that should be global
(it should affect any jsdialog class) and let jssidebar-only exceptions
in jssidebar file

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ib950f5c13522f3d91139d8eac52b5b4daa22fe05
2022-04-28 11:07:02 +02:00
Pedro Pinto Silva fadc3fb3b5 Fix sidebar select (dropdown) alignments
When using position relative the elements will still occupy and affect
space around. This was flagrant when using chromium.

https://archive.org/download/t-34772-writer-selected-img/T34772-relative-shouldbe-absolute.png
as you can see dropdown with arrow are being dragged outside

Also use margin-block-start to add vertical start margin (e.g. top) to
element depending on the element's writing mode, directionality,
and text orientation.

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: If580fba061d8cb274a60ad5f780882c772059162
2022-04-28 11:07:02 +02:00
Pedro Pinto Silva ca10b8bbdf Fix sidebar spinner units alignments
When using position relative the elements will still occupy and affect
space around. This was flagrant when using chromium.

https://archive.org/download/t-34772-writer-selected-img/T34772-relative-shouldbe-absolute.png
as you can see the spinner with units are being dragged outside of the
screen

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I292f83dc4840ceb1e12923a9aaf1fe56dbe14131
2022-04-28 11:07:02 +02:00
Pedro Pinto Silva 10029f58fa Fix sidebar alignments when image is selected
Remove additional margins and right positions that were affecting FF
https://archive.org/download/t-34772-writer-selected-img/T34772-writer-selected-img.png

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I7d822d3bb05f4d476f6a066c28d686ad4e701c81
2022-04-28 11:07:02 +02:00
Henry Castro 455532c218 wsd: admin: fix typo
Change-Id: Ia9714fbadf7cdafa84fd58354e1b72dc36084ad3
Signed-off-by: Henry Castro <hcastro@collabora.com>
2022-04-27 09:18:21 +01:00
Henry Castro c000f119b3 browser: test: explicitly convert to number
Change-Id: I2dbecafcc1148aa69010eee822ee0fa30a5e6307
Signed-off-by: Henry Castro <hcastro@collabora.com>
2022-04-27 09:18:21 +01:00
Henry Castro 28c1fa2844 browser:test: ensure to write the stats to stderr
Change-Id: I5761e7567c306b964fd41eaa49d9fdcd41caea9d
Signed-off-by: Henry Castro <hcastro@collabora.com>
2022-04-27 09:18:21 +01:00
Henry Castro a48024ca78 browser:test: fix exception http or https protocol
Change-Id: Ia62833fb0cb448370b6fdf422d12e6b0ebbcff55
Signed-off-by: Henry Castro <hcastro@collabora.com>
2022-04-27 09:18:21 +01:00
Henry Castro 6f3c90c8a9 browser:test: exit process if uncaugth signal
Change-Id: I971e100cfbb5c428c6ee88d8b9f5413398250c50
Signed-off-by: Henry Castro <hcastro@collabora.com>
2022-04-27 09:18:21 +01:00
Henry Castro cdb72ca762 browser:test: add function serverReady
When the coolwsd server is ready, begin to
fork the load.js process to start the tile tests

Change-Id: I7846ce013b729eab54e5fd3ab81ce396406bcf0b
Signed-off-by: Henry Castro <hcastro@collabora.com>
2022-04-27 09:18:21 +01:00
Henry Castro 6bfe68ea93 wsd: add parameter --signal
To signal SIGUSR2 to parent to notify
that the server is ready to accept connections,
and begin the tests.

Change-Id: Ie936217243aa7a2e836f3d45cb508ede13fae8c5
Signed-off-by: Henry Castro <hcastro@collabora.com>
2022-04-27 09:18:21 +01:00
Henry Castro 16e6494a21 browser: test: fix stdio pipes
Ignore stdio pipes if no debug is set

Change-Id: I8b77a32324d77a87577759b878f612dfbca586f7
Signed-off-by: Henry Castro <hcastro@collabora.com>
2022-04-27 09:18:21 +01:00
Henry Castro 3879f8720f browser: test: fix missing 'DOCUMENT_SIGNING_URL'
Change-Id: Iac91872bdec8b89174ae900c9e388681dcf27da0
Signed-off-by: Henry Castro <hcastro@collabora.com>
2022-04-27 09:18:21 +01:00
Henry Castro 6c7d031d61 browser: test: replace GROUP_DOWNLOAD_AS variable
Change-Id: Id20d476bc04167fd40b9524625bc389344a3f60b
Signed-off-by: Henry Castro <hcastro@collabora.com>
2022-04-27 09:18:21 +01:00
Henry Castro 12f7022f69 browser: test: add process env NODE_PATH
if builddir != srcdir

Change-Id: I5bdec438aff67d3c70aceafbff0d3a4445d865c6
Signed-off-by: Henry Castro <hcastro@collabora.com>
2022-04-27 09:18:21 +01:00
Tor Lillqvist 8ff5f1c57c Restart ForKit when a downloaded font has been updated or removed
Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: I62b53bb4ff16eac3e122f9b6d702c69d2355595d
2022-04-26 17:26:20 +01:00
Szymon Kłos a465bc267f notebookbar: fix ui mode switch
previously without data in localstorage it started with
compact mode always

- reduce calls to local storage
- unify local storage entry name (no doctype)

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I2bf4776a6296d2c35ac974b3d108bce5e77a7614
2022-04-26 15:39:52 +02:00
Ashod Nakashian 0d027a9a56 wsd: test: disable verifySignature test with openssl 3
This is a temprorary patch until we can properly
migrate the verification code to openSSL 3.x.

Change-Id: I676ae3b5a1e0d27ef1d253dba2275f7de5fc08ff
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-04-26 14:08:48 +02:00
Tor Lillqvist 97a18768d7 Avoid using only "real" paths for the tmpfont thing
If I have used a path with symlinks in it when changing directory to
my build directory, what gets put in config.status as ac_pwd is that
path, not a realpath version. That then propagates to
ac_abs_to_builddir and to SYSTEMPLATE_PATH, which is what Makefile.am
passes for the --o:sys_template_path option to coolwsd.

To be on the safe side, do the tmpfonts dance both for the systemplate
path that might include symlinks and for one that has been realpathed.

Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: I7575120090986e6207497c5ce740aedd6075e48f
2022-04-26 13:59:29 +03:00
Pranam Lashkari 45c119ff21 draw: make sure page settings do not use term "slide"
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I8831f0a1edcbbe8e8ea08ad691f86c7a422a89aa
2022-04-26 15:58:09 +05:30
Pranam Lashkari 138a98385a wsd: do not set default close reason
we preserve original reason,
so setting default reason means always using default reason
and ignoring any other reason

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I837a13a129aa759a319406affc6e89425bf31361
2022-04-26 15:57:51 +05:30
Szymon Kłos 618c53de7a Remember last UI mode
This also makes us sure we are in sync due to
single point of knowledge about UI Mode

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ifefeee90666db7c341da52a7190ef09749b8e3ab
2022-04-26 11:05:47 +02:00
Ashod Nakashian fac6c01725 wsd: replace strrchr with constexpr
This avoids the runtime overhead of strrchr used
in logged filenames on iOS, which is unnecessary
on string literals, and adds unit-tests.

We also strip leading './' and '../' in other builds.

Change-Id: I56ec722d1400fad9165eb046d1bd8d4438241ca3
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-04-26 11:13:44 +03:00
Ashod Nakashian 14d96957cd wsd: log macro cleanup
* Simplify log macros.
* Reduce expanded lines (faster compilation).
* Avoid flushing (since we always use ostringstream).

Change-Id: Id10c1a75b5af5d8cdba62d768192ab0a6a9e0aca
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-04-26 11:13:44 +03:00
Ashod Nakashian 777463d9c5 wsd: automatically include a log prefix if provided
Change-Id: Ic542ec83ffa9c76478a4f1121caf3edf078f40a7
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-04-26 11:13:44 +03:00
Tor Lillqvist c3b76b4311 Define ENABLE_DEBUG in the iOS app Xcode project, not DEBUG
We don't have any ifdefs on DEBUG.

Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: I76b4fe8ebbce235e967d8b5275fea663d3fb8f9d
2022-04-26 11:13:14 +03:00
Andras Timar ac60989af5 Update l10n files for Weblate
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I54b671950843ea600aff7073e68e2636d51d02f9
2022-04-25 20:43:49 +02:00
Martin Srebotnjak 66738557ab Translated using Weblate (Slovenian)
Currently translated at 100.0% (441 of 441 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: I18acf3ab6b281567209b1fe2462a8c11af540ed7
2022-04-25 20:29:50 +02:00
Максим Белозеров dc77f4fbfb Translated using Weblate (Russian)
Currently translated at 55.5% (254 of 457 strings)

Co-authored-by: Максим Белозеров <mxite@ya.ru>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/ru/
Translation: Collabora Online/Help
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I86cad90016a81adda4d414eadc17d7ef6c9aecd8
2022-04-25 20:29:50 +02:00
Sveinn í Felli d2b7db240b Translated using Weblate (Icelandic)
Currently translated at 100.0% (441 of 441 strings)

Co-authored-by: Sveinn í Felli <sv1@fellsnet.is>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/is/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I1d7905ab8e434ad3517316940abc6d830727ce13
2022-04-25 20:29:50 +02:00
Adolfo Jayme Barrientos a5858c70fe Translated using Weblate (Spanish)
Currently translated at 100.0% (457 of 457 strings)

Translated using Weblate (Spanish)

Currently translated at 100.0% (441 of 441 strings)

Translated using Weblate (Catalan)

Currently translated at 100.0% (441 of 441 strings)

Translated using Weblate (Asturian)

Currently translated at 49.2% (217 of 441 strings)

Co-authored-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/es/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ast/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ca/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/es/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I9dcfd9e019d8fad2e5e178d30450cc89e60c7465
2022-04-25 20:29:50 +02:00
Pedro Pinto Silva ddb19199d9 Add tooltip to close document button
Normally these kind of button wouldn't need a tooltip but:
1. Doesn't hurt to add it
2. It helps the user with understanding what that btn does:
  - The button doesn't remove the current opened document
  - The button doesn't save and close
  - The button closes the document

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I45e63c4c7f42d314743702e6ff50b777527c4367
2022-04-25 20:24:45 +02:00
Pedro Pinto Silva 35cd9bcc5d Notebookbar: Fix rev-history Id, Capitalize Each Word
All NB items ids have EachWordCapitalized and are successfully target by
users/partners/users to change image for example, and expect them to be
have EachWordCapitalized:
- Notebookbar: Make rev-history -> Rev-History so it also can be
- Classic: Id remains "rev-history" in the case integrator rely on that
specific lowercase id
- Allow rev-history and Rev-History when checking id (Menubar.js)

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I7a5a31f78713fe43e1855021652500d0306c5ac4
2022-04-25 18:30:56 +02:00
Pedro Pinto Silva b93c47178b Notebookbar: Fix SaveAs Id, Capitalize Each Word
All NB items ids have EachWordCapitalized and are successfully target by
users/partners/users to change image for example, and expect them to be
have EachWordCapitalized:
- Notebookbar: Make saveas -> SaveAs so it also can be
- Classic: Id remains "saveas" in the case integrator rely on that
specific lowercase id
- Allow saveas and SaveAs when checking id (Menubar.js)

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ia92a442eadb34c4b4ae374e54835d7866f70df7a
2022-04-25 18:30:56 +02:00
Pedro Pinto Silva e5e7b34075 Fix leaflet-control alignment
context: https://archive.org/download/repair-doc-close-misaligned/repair-doc-close-misaligned.png

line-height, if the hard-coded px is needed, then it should be the
same value as the width and height so not 28px but 32px
as it's the values used in a.leaflet-popup-close-button.

But better to just rely on the unitless value that line-height can
accept then it will fit whatever the font-size and width the anchor has:
- Fix it by letting the web browsers align the content for us. Web
browser multiplies our number by the font-size value (1 times font-size)
, so no need to depend on specific px values for that.

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I4145231241a9acc540c684971e3bde46adb2304b
2022-04-25 17:48:07 +02:00
Pedro Pinto Silva f3fd524396 Revert "Fix leaflet-control alignment"
The commit message of this commit was correct but it seems I end up not
git adding the latest change which obviously is not initial but 1.

This reverts commit c80d4ca62e.

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I999e7e51ee36e4c162cc8d0a15bc9850fdd9c1fd
2022-04-25 17:48:07 +02:00
Pedro Pinto Silva c80d4ca62e Fix leaflet-control alignment
context: https://archive.org/download/repair-doc-close-misaligned/repair-doc-close-misaligned.png

line-height, if the hard-coded px is needed, then it should be the
same value as the width and height so not 28px but 32px
as it's the values used in a.leaflet-popup-close-button.

But better to just rely on the unitless value that line-height can
accept then it will fit whatever the font-size and width the anchor has:
- Fix it by letting the web browsers align the content for us. Web
browser multiplies our number by the font-size value (1 times font-size)
, so no need to depend on specific px values for that.

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I4145231241a9acc540c684971e3bde46adb2304b
2022-04-25 16:02:09 +02:00
Szymon Kłos 5aa5f6256b jsdialog: don't build iconview like container
Fixes not working iconview eg. in Fontwork dialog (selection)
regression from:
commit 496256a96b
jsdialog: remove table- prefix hack

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I53e85ebd281e2fd705bcb4848c1dfc3c776903f6
2022-04-25 15:59:23 +02:00
Szymon Kłos 8a7ed0b987 jsdialog: remove jquery and warn when not found iconview entry
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I006a8419a60606cbdd2199f876b7260c1f58cae3
2022-04-25 15:59:23 +02:00
Szymon Kłos df690019dd notebookbar: fix help items
regression from:
commit e8d759f18a
jsdialog: postprocess toolitems

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I0205184c4cfcb4cd9b571c8e346e94e108c4a519
2022-04-25 15:35:04 +02:00
William Gathoye 81847a87c3 README: correct URL to build machine
Signed-off-by: William Gathoye <william.gathoye@collabora.com>
Change-Id: If0baef05db6daa3c8bcd4908128481261ec30f41
2022-04-25 12:02:46 +02:00
Pranam Lashkari bad251d183 calc header: avoid reselecting selected row/col range
if right clicked on already selected row/column range,
don't reselect the right clicked row/column

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I718a0a727913c38bc506fd2b808fba8feaebb0c8
2022-04-25 15:18:16 +05:30
Rash419 0945c4d48b config,UI: change classic -> compact and notebookbar -> tabbed
Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I633a13927245ee6b4d750cd84c2b4577dca06d68
2022-04-25 13:56:10 +05:30
Szymon Kłos cc5b4441b3 formulabar: remove old tunneled dialog code
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ife5a13dad04794be5cab667e075676013f09d6d8
2022-04-25 09:59:56 +02:00
Szymon Kłos 52018664f4 autofilter: remove old jsdialog code
starting with co-22.05 core we don't need old
autofilter code as it is now unified with popups
handled in Control.JSDialog.js

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I613d76950c9c9d727be958607d25793a3a69c28a
2022-04-25 09:59:56 +02:00
Pedro Pinto Silva 5f7189d2cb Fix repair document item on notebookbar writer
Context:
Repair document on the Notebookbar is currently always a small item

https://archive.org/download/repairdoc-writer-smallitem/repairdoc-writer-smallitem.png

,it should be a bigtooltiem when the extra additional/optional item
Sign document is not available:
- Set it to small item and vertically stacked when hasSigning is true
- Set it to bigmenubartoolitem when hasSigning is false
Note: Make use of the newly added bigmenubartoolitem in
8d149d31db

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I26a8e1b721bf2550127eff1ccfdc44ab4876db52
2022-04-25 09:20:40 +02:00
Szymon Kłos acb0ed3bbd jsdialog: use only one handler for selection
this will allow us to avoid doubled messaged
and ugly bugs, setting selection in JS works as
async call and it's hard to not trigger own handler...

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ibeae30c04374116776413b19ebd8efca043e9c0e
2022-04-23 10:58:55 +02:00
Szymon Kłos abe204adc7 jsdialog: apply selection in textarea
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I9856002b7f72ce8db9f6d2116871804fc4763f3b
2022-04-23 10:58:55 +02:00
Szymon Kłos 256b50e926 cypress: fix after formulabar conversion to jsdialogs
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I0792e2b1e044220dc44ae8155ac7b30b47a7ea8d
2022-04-23 10:58:55 +02:00
Szymon Kłos cbde6f324a cypress: tunneled formulabar was removed
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I040bbc8c9a5c76a367de046acf2a05e6dfb88920
2022-04-23 10:58:55 +02:00
Szymon Kłos fc84a979ee formulabar: keep correct focus state
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I045bb301e0554803c8586d4b5bee97824a5670f4
2022-04-23 10:58:55 +02:00
Szymon Kłos 47c9040ca8 jsdialog: send special keys for rawKeyEvents mode in textarea
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ic4e6169315e5d0936158f0621869784b48153add
2022-04-23 10:58:55 +02:00
Szymon Kłos c4f5d2735f formulabar: move buttons to jsdialog implementation
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I2ad2c345435453456ad69c036b7d7e5a73a27550
2022-04-23 10:58:55 +02:00
Szymon Kłos 3ef60a9cab jsdialogs: formulabar
this patch handles formulabar generated with jsdialogs
for core version which supports that (>=co-22.05)
- jsdialog formulabar is implemented in Control.FormulaBarJSDialog.js

it does translation so instead of drawingarea we got input field,
later it sends events with modified type so core doesn't know about
any change in widget type

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I690409ec2e83e803ed9dfe3544e68b6521ae768d
2022-04-23 10:58:55 +02:00
Szymon Kłos 3144a9f8e0 Introduce map.dispatch(action) to share code in UI handlers
This will allow us to improve code sharing between jsdialogs
and menubar / toolbars.

In the future could be used instead of special buttons which trigger
actions from menubar in jsdialog (what creates temp Menubar instance...).

in jsdialogs toolitem which will trigger shared action from map.dispatch
is a type 'customtoolitem'

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: If528e8eb142b76d24cb9145cb265a505e7e9a5df
2022-04-23 10:58:55 +02:00
Szymon Kłos 4d9976becb jsdialog: a11y: ignore containers while traversing using keyboard
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I0c8006bbf63c4b33fe29387d5346d1044a2563ab
2022-04-23 10:58:55 +02:00
Szymon Kłos 496256a96b jsdialog: remove table- prefix hack
so we will not have problem with updates not catching
widgets with modified name - not needed not

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ifa29d3971120482c3dae4ede3db5bcf31ea1af95
2022-04-23 10:58:55 +02:00
Szymon Kłos e8d759f18a jsdialog: postprocess toolitems
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ib1a92486fea207b19476873bd30cb08845a5494d
2022-04-23 10:58:55 +02:00
Szymon Kłos c3cd6c902d jsdialog: don't interpret all strings as uno commands
example: toolitem without uno command but id

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I198fa3838e714251936de90f11e1d8d857025eef
2022-04-23 10:58:55 +02:00
Szymon Kłos a5e5a77950 jsdialog: create empty drawingarea
- we need to create all widgets
- later we receive update events...

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I766f28e012c7b9ce3cb33478cdc3e55cd44eaa83
2022-04-23 10:58:55 +02:00
Szymon Kłos 55b64dbb8e jsdialog: add symbols support for buttons
- symbols are standard images for buttons
- are shown as images: "symbol_<SYMBOL_NAME>.svg"

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I034c07ad299376837f65726f7ec1bceabb50ba01
2022-04-23 10:58:55 +02:00
Andras Timar f9e727ccf5 Fix 'Insert Comment' invoked by keyboard shortcut (fixes #4109)
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ib0f008d25ed9b508a3fbc002816b4729b5743314
2022-04-22 20:22:16 +02:00
Ashod Nakashian 89234116dc wsd: delay uploading if the last attempt had failed
Change-Id: I1c251fdeadf355b003a71408fba31d1ac975822f
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-04-22 17:23:34 +01:00
Ashod Nakashian 9e7a4ad3d0 wsd: needToSaveToDisk helper and improved autoSaveAndStop
Change-Id: I149a624a8acb005f441d79e0c1f4776e7a2d49c0
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-04-22 17:23:34 +01:00
Ashod Nakashian e3045b513c wsd: add canSaveToDisk helper
Change-Id: I8ad6c91ac05d60e29726a20d67799aa11714226a
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-04-22 17:23:34 +01:00
Ashod Nakashian 83e96e58bd wsd: add canUploadToStorage helper
Change-Id: Ieba59e3cfc5d26c78a118f8d4fae8a151ac62ef3
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-04-22 17:23:34 +01:00
Ashod Nakashian 8db2dc86fe wsd: do not prevent saving when storage is missing
Since we have the ability to quarantine documents,
we should save to disk even (or especially) when
we don't have a storage instance. This way we
can at least recover the document.

Although it's not clear when we will not have
a storage instance, if at all, separating saving
from the storage state is reasonable.

Change-Id: Ifa51ed3229424b567df8218b201ef914226db947
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-04-22 17:23:34 +01:00
Pedro Pinto Silva c43055f9f8 Remove toggle prefix from status bar and ruler
No need to indicate that those components are toggles since they
visually communicate there. Plus we are not using that prefix for
other toggles like "sidebar"

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Idb99d1e8505feb3adaa9378f0f96309cd3cf7158
2022-04-22 16:52:51 +02:00
Szymon Kłos ca57bb5b07 notebookbar: be sure it is initialized early
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I2820a09a478538d93512a760a9fb9ca0bcb8d49f
2022-04-22 15:14:04 +02:00
Szymon Kłos 6a5500aa8d Fix overflow for main-nav on UI mode swotch
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I0d88f16f5f9b1bd15ae7fe555934b049d142d6a1
2022-04-22 15:14:04 +02:00
Szymon Kłos 8d149d31db notebookbar: introduce bigmenubartoolitem
bigmenubartoolitem and inlinemenubartoolitem are items
which are able to execute actions defined in Menubar code
to help sharing the code

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I0f16320fb1f2bcb14b16e79f89b92617c8f9117e
2022-04-22 15:14:04 +02:00
Julius Härtl 04187501c1 Unify ui switcher naming
Signed-off-by: Julius Härtl <jus@bitgrid.net>
Change-Id: I6ec55bee2a04501ba7df50cb4abd677bc45b0c33
2022-04-22 15:14:04 +02:00
Szymon Kłos a3e191be53 Be sure that notebookbar is initialized correctly
- retry if we didn't receive confirmation from core
- required by core which sometimes have to ignore our
  request to activate notebookbar

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I1954ebf832772014c2c3caae25d84646f1734260
2022-04-22 15:14:04 +02:00
andreas kainz e7e7d5fd0c add collibre toggleuimode.svg icon
Signed-off-by: andreas kainz <kainz.a@gmail.com>
Change-Id: I16cbd880e4fb00c589b47a7d92c20d48a93c623a
2022-04-22 15:14:04 +02:00
Julius Härtl e8a9ec10e2 Add ui mode toggle to menu/notebookbar
Signed-off-by: Julius Härtl <jus@bitgrid.net>
Change-Id: I2ff96dfae4ba0b13f8842f81e795dff1680ecf79
2022-04-22 15:14:04 +02:00
Ashod Nakashian e9b26cdf53 wsd: use the default DH parameters in SSL
OpenSSL 3 deprecated the manual DH parameter
functions. Instead, it encourages the use
of the built-in parameters. Since this
API also works on the 1.1 version, we only
need the manual parameters for older versions.

Change-Id: I900cc11c3ca09f1d85b7d88cfbf537d802f69846
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-04-22 09:47:19 +02:00
Tor Lillqvist 551c3d96e5 Enable avoiding use of ETag for remote font files
Change the syntax of the remote font configuration JSON file. Now for
each font we can also have a "stamp" property that can be a time stamp
or whatever other random string that gets changed (by some automated
mechanism provided by system integrators) whenever the corresponding
font file has changed. If a such is provided we don't poll the ETag of
the font file but re-download it whenever its stamp in the JSON file
has changed.

The remote font configuration file now should look like this:

{
    "kind": "fontconfiguration",
    "server": "My pretty server name for admin console",
    "fonts": [
	{
	    "uri": "http://localhost/tml/MS33558.ttf"
	},
	{
	    "uri": "http://localhost/tml/SmoochSans-VariableFont_wght.ttf",
	    "stamp": "foo0"
	},
	{
	    "uri": "http://localhost/tml/B612-Regular.ttf",
	    "stamp": "foo3"
	},
	{
	    "uri": "http://localhost/tml/xxx.ttf"
	}
    ]
}

Where the value of the "stamp" properties can be any non-empty
string. The JSON file is checked once a minute. If it has changed it
is re-downloaded, and if the stamp of some font has changed, that font
file is re-downloaded.

When a font file is re-downloaded it is stored in a new file each
time. The old file is not removed as that will cause problems in
ForKit and Kit processes.

Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: Ib04b77e0fb9e1d9c33afdc14a5fed3ad0b12a409
2022-04-21 19:10:10 +01:00
Andras Timar 96262f58d4 Do not display About button on notebookbar when About box is removed (fixes #3528)
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I202a78806db3102c84bcf1dc33c19e8f186c5d42
2022-04-21 17:05:37 +02:00
Andras Timar 74816141cc We do not use tunneled sidebar any more
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: If3dc1dae35250c54d62e69396aea7df51873d4cb
2022-04-21 17:05:18 +02:00
Andras Timar 4c7332f44f Fix cypress test after InsertZWNBSP->InsertWJ
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ia21c27e80507d7be4b44935e0a7dc225ad0f7776
2022-04-21 15:01:57 +02:00
Andras Timar 920eef1c37 co-22.05: updated UNO command translations
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: If95d98abe786bfaa0481ffad61aadd470ad139b0
2022-04-21 10:33:56 +02:00
Andras Timar 36ae202f0d the correct command name is: .uno:PrintRangesMenu
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Idbf5216702e8cdbf47b9b2c184a98c5bba02aaad
2022-04-21 10:29:38 +02:00
Szymon Kłos d4d3f7e4bc Revert "co-22.05: mobile writer/insert_formatting_mark_spec.js"
This reverts commit 7e6f3d5590.
Because we have split online into branches, doesn't need to support
both cores and this fixes translation generation

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ib0f3dff74f5006321bd80e43100d58093f43b4d5
2022-04-21 10:16:05 +02:00
Szymon Kłos feb8b5824c 22.05 doesn't have InsertZWNBSP command
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I420dce5a86f679a08d2bc9cbcad07e0800871ae8
2022-04-21 10:16:05 +02:00
Ashod Nakashian 59a59f6de5 browser: make: remove duplicate .ts files from makefile
Change-Id: Iff5c26df9757f9dec18a4fcd3da464475f40e6a4
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-04-20 08:34:59 -04:00
Ashod Nakashian 2bf6f419a3 make: fail the build when the whitebox unittests fail
Change-Id: I2e4b483740eac67efffa96449347cc1453798b87
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-04-20 08:34:59 -04:00
Ashod Nakashian b7b7801d8a wsd: remove identical simulateSocketError override
Since both implementations are identical, there
really is no benefit to having two version.

Change-Id: I4a5288243291c0d5706df8e8870b918fab425317
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-04-20 08:34:59 -04:00
Ashod Nakashian 92c6428e4b wsd: minor log improvements
Change-Id: Iea317ac1a04163d9eb45b8ac2b6d1c4f9f77009c
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-04-20 08:34:59 -04:00
Ashod Nakashian b4e8975fbe wsd: minor cleanup of send-frame members
Change-Id: Ic2268780ea815611bf978c0c779ef737facc73fb
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-04-20 08:34:59 -04:00
Ashod Nakashian 16617bee2d wsd: fallback only when COOLStatusCode is missing
Since the json parser logs an error when the
entry isn't found, parsing both LOOLStatusCode
and COOLStatusCode almost guarantees at least
one ERR log entry. We should only fallback
when COOLStatusCode isn't found and avoid
erroring when we got what we wanted.

Change-Id: Icace964820c250f4ceba98281e57cb7c29fbd118
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-04-20 08:34:59 -04:00
Ashod Nakashian 4c1a168757 wsd: remove argument default-value
Single-use default argument.

Change-Id: I1085465c0dbdf6cbda934277feca61781b67f45c
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-04-20 08:34:59 -04:00
Ashod Nakashian 96adaa15d1 wsd: kill coolwsd_fuzzer
coolwsd_fuzzer predates actual fuzzing
with libfuzzer and is currently unsused.

Change-Id: Id095b165943ba14dbf525ddc607ad329f5d952d4
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-04-20 07:12:03 -04:00
Ashod Nakashian 6bc2d70dcb configure: choose the correct sanitizer library when fuzzing
We use -fsanitize=fuzzer-no-link when fuzzing is enabled,
but we fail to consider if other sanitizers are enabled.
It is usually the case that asan and ubsan are enabled
when fuzzing.

The fuzzing check is now done before the sanitizers
and the result is combined.

C++17 check is now improved and so are a few messages.

Change-Id: I44e36d19d77a47c21245b5fe9e690d860f91e84c
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-04-20 07:12:03 -04:00
Ashod Nakashian 827d9518c0 wsd: make: build the fuzzer binaries only configured with fuzzing
This reduces the build time significantly while also
minimizing the disk-space requirements for builds.

When configured with --enable-fuzzers the fuzzing
target binaries are built.

Change-Id: Ia8560d876f548d04ac085503e55a3a5dca90f590
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-04-20 07:12:03 -04:00
Dennis Francis e6f973e3e4 mocha-tests: fix build for CPointSet.test.ts
Signed-off-by: Dennis Francis <dennis.francis@collabora.com>
Change-Id: I8853995544c56c9a3bd522bacbf572bc1084cb17
2022-04-20 10:56:31 +05:30
Tor Lillqvist dafe863c3a Make the TranslateId things compile against co-22.05
The ifdef conditions seems a bit over-complicated but as long as it
compiles it is good enough for me. I don't remember the details from
my earlier work on this.

Also move the inclusion of svtools/strings.hrc after the inclusion of
L10n.h so that TranslateId gets defined before it is used.

Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: I9a1873dc3676c15c7fb4cde84c0e14bf56653443
2022-04-19 18:15:15 +03:00
Pedro Pinto Silva f81d6e8853 GitPod: Update core assets url to 22.05
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I8c60a39588503011b526419c358d3b93f6f237ce
2022-04-19 15:32:43 +02:00
Pedro Pinto Silva 58ec3c55e6 Fix missing sparklines icon on notebookbar, format tab
Add iconAlias and avoid duplicating svg

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I4a14da88c9e97e5541d224c2d1f29a99df19a7f9
2022-04-19 15:14:56 +02:00
andreas kainz 0679f1a707 add insertsparkline colibre icon
Signed-off-by: andreas kainz <kainz.a@gmail.com>
Change-Id: I8389680b3a0da4101e966295451ca37b73358e4e
2022-04-19 12:49:49 +02:00
Tomaž Vajngerl 41cec73d00 add sparkline action to the menubar and notebookbar
Just a to make the sparkline actions accessible from the menu
and notebookbar.

Signed-off-by: Tomaž Vajngerl <tomaz.vajngerl@collabora.co.uk>
Change-Id: I80a483397184a8a9c0eb28048b3636ec91b95081
2022-04-19 12:46:51 +02:00
andreas kainz bee7afdee4 Update welcome screen for smaler sizes and mobile
devices-mobiles.css
- rules for mobile wasn't needed
  everywthing is in welcome.css

welcome.css
- screen behind welcome dialog use --color-overlay
  as at every dialog
- no fixed width and height
  max-width and max-height was the old width/height
  width and height are now 95%
  dialog window was center justify
- content width is 96%
  when smaler than 500px padding was added to <p>
- fig get top an bottom margin
  so now all fig's have the same height
- hyperlinks use --color-primary
  and not underline
Signed-off-by: andreas kainz <kainz.a@gmail.com>

Change-Id: If921bc2abc3977930f7d60256d8011d8986a22c9
2022-04-19 11:41:44 +02:00
Mert Tumer 4d55ec5f30 fix firefox zooms in whole page on mobile
textarea focus makes firefox zoom in without
specifying viewport scale properties

Signed-off-by: Mert Tumer <mert.tumer@collabora.com>
Change-Id: Iea5c0e61af14dc8f05319570f84681ca2b76aed1
2022-04-19 12:00:16 +03:00
Yaron Shahrabani 61f9641033 Translated using Weblate (Hebrew)
Currently translated at 69.5% (318 of 457 strings)

Co-authored-by: Yaron Shahrabani <sh.yaron@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/he/
Translation: Collabora Online/Help
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ide851c064556dde71620e0fc3189b64be33df2b8
2022-04-19 09:47:42 +02:00
Rizal Muttaqin 10de7b079e Translated using Weblate (Indonesian)
Currently translated at 99.5% (439 of 441 strings)

Co-authored-by: Rizal Muttaqin <riz_17_oke@yahoo.co.id>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/id/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I9a980debd9a220047f2896d18bd7539f7e2e2e3f
2022-04-19 09:47:42 +02:00
Alexander Gabilondo 6681525e6a Translated using Weblate (Basque)
Currently translated at 94.7% (418 of 441 strings)

Co-authored-by: Alexander Gabilondo <alexgabi@openmailbox.org>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/eu/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I9dea7801ccd953f461359a4eaba8db25208fe261
2022-04-19 09:47:42 +02:00
Sargon-Isa dd14f2478b Translated using Weblate (German)
Currently translated at 100.0% (441 of 441 strings)

Co-authored-by: Sargon-Isa <Sargon_isa@hotmail.de>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/de/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Icd4dc20b250db8dde4cb2b4af082d9ede9a53800
2022-04-19 09:47:42 +02:00
Егор Ермаков ff85c086e0 Translated using Weblate (Russian)
Currently translated at 100.0% (441 of 441 strings)

Co-authored-by: Егор Ермаков <eg.ermakov2016@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ru/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I5044b3f04d2869ee12ad6d056ddeae7fa7d79b6c
2022-04-19 09:47:41 +02:00
Mert Tumer 22b5ccaa32 feedback dialog gets beyond the screen when keyboard is open
Signed-off-by: Mert Tumer <mert.tumer@collabora.com>
Change-Id: I7360ee28d1bd4c5be7412344591029b7e18fbd9e
2022-04-18 17:34:09 +03:00
Mert Tumer 258eb91978 mobile: Dont react screen size change and cursor updates on feedback
Screen size changes reacts keyboard states also updates the cursor
overlay. We are already avoiding this for mobile wizard, we need to
do the same for feedback iframe popup

Signed-off-by: Mert Tumer <mert.tumer@collabora.com>
Change-Id: Ic701847a1e81f672f9244f09e59b6fb8b5bc12d0
2022-04-18 17:34:09 +03:00
andreas kainz e06d44f5f3 Notebookbar dropdown arrow is visible at hover
Signed-off-by: andreas kainz <kainz.a@gmail.com>
Change-Id: Idc294d215d7191f28ed6e4090ab5734d44e6bfe7
2022-04-18 11:56:03 +02:00
Mert Tumer 4d5cd2b54b cypress: modify writer/annotation_spec test
now we dont need to click on the collapsed comment
because now after insert comment they will be selected
already.

Signed-off-by: Mert Tumer <mert.tumer@collabora.com>
Change-Id: Ica69e5a092f29896c1d872deb384d31b867dddc6
2022-04-18 10:22:31 +03:00
Mert Tumer e696ea776e writer: scrollto selected annotation if it is not in the screen
comments can get beyond the screen in a long list of comments
when selected and we need to manually scroll to up to see
the actual position of the selected comment. we must auto
scroll to that position instead.

Signed-off-by: Mert Tumer <mert.tumer@collabora.com>
Change-Id: If92e15839c0ff68cddf6558dccc8b6d113095d93
2022-04-18 10:22:31 +03:00
Mert Tumer d84265bcf6 select freshly added comments if the author is the same
Among Long and crowded list, comments can get lost when they are added
unless we select it. When they are selected they are highlighted
on the same level of the annotated text.

Signed-off-by: Mert Tumer <mert.tumer@collabora.com>
Change-Id: Id804dd26ce929f1db8f4b5ba05d5937c433e0018
2022-04-18 10:22:31 +03:00
Andras Timar 7bff2221a6 Do not display update infobar when the current version is higher (e.g. development version)
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Id17c28535fe0d47518189da25582d540bd597b81
2022-04-15 17:51:53 +03:00
Gökay Şatır 4e42a34b96 Attempt to fix:
error: call of overloaded ‘basic_string(const Poco::Dynamic::Var&)’ is ambiguous

Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: Ibaa77e94a8e12f1dbc38e40b14ce8184dafcd7bd
2022-04-15 17:32:41 +03:00
Tor Lillqvist f98900c73c Add a remote font download feature
The coolwsd.xml file can now contain a URI of a JSON file on some
server that contains URIs of fonts. These fonts are downloaded to the
coolwsd server. Just like the remote configuration thing, the URIs are
checked once a minute and the JSON or the fonts mentioned in it are
re-downloaded if their contents has changed.

If a font has been removed from the JSON file then the corresponding
downloaded could be removed, too. But there is no way to remove it
from core without restarting the whole COOL server, so we don't
bother.

We need to put the font in such a place so that its pathname is the
same both in the ForKit process (outside any chroot jail) and in a Kit
process (inside its own jail(), because even if it is in the ForKit
process that we call the LO core vcl API to load a "temporary" font,
code elsewhere in LO core re-opens the font file later, naturally
using the same pathname, when it is needed (see
FreetypeFontFile::Map() in vcl/unx/generic/glyphs/freetype_glyphcache.cxx).

Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: If78058ddff5ed05c7a82d7ea465a7a414fd0d861
2022-04-15 17:32:41 +03:00
Gökay Şatır df17064597 Add a comment for window.app definition into global.js file.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I111eda6182235a307b40a297466a1fb4a74ad5bf
2022-04-15 16:37:51 +03:00
Gökay Şatır 7c6c16f46b Added validation feature for window.app object.
This provides possibilities of more reliable testing and debugging.
See the comments in "docstate.js" file.

Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I28ba2098cbe7e206f363fb2b0acbf5c5c2bf155d
2022-04-15 16:37:51 +03:00
Gökay Şatır 4f4c11a886 Moved window.app variable into its own file.
"socket" and "console" variables are used at initialization, so they are left in global.js file.

Debugging of window.app object's variables is now easier.

Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: Ic2811ff45ce845cb32d15018eaa2fa9e140202d7
2022-04-15 16:37:51 +03:00
Rash419 9679c36432 jsdialog: in debug build added button in about dialog to open WidgetTestDialog
Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: Ib525515f27640114f5d8bc83314b63f006893d37
2022-04-15 15:18:31 +02:00
Ihor Hordiichuk 2869e34439 Translated using Weblate (Ukrainian)
Currently translated at 100.0% (441 of 441 strings)

Co-authored-by: Ihor Hordiichuk <igor_ck@outlook.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/uk/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I6769f19d1f5256869595da96bd764e45f1b27ec6
2022-04-14 23:26:49 +02:00
Oğuz Ersen 38840435a8 Translated using Weblate (Turkish)
Currently translated at 100.0% (441 of 441 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: Iab66268cfa79bce4dad967549288e25146a4d12e
2022-04-14 23:26:48 +02:00
Matthaiks 8aa249a1d4 Translated using Weblate (Polish)
Currently translated at 100.0% (441 of 441 strings)

Co-authored-by: Matthaiks <kitynska@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pl/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ibd1c4a963a7fabe6a51a5c0d907dbdaaf6627304
2022-04-14 23:26:48 +02:00
Andras Timar 2174ca693e Translated using Weblate (Hungarian)
Currently translated at 100.0% (441 of 441 strings)

Co-authored-by: Andras Timar <andras.timar@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/hu/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I723e2b0147f855f775fe463ecc7aeb1df03f54e3
2022-04-14 23:26:48 +02:00
Yaron Shahrabani d6a11409a7 Translated using Weblate (Hebrew)
Currently translated at 100.0% (441 of 441 strings)

Co-authored-by: Yaron Shahrabani <sh.yaron@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/he/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I512f9082d2263a414e821ab468aea15fd8759e94
2022-04-14 23:26:48 +02:00
William Gathoye 05629fd0ef Translated using Weblate (French)
Currently translated at 100.0% (441 of 441 strings)

Co-authored-by: William Gathoye <william+weblate@gathoye.be>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/fr/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I653287f3520c6d96a24c60871244873bde2e6bf7
2022-04-14 23:26:48 +02:00
Pedro Pinto Silva 5b0f95ace2 Translated using Weblate (Portuguese (Brazil))
Currently translated at 100.0% (442 of 442 strings)

Translated using Weblate (Portuguese)

Currently translated at 100.0% (441 of 441 strings)

Translated using Weblate (Czech)

Currently translated at 100.0% (441 of 441 strings)

Translated using Weblate (Portuguese (Brazil))

Currently translated at 98.4% (432 of 439 strings)

Co-authored-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Co-authored-by: Pedro Silva <pedro.silva@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/cs/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pt/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pt_BR/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I72dfd49276dee8427404b63a1ae488df47e783aa
2022-04-14 23:26:48 +02:00
Andras Timar 8bb96008b4 Update l10n files for Weblate
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I3a4ec94762bbc4490bb73ea2395492b4d6c85990
2022-04-14 16:45:10 +02:00
Pedro Pinto Silva 4e5c3c68b2 Translated using Weblate (Portuguese (Brazil))
Currently translated at 97.0% (426 of 439 strings)

Co-authored-by: Pedro Silva <pedro.silva@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pt_BR/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I1f1009230400718669e3078e2da21072247e43b1
2022-04-14 16:42:16 +02:00
Yaron Shahrabani 29ba8a4b53 Translated using Weblate (Hebrew)
Currently translated at 100.0% (439 of 439 strings)

Co-authored-by: Yaron Shahrabani <sh.yaron@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/he/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I0e71e744567ad8dda23eb70a2963474145a85b22
2022-04-14 16:42:16 +02:00
Pedro Pinto Silva 4d8ac478f9 Improve group_download_as: Rename dropdown menu
Remove the `as` from `Download as` because in here we have a dropdown,
it is already clear that the component is not an action in itself but a
dropdown to trigger more actions. If this was not a dropdown but
instead a toolitem that triggers a dialog, such as `Save as`, then it
would make sense to include `as`, but that is not the case

Related issue:
https://github.com/CollaboraOnline/online/issues/4564

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I65de9570800756e026d20534a84d52c29d4f8bd1
2022-04-14 15:22:37 +02:00
Pedro Pinto Silva 1f18df450c Improve group_download_as: replace icon
As discussed in https://github.com/CollaboraOnline/online/issues/4564
the current lc_downloadas2.svg is quite different form the surrounding
icons
- Remove and use new download icon more similar to colibre theme

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I5808af8a50c1f8025b38502ba5fcd2db3f98c9d5
2022-04-14 15:22:37 +02:00
Ashod Nakashian f6ca40b4fd wsd: do not close the socket while have data to read
The last burst of data arrives with POLLHUP.
If during the read we hit any errors, including
EAGAIN, for whatever reason, we may lose the
data if we don't attempt reading again later.

The only way to guarantee that we do not have
any more data to read, when we get POLLHUP,
is to poll until we either get no POLLIN or
read returns 0 indicating the socket is closed,

Oddly, read(2) sometimes returns 0 without
POLLHUP ever being set, and sometimes we
do get POLLHUP while POLLIN still set. This
implies that poll and read aren't consistent
in how they detect and report the close
condition. Luckily, with this patch we can
handle all cases without any complications.

This was caught through simulateSocketError,
which when it injects EAGAIN on the very
last read, when the socket is closed, causes
error as the response is partially or
completely lost (because we never read it).

The behavioral change should only be
observable with EnableExperimental.

Change-Id: I77260f98d5dd5050c5f9b202b9effd501191336b
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-04-14 10:48:45 +01:00
Ashod Nakashian 622e0ddcb4 wsd: add and use isWritable helper in session
The new helper corrects inconsistencies in
detecting writable sessions and improves
readability.

A writable session is one that is either
not read-only or can change comments
(in PDFs, which are otherwise read-only
documents).

Also fixes a bug in reusing the last editor
session to save. The condition should've
been !isReadOnly(), since sessions used
for saving cannot be read-only. Indeed,
the last editor couldn't possibly have
been read-only by definition.

Change-Id: I9860be287057050eca692568d43f77371964f80b
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-04-14 10:48:45 +01:00
Ashod Nakashian 0fc876bed4 wsd: correct active-session counting
The inWaitDisconnected state is mutually exclusive
with isViewLoaded. So that check was completely
useless. Instead, we want to check if the session
is still connected to the client, since isViewLoaded
implies that we aren't disconnected from the Kit.

This moves this logic to a helper in ClientSession
and streamlines the implementation of
DocumentBroker::countActiveSessions().

Change-Id: I06459708e4c59566aa2e2f1febdfdfe8dd491c35
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-04-14 10:48:45 +01:00
Ashod Nakashian ea7d1cf981 wsd: check the stop flag immediately after poll
The stop flag may be set through the callbacks
that the poll fires. In particular, errors
during socket plumbing can set the stop flag.
Since this flag is final and immediate, there
is no need to do the normal processing and
check it on the subsequent iteration of the
polling loop. This reduces the wait and we
clean up faster.

When we don't check for the stop condition,
we may end up uploading an extra time.
This is particularly problematic with
always_save_on_exit, which forces the
upload. Since it sets the stop flag
after it uploads, we should detect it as
soon as possible and no do extra poll.

The change is guarded by EnableExperimental
to avoid unexpected behavior.

Change-Id: I67815e70383caabaf29aa4921e0c421c3e5ff96c
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-04-14 10:48:45 +01:00
Ashod Nakashian 806cb5676b wsd: detect ECONNRESET and EPIPE after writes
This extends the detection of connection termination
for writes via ECONNRESET and EPIPE.
For some reason ECONNRESET was not detected.

This patch avoids extra polling to detect connection
termination and makes the cleanup faster.

The changes are guarded by EnableExperimental to avoid
any unexpected change of behavior.

Change-Id: I2ae3803f025d3cf756f86460e47aedc984249509
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-04-14 10:48:45 +01:00
Pedro Pinto Silva 85dd754fd3 Communication channels: Add more information
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I45922584e6ceb3ccf8067a8875368c9c1255a8a3
2022-04-14 11:29:42 +02:00
Pedro Pinto Silva b4346f22f3 Calc: Remove nonexistent row/columns menu unocommands
Introduced in 71ef338dc5 and in
8e815bdff4

this creative invention of new UNO commands is not the way to go.
We cannot invent uno command names and add them to unocommands.js, that
is a generated file, and generated from core. If we cannot pick the
desired string from unocommands.js, as last resort we can write out the
text, e.g. _('Column Width').

Affected:
.uno:ColumnWidthMenu,
.uno:RowHeightMenu,
.uno:ColumnFormatMenu,
.uno:RowFormatMenu

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I93adca8b416ae986171af2771adf4007d76d6422
2022-04-14 10:47:34 +02:00
Rash419 4dc39241f0 cypress: fix:ui-expander-label getting detached from dom
Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I471d220cd15b66693b6e43bcf5ee83276921ff9c
2022-04-14 13:23:21 +05:30
Pedro Pinto Silva 8a3d9154f6 Add Print Area (ranges) commands to notebookbar mode in Calc
Add new svg icon
Add menuitem to Layout tab with all the missing commands

Note: EditPrintArea was not be added because:
It triggers a dialog that is not async at the moment. When tested with
multiple users within the same server it does not work. If the one user
opens it the other one is not able to open it at the same time.
AddPrintArea was not added since it can also be problematic when multiple
users edit the same document.

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I276b6ab08b0f541aba9211d2595786a835d873b8
2022-04-13 13:53:36 +02:00
Pedro Pinto Silva dea9747ea3 Add Print Area (ranges) commands to classic mode in calc
There was only one way to successfully set a print rage: by defining
name ranges first and then within the dialog the tick the checkbox
'print range' under `Range options` expander.

All the other expected top menu entries within format main menu were
missing, Add except EditPrintArea and AddPrintArea:
- DefinePrintArea
- DeletePrintArea

EditPrintArea couldn't be added:
It triggers a dialog that is not async at the moment. When tested with
multiple users within the same server it does not work. If the one user
opens it the other one is not able to open it at the same time.

AddPrintArea wans't added because it might also be problematic when
multiple users edit the same document

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I943e82a005b485130833cf46e4687dde6a3e6e3f
2022-04-13 13:53:36 +02:00
Tor Lillqvist 4ab2810fa5 Fix JSON syntax error for some Hebrew strings
Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: I8921a0dddb24ce190dfd68393c8875c0cbf0f7c0
2022-04-12 19:10:20 +03:00
Tor Lillqvist 9bae3960da Add ar, he, and sl to match what we use for core
Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: I4b24955c77807dd6004e8c4c6461b72e988f4b76
2022-04-12 19:10:20 +03:00
Tor Lillqvist 4b7ecde829 When opening an attachment from the Mail app make sure it is opened read-only
Luckily the UISceneOpenURLOptions has a property openInPlace that
seems to be good to use for this. If openInPlace is false, that means
we should open the document read-only.

This is a stopgap fix to avoid the situation where the user does
changes to a document that is an attachment in an email message. Those
changes won't be saved anywhere they could be found later. Better to
keep the document read-only.

The ideal solution would be to ask the user right away where they want
an editable copy of the document to be stored. Later.

Signed-off-by: Tor Lillqvist <tml@iki.fi>
Change-Id: Ifd7d824d4f73cbf458f8597cd0974cf171b35be7
2022-04-12 19:10:20 +03:00
Tor Lillqvist 6d37e4c004 Fix pointer type warning
Signed-off-by: Tor Lillqvist <tml@iki.fi>
Change-Id: I07da296f8ef1533dae0f379a39984609ecce2a76
2022-04-12 19:10:20 +03:00
Tor Lillqvist 46fff02d15 Make it possible again to open documents in this app from other apps like Mail
We keep open documents in the view controller stack. If you already
have one document loaded into this app, and then in Mail select an
attachment or in Files select a document to be opened in this app, it
will be loaded so that when you close it, you will be back editing the
earlier document.

Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: I921907a2cbf8220a45b6dc0f304ba7eaec0befbc
2022-04-12 19:10:20 +03:00
Tor Lillqvist 9bb91a84b4 Comment out leftover NSLog() call
Signed-off-by: Tor Lillqvist <tml@iki.fi>
Change-Id: Ia84c03a68868bcce1aebab36b7da9db1da9e07c4
2022-04-12 19:10:20 +03:00
Tor Lillqvist add0fe8d1d Give a storyboardIdentifier also to DocumentBrowserViewController
Signed-off-by: Tor Lillqvist <tml@iki.fi>
Change-Id: I4919cbbf26b1b0fba9b790de88725e95b99374ae
2022-04-12 19:10:20 +03:00
Tor Lillqvist 926ffe22b8 Add (commented-out) sleep to make editing the app easier when not starting it from Xcode
Signed-off-by: Tor Lillqvist <tml@iki.fi>
Change-Id: I00338d7738d94c736ef03ac990d416682f4726be
Signed-off-by: Tor Lillqvist <tml@iki.fi>
2022-04-12 19:10:20 +03:00
Ashod Nakashian 26348a9785 wsd: test: move StringVector tests to StringVectorTests
WhiteBoxTests.cpp is by far the slowest TU
to compile (taking minutes) and gcc started showing
'note: variable tracking size limit exceeded'
and recompiles, which doubles the time.

This moves the StringVector tests into a new
home, which reduces the size of WhiteBoxTests.

Change-Id: Ia4e8daa921fb941815ad7e68f4dbb964fb2cd93e
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-04-12 07:39:07 -04:00
Ashod Nakashian 480fb7b931 wsd: move tokenizer helpers into StringVector
In an attempt to reduce the size of Util.{c,h}pp
which has grown to contain all sorts of unrelated
helpers, we move StringVector helpers into
the StringVector.{c,h}pp files.

This makes the code better organized.

Change-Id: I152f341606807ae66253415b951bc9f89b09df57
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-04-12 07:39:07 -04:00
Ashod Nakashian 264bdec250 wsd: test: move Authorization tests to RequestDetailsTests
And cleanup includes to reduce build time.

Change-Id: If2e242e6688b788b91d62351ef555b31aad1ecde
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-04-12 07:39:07 -04:00
Ashod Nakashian 0403a0c0fe wsd: test: split out RequestDetails tests
WhiteBoxTests.cpp is by far the slowest TU
to compile (taking minutes) and even gcc gives
'note: variable tracking size limit exceeded'
and recompiles, which doubles the time.

This extracts the RequestDetails tests into
its own file to better parallelize the build.

Change-Id: Ic8d54d06223a122bc1ccf73cfa216e2b3a8f32a5
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-04-12 07:39:07 -04:00
Andras Timar a88738e22d Fix fallback welcome dialog on phone + other backports from online welcome dialog
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ifdf373c2c0b5a0962610d5fcb35f5845603a7a03
2022-04-12 14:08:39 +03:00
Marco Marinello d61163857b [docker] Remove -j from core build
Signed-off-by: Marco Marinello <contact+nohuman@marinello.bz.it>
Change-Id: I851bb20c5c9cf983d558c248435b1d47731dcb51
2022-04-12 09:57:10 +02:00
Marco Marinello c544acfd22 [docker] Be consistent in number of processors used to build
Signed-off-by: Marco Marinello <contact+nohuman@marinello.bz.it>
Change-Id: I063b82ad9ee7b8795637ea058e1e15b8331c8818
2022-04-12 09:57:10 +02:00
Eric d3f68a4f51 Translated using Weblate (Chinese (Simplified))
Currently translated at 84.7% (372 of 439 strings)

Co-authored-by: Eric <alchemillatruth@purelymail.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: I81ea8ca7efc87b8cefc52e445f874afe3ce23b5a
2022-04-12 09:43:12 +02:00
Andras Timar 3f0ea0cfcc Translated using Weblate (Frisian)
Currently translated at 0.2% (1 of 439 strings)

Translated using Weblate (Chinese (Traditional))

Currently translated at 66.0% (290 of 439 strings)

Translated using Weblate (Venetian)

Currently translated at 22.3% (98 of 439 strings)

Translated using Weblate (Ukrainian)

Currently translated at 100.0% (439 of 439 strings)

Translated using Weblate (Turkish)

Currently translated at 100.0% (439 of 439 strings)

Translated using Weblate (Swedish)

Currently translated at 99.3% (436 of 439 strings)

Translated using Weblate (Slovenian)

Currently translated at 100.0% (439 of 439 strings)

Translated using Weblate (Slovak)

Currently translated at 98.1% (431 of 439 strings)

Translated using Weblate (Russian)

Currently translated at 100.0% (439 of 439 strings)

Translated using Weblate (Portuguese (Brazil))

Currently translated at 95.4% (419 of 439 strings)

Translated using Weblate (Portuguese)

Currently translated at 100.0% (439 of 439 strings)

Translated using Weblate (Polish)

Currently translated at 100.0% (439 of 439 strings)

Translated using Weblate (Norwegian Nynorsk)

Currently translated at 54.8% (241 of 439 strings)

Translated using Weblate (Dutch)

Currently translated at 98.6% (433 of 439 strings)

Translated using Weblate (Norwegian Bokmål)

Currently translated at 84.0% (369 of 439 strings)

Translated using Weblate (Latvian)

Currently translated at 21.6% (95 of 439 strings)

Translated using Weblate (Lithuanian)

Currently translated at 17.5% (77 of 439 strings)

Translated using Weblate (Kazakh)

Currently translated at 15.4% (68 of 439 strings)

Translated using Weblate (Japanese)

Currently translated at 52.6% (231 of 439 strings)

Translated using Weblate (Italian)

Currently translated at 94.5% (415 of 439 strings)

Translated using Weblate (Icelandic)

Currently translated at 99.7% (438 of 439 strings)

Translated using Weblate (Indonesian)

Currently translated at 97.9% (430 of 439 strings)

Translated using Weblate (Hungarian)

Currently translated at 100.0% (439 of 439 strings)

Translated using Weblate (Upper Sorbian)

Currently translated at 74.0% (325 of 439 strings)

Translated using Weblate (Croatian)

Currently translated at 86.5% (380 of 439 strings)

Translated using Weblate (Galician)

Currently translated at 73.8% (324 of 439 strings)

Translated using Weblate (French)

Currently translated at 99.7% (438 of 439 strings)

Translated using Weblate (Basque)

Currently translated at 86.5% (380 of 439 strings)

Translated using Weblate (Estonian)

Currently translated at 2.9% (13 of 439 strings)

Translated using Weblate (Spanish)

Currently translated at 100.0% (439 of 439 strings)

Translated using Weblate (Esperanto)

Currently translated at 89.0% (391 of 439 strings)

Translated using Weblate (Greek)

Currently translated at 99.7% (438 of 439 strings)

Translated using Weblate (Lower Sorbian)

Currently translated at 74.0% (325 of 439 strings)

Translated using Weblate (German)

Currently translated at 100.0% (439 of 439 strings)

Translated using Weblate (Danish)

Currently translated at 80.8% (355 of 439 strings)

Translated using Weblate (Welsh)

Currently translated at 74.0% (325 of 439 strings)

Translated using Weblate (Czech)

Currently translated at 100.0% (439 of 439 strings)

Translated using Weblate (Catalan)

Currently translated at 100.0% (439 of 439 strings)

Translated using Weblate (Valencian)

Currently translated at 68.1% (299 of 439 strings)

Translated using Weblate (Bulgarian)

Currently translated at 74.0% (325 of 439 strings)

Translated using Weblate (Asturian)

Currently translated at 48.5% (213 of 439 strings)

Translated using Weblate (Afrikaans)

Currently translated at 29.3% (129 of 439 strings)

Co-authored-by: Andras Timar <andras.timar@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/af/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ast/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/bg/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ca/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ca@valencia/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/cs/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/cy/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/da/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/de/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/dsb/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/el/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/eo/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/es/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/et/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/eu/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/fr/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/fy/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/gl/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/hr/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/hsb/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/hu/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/id/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/is/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/it/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ja/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/kk/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/lt/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/lv/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/nb_NO/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/nl/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/nn/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pl/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pt/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pt_BR/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ru/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/sk/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/sl/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/sv/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/tr/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/uk/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/vec/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/zh_Hant/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I10e7b04adcba24552eca7ecdb49b5f840099daa9
2022-04-12 09:43:12 +02:00
Andras Timar 15c73954d6 Update l10n files for Weblate
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ifef4e3fc1e5b3ae0aa3ab4b7f1e32fcbd59ab55e
2022-04-12 09:06:55 +02:00
Luna Jernberg b283f43626 Translated using Weblate (Swedish)
Currently translated at 99.3% (435 of 438 strings)

Co-authored-by: Luna Jernberg <droidbittin@gmail.com>
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: Iec0a86ec890db86f58937ef4a9f07d966118870b
2022-04-12 09:03:34 +02:00
Theo 7eb5db2b4a Translated using Weblate (Greek)
Currently translated at 93.6% (428 of 457 strings)

Translated using Weblate (Greek)

Currently translated at 99.7% (437 of 438 strings)

Co-authored-by: Theo <tbousiou@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/el/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/el/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I0d1f890be83be35a44ad3b5d2991a65f9febc931
2022-04-12 09:03:34 +02:00
Aron Budea efffb4fdfd browser: make Resolved string translatable
Signed-off-by: Aron Budea <aron.budea@collabora.com>
Change-Id: I8720f1369cb613cc0890adea0302d31feb57610a
2022-04-12 09:00:55 +02:00
Dennis Francis 0212d7abcc enable eslint for CDarkOverlay.ts
* Use unix line endings.
* Use tabs instead of spaces to indent.
* Remove eslint-disable flag.

Signed-off-by: Dennis Francis <dennis.francis@collabora.com>
Change-Id: Ic7fe77097c0e1b652636e5771fd4835d547ffa90
2022-04-12 12:23:23 +05:30
Pedro Pinto Silva 63add625e0 Add row/column height/width options to Calc, classic mode, format menu
Currently these options were only accessible via ontext menu
 - Expose these row and columns format options (height and width) also
 in the place user expects to find it (in classic mode): Format menu

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ib83c11345407394eef4d90d9c350a9e015291e93
2022-04-11 12:41:17 +02:00
Pedro Pinto Silva c659622f44 Fix StatisticsMenu arrow
Before we needed an exception for the StatisticsMenu, to position the
arrow. Now this is no longer needed. The component get well placed by
default

- Remove CSS exception and fix the inconsistency:
https://archive.org/download/cool-nb-bug-arrow-statistics/cool-nb-bug-arrow-statistics.png

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I7cf46c7c3d2593b571c91c0dedc197fdcae3a7ee
2022-04-11 12:40:55 +02:00
Pedro Pinto Silva 71ef338dc5 Calc: Add missing row/columns height/width menus to the notebookbar
Layout tab does not have the:

- optimal height/width
- width/height

User expects to see those options in the Layout tab (as in LO).
However it seems in LO those menus have all the row/column related
options and as this might be worst for the tablet/touch screen laptop
(to have all those option hidden in the dropdown) and since we already
have the insert/delete options as icons:
- Simply add height and width specific menus
https://archive.org/download/notebookbar-layout-add-row-column-menus/notebookbar-layout-add-row-column-menus.png

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Iebdc6df833bb3cb9d125e23be01e5197ec0d80c3
2022-04-11 12:39:19 +02:00
Mert Tumer d1317597e5 fix Notebookbar menus flickering
regression started with: 2315680808

added accidentally removed ","

Signed-off-by: Mert Tumer <mert.tumer@collabora.com>
Change-Id: I18bf3a44615085d9cf3066b696ac316dd9196254
2022-04-11 12:24:55 +02:00
Szymon Kłos d849663fe3 jsdialog: autofilter: popups: fix on mobile
- run autofilter as normal mobile wizard not a popup
  so we will use old styling (compatibility)
- close correctly popups so we can type after closing
  autofilter

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I26957e745c8bee9cece4cae2cc1ecd58c9341d23
2022-04-11 11:24:37 +02:00
Szymon Kłos 0f24290887 jsdialog: popups: don't close if nto received message from the server
it is easy to block the input in the app if we didn't close
popup on the server but already deleted HTML elements for it

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I91bd08d09a75a111dffd3525601dbff04652407f
2022-04-11 11:24:37 +02:00
Szymon Kłos 4c81d66532 jsdialog: autofilter: unify with regular popup (from co-22.05)
- in 22.05 core autofilter was welded and converted into regular popup
- for now we have to support both versions for 2021 and 22.05
- leter we need to remove Control.AutofilterDropdown.js
- special handling in Control.JSDialog.js should be separated later...

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I2c3aec1f2c18472d79024a0cf586e61f9339759a
2022-04-11 11:24:37 +02:00
Tomaž Vajngerl 50ab7c3e42 added sparkline related uno commands and context menu
This change adds all the new sparkline UNO commands and whitelists
all the sparkline UNO command for the context menu.

Signed-off-by: Tomaž Vajngerl <tomaz.vajngerl@collabora.co.uk>
Change-Id: I9dd6c4df9fd0ab9a6472e011b240a0fda7fc1ca3
2022-04-11 10:59:18 +02:00
Szymon Kłos 61214b0434 sidebar: fix alignment in chart deck
changes, mainly in Chart Editing Panel
(select chart -> press "edit chart")

- simplified sidebar panel label with arrow
  arrow has simpler rules without left/right (for RTL)
- turned off margins for .jsdialog.root-container
  what caused elements to overflow in chart panel
  (eg drawingarea with chart types)
- changed panel width definition from fixed pixels to
  "100% - scrollbar"
- RTL: converted left/right -> margin-inline-* for some
  spinfields in chart panel

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I3cfa1b0aa6ed1fdf3cf8ff54474c0c3e6ec94aaf
2022-04-08 14:56:49 +02:00
Mert Tumer b36894e39d don't set cursor to IBeam unless textinput has the focus
When the focus is lost, TextInput actually removes the mouse cursor
but there are other functions that sets the cursor and we need to
check whether the cursor is deleted or not before we set it.

Signed-off-by: Mert Tumer <mert.tumer@collabora.com>
Change-Id: I57622d9a7156148ce2a3cdbedc1af551581d0f8a
2022-04-08 14:01:31 +02:00
Pedro Pinto Silva 685e1a64e9 Update gerrit and git shields
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I95029916bda70206654eeadfc69180490f8ee532
2022-04-08 09:33:24 +02:00
Pedro Pinto Silva 08b2b39201 Add missing RowHeight and ColumnWdith to spreadsheet's context menu
Currently we only allow user to interact with columns' optimalWidth
and rows' optimalHeight but those are different from setting width
and height:
	- optimalWidth/Height allows the user to in a swift interaction remove
	all extra space surrounding its contents from those selected
	columns/rows
	- Setting width and height are just that forcing a particular size on
	the selected columns/rows no matter their content

Add possibility to set:
	- Row's height via context menu
	- Column's width via context menu

Screenshot comparing what we have VS what user expects (LO):
https://archive.org/download/cool-bug-missing-heighwidth-contextmenu/cool-bug-missing-heighwidth-contextmenu.png

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I7c5335f4996b57dac1f8062e71e7132682d174cf
2022-04-08 09:09:10 +02:00
Miklos Vajna b04bb490f1 test: increase buffer size in SocketProcessor()
The webframe buffer size used to be READ_BUFFER_SIZE (64k), but that's
no longer enough in unit-uno-command since
<a20e761cb1>
(jsdialog: fix toolboxes with children, 2022-03-17) if you have enough
fonts installed locally, because one toolbox in Writer is the font
dropdown, and that lists all the fonts you have.

getResponseMessage() already uses this increased buffer size, so this
also improves consistency.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: Ic2ad0e8e7443365395b16618d6c82465252ba455
2022-04-08 08:22:05 +02:00
Henry Castro aebbdcd695 feedback: fix Number conversion
the null value is converted to 0

.
Change-Id: Ie8ca2a41ab35252f3bb2187831ae9abd500777b6
Signed-off-by: Henry Castro <hcastro@collabora.com>
2022-04-07 21:30:03 +03:00
Henry Castro 3066db79f3 infobar: fix number conversion
the localstorage save the number as string

Change-Id: I5f1006c5dc434d7b145a5f4964b3f77f9df96f4e
Signed-off-by: Henry Castro <hcastro@collabora.com>
2022-04-07 21:29:31 +03:00
Pedro Pinto Silva bcf07a6bec Classic: Add missing split cell dialog trigger to writer
When working with tables it is now possible to to slip cells
where: Top menu: Table -> Split Cell...

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ia242358245cebb6bded55aa995bd8c80900b9aaa
2022-04-07 16:02:07 +02:00
Mert Tumer 2315680808 Fix clone formatting button does not have state on notebookbar
Signed-off-by: Mert Tumer <mert.tumer@collabora.com>
Change-Id: Ib5c2ff5629a8334d9c2866642e1d6d1c794aff82
2022-04-07 13:16:14 +02:00
Mert Tumer 30c0107ddf Correctly hide keyboard on mobile wizard
current approach is lacking the acceptInput state
because when we close the keyboard we need to set it
to false when we hide the keyboard otherwise canAcceptInput is not going
to change and controls for that will fail such as panStart and panEnd in
TouchGesture. Pannig while the mobile wizard is on causes keyboard going
on top of the mobile wizard and after that it causes endless screen
flickering.

Signed-off-by: Mert Tumer <mert.tumer@collabora.com>
Change-Id: I3248ef7f344fe53a57b7c77f4222d1fed5740896
2022-04-07 10:18:33 +02:00
Mert Tumer 35a7ccac9c Fix endless keyboard show/hide flicker
when we decide the keyboard is closed by checking the screen size
we should not force keyboard to close again instead we just need to
set the state

Signed-off-by: Mert Tumer <mert.tumer@collabora.com>
Change-Id: I486cda0598ab02e426aefd726475f0e70e0eee52
2022-04-07 10:42:35 +03:00
Ashod Nakashian 1da8d6dd24 wsd: use STATE_ENUM for http
Change-Id: Iaacf03856b9a07286f4fdf1f1eac34f2b75d2244
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-04-06 18:33:45 -04:00
Ashod Nakashian 4bec395c39 wsd: support serializing STATE_ENUM to ostream
Change-Id: I460e28488184f4f946eec9f5ae4f220af98cca56
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-04-06 18:33:45 -04:00
Ashod Nakashian d6a4069197 wsd: use STATE_ENUM for SessionState
Change-Id: Icfed4cb4db8af440582d0a9660ff3a00a4ce376f
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-04-06 18:33:45 -04:00
Ashod Nakashian a15635aef6 wsd: include the ClientSession name in logs
Change-Id: Id7a601f1674949a22b937dd03265df6d759e0e31
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-04-06 18:33:45 -04:00
Ashod Nakashian f5c936ee63 wsd: add LOG_ASSERT to replace assert with extra logging
In NDEBUG builds, where there is no assert macro,
we log at debug level to still find issues without
adding noise to the logs.

However, in ENABLE_DEBUG builds not only do we assert
but we also log at error level.

Change-Id: I773dbf7bb2b459e505e73d91505b13d8ed2ed6d8
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-04-06 18:33:45 -04:00
Ashod Nakashian d8745f288d wsd: logging and minor cosmetics
Change-Id: Ia6ba5b333c8caf742de27be46faf7265a1a777a5
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-04-06 18:33:45 -04:00
Ashod Nakashian a9aa2258b7 wsd: modernize UnitWOPI
Also makes the test more stable by
avoiding racing the first save with
the subsequent modify, which is now
delayed until the save and upload
are done.

Change-Id: Icdebc3f9f5a4d4ef680cb04fd32a85433d645e07
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-04-06 18:33:45 -04:00
Ashod Nakashian 1d37371944 wsd: minor improvements to logging and macros
This primarily combines the string-literals
that form the filename and line number to
reduce four calls to operator<< to only one.

Also fix LOK_ASSERT_STATE to use its argument.

Change-Id: I5e8eeb4f862fe8679b1e1f7a57412dc84dc30e92
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-04-06 18:33:45 -04:00
Ashod Nakashian 8cb8624b05 wsd: use STATE_ENUM for DocBroker states
Change-Id: I829b4e78185379705f9c6fb443feb1175c90f08d
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-04-06 18:33:45 -04:00
Ashod Nakashian b34de7fad1 wsd: move STATE_ENUM to common/StateEnum.hpp
With some minor modifications.

Change-Id: I5bc06bd96bbf201ccaee87170d052b4ad2a6c778
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-04-06 18:33:45 -04:00
Ashod Nakashian e1b1f38922 wsd: log the duration of save and upload when done
Change-Id: I17e16667f67ad3f0ad9bdd8c02aceafa62dd72f5
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-04-06 18:33:45 -04:00
Miklos Vajna 212e3c0818 common: isValidUtf8: ensure chunk len is 4 at max
UTF-8 is expected to encode a code point using 1 to 4 bytes.

Also check that the promised chunks are there before accessing them.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: I9b4f346738865fc18242e51a33c97e5b38ee90d8
2022-04-06 10:26:24 +02:00
Rash419 89f5989eab wsd: fix: log messages to coolwsd.log of firsthost and denied hosts
Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I2bdc7b21d11afa70214e8cb498b7e2dec77ef655
2022-04-05 22:34:15 +05:30
Andras Timar 5e4b7ed3ad Update debian/changelog for 22.05 test build
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I044bc58fc365585f34728ad7c121eef4790a1206
2022-04-05 14:13:49 +02:00
Pedro Pinto Silva 9c52e71a54 Fix mobile hamburger menu color
Due to recent changes on the color palette mobile wizard has changed
color from white to gray which causes the hamburger menu to appear not
going full height:
https://archive.org/download/cool-bug-mobile-hamburger-bg/cool-bug-mobile-hamburger-bg.png

Make sure hamburger menu uses the right color

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I4263ebf8f92979ffd5a5657fceb76843594d4d54
2022-04-05 14:07:24 +02:00
Pedro Pinto Silva fe43765d6a Mobile: Fix save icon and back icon overlay
Save icon (blue tick) should not be visible at all when the hamburger
menu is open

On Calc and it is also needed to hide formularbar while hamburger menu
is open because otherwise the it affects the size of the toolbar-wrapper
and consequently affect the flex box and how the hamburger menu gets
aligned

before: https://archive.org/download/cool-bug-mobile-save-above-back/cool-bug-mobile-save-above-back.png

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ifa5406a5a5c31172cde82e843949671fa95c6596
2022-04-05 14:07:24 +02:00
Rash419 c2be0b3a48 wsd: add: support to define multiple domain with '|'
fix: in regex, escaping special character fails to find host of the alias

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I19bfacc5e45af26832cb8c6a7d249e0c7de56624
2022-04-05 13:47:57 +02:00
Rash419 ff8236740f docker: added start-collabora-online.pl in docker files
Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I224c9dc017257403c7c92ba4be8c3d76e77f5270
2022-04-05 13:47:57 +02:00
Jan Holesovsky 031fb0e398 Script to rewrite coolwsd.xml based on the aliasgroup<number> envvars
This is to be able to define the alias groups via YAML easily, like:

    environment:
      - aliasgroup1=https://servername:443,https://its-alias:443,https://its-second-alias:443
      - aliasgroup2=https://second-servername:443,https://seconds-alias:443

Signed-off-by: Jan Holesovsky <kendy@collabora.com>
Change-Id: Ib653f7ab420fed342a00f5f5997a113da9739866
2022-04-05 13:47:57 +02:00
Rash419 13d644be2b wsd: removed host list from coolwsd.xml
- first host is by default allowed without any condition

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: Iacca38868f06a417cbb99984e2dac1eef727df6e
2022-04-05 13:45:51 +02:00
Szymon Kłos ab896c1c78 clipboard: add Paste Special also in context menu
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ie21afe6e73dac736d6db99a6a2320f0c2dbc2e71
2022-04-05 13:13:45 +02:00
Mert Tumer 5b869ec8fb Fix views after the first one change spellOnline status
the state is explicitly set by the first view but on makeRenderParams
function we dont check if the spellonline is empty or not, if empty
we should not change the state. It is only empty for views after the
first one

Signed-off-by: Mert Tumer <mert.tumer@collabora.com>
Change-Id: Ief5754bdae2eb952c2df9485fa323fc957da40a6
2022-04-05 11:20:05 +02:00
Jan Holesovsky 4110326720 Attempt to fix a codeql error
Running command in /home/runner/work/online/online: [/opt/hostedtoolcache/CodeQL/0.0.0-20220311/x64/codeql/javascript/tools/autobuild.sh]
[2022-04-05 08:02:27] [build-stderr] Skipping path /home/runner/work/online/online/**/*w2ui-1.5.rc1.js, which does not exist.
[2022-04-05 08:02:27] [build-stderr] Skipping path /loleaflet, which does not exist.
[2022-04-05 08:02:27] [build-stderr] Illegal '//' in exclude path
Error: 4-05 08:02:27] [ERROR] Spawned process exited abnormally (code 1; tried to run: [/opt/hostedtoolcache/CodeQL/0.0.0-20220311/x64/codeql/javascript/tools/autobuild.sh])
A fatal error occurred: Exit status 1 from command: [/opt/hostedtoolcache/CodeQL/0.0.0-20220311/x64/codeql/javascript/tools/autobuild.sh]

Signed-off-by: Jan Holesovsky <kendy@collabora.com>
Change-Id: I3bcaba31d24e9010af7d4736722cd2413d9e2ce9
2022-04-05 11:08:36 +02:00
Michael Meeks db63703d0c Validate as utf-8 all Websocket text messages in debug mode.
Ensure that rendersearchresult: is terminated, and identified as binary.

Change-Id: I84e83c63351cd0aac0923bf7c833b14c1be2c051
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-04-04 20:46:11 +01:00
Mert Tumer e399a32a82 add text prop to mobilebottombar menu items
most of them don't have the text where they need to have
otherwise the text is defaulted to id. We can use hint prop
to text because it has the same output due to the uno command
name convention.

Signed-off-by: Mert Tumer <mert.tumer@collabora.com>
Change-Id: I0dd38ebdaaa95c41225c49e02d7615007e8a4049
2022-04-04 21:15:14 +02:00
Mert Tumer 8954b16445 mobile: hide send feedback button
Signed-off-by: Mert Tumer <mert.tumer@collabora.com>
Change-Id: Ic4ee06d419ffcb13916ef74327366c57ef87193a
2022-04-04 21:14:08 +02:00
Gökay Şatır d7a533645a Correct iFrame links.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: Ia0f945f8f1e667541b7d8d7b1613538f65501fef
2022-04-04 21:13:35 +02:00
Pedro Pinto Silva 04fc0ab905 Mobilewizard: hide firstlineident base64 img
Add to elements that should be hidden on mobile

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I16a39b81ec969bc847b92708486b729baddc0c5e
2022-04-04 16:55:50 +02:00
Pedro Pinto Silva 9f09b13606 Mobilewizard: fix #belowparaspacing visibility
It should not be visible:
- Update id (it now has img as sufix)
- Add to display none elements

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I112cc52423a8862f6a4fb4d9ccaaf79298193721
2022-04-04 16:55:50 +02:00
Pedro Pinto Silva 7679958a36 Mobilewizard: Update hidden elements rules
Some elements were being on purposed set to be hidden but the ids have
changed and now the sufix img was added and so the CSS were not taking
affect anymore:
https://archive.org/download/cool-bug-mwizard-base64images/cool-bug-mwizard-base64images.png

Add sufix, update rules

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I0adf33dc64db70138e3530441137bf74275424ce
2022-04-04 16:55:50 +02:00
Pedro Pinto Silva dda3299ba1 Revert "Sidebar Widget right alignment with text-align"
This reverts commit 32f5c874e7.
The text alignment is causing some problems both on the sidebar and in
the mobile wizard:
- Sidebar arrows (from dropdown menus) position are affected due to this
- Mobilewizard: content is getting wrongly aligned to the right
- On top of that we should preffer start and end due to RTL instead of
right or left

https://archive.org/details/cool-txt-align-bug

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I02f22da0b14b02e7431ea26c16930554e3c13aa2
2022-04-04 16:55:50 +02:00
Andras Timar bb1e1f2798 remove a duplicated and an obsoleted variable
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Idd4bf2f136521f3163f1e275591246c8889481cf
2022-04-04 15:54:31 +02:00
Aron Budea 8733f3b281 browser: Disable browser reload on F5
In Impress, launch slideshow.

Signed-off-by: Aron Budea <aron.budea@collabora.com>
Change-Id: Ib4b72f2f1278eb30b0177da4e3c3ef9bfd6d11a8
2022-04-04 13:41:32 +02:00
Henry Castro c550a206e8 Remove the old vex-based welcome dialog code
... and make Welcome dialog optional for COOL

config: add welome url parameter

Signed-off-by: Henry Castro <hcastro@collabora.com>

config: add feedback url parameter

Signed-off-by: Henry Castro <hcastro@collabora.com>

config: add infobar-url parameter

Signed-off-by: Henry Castro <hcastro@collabora.com>

welcome: fix unhandled exceptions

Signed-off-by: Henry Castro <hcastro@collabora.com>

welcome: preprocess welcome file

added welcome-message.html

Signed-off-by: Henry Castro <hcastro@collabora.com>

welcome: clean up code related to vex welcome

Signed-off-by: Henry Castro <hcastro@collabora.com>

--enable-welcome-message is not necessary, when we specify a welcome URL, then it is enabled, otherwise it's user configurable

Signed-off-by: Andras Timar <andras.timar@collabora.com>

remove the unused welcome config settings

Signed-off-by: Andras Timar <andras.timar@collabora.com>

remove unused define ENABLE_FEEDBACK

Signed-off-by: Andras Timar <andras.timar@collabora.com>

do not install/package fallback welcome dialog, when welcome feature is not configured

Signed-off-by: Andras Timar <andras.timar@collabora.com>

remove welcome-message.html

Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I20aa6220362018b63aaebd114b2b661561823fbb
2022-04-04 10:53:07 +02:00
Tomaž Vajngerl 6c69202b18 fix build of HttpRequestTests when SSL is disabled
We can't test SSL when SSL is disabled.

Signed-off-by: Tomaž Vajngerl <tomaz.vajngerl@collabora.co.uk>
Change-Id: I231a3c7d32f848870e90594e2d1151d3a0911f9a
2022-04-04 10:05:19 +02:00
Pedro Pinto Silva 4f9315fa05 Fix IconView breakage on gecko based browsers (e.g.:FF)
Example: Fontwork dialog

Avoid using webKit and Blink only values such as "overlay" for overflow
instead, use auto which in practice has the same behavior.
Fixes:
https://archive.org/download/4d-1475b-46-fix-icon-view-breakage/4d1475b46-Fix-IconView-breakage.png

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I35e27204f0653f8eae973e830dcc701d0ca782b0
2022-04-03 20:15:50 +02:00
Pedro Pinto Silva 83b13fd454 Cypress: Do not hard target buttons based on their position
No need to specify if it's first or second button as there is always
only one primary button. On top of that this avoids maintenance work
whenever for some reason the button is not the first in line.

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Idd3ef60023e88d1a9a8fd6f465dc4c63c068debd
2022-04-03 19:29:49 +02:00
Mert Tumer bbc7f8e1b8 change blinking cursor color to black
now, it uses a css theme variable for the color
but it is a kind of light grayish and it is harder
to see in a crowded document.

Signed-off-by: Mert Tumer <mert.tumer@collabora.com>
Change-Id: Iec5a7efdb4cb385512226841b036eba3b3212427
2022-04-01 23:52:30 +02:00
Yunusemre Şentürk 40b7a5ffcc Android: change targetSdkVersion and compileSdkVersion to 30
Signed-off-by: Yunusemre Şentürk <yunusemre@collabora.com>
Change-Id: I528b51655b007bf6333ac143c961ab5d71fa85a5
2022-04-01 19:42:07 +02:00
Gabriel Masei 8789844b34 Notebookbar: set overflow visible before removing notebookbar when changing layout
Signed-off-by: Gabriel Masei <gabriel.masei@1and1.ro>
Change-Id: Ifde1603e33399a50173c78b37f20d1c30db9f536
2022-04-01 14:55:49 +03:00
Miklos Vajna f5836a5d1d sanitizers: fix unit-base, again
==4544==ERROR: AddressSanitizer: odr-violation (0x000002c40140):
  [1] size=104 'HostUtil::WopiHosts' ../wsd/HostUtil.cpp:12:34
  [2] size=104 'HostUtil::WopiHosts' wsd/HostUtil.cpp:12:34
These globals were registered at these points:
  [1]:
    #0 0x71f618 in __asan_register_globals.part.13 /home/vmiklos/git/libreoffice/lode/packages/llvm-llvmorg-9.0.1.src/compiler-rt/lib/asan/asan_globals.cc:362
    #1 0x7f00cb0f3d7b in asan.module_ctor (/home/vmiklos/git/libreoffice/online-san/test/../test/.libs/unit-base.so+0x10e0d7b)

  [2]:
    #0 0x71f618 in __asan_register_globals.part.13 /home/vmiklos/git/libreoffice/lode/packages/llvm-llvmorg-9.0.1.src/compiler-rt/lib/asan/asan_globals.cc:362
    #1 0x120e2ae in asan.module_ctor (/home/vmiklos/git/libreoffice/online-san/coolwsd+0x120e2ae)

==4544==HINT: if you don't care about these errors you may set ASAN_OPTIONS=detect_odr_violation=0
SUMMARY: AddressSanitizer: odr-violation: global 'HostUtil::WopiHosts' at ../wsd/HostUtil.cpp:12:34
==4544==ABORTING

All of HostUtil was duplicated between the test shared objects and
coolwsd, so remove it from the test objects and rather exclude
RequestDetails::getDocKey() from the test objects instead, which was
linked in but was not used in practice.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: Ia2147c89cf4230df97a8f45ac7d509aa11cdca97
2022-04-01 13:31:45 +02:00
Pedro Pinto Silva 4bad39b944 Calc Notebookbar: Add missing Define and Manage Names
With the reorganization of Calc tabs:
584e139bbd both Define and Manage names
disappear form the notebookbar. Add it back following the same new
organization.

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I06740e225090407117e8b5a6aff54b476368e358
2022-04-01 13:10:19 +02:00
Szymon Kłos 3038c3a46d jsdialog: a11y: make widgets focusable fixes #2965
- now widgets are accessible using tab key
- can close all dialogs with ESC key

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I4dcafb90f61bd05a91048ec1631d6eb851986c20
2022-04-01 11:40:04 +02:00
Ashod Nakashian 11f31b0ba4 wsd: test SSL hostname
Change-Id: I0895d90d2c9be8a76afd209446ae39cd33fa5d2e
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-04-01 10:33:55 +01:00
Егор Ермаков e11fcd478c Translated using Weblate (Russian)
Currently translated at 50.3% (230 of 457 strings)

Translated using Weblate (Russian)

Currently translated at 100.0% (438 of 438 strings)

Translated using Weblate (Russian)

Currently translated at 50.1% (229 of 457 strings)

Translated using Weblate (Russian)

Currently translated at 86.7% (380 of 438 strings)

Co-authored-by: Егор Ермаков <eg.ermakov2016@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/ru/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ru/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
2022-03-31 20:40:33 +02:00
Andras Timar d2275aaf19 Deleted translation using Weblate (Swahili)
Deleted translation using Weblate (Swahili)

Deleted translation using Weblate (Swahili)

Deleted translation using Weblate (Swahili)

Deleted translation using Weblate (Swahili)

Deleted translation using Weblate (trug (generated) (trug))

Deleted translation using Weblate (trug (generated) (trug))

Deleted translation using Weblate (trug (generated) (trug))

Deleted translation using Weblate (trug (generated) (trug))

Deleted translation using Weblate (trug (generated) (trug))

Translated using Weblate (Norwegian Bokmål)

Currently translated at 84.0% (368 of 438 strings)

Translated using Weblate (Spanish)

Currently translated at 100.0% (438 of 438 strings)

Co-authored-by: Andras Timar <andras.timar@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/es/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/nb_NO/
Translation: Collabora Online/UI
2022-03-31 20:40:33 +02:00
Andras Timar 003a05016d Updated UNO command translations
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ic4501ef0a10be078908349c269b63353bf499414
2022-03-31 13:04:14 +02:00
Егор Ермаков be2e91c03f Translated using Weblate (Russian)
Currently translated at 50.1% (229 of 457 strings)

Translated using Weblate (Russian)

Currently translated at 86.7% (380 of 438 strings)

Co-authored-by: Егор Ермаков <eg.ermakov2016@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/help/ru/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/ru/
Translation: Collabora Online/Help
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I5c985e65087f27562be63504352e26e9218ecbce
2022-03-31 10:42:39 +02:00
Adolfo Jayme Barrientos 2ec0062aa3 Translated using Weblate (Spanish)
Currently translated at 100.0% (438 of 438 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: I329f739e03650a9b26614c42b91f13ed1042d5b6
2022-03-31 10:42:39 +02:00
ButterflyOfFire 9dd711d8bb Translated using Weblate (Arabic)
Currently translated at 51.8% (57 of 110 strings)

Co-authored-by: ButterflyOfFire <ButterflyOfFire@protonmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/android-app/ar/
Translation: Collabora Online/Android app
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Iffdb0e31fa34ba98132cd5418685b770a74f35ff
2022-03-31 10:42:39 +02:00
Pedro Pinto Silva 35d0486b04 Translated using Weblate (Portuguese (Brazil))
Currently translated at 95.4% (418 of 438 strings)

Co-authored-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Co-authored-by: Pedro Silva <pedro.silva@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pt_BR/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I789ff4badb1a8cc32428d2da28d8e14a8e744a16
2022-03-31 10:42:39 +02:00
Elisa de Castro Guerra b8055d8596 Translated using Weblate (French)
Currently translated at 99.7% (437 of 438 strings)

Co-authored-by: Elisa de Castro Guerra <elisa.dcg@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/fr/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I404b68f82b4d192fb20ce77e3fbc9425703fb16e
2022-03-31 10:42:39 +02:00
Cor Nouws 7983e786ed Translated using Weblate (Dutch)
Currently translated at 98.6% (432 of 438 strings)

Co-authored-by: Cor Nouws <cno@nouenoff.nl>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/nl/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ia1b9b033a15c22cd052d29021124db8777b62d5a
2022-03-31 10:42:39 +02:00
Rob Pearson f8bf31b305 Translated using Weblate (English (South Africa))
Currently translated at 100.0% (438 of 438 strings)

Translated using Weblate (English (New Zealand))

Currently translated at 100.0% (438 of 438 strings)

Translated using Weblate (English (United Kingdom))

Currently translated at 100.0% (438 of 438 strings)

Translated using Weblate (English (Australia))

Currently translated at 100.0% (438 of 438 strings)

Co-authored-by: Rob Pearson <rob.dunedin@gmail.com>
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/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I14f00bf380814045b408c35cf7da60d5f553cf13
2022-03-31 10:42:39 +02:00
Stanislav Horáček 36c54ab235 Translated using Weblate (Czech)
Currently translated at 100.0% (438 of 438 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: Iaee7fc101812c092e2dc2986f968ca2cb62f5a62
2022-03-31 10:42:39 +02:00
Gökay Şatır 9771cb25e2 Translated using Weblate (Turkish)
Currently translated at 100.0% (438 of 438 strings)

Co-authored-by: Gökay Şatır <gokaysatir@collabora.com>
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: Ic981cd5244993ada666b12c1ad86934e1bba1581
2022-03-31 10:42:39 +02:00
Sveinn í Felli 7e7db0be56 Translated using Weblate (Icelandic)
Currently translated at 99.7% (437 of 438 strings)

Co-authored-by: Sveinn í Felli <sv1@fellsnet.is>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/is/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I22a6ba915ad01048cbb0eb5dcc8744752419f5f1
2022-03-31 10:42:39 +02:00
Andras Timar 076d50f149 Translated using Weblate (Norwegian Bokmål)
Currently translated at 84.0% (368 of 438 strings)

Translated using Weblate (Spanish)

Currently translated at 100.0% (438 of 438 strings)

Co-authored-by: Andras Timar <andras.timar@collabora.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/es/
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/nb_NO/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Id1868ac0ba3ad474254dde03675152e7022f7efc
2022-03-31 10:42:39 +02:00
Eloy Crespo 6f7057e226 Translated using Weblate (Spanish)
Currently translated at 99.7% (437 of 438 strings)

Co-authored-by: Eloy Crespo <eloy.crespo@collabora.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: I11316a9dc32f66a2ef47521332ef7bbb95ae269d
2022-03-31 10:42:39 +02:00
Weblate 2f12ac128d Added translation using Weblate (Swahili)
Added translation using Weblate (Swahili)

Added translation using Weblate (Swahili)

Added translation using Weblate (Swahili)

Added translation using Weblate (Swahili)

Added translation using Weblate (trug (generated) (trug))

Added translation using Weblate (trug (generated) (trug))

Added translation using Weblate (trug (generated) (trug))

Added translation using Weblate (trug (generated) (trug))

Added translation using Weblate (trug (generated) (trug))

Co-authored-by: Weblate <noreply@weblate.org>
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I9360707c54a2cbc36b7b5aaf603ae406a3939ead
2022-03-31 10:42:39 +02:00
SC 5f2adef8be Translated using Weblate (Portuguese)
Currently translated at 100.0% (438 of 438 strings)

Co-authored-by: SC <lalocas@protonmail.com>
Translate-URL: https://hosted.weblate.org/projects/collabora-online/ui/pt/
Translation: Collabora Online/UI
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I7964f522a1375c8b6282c004cae579af51fa954e
2022-03-31 10:42:39 +02:00
Ashod Nakashian 099246d67a wsd: unload when no Kit and nothing to upload
When the Kit dies and there is no data saved to
disk to upload, there is nothing to do but unload
DocBroker and log the fact.

With unit-test that simulates the situation by
killing the Kit of a modified document.

Change-Id: I7dcc0583c053d7166935d15d045fcf6624e43b4e
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-03-30 23:18:57 -04:00
Ashod Nakashian 7920656e36 wsd: remove dup entry in dumpState
Change-Id: I1b5e774d33e743dab98781dbe8609dffa8f5cb63
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-03-30 23:18:57 -04:00
Ashod Nakashian 28b3e165c2 wsd: remove unsed function in DocumentBroker
Change-Id: Ia310cce20b3ca2c95be98d75b13ec7e047cf19b9
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-03-30 23:18:57 -04:00
Mert Tumer 5dfbaa963d Revert "Improve edit button visibility when infobar, snackbar is present"
This reverts commit 3c1185aca3.

Signed-off-by: Mert Tumer <mert.tumer@collabora.com>
Change-Id: Ib9ad6e77d14e9388a0df2d94addc24ad948d463a
2022-03-30 18:44:25 +02:00
Mert Tumer 59607d29f0 welcome dialog: give focus to welcome dialog onshow
Signed-off-by: Mert Tumer <mert.tumer@collabora.com>
Change-Id: Ifc47d5467610f9e42c4ebe2edc22acf78b8be685
2022-03-30 18:44:25 +02:00
Pedro Pinto Silva ff020f5a25 Close iframeDialogs when pressing escape key
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ief0919048bce1a27bee1c6c263a693d487f9c7f2
2022-03-30 18:43:42 +02:00
Pedro Pinto Silva c85d4816df Add missing remove bullets for sidebar
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I6479f82a0661db2d4495667bd8ab10ab8ded4573
2022-03-30 15:12:52 +02:00
Pranam Lashkari f0026accbf l10n: if English variant is not specified then choose US as default
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: Iba4f96c75d69e52044f6460c4e26d0ab1d187d3c
2022-03-30 16:51:56 +05:30
Szymon Kłos c0b0897aa3 clipboard: notebookbar: show hint with keyboard shortcuts for Paste
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I73ba7d030810ccadbed828bce19e64f0cadbcfe7
2022-03-30 09:29:24 +02:00
Szymon Kłos f2b1c72ac8 jsdialog: prevent us from unsafe-eval error
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I641237fd5f446a9482f9edec92a29fd948491a60
2022-03-30 09:29:24 +02:00
Szymon Kłos 33ffdcb1e7 clipboard: notebookbar: show Paste Special entry
Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I485b70b8063fa6f2660d89ecd22bd72858b7a168
2022-03-30 09:29:24 +02:00
Szymon Kłos fbe10e41bb clipboard: introduce paste special menu entries
also move paste special popup code to the clipboard.js
so it is easiet to share code

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I86bb1696ff78e3cef5425478cc3fb56cf47916b8
2022-03-30 09:29:24 +02:00
Pedro Pinto Silva 3c1185aca3 Improve edit button visibility when infobar, snackbar is present
Before we were showing edit button only if the snackbar was not present
in the DOM. The goal here was to avoid overlapping elements (bar + FAB).

However and since the infobar can be present in the DOM but set to
display none this would cause another problem: no edit button and no
infobar visible to the user.

Solution:
 - Make use of the existent css class .hidden (which sets it to display
 none) so we can then in the css side show the Edit FAB only after them
 snacbar is dismissed.

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I31be2dfeb1bcb08b971074466a24db719320f8f4
2022-03-29 14:31:21 +02:00
Pranam Lashkari 892fa8f835 fixed edit button not appearing in ipads
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I949b3bc6d72541cba18867847cd43f0c6e57a32f
2022-03-29 14:31:21 +02:00
Mert Tumer aa7eda472b fix trackchange comments are not displayed on docload
fix typo on clearList loop that prevents skipping trackchange
comments from being deleted

Also I removed the line in WriterTileLayer.js containing
clearList because clearList is already called on importComments
function so it was unnecessary

Signed-off-by: Mert Tumer <mert.tumer@collabora.com>
Change-Id: Ic4086a80b126aec62e382078f53d68bc17da8a1c
2022-03-29 13:46:43 +02:00
Rash419 6a1bade376 wsd: handle locked_hosts case where different aliases might have different settings
so now real locked_host settings will be applied if the document accessed with alias

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: Ib76704a4bf2c3da5dc7b83bbad98fe40b5c03316
2022-03-29 12:18:31 +02:00
Rash419 31d8822758 wsd: cleanup: moved all parsing related static methods and containers to HostUtil.cpp
Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I8555522c6216f893b90ba4c27747314830f7abd2
2022-03-29 12:18:31 +02:00
Pedro Pinto Silva 8d9317daa8 Fix button order on HyperlinkDialog
Follow the same order as anywhere else such as annotations, JSdialog or
even tunneled dialogs:
primary action aligned to the left

Also update cypress test: Do not target button position related classes
instead, rely solely on main classes

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Iac209aa343f22ddfdbd5662eba43d7adaa3f0892
2022-03-28 14:15:44 +02:00
Mert Tumer e0511aa1bd sanitize-url: bump package version to 6.0.0
Signed-off-by: Mert Tumer <mert.tumer@collabora.com>
Change-Id: I7c58e3a417e7a247b781800a2ec93417d3b7bc8f
2022-03-28 14:38:20 +03:00
Mert Tumer dc1242ad9b annotation: fix redline compact-selected comments have wrong structure
Signed-off-by: Mert Tumer <mert.tumer@collabora.com>
Change-Id: I78f80e6e24306629bacbda57106c1c6b41dee09e
2022-03-28 11:06:45 +02:00
Mert Tumer 958b33d82d annotation: fix trackchange comment gets hidden on collapse
Signed-off-by: Mert Tumer <mert.tumer@collabora.com>
Change-Id: I34c4ff51f72b040ad1c6183519a13d3f45f56545
2022-03-28 11:06:45 +02:00
Ashod Nakashian 71e1e54eb5 wsd: hostname is needed for SSL SNI
Since the hostname argument is passed
to both the base class of SslStreamSocket
and SSL_set_tlsext_host_name, and since
the base class's getter, also called
hostname(), is hidden by the argument,
we cannot move it.

An empty hostname can result in 403 Forbidden
from the server due to missing Server Name
Indication (SNI).

Change-Id: I27990f64f17ec3c81a4dd543a078807629cd0c20
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-03-27 22:32:38 +02:00
Michael Meeks 45f29fd773 Allow debug.html to be passed a WOPISrc for easier debugging.
Change-Id: I3e618dbb9aa6363974e0759e955dfe73e8787824
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-03-26 23:27:00 +00:00
Szymon Kłos 0227768d7c Notify server about visible slide
Fixes problem with:
- showing wrong slide number in statusbar
- inserting comment at correct page
in pdfs where we see slides in continuous mode.

Sending slide id from online to server is much easier
than calculating based on visible area on the server
where we have to put that data into TabControl widget
which is used in different places.

It updates visible slide on scroll and also when selected
from the previews bar.

Signed-off-by: Szymon Kłos <eszkadev@gmail.com>
Change-Id: I7f8a9458e415e17391a4a249e19fd97f8541debd
2022-03-26 15:12:50 +01:00
Tor Lillqvist ed8c10dfb1 nftw() does not set errno on failure
Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: I7e768416b5113d71330148227aeceb941013c578
2022-03-25 21:29:53 +01:00
Andras Timar 9752cd0b80 Bump version to 22.05.0.1
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ib17a8e9a26d73c4f20ce9447bb65c75b50348a58
2022-03-25 17:06:14 +01:00
Michael Meeks 9f5c5dcdf4 Show (E) for experimental mode in help->about if present.
Change-Id: I00d6cb861c3050d5b4f80b0cb41e70012d0fe610
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-03-24 17:25:40 +00:00
Pedro Pinto Silva c89b062aea Fix closebuttonwrapper position on tablet
- Make sure the close button is always place at the last position so even
if integrator adds additional icons the close button should always
appear afterwards and make sure it does get shrunk
- Force closebuttonwrapper to be positioned at the end (far left side)
by grow #userListHeader (even if invisible)
- Avoid positioning closebutton image with background-position
  - Simplify by just fixing the parent and centering the image

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I851744c75c132957b8754ce7a105e57625f986bc
2022-03-24 10:32:12 +01:00
Pedro Pinto Silva 8eaa96840b Allow notebookbar-tabs-container to occupy full width
Remove the now necessary max-width from tablets
- We now have those parent elements being set as flex box
and thus we have now no need to limit the max width of this container
- Plus by limiting the max-width we were hiding more of the tabs while
not gaining anything useful in return

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I1ef477902fd95a4751009f8bf08350b6ce88aa97
2022-03-24 10:32:12 +01:00
Mert Tumer ab0ed2d6f5 annotation: fix layouting problem on selected comments
modify and reply causes relayouting due to expansion of the
commentsections but it is based on whether they are selected or not
currently. If they are already selected we dont relayout them again
and it causes overlapping. To avoid that we can simply unselect
comments just before reply or modify.

Signed-off-by: Mert Tumer <mert.tumer@collabora.com>
Change-Id: Ifc2e546504b36b46f98a9b22ce791b4279239457
2022-03-24 10:08:34 +01:00
Dennis Francis 98f9e65948 revert: add edit option in link dialog...
commit eb387cc7b1

At least in current master it is possible to right click on the link and
select 'Edit hyperlink' context menu item and the edit dialog(JS)
appears. So it seems there is no need for this workaround edit button
inside the warning 'JS' dialog box anymore.

Additional reason is that when help button is clicked on any
dialog(tunnelled or not) it shows a warning 'link' dialog that it is
about to open a external url, but this dialog has an unneeded edit
button because of the original commit.

Signed-off-by: Dennis Francis <dennis.francis@collabora.com>
Change-Id: I2d8434746c698deefe69b38bf9947202f4f95862
2022-03-24 14:33:01 +05:30
Pedro Pinto Silva fb83f8e3a5 Switch hover color to a lighter color
We need to use a lighter/ highlight color for hover so we then be able
to use darker backgrounds for disabled status and even pressed status
(active)

Also this automatically fixes the hover status for on/off switchers on
the toolbar (e.g.:sidebar trigger). Now they also react onmouseover

With this change

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I5efc41e3e7d13c10cf2d714acefee08f99e6af1a
2022-03-23 23:10:57 +03:00
Pedro Pinto Silva 2ec92b2308 Add missing hover state for primary buttons
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ic1fea0b40bbbcbb6b77bfe29b3df1786da53b7e9
2022-03-23 23:10:57 +03:00
Pedro Pinto Silva aec88d3d01 Refactor commentSection buttons to avoid using multiple css classes
This commit does not change functionality

Add generic 'button-secondary' and 'button-primary' to buttons
- so we don't need to hunt each button from annotations
(cancel, save, reply)

additional plus: targeting any css class that has button-primary allow
to target in the future cases like vex-dialog-button-primary

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ie70867e3248ff70afdbe154593e4d02ec24c46df
2022-03-23 23:10:57 +03:00
Pedro Pinto Silva 6e9a11211e Autofilter buttons do not need special css targeting
With bda34c9096 those btns are already
generated with the proper generic classes that hold those styles so,
no need to keep individually targeting them

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I87912913d3f7340b5ed4b06b8c658791eda56d4e
2022-03-23 23:10:57 +03:00
Pedro Pinto Silva ca316c0f3d Remove duplicated n inactive margin from annotation btns
- Better to keep everything related to buttons in the btn.css file
- Also all margins are already being set in the btn.css file anyhow

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ic1d9f7e2b895604367571a93f593ef359659c57c
2022-03-23 23:10:57 +03:00
Andras Timar 0392facc6b Bump packaga version to 21.11.3.3
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I315b7d74bfe09f0820068dc7ca36960d024c492b
2022-03-23 16:42:48 +01:00
Pedro Pinto Silva 142097b340 Fix missing icons by creating iconURL aliases
- add possibility to specify name alias for icons that are
  generated via jsbuilder (sidebar, notebookbar). The goal here is to
  avoid having multiple duplicated icons with different names:
  Example: 2 identical SVG files were being used just because of their
  name.

Context: When unifying icons between sidebar and toolbar PR #4426 ,
9576137df5 we end up with icons without
images on:
  - Calc: Notebookbar
  - Calc: Sidebar
This happens because even though we want to use the same icons the uno
commands are actually different from ones used in writer and elsewhere
(uno.AlignLeft <> uno.LeftPara)

Note: Since the sidebar uno.commands come from core we really need to
use icon url alias. If that was not the case we could have used here the
newest compatibilityAliases introduced in
7e6f3d5590

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I49647f8a32665d0363259151c09131d8c5063783
2022-03-23 17:01:43 +03:00
Pedro Pinto Silva 4be9e29a86 Update build status links
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ib2109fa3149d2f3dfbda1291975aa74a3e33e981
2022-03-23 14:29:51 +01:00
Pedro Pinto Silva 1c6206814b Fix comment reply count color
- Partly revert 7e705fcf09
  - RGB expects rgb values. Hex annotation does not work: renders it
 transparent
- Avoid low contrast between font and background (white with light bg)
  - Use instead primary color

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Iad24d6bf30d2e62505254c70b174e9b9971cbeb1
2022-03-23 13:57:35 +01:00
Ashod Nakashian 4d2351e37f wsd: reduce logging noise in socket reads
Change-Id: I4305baf828ccb1ae71d3b3b12fa90a7aeb5e0928
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-03-23 13:31:58 +01:00
Pedro Pinto Silva 5fb8c05f51 Add missing icons for mobile
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I06c24a406eb77ab22cb863ce1b2d071aa07c6582
2022-03-23 09:54:54 +01:00
Rash419 ea35dbe350 wsd: added regex support for alias tag
Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I2534ea9afa7d3d3bf10f91eeac44f70381acc76a
2022-03-22 14:13:22 +01:00
Pranam Lashkari defef6a171 util: removed duplicate string trimming function
Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: Ia150975467d1df8a9d05c8543bcb5d7369d29099
2022-03-22 09:07:03 -04:00
Tor Lillqvist a635f9b8a6 There is no type called COOLWSD::Server
Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: I7ccf4960a4161fdc5b012d72787e94b490cb4a6d
2022-03-22 11:38:51 +02:00
Tor Lillqvist 037a0929f0 Remove two forward declarations from COOLWSD.hpp
Only one of them is needed, and only in COOLWSD.cpp itself.

Signed-off-by: Tor Lillqvist <tml@collabora.com>
Change-Id: I03864afdc13e778a2b8ce8205e135d679dddf13d
2022-03-22 11:38:51 +02:00
Ashod Nakashian 1022a7e78e Revert "wsd: exclude deprecated openssl API"
Apparently this breaks the build on at least
CentOS. Reverting for now.

This reverts commit 23f02b8929.

Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
Change-Id: Ie8f00bbc53a63098b473d625846c0b6fd4e074bd
2022-03-22 08:41:59 +01:00
Andras Timar a96c224281 Bump package version to 21.11.3.2
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: I5cf03151cf77b9f6031e42c61713f4b3acf4e9e8
2022-03-21 21:48:43 +01:00
Jan Holesovsky 4bef530844 Escape some parameters for a good measure
Signed-off-by: Jan Holesovsky <kendy@collabora.com>
Change-Id: Ie5d2017ed6ce9f38623b42b336c5261be322b025
2022-03-21 21:35:27 +01:00
Gökay Şatır 2a944950e4 Typo in COOLWSD.cpp.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: Ib76fce22e70cb448712a33879c1484418bc75328
2022-03-21 21:34:25 +01:00
Michael Meeks 16386b9aaf Re-work welcome configuration.
Change-Id: Ia99eb5b587a849d32d7d4f392c15f84db2423e95
Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
2022-03-21 21:34:25 +01:00
Gökay Şatır 32b85273d7 Add condition for infobar.
Signed-off-by: Gökay Şatır <gokaysatir@collabora.com>
Change-Id: I4df356663efa91207ef310341b7b08992bcb77de
2022-03-21 14:22:04 -04:00
Pedro Pinto Silva 2bb379afa6 Fix overflow property for FF
prefer universal value as opposed to WebKit-based and blink only
value

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ie0bff5de254829db6bffcd7a928629a98b1889ac
2022-03-21 15:32:52 +01:00
Mert Tumer eec3ef97e2 android: fix unable to exit modified document
We dont upload to storage on mobile we save as locally
and copy the temp file into original on uno save result callback
Doing that once during close is enough since there is no
turning back and it cannot be possibly modified after

Signed-off-by: Mert Tumer <mert.tumer@collabora.com>
Change-Id: I047626be862cdbcb86e083534555e45530f417a2
2022-03-21 16:44:50 +03:00
Pedro Pinto Silva 0e5e1efcd0 Allow items to be shown invisible on the TopToolbar
This is important because we in many places might want to still have the
respective element's space but without actually showing it.
Example: divider's space without that being represented by a bezel
- And add this new property to breaks surounding dropdown menus

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ib58cc9564144c4ad48fa240878a3654add5d4d03
2022-03-21 11:23:52 +01:00
Mert Tumer 585974e371 mobile: fix fullscreen presentation does not work on readonly mode
we send the slideshow buttons reference to onClick function
in that item.disabled is false but later we reassign it from
w2ui get function and then it becomes disabled true on readonlymode
The logic is incorrect because onClick function does not respect
wheter the item is passed or not and tries to reassign it anyway.

Signed-off-by: Mert Tumer <mert.tumer@collabora.com>
Change-Id: I025e26c455a7673a002f894f49452b360550b178
2022-03-21 10:06:13 +01:00
Ashod Nakashian 23f02b8929 wsd: exclude deprecated openssl API
There are no deprecated API currently in use,
but that is a moving target as we upgrade openssl.
This prevents any accidental use of deprecated API
and will reveal any deprecated API used in any
particular build.

Change-Id: I969f7f7c4efe163d4704dea9aab45c09550baa40
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-03-21 08:57:41 +00:00
Ashod Nakashian 140b4f9c08 wsd: minor improvements to StringVector::equals overloads
Change-Id: Ifa975e579392151bef422ff985a93abf3129dfeb
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-03-21 08:57:41 +00:00
Ashod Nakashian fc187b9e1f wsd: test: correctly show the failing code in the assertion message
Change-Id: I99b3688398fb3667ce4e0f5050aa5ca79e2fd0d1
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-03-21 08:57:41 +00:00
Ashod Nakashian e164cb4a4d wsd: trace poll events and revents flags arround ppoll
Change-Id: If6aedff69a6421a16eec9f86fed6d0ea381ecc0c
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-03-21 08:57:41 +00:00
Ashod Nakashian f74192d9ac wsd: always include the BIO errors in SSL logs
And improved socket logging in general while
making them more consistent.

Change-Id: I1ed7f2561476ca5370af91079d5d616804396f8e
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-03-21 08:57:41 +00:00
Ashod Nakashian ea316ecae9 browser: protect against undefined keyEventFn
Change-Id: Ibe7d4af2684d3c90b8f366a3203e186d4489f7ad
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-03-21 08:57:41 +00:00
Szymon Kłos 8ecca93b14 jsdialog: find also controls with modified id
In some cases we add 'table-' prefix for toolboxes due to
some old requirements in the mobile-wizard. We need to find these
modified ids in a fallback on widget update.

In the future we should get rid of 'table-' prefix.

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I4db881065b3deed427c12b417d0a30791a2184aa
2022-03-21 09:44:27 +01:00
Szymon Kłos ff7e4a8b3b co-22.05: mobile writer/table_properties_spec.js
- use .unoXXX class instead of id
- check only if height was changed on Optimal Row Height command

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: Ibfa93076237b15e16ae1851e3a66b4b239c42a2d
2022-03-21 09:35:49 +01:00
Szymon Kłos 7e6f3d5590 co-22.05: mobile writer/insert_formatting_mark_spec.js
- add possibility to specify UNO command alias for newer
  version of core so we will call all the versions for
  compatibility of online with many versions of core

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I380fb1d2fd7f63bac297745401fa9d619f693348
2022-03-21 09:35:49 +01:00
Szymon Kłos c6d347f241 Revert "image operation: make sure embedded svgs are shown in writer only"
This reverts commit 7821ce5368.

it is not needed, and blocks update of the image preview in Impress

Signed-off-by: Szymon Kłos <szymon.klos@collabora.com>
Change-Id: I1101c50a31f63e7a2acd91f22b0160e5fe204c3a
2022-03-19 01:48:36 +01:00
Kristopher Maxwell 6315aadcad Add back removed breaks from TopToolbar, see #3184
Breaks were removed in commit df925222a2

Signed-off-by: Kristopher Maxwell <kristophermaxwellc@gmail.com>
Change-Id: I376207d654ccbe98fc1d1b4b84363748190ab646
2022-03-18 18:53:06 +01:00
Rash419 da3143dbdc wsd: added mode attribute to alias_groups
you can switch between 'first' and 'groups' mode
default mode is 'first' it allows only the first host when groups are not defined.
set mode to 'groups' and define group to allow multiple host and its aliases.
also added mode option in JSON format

to make the setup backwards compaitable , auto_host is by default false it won't
resolves aliases and dockey will only use uri's path . To use alias_groups you have
to explicitly set the auto_host allow attribute value to true

Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I3af439edcbc546d9a660d678e52d813951dc237a
2022-03-18 18:30:14 +03:00
Rash419 ddc13c0f4a wsd: added new method to check allowed Aliases
Signed-off-by: Rash419 <rashesh.padia@collabora.com>
Change-Id: I24fab96ff977d3f0a85c98257e779216f50dc92f
2022-03-18 18:30:14 +03:00
Henry Castro 6b701ce613 wsd: use get/set Authority to extract host + port
Change-Id: I91ce4e9cef6854ad2cc113d1ad6f55d7c91d6ab6
Signed-off-by: Henry Castro <hcastro@collabora.com>
2022-03-18 18:30:14 +03:00
Henry Castro f0bfa5a53c wsd: parse and check syntax alias host
Change-Id: I66e465ed4b8997b72f3cdf1c8b85a95d951bf735
Signed-off-by: Henry Castro <hcastro@collabora.com>
2022-03-18 18:30:14 +03:00
Pranam Lashkari 7821ce5368 image operation: make sure embedded svgs are shown in writer only
fixed regression caused by 1c86fd2ff8
regression: while we move textbox in impress previews would not go away

Signed-off-by: Pranam Lashkari <lpranam@collabora.com>
Change-Id: I1b3cfefdd6abb7f81ff741eee4edab7e349c932d
2022-03-18 15:48:46 +01:00
Pedro Pinto Silva 91ab74f65c Buttons: Remove unnecessary CSS on calc
Many of those CSS rules were added in the past where not all main btns
had the same class.

All of those are now generated and stamped with
`.ui-pushbutton` class. Thus we can now remove those very specific
and outdated rules.

imgs:
https://archive.org/download/cool-github-commit-imgs/statistics-dailog-define-name-pushbutton.png
https://archive.org/download/cool-github-commit-imgs/statistics-dailog-ftest-pushbutton.png
https://archive.org/download/cool-github-commit-imgs/statistics-dailog-manage-names-pushbutton.png
https://archive.org/download/cool-github-commit-imgs/statistics-dailog-sampling-pushbutton.png

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ief0211c2825c23f113fccb88e1ce6fea59d1500c
2022-03-18 13:36:19 +01:00
Pedro Pinto Silva 961f43027b Simplify CSS for vex btns on mobile, flex
Now with changes from 451d11ebac
change-id: Ia4ab1de407ca7658242282181eeb215fb6dc0d99 we can now safely
target all the vex buttons for mobile without exception

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I660463733fa9e6ce8feb46a08e9217f7c9f414da
2022-03-18 13:36:19 +01:00
Pedro Pinto Silva 6b4293b6d4 Target all buttons, fix mixed display properties
Now with annotations btns being created with new ids it's crucial to
make sure we target them all

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I8c2dc9d0a088290fa0c2b9b3cbf83ee2f7d0dd76
2022-03-18 13:36:19 +01:00
Pedro Pinto Silva 320b4095b6 Annotations: Fix cancel confirm btns flex CSS and add class for container
This affects annotations (vex) and jsdialogs

- Set annotations btns' container to flex so we can reduce CSS rules
around specific buttons

----

Before we were relying solely on cancel button to change the layout,
by setting it to flex and let ok/submit/confirm btn untouched. This
was causing some inconsistencies plus it was forcing us to add CSS on a
case by case instead of fixing the root cause

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Ia4ab1de407ca7658242282181eeb215fb6dc0d99
2022-03-18 13:36:19 +01:00
Pedro Pinto Silva afc34b5128 Update branch status
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I242e83feb8073fea040a2a61a41801e9962d7520
2022-03-18 12:34:54 +01:00
Pedro Pinto Silva 3223b69c88 Code refactoring: swap annotations' size for CSS var
Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: Id6de428f2182520290424b33f2f7f539c0c09e4c
2022-03-18 09:54:19 +01:00
Pedro Pinto Silva 0beb1fd426 Laptop, mobile: Make it easier to insert text on a new comment
- Increase height of text area when in presence of dialog be that on
mobile or small screen size desktop or tablet for that matter

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I3791cb5ba3cc5ce10d250993b49ba058d0847dfc
2022-03-18 09:54:19 +01:00
Pedro Pinto Silva 8801b9593a Remove extra margins and padding for annotations content
These styles were initially intended to align to the user avatar but
they are not ideal anymore (specially when factoring in the compact
/collapsed mode on desktop for small screens)
- Remove these from desktop and make sure they are only avaialble on
mobile

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I1518373b1eda574e0aecbd5c76c5fdc1f5fc1c28
2022-03-18 09:54:19 +01:00
Pedro Pinto Silva 6f9ed98046 Set max height for comment annotation contents
iteration on top of
commit hash: 31284e40f5
commit change-id: I03693f67c69d108ef3dcbf5cc9cd0127bd37b5a3

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: I2b52243a4367f43f7449c12854261ac6235493e6
2022-03-18 09:54:19 +01:00
Mert Tumer e99fb5309d fix comment reply is too wide when the content is big enough
Signed-off-by: Mert Tumer <mert.tumer@collabora.com>
Change-Id: I03693f67c69d108ef3dcbf5cc9cd0127bd37b5a3
2022-03-18 09:54:19 +01:00
Miklos Vajna c9bba090b7 sanitizers: fix unit-base
==30332==ERROR: AddressSanitizer: odr-violation (0x0000020b9b20):
  [1] size=1 'StorageBase::SSLAsScheme' ../wsd/Storage.cpp:67:19
  [2] size=1 'StorageBase::SSLAsScheme' wsd/Storage.cpp:67:19
These globals were registered at these points:
  [1]:
    #0 0x71d0f8 in __asan_register_globals.part.13 lode/packages/llvm-llvmorg-9.0.1.src/compiler-rt/lib/asan/asan_globals.cc:362
    #1 0x7f4c362ed33b in asan.module_ctor (online-san/test/../test/.libs/unit-base.so+0x10eb33b)

  [2]:
    #0 0x71d0f8 in __asan_register_globals.part.13 lode/packages/llvm-llvmorg-9.0.1.src/compiler-rt/lib/asan/asan_globals.cc:362
    #1 0x11c709e in asan.module_ctor (online-san/coolwsd+0x11c709e)

==30332==HINT: if you don't care about these errors you may set ASAN_OPTIONS=detect_odr_violation=0
SUMMARY: AddressSanitizer: odr-violation: global 'StorageBase::SSLAsScheme' at ../wsd/Storage.cpp:67:19
==30332==ABORTING

Resolve the conflict by not providing these definitions when building
tests.

Signed-off-by: Miklos Vajna <vmiklos@collabora.com>
Change-Id: I6a8f74bd0b78a76f46b5401acaa816dd0b185aa9
2022-03-18 09:23:59 +01:00
Ashod Nakashian 1bb21868b2 wsd: reduce polling when blocked on ssl handshake
While SSL is handshaking, there can be no general
application data communication. During that early
stage of connecting we have data to send (the
request, headers, etc.) and so we poll on POLLOUT.
Naturally, we also always want to poll on POLLIN,
because we can never know when there is data to
read (especially true for web-sockets).

The problem is when SSL will not send data just
yet because it is handshaking. It is typically
waiting for handshake negotiation data to read,
so when we POLLOUT, poll immediately returns, but
writing (via SSL_write) fails with WANTS_READ
error. This goes on in a busy-loop until the
negotiation data is available for read and the
handshake is completed. Very inefficient.

The solution is to poll on whatever SSL needs
during the handshake, exclusively. Once the
handshake is complete, we poll on whatever we
need. However, SSL can renegotiate at any time,
so we also merge with what it needs.

In addition, we avoid the unnecessary read when
poll doesn't give us POLLIN in revents, since the
read will more likely than not fail (except in
the rare case when data becomes available in the
interim). Notice that SSL_read will return
SSL_WANTS_READ when there is no data, which
is misleading (since SSL isn't in need of data to
read at all, nor are we, for that matter).
Best not to do noisy reads unnecessarily.

These changes are disabled by default and can
be enabled via the experimental_features option.

Change-Id: I6a7ed7d871ed257b30062cc720a8b8c7acbab3b7
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-03-17 18:46:46 -04:00
Ashod Nakashian 97a6d1cd98 wsd: support experimental features
This adds a new config option to enable/disable
experimental features and behavior. The default
value can be controlled at build time by
--enable-experimental.

Change-Id: Iffcb4c71d9e0933a646251b63033b6dadcd3b809
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-03-17 18:46:46 -04:00
Dennis Francis 3418f51ce4 test: make the test more specific
This is a follow up of feb672392 for the fix in 8af039251

Signed-off-by: Dennis Francis <dennis.francis@collabora.com>
Change-Id: I6a1c754193cce4f7d11d17b9bbe1986a2b46ad86
2022-03-17 18:31:41 +05:30
Dennis Francis f12a6dd370 kit: restore curly braces
Signed-off-by: Dennis Francis <dennis.francis@collabora.com>
Change-Id: I78b181dacc09dbfc47e3702db8ca9b0083d135e4
2022-03-17 18:31:41 +05:30
andreas kainz c3bbba1ea6 Menubar add DrawText and VerticalText commands
Signed-off-by: andreas kainz <kainz.a@gmail.com>
Change-Id: I6d07df1a3a97b9e896c883e87803d2f2b986ee56
2022-03-17 13:23:38 +01:00
Kristopher Maxwell 90825d065e Remove unused svg icons
Signed-off-by: Kristopher Maxwell <kristophermaxwellc@gmail.com>
Change-Id: I5fae30f1b829f9ce664dc225f9aec217740845ea
2022-03-17 12:22:39 +01:00
Kristopher Maxwell d9c3933ae6 Unify icons used between toolbar and sidebar, see issue #3405
Signed-off-by: Kristopher Maxwell <kristophermaxwellc@gmail.com>
Change-Id: I3a244e855d53cc70dd1ae3c0524b1db8aa575f9a
2022-03-17 12:22:39 +01:00
andreas kainz 97f478fcc7 Calc Sidebar Alignemten section fix leftindent alignment
Signed-off-by: andreas kainz <kainz.a@gmail.com>
Change-Id: If77f343e66cea627a7eb2afadd2905df8b332c82
2022-03-17 12:05:41 +01:00
Henry Castro 6ebd84831e infobar: show message every five days
Change-Id: Iedf6aff2f026f4530bfed06cd4bf5e7acae15a50
Signed-off-by: Henry Castro <hcastro@collabora.com>
2022-03-16 23:00:13 +03:00
Andras Timar 1722c16322 Bump package version to 21.11.3.1
Signed-off-by: Andras Timar <andras.timar@collabora.com>
Change-Id: Ibc7996de501f8c36c698c6108e8c7d66b42a96e3
2022-03-16 15:48:19 +01:00
Pedro Pinto Silva 5361456a77 Fix Welcome dialog for mobile when served from outside
Make sure it occupies the whole view

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
Change-Id: If492fdca19aac024a749b7273c515047be208d7d
2022-03-16 15:13:49 +01:00
Ashod Nakashian 82933be193 wsd: last modified timestamp of the upload file is not now
When deciding whether the file on disk needs uploading
or not, we compare it with the last modified timestamp.
For this to work they need to be different.

When there is no file to upload (i.e. when there is
nothing new to save), the timestamp we get is
unix-time of 0. This is always different from 'now'.
So we incorrectly think there is data to be uploaded
when there isn't.

Better to initialize the last modified timestamp to
unix-time of 0, so in this case we correctly
conclude that there is nothing to upload.

Change-Id: I545e9021e9c76d009e08758342effaf3e9b964c7
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-03-16 08:31:54 -04:00
Ashod Nakashian 0c88fd8d6e wsd: gracefully close the document when disconnected from Kit
When disconnecting from Kit we shouldn't bluntly stop
DocBroker, because even though we cannot save, we
can still upload the latest document version from
disk.

What makes this particularly problematic is that
we request to kill Kit when the last client is
disconnected.

This was caught through unit-tests, albeit it was
not very common or easy to reproduce.

This fixes cases where always_save_on_exit
doesn't save/upload.

Change-Id: Ib66281fc68d4c0264602852b0acdc453b6f79963
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-03-16 08:31:54 -04:00
Ashod Nakashian 9732689668 wsd: stop loading when low on disk space
For some reason the disk-space check wasn't
done for WOPI storage. Here we add the check
and bubble the exception up to stop loading.

UnitStorage has been updated and re-enabled.

Change-Id: I15a093554b662d6c0828da7683ca0190a8225fc9
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-03-16 08:31:54 -04:00
Ashod Nakashian e5e67a71d7 wsd: wait longer when restarting forkit
Forkit takes significantly longer to start than
to fork. At the startup of WSD we do wait 4 times
as long for forkit than when forking kits.
Similarly, we should also wait that much when
forkit crashes and we recover.

This stabalizes the forkit crash tests, which
did fail rather frequently (in one example,
2 out of 10 runs had failed locally).

Change-Id: I990c8e595b64c34a8e202933be833c53d7ebfc01
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2022-03-16 08:31:54 -04:00
4024 changed files with 425424 additions and 254893 deletions

View File

@ -1,31 +0,0 @@
task:
name: "FreeBSD 13"
freebsd_instance:
matrix:
- image_family: freebsd-13-0-snap
deps_script:
- sed -i.bak -e 's/quarterly/latest/' /etc/pkg/FreeBSD.conf
- env ASSUME_ALWAYS_YES=yes pkg update -f
- env ASSUME_ALWAYS_YES=yes pkg remove -y python27 python2 python37
- env ASSUME_ALWAYS_YES=yes pkg install -y python3 python38 py38-polib py38-lxml
- env ASSUME_ALWAYS_YES=yes pkg install -y gmake pkgconf poco cppunit autotools coreutils git bash npm png pango
- mkdir libreoffice-src
- cd libreoffice-src
- fetch https://github.com/CollaboraOnline/online/releases/download/for-code-assets/LibreOfficeKit-includes-co-2021.tar.gz
- tar -xzf LibreOfficeKit-includes-co-2021.tar.gz
build_script:
- mkdir .git/hooks
- pw useradd -n cool -d /tmp/coolhome -m
- chmod -R o+rwx ./
- su -m cool -c './autogen.sh'
- 'su -m cool -c ''env HOME=/tmp/coolhome MAKE=gmake
CPPFLAGS="-isystem /usr/local/include" CFLAGS="-I/usr/local/include"
CXXFLAGS="-I/usr/local/include" LDFLAGS=-L/usr/local/lib ./configure
--with-lo-path=/usr/local/lib/libreoffice/
--with-lokit-path=./libreoffice-src/include
--disable-seccomp --disable-setcap --enable-debug'' '
- su -m cool -c 'env HOME=/tmp/coolhome gmake -j`sysctl -n hw.ncpu`'
- chown root ./coolmount
- chmod +s ./coolmount
test_script:
# - su -m cool -c 'env HOME=/tmp/coolhome gmake check'

View File

@ -0,0 +1,31 @@
task:
name: "FreeBSD 13"
freebsd_instance:
matrix:
- image_family: freebsd-13-1-snap
deps_script:
- sed -i.bak -e 's/quarterly/latest/' /etc/pkg/FreeBSD.conf
- env ASSUME_ALWAYS_YES=yes pkg update -f
- env ASSUME_ALWAYS_YES=yes pkg remove -y python27 python2 python37
- env ASSUME_ALWAYS_YES=yes pkg install -y python3 python39 py39-polib py39-lxml
- env ASSUME_ALWAYS_YES=yes pkg install -y gmake pkgconf poco cppunit autotools coreutils git bash npm png pango zstd openssl
- mkdir libreoffice-src
- cd libreoffice-src
- fetch https://github.com/CollaboraOnline/online/releases/download/for-code-assets/LibreOfficeKit-includes-co-23.05.tar.gz
- tar -xzf LibreOfficeKit-includes-co-23.05.tar.gz
build_script:
- mkdir .git/hooks
- pw useradd -n cool -d /tmp/coolhome -m
- chmod -R o+rwx ./
- su -m cool -c './autogen.sh'
- 'su -m cool -c ''env HOME=/tmp/coolhome MAKE=gmake
CPPFLAGS="-isystem /usr/local/include" CFLAGS="-I/usr/local/include"
CXXFLAGS="-I/usr/local/include" LDFLAGS=-L/usr/local/lib ./configure
--with-lo-path=/usr/local/lib/libreoffice/
--with-lokit-path=./libreoffice-src/include
--disable-seccomp --disable-werror --disable-setcap --enable-debug'' '
- su -m cool -c 'env HOME=/tmp/coolhome gmake -j`sysctl -n hw.ncpu`'
- chown root ./coolmount
- chmod +s ./coolmount
test_script:
# - su -m cool -c 'env HOME=/tmp/coolhome gmake check'

9
.editorconfig 100644
View File

@ -0,0 +1,9 @@
root = true
[*]
end_of_line = lf
insert_final_newline = true
[*.{js,ts}]
charset = utf-8
indent_style = tab

View File

@ -7,35 +7,35 @@ assignees: ''
---
**Describe the bug**
### Describe the Bug
A clear and concise description of what the bug is.
**To Reproduce**
Steps to reproduce the behavior:
### Steps to Reproduce
1. Go to '...'
2. Click on '....'
3. Scroll down to '....'
4. See error
**Expected behavior**
### Expected Behavior
A clear and concise description of what you expected to happen.
**Actual behavior**
### Actual Behavior
A clear and concise description of what actually happens.
**Screenshots**
### Screenshots
If applicable, add screenshots to help explain your problem.
**Desktop (please complete the following information)**
- OS: [e.g. iOS]
- Browser: [e.g. chrome, safari]
- Version: [e.g. 22]
### Desktop
(Please complete the following information)
- **Collabora version:** [e.g. 23.05.5.3]
- **OS and version:** [e.g. Windows 11]
- **Browser and version:** [e.g. Chrome 114.0]
**Smartphone (please complete the following information)**
- Device: [e.g. iPhone6]
- OS: [e.g. iOS8.1]
- Browser: [e.g. stock browser, safari]
- Version: [e.g. 22]
### Smartphone
(Please complete the following information)
- **Device:** [e.g. iPhone 14]
- **OS:** [e.g. iOS 16.5]
- **Browser and version:** [e.g. Safari 16.4]
**Additional context**
### Additional Context
Add any other context about the problem here.

View File

@ -7,36 +7,42 @@ assignees: ''
---
**Describe the bug**
### Describe the Bug
A clear and concise description of what the bug is.
**To Reproduce**
Steps to reproduce the behavior:
### Steps to Reproduce
1. Go to '...'
2. Click on '....'
3. Scroll down to '....'
4. See error
**Expected behavior**
### Expected Behavior
A clear and concise description of what you expected to happen.
**Actual behavior**
### Actual Behavior
A clear and concise description of what actually happens.
**Screenshots**
If applicable, add screenshots to help explain your problem.
### Screenshots
**Desktop (please complete the following information)**
- OS: [e.g. iOS]
- Browser: [e.g. chrome, safari]
- Version: [e.g. 22]
### Desktop
**Smartphone (please complete the following information)**
- Device: [e.g. iPhone6]
- OS: [e.g. iOS8.1]
- Browser: [e.g. stock browser, safari]
- Version: [e.g. 22]
(Please complete the following information)
- **OS:** [e.g. Windows 11]
- **Browser:** [e.g. Chrome]
- **Version:** [e.g. 114.0]
### Smartphone
(Please complete the following information)
- **Device:** [e.g. iPhone14]
- **OS:** [e.g. iOS16.5]
- **Browser:** [e.g. Safari]
- **Version:** [e.g. 16.4]
### Additional Context
**Additional context**
https://github.com/CollaboraOnline/online/discussions/3461
Add any other context about the problem here.

View File

@ -7,14 +7,22 @@ assignees: ''
---
**Is your feature request related to a problem? Please describe.**
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
### Is your feature request related to a problem?
A clear and concise description of what the problem is.
[Example: I want to do X, but because of PROBLEM, it takes 5 extra steps instead of 1.]
### Describe the solution you'd like
**Describe the solution you'd like**
A clear and concise description of what you want to happen.
**Describe alternatives you've considered**
[Example: When I press on X, I think Y should happen. In other software, this exists under the "Help" tab.]
### Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.
**Additional context**
### Additional context
Add any other context or screenshots about the feature request here.

View File

@ -2,8 +2,3 @@ name: "CodeQL config"
queries:
- uses: security-and-quality
# Ignore these from being scanned
paths-ignore:
- '**/*w2ui-1.5.rc1.js'
- '/loleaflet/'

View File

@ -11,13 +11,6 @@ on:
pull_request:
# The branches below must be a subset of the branches above
branches: [master]
# The paths-ignore here only defines that changes in these will not trigger
# the action at all; but to actually avoid scanning the content of these,
# see the .github/codeql/codeql-config.yml configuration file
paths-ignore:
- '**/*w2ui-1.5.rc1.js'
- 'loleaflet/'
schedule:
- cron: '0 22 * * 3'
@ -45,7 +38,7 @@ jobs:
# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
uses: github/codeql-action/init@v1
uses: github/codeql-action/init@v2
with:
languages: ${{ matrix.language }}
config-file: ./.github/codeql/codeql-config.yml
@ -63,7 +56,8 @@ jobs:
sudo sh -c "echo deb-src http://security.ubuntu.com/ubuntu/ focal-security universe >> /etc/apt/sources.list"
sudo sh -c "echo deb-src http://security.ubuntu.com/ubuntu/ focal-security multiverse >> /etc/apt/sources.list"
sudo apt-get update
sudo apt-get install -y build-essential git libpoco-dev libcap-dev python3-polib npm libpng-dev python3-lxml libpam-dev
sudo apt install -y libunwind-dev
sudo apt-get install -y build-essential git libpoco-dev libcap-dev python3-polib npm libpng-dev python3-lxml libpam-dev libzstd-dev
sudo apt-get build-dep -y libreoffice
- if: matrix.language == 'python'
@ -75,8 +69,8 @@ jobs:
- if: matrix.language == 'cpp'
name: Configure
run: |
cd .. && wget https://github.com/CollaboraOnline/online/releases/download/for-code-assets/core-co-2021-assets.tar.gz
tar xvf core-co-2021-assets.tar.gz && rm core-co-2021-assets.tar.gz && export LOCOREPATH=$(pwd)
cd .. && wget https://github.com/CollaboraOnline/online/releases/download/for-code-assets/core-co-24.04-assets.tar.gz
tar xvf core-co-24.04-assets.tar.gz && rm core-co-24.04-assets.tar.gz && export LOCOREPATH=$(pwd)
cd online && ./autogen.sh
./configure --enable-silent-rules --with-lokit-path=${LOCOREPATH}/include --with-lo-path=${LOCOREPATH}/instdir --enable-debug --disable-setcap
cd browser && npm update
@ -86,4 +80,4 @@ jobs:
run: make -j `nproc`
- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v1
uses: github/codeql-action/analyze@v2

View File

@ -0,0 +1,106 @@
name: Release Charts
on:
push:
branches:
- main
# legacy support
- master
jobs:
release:
# depending on default permission settings for your org (contents being read-only or read-write for workloads), you will have to add permissions
# see: https://docs.github.com/en/actions/security-guides/automatic-token-authentication#modifying-the-permissions-for-the-github_token
permissions:
contents: write
packages: write
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v2
with:
fetch-depth: 0
- name: Configure Git
run: |
git config user.name "$GITHUB_ACTOR"
git config user.email "$GITHUB_ACTOR@users.noreply.github.com"
- name: Install Helm
uses: azure/setup-helm@v3
with:
version: v3.12.1
- name: Import GPG key
run: |
echo "${{ secrets.GPG_PRIVATE_KEY }}" | gpg --dearmor --output keyring.gpg
echo "${{ secrets.GPG_PASSPHRASE }}" > passphrase-file.txt
- name: Run chart-releaser
# for use with make-release-latest
uses: helm/chart-releaser-action@v1.6.0
env:
CR_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
CR_SKIP_EXISTING: true
CR_KEY: Collabora Productivity
CR_KEYRING: keyring.gpg
CR_PASSPHRASE_FILE: passphrase-file.txt
CR_SIGN: true
with:
charts_dir: "kubernetes/helm"
config: kubernetes/helm/cr.yaml
# see https://github.com/helm/chart-releaser/issues/183
- name: Login to GitHub Container Registry
uses: docker/login-action@v3
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Push charts to GHCR
run: |
shopt -s nullglob
for pkg in .cr-release-packages/*; do
if [ -z "${pkg:-}" ]; then
break
fi
# Check if the package has a ".prov" extension and skip if true
# prov doesn't need to be pushed they are already pushed as layer in manifest
if [[ "${pkg}" == *.prov ]]; then
echo "Skipping package - ${pkg} with '.prov' extension"
continue
fi
# convert uppercase->lowercase to make sure it follows oci rules
lowercase=$(echo "${GITHUB_REPOSITORY_OWNER}" | tr '[:upper:]' '[:lower:]')
echo "Pushing package - ${pkg} to ghcr.io repository - ${lowercase}"
helm push "${pkg}" "oci://ghcr.io/${lowercase}/charts"
done
- name: Login to Docker Hub
uses: docker/login-action@v3
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: Push charts to Docker Hub
run: |
shopt -s nullglob
for pkg in .cr-release-packages/*; do
if [ -z "${pkg:-}" ]; then
break
fi
# Check if the package has a ".prov" extension and skip if true
# prov doesn't need to be pushed they are already pushed as layer in manifest
if [[ "${pkg}" == *.prov ]]; then
echo "Skipping package - ${pkg} with '.prov' extension"
continue
fi
echo "Pushing package - ${pkg} to docker.io repository - collabora"
helm push "${pkg}" "oci://registry-1.docker.io/collabora"
done

20
.gitignore vendored
View File

@ -14,13 +14,14 @@
**/.cache
Makefile
Makefile.in
coolkitconfig.xcu
coolwsd.spec
coolwsd.xml
aclocal.m4
autom4te.cache
config.h
config.h.in
config_unused.h
config_unused.h.in
config_version.h
ios/config.h
config.log
config.guess
@ -34,6 +35,8 @@ libtool
ltmain.sh
missing
stamp-h1
stamp-h2
stamp-h3
m4
debian/coolwsd.postinst
common/support-public-key.hpp
@ -60,9 +63,15 @@ cscope*
*.orig
coolwsd.log
*.log.*.gz
.log
*.lo
*.mo
gcov/*
*.gcno
*.gcda
*.gcov
# browser
browser/debug
browser/release
@ -88,8 +97,10 @@ loolconfig
coolforkit-nocaps
loadtest
unittest
coolwsd_fuzzer
clientnb
libsimd.a
coolwsd-inproc
coolbench
# Fuzzer
*_fuzzer
@ -112,11 +123,14 @@ ios/Mobile/Info.plist
ios/Mobile/Fonts
ios/Mobile/Branding
ios/Mobile/Resources/Settings.bundle/Root.plist
ios/Mobile/coolkitconfig.xcu
# symlinks created by configure for the iOS app Xcode project
lobuilddir-symlink
pocoinclude-symlink
pocolib-symlink
zstdinclude-symlink
zstdlib-symlink
ICU.dat
ios/Mobile/Assets.xcassets/AppIcon.appiconset

View File

@ -1,8 +1,15 @@
<config>
<!-- For more detailed documentation on typical configuration options please see:
https://sdk.collaboraonline.com/docs/installation/Configuration.html -->
<!-- Note: 'default' attributes are used to document a setting's default value as well as to use as fallback. -->
<!-- Note: When adding a new entry, a default must be set in WSD in case the entry is missing upon deployment. -->
<accessibility desc="Accessibility settings">
<enable type="bool" desc="Controls whether accessibility support should be enabled or not." default="false">false</enable>
</accessibility>
<allowed_languages desc="List of supported languages of Writing Aids (spell checker, grammar checker, thesaurus, hyphenation) on this instance. Allowing too many has negative effect on startup performance." default="de_DE en_GB en_US es_ES fr_FR it nl pt_BR pt_PT ru">de_DE en_GB en_US es_ES fr_FR it nl pt_BR pt_PT ru</allowed_languages>
<sys_template_path desc="Path to a template tree with shared libraries etc to be used as source for chroot jails for child processes." type="path" relative="true" default="systemplate"></sys_template_path>
@ -17,7 +24,6 @@
<per_document desc="Document-specific settings, including LO Core settings.">
<max_concurrency desc="The maximum number of threads to use while processing a document." type="uint" default="4">4</max_concurrency>
<batch_priority desc="A (lower) priority for use by batch eg. convert-to processes to avoid starving interactive ones" type="uint" default="5">5</batch_priority>
<document_signing_url desc="The endpoint URL of signing server, if empty the document signing is disabled" type="string" default=""></document_signing_url>
<redlining_as_comments desc="If true show red-lines as comments" type="bool" default="false">false</redlining_as_comments>
<idle_timeout_secs desc="The maximum number of seconds before unloading an idle document. Defaults to 1 hour." type="uint" default="3600">3600</idle_timeout_secs>
<!-- Idle save and auto save are checked every 30 seconds -->
@ -128,12 +134,11 @@
<welcome>
<enable type="bool" desc="Controls whether the welcome screen should be shown to the users on new install and updates." default="false">false</enable>
<enable_button type="bool" desc="Controls whether the welcome screen should have an explanatory button instead of an X button to close the dialog." default="false">false</enable_button>
<path desc="Path to 'welcome-$lang.html' files served on first start or when the version changes. When empty, defaults to the Release notes." type="path" relative="true" default="browser/welcome"></path>
</welcome>
<user_interface>
<mode type="string" desc="Controls the user interface style (classic|notebookbar)" default="classic">classic</mode>
<mode type="string" desc="Controls the user interface style. The 'default' means: Take the value from ui_defaults, or decide for one of compact or tabbed (default|compact|tabbed)" default="default">default</mode>
<use_integration_theme desc="Use theme from the integrator" type="bool" default="true">true</use_integration_theme>
</user_interface>
<storage desc="Backend storage">
@ -167,8 +172,6 @@
</ssl>
</storage>
<tile_cache_persistent desc="Should the tiles persist between two editing sessions of the given document?" type="bool" default="true">true</tile_cache_persistent>
<admin_console desc="Web admin console settings.">
<enable desc="Enable the admin console functionality" type="bool" default="true">true</enable>
<enable_pam desc="Enable admin user authentication with PAM" type="bool" default="false">false</enable_pam>
@ -179,4 +182,16 @@
<monitors desc="Addresses of servers we connect to on start for monitoring">
</monitors>
<fonts_missing>
<handling desc="How to handle fonts mising in a document: 'report', 'log', 'both', or 'ignore'" type="string" default="log">both</handling>
</fonts_missing>
<zotero desc="Zotero plugin configuration. For more details about Zotero visit https://www.zotero.org/">
<enable desc="Enable Zotero plugin." type="bool" default="true">true</enable>
</zotero>
<overwrite_mode>
<enable desc="Enable overwrite mode (user can use insert key)" type="bool" default="true">true</enable>
</overwrite_mode>
</config>

View File

@ -7,7 +7,7 @@ RUN sudo sh -c "echo deb-src http://archive.ubuntu.com/ubuntu/ focal main restri
&& sudo sh -c "echo deb-src http://security.ubuntu.com/ubuntu/ focal-security multiverse >> /etc/apt/sources.list" \
&& sudo apt-get update \
&& sudo apt-get install -y \
build-essential git libpoco-dev libcap-dev python3-polib npm libpng-dev python3-lxml libpam-dev firefox chromium-browser\
build-essential git libpoco-dev libcap-dev python3-polib npm libpng-dev libzstd-dev python3-lxml libpam-dev firefox chromium-browser \
&& sudo apt-get build-dep -y libreoffice \
&& pip install lxml \
&& pip install polib \

View File

@ -36,9 +36,9 @@ tasks:
- name: Get Core & Configure
before: |
cd ..
wget https://github.com/CollaboraOnline/online/releases/download/for-code-assets/core-co-2021-assets.tar.gz
tar xvf core-co-2021-assets.tar.gz
rm core-co-2021-assets.tar.gz
wget https://github.com/CollaboraOnline/online/releases/download/for-code-assets/core-co-24.04-assets.tar.gz
tar xvf core-co-24.04-assets.tar.gz
rm core-co-24.04-assets.tar.gz
cd online
init: |
./autogen.sh

View File

@ -34,7 +34,7 @@ Thanks for wanting to contribute source code to Collabora Online. You rock!
3. Grab one of our newcomer-friendly [easy hacks](https://collaboraonline.github.io/post/easyhacks/)
4. Send your [first pull request](https://forum.collaboraonline.com/t/your-first-pull-request/41)
5. Check master branch [current status](https://github.com/CollaboraOnline/online#readme)
- ![Master: Pull request policy](https://img.shields.io/badge/Master-PRs%20can%20be%20merge%20without%20approval-42BC00?logoColor=42BC00&logo=git "Main release is still distant. Thanks for your support and contributions! :)") Try to get at least one +1 as a reaction, comment or approval from someone else before merging it
- ![Master: Pull request policy](https://img.shields.io/badge/Master-PRs%20can%20be%20merged%20without%20approval-42BC00?logoColor=42BC00&logo=git "Main release is still distant. Thanks for your support and contributions! :)") Try to get at least one +1 as a reaction, comment or approval from someone else before merging it
- ![Master: Pull request policy](https://img.shields.io/badge/Master-protected%2C%20PRs%20need%20approval-red?logoColor=lightred&logo=git "Collabora Team is preparing for the next release, therefore 'master' branch is protected now, PRs need 1 review before merging. Thanks for your support and contributions! :)") It's required to have approval from someone before your PR can be merged
And if you get stuck at any point, just drop by one of our [communication channels](https://collaboraonline.github.io/post/communicate/).

View File

@ -5,7 +5,11 @@ if ENABLE_MOBILEAPP
if ENABLE_GTKAPP
SUBDIRS = gtk browser
else
if ENABLE_WASM
SUBDIRS = wasm browser
else !ENABLE_WASM
SUBDIRS = browser
endif !ENABLE_WASM
endif
else
@ -17,30 +21,34 @@ export ENABLE_DEBUG
bin_PROGRAMS = \
coolforkit \
coolmount \
coolstress \
coolconvert coolconfig
if ENABLE_LIBFUZZER
else
bin_PROGRAMS += coolwsd
if ENABLE_DEBUG
bin_PROGRAMS += coolwsd-inproc
endif
endif
dist_bin_SCRIPTS = coolwsd-systemplate-setup \
coolwsd-generate-proof-key
dist_bin_SCRIPTS = coolwsd-systemplate-setup
man_MANS = man/coolwsd.1 \
man/coolforkit.1 \
man/coolconvert.1 \
man/coolconfig.1 \
man/coolstress.1 \
man/coolwsd-systemplate-setup.1 \
man/coolwsd-generate-proof-key.1 \
man/coolmount.1
dist_doc_DATA = wsd/README \
dist_doc_DATA = wsd/README.md \
wsd/README.vars \
wsd/protocol.txt \
wsd/reference.md \
wsd/metrics.txt
wsd/metrics.txt \
THIRDPARTYLICENSES
coolwsddatadir = @COOLWSD_DATADIR@
@ -63,7 +71,10 @@ nginxconfig_DATA = etc/nginx/coolwsd.conf
ACLOCAL_AMFLAGS = -I m4
# quick and easy for now.
include_paths = -I${top_srcdir}/common -I${top_srcdir}/net -I${top_srcdir}/wsd -I${top_srcdir}/kit ${ZLIB_CFLAGS}
include_paths = -I${top_srcdir}/common -I${top_srcdir}/net -I${top_srcdir}/wsd -I${top_srcdir}/kit ${ZLIB_CFLAGS} ${ZSTD_CFLAGS} ${PNG_CFLAGS}
if ENABLE_SSL
include_paths += ${OPENSSL_CFLAGS}
endif
AM_CPPFLAGS = -pthread -DCOOLWSD_DATADIR='"@COOLWSD_DATADIR@"' \
-DCOOLWSD_CONFIGDIR='"@COOLWSD_CONFIGDIR@"' \
@ -74,17 +85,19 @@ if !ENABLE_DEBUG
AM_CPPFLAGS += -DNDEBUG
endif
AM_LDFLAGS = -pthread -Wl,-E -lpam $(ZLIB_LIBS)
AM_LDFLAGS = -Wl,-E -lpam $(ZLIB_LIBS) $(ZSTD_LIBS) ${PNG_LIBS}
if ENABLE_SSL
AM_LDFLAGS += -lssl -lcrypto
else
coolwsd_fuzzer_LDADD = -lssl -lcrypto
coolwsd_LDADD = -lssl -lcrypto
coolconfig_LDADD = -lssl -lcrypto
# Clang's linker doesn't like -pthread.
if !HAVE_CLANG
AM_LDFLAGS += -pthread
endif
coolwsd_fuzzer_CPPFLAGS = -DKIT_IN_PROCESS=1 -DFUZZER=1 -DTDOC=\"$(abs_top_srcdir)/test/data\" $(AM_CPPFLAGS)
if ENABLE_SSL
AM_LDFLAGS += ${OPENSSL_LIBS}
else
coolwsd_LDADD = ${OPENSSL_LIBS}
coolconfig_LDADD = ${OPENSSL_LIBS}
endif
AM_ETAGSFLAGS = --c++-kinds=+p --fields=+iaS --extra=+q -R --totals=yes --exclude=browser *
AM_CTAGSFLAGS = $(AM_ETAGSFLAGS)
@ -96,16 +109,18 @@ shared_sources = common/FileUtil.cpp \
common/StringVector.cpp \
common/Session.cpp \
common/Seccomp.cpp \
common/MessageQueue.cpp \
common/MobileApp.cpp \
common/TraceEvent.cpp \
common/SigUtil.cpp \
common/SpookyV2.cpp \
common/Unit.cpp \
common/Util.cpp \
common/Util-desktop.cpp \
common/ConfigUtil.cpp \
common/Authorization.cpp \
common/CommandControl.cpp \
common/Simd.cpp \
kit/KitQueue.cpp \
net/DelaySocket.cpp \
net/HttpRequest.cpp \
net/HttpHelper.cpp \
@ -116,8 +131,6 @@ if ENABLE_SSL
shared_sources += net/Ssl.cpp
endif
shared_json = $(patsubst %.cpp,%.cmd,$(shared_sources))
coolwsd_sources = common/Crypto.cpp \
wsd/Admin.cpp \
wsd/AdminModel.cpp \
@ -125,19 +138,26 @@ coolwsd_sources = common/Crypto.cpp \
wsd/DocumentBroker.cpp \
wsd/ProxyProtocol.cpp \
wsd/COOLWSD.cpp \
wsd/ClientRequestDispatcher.cpp \
wsd/ClientSession.cpp \
wsd/FileServer.cpp \
wsd/ProxyRequestHandler.cpp \
wsd/FileServerUtil.cpp \
wsd/RequestDetails.cpp \
wsd/RequestVettingStation.cpp \
wsd/Storage.cpp \
wsd/HostUtil.cpp \
wsd/TileCache.cpp \
wsd/ProofKey.cpp \
wsd/QuarantineUtil.cpp
coolwsd_json = $(patsubst %.cpp,%.cmd,$(coolwsd_sources))
wsd/QuarantineUtil.cpp \
wsd/wopi/CheckFileInfo.cpp \
wsd/wopi/StorageConnectionManager.cpp \
wsd/wopi/WopiProxy.cpp \
wsd/wopi/WopiStorage.cpp
coolwsd_SOURCES = $(coolwsd_sources) \
$(shared_sources)
$(shared_sources) \
wsd/coolwsd-fork.cpp
EXTRA_coolwsd_DEPENDENCIES = browser/node_modules
@ -145,16 +165,15 @@ noinst_PROGRAMS = clientnb \
connect \
lokitclient \
coolmap \
coolstress \
coolbench \
coolsocketdump
if ENABLE_LIBFUZZER
noinst_PROGRAMS += \
admin_fuzzer \
clientsession_fuzzer \
httpresponse_fuzzer
else
noinst_PROGRAMS += coolwsd_fuzzer
httpresponse_fuzzer \
httpecho_fuzzer
endif
connect_SOURCES = tools/Connect.cpp \
@ -162,7 +181,8 @@ connect_SOURCES = tools/Connect.cpp \
common/Log.cpp \
common/Protocol.cpp \
common/StringVector.cpp \
common/Util.cpp
common/Util.cpp \
common/Util-desktop.cpp
lokitclient_SOURCES = common/Log.cpp \
common/DummyTraceEventEmitter.cpp \
@ -170,62 +190,101 @@ lokitclient_SOURCES = common/Log.cpp \
common/Protocol.cpp \
common/StringVector.cpp \
common/TraceEvent.cpp \
common/Util.cpp
common/Util.cpp \
common/Util-desktop.cpp
noinst_LIBRARIES = libsimd.a
libsimd_a_SOURCES = kit/DeltaSimd.c
libsimd_a_CFLAGS = @SIMD_CFLAGS@
coolforkit_sources = kit/ChildSession.cpp \
kit/ForKit.cpp \
kit/Kit.cpp
coolforkit_json = $(patsubst %.cpp,%.cmd,$(coolforkit_sources))
kit/Kit.cpp \
kit/KitWebSocket.cpp
coolforkit_SOURCES = $(coolforkit_sources) \
$(shared_sources)
$(shared_sources) \
kit/forkit-main.cpp
coolwsd_fuzzer_SOURCES = $(coolwsd_sources) \
$(coolforkit_sources) \
coolforkit_LDADD = libsimd.a
if ENABLE_DEBUG
coolwsd_inproc_SOURCES = $(coolwsd_sources) \
$(shared_sources) \
kit/DummyLibreOfficeKit.cpp
$(coolforkit_sources) \
wsd/coolwsd-inproc.cpp
coolwsd_inproc_LDADD = ${coolwsd_LDADD} \
${coolforkit_LDADD}
endif
if ENABLE_LIBFUZZER
coolforkit_SOURCES += \
common/DummyTraceEventEmitter.cpp
common_fuzzer_sources = \
fuzzer/Common.cpp \
common/DummyTraceEventEmitter.cpp \
$(coolwsd_sources) \
wsd/coolwsd-inproc.cpp \
$(coolforkit_sources) \
$(shared_sources)
admin_fuzzer_CPPFLAGS = \
-DKIT_IN_PROCESS=1 \
$(AM_CPPFLAGS)
admin_fuzzer_SOURCES = \
$(coolwsd_sources) \
$(coolforkit_sources) \
$(shared_sources) \
$(common_fuzzer_sources) \
fuzzer/Admin.cpp
admin_fuzzer_LDFLAGS = -fsanitize=fuzzer $(AM_LDFLAGS)
admin_fuzzer_LDADD = libsimd.a
clientsession_fuzzer_CPPFLAGS = \
-DKIT_IN_PROCESS=1 \
$(AM_CPPFLAGS)
clientsession_fuzzer_SOURCES = \
$(coolwsd_sources) \
$(coolforkit_sources) \
$(shared_sources) \
$(common_fuzzer_sources) \
fuzzer/ClientSession.cpp
clientsession_fuzzer_LDFLAGS = -fsanitize=fuzzer $(AM_LDFLAGS)
clientsession_fuzzer_LDADD = libsimd.a
httpresponse_fuzzer_CPPFLAGS = \
-DKIT_IN_PROCESS=1 \
$(AM_CPPFLAGS)
httpresponse_fuzzer_SOURCES = \
$(coolwsd_sources) \
$(coolforkit_sources) \
$(shared_sources) \
$(common_fuzzer_sources) \
fuzzer/HttpResponse.cpp
httpresponse_fuzzer_LDFLAGS = -fsanitize=fuzzer $(AM_LDFLAGS)
httpresponse_fuzzer_LDADD = libsimd.a
httpecho_fuzzer_CPPFLAGS = \
$(AM_CPPFLAGS) \
-I${top_srcdir}/test
httpecho_fuzzer_SOURCES = \
$(common_fuzzer_sources) \
fuzzer/HttpEcho.cpp
httpecho_fuzzer_LDFLAGS = -fsanitize=fuzzer $(AM_LDFLAGS)
httpecho_fuzzer_LDADD = libsimd.a
endif # ENABLE_LIBFUZZER
clientnb_SOURCES = net/clientnb.cpp \
common/DummyTraceEventEmitter.cpp \
common/Log.cpp \
common/StringVector.cpp \
common/Util.cpp
common/Util.cpp \
common/Util-desktop.cpp
coolmount_SOURCES = tools/mount.cpp
coolmap_SOURCES = tools/map.cpp
coolbench_SOURCES = tools/Benchmark.cpp \
common/DummyTraceEventEmitter.cpp \
common/Log.cpp \
common/StringVector.cpp \
common/Util.cpp \
common/Util-desktop.cpp \
common/Simd.cpp
coolbench_LDADD = libsimd.a
coolconvert_SOURCES = tools/Tool.cpp
coolstress_CPPFLAGS = -DTDOC=\"$(abs_top_srcdir)/test/data\" ${include_paths}
@ -236,10 +295,12 @@ coolstress_SOURCES = tools/Stress.cpp \
coolconfig_SOURCES = tools/Config.cpp \
tools/ConfigMigrationAssistant.cpp \
common/DummyTraceEventEmitter.cpp \
common/ConfigUtil.cpp \
common/Crypto.cpp \
common/Log.cpp \
common/StringVector.cpp \
common/Util.cpp
common/Util.cpp \
common/Util-desktop.cpp
coolsocketdump_SOURCES = tools/WebSocketDump.cpp \
common/DummyTraceEventEmitter.cpp \
@ -249,13 +310,17 @@ wsd_headers = wsd/Admin.hpp \
wsd/AdminModel.hpp \
wsd/Auth.hpp \
wsd/ClientSession.hpp \
wsd/ContentSecurityPolicy.hpp \
wsd/DocumentBroker.hpp \
wsd/ProxyProtocol.hpp \
wsd/Exceptions.hpp \
wsd/FileServer.hpp \
wsd/ProxyRequestHandler.hpp \
wsd/COOLWSD.hpp \
wsd/ClientRequestDispatcher.hpp \
wsd/ProofKey.hpp \
wsd/RequestDetails.hpp \
wsd/RequestVettingStation.hpp \
wsd/SenderQueue.hpp \
wsd/ServerURL.hpp \
wsd/Storage.hpp \
@ -263,7 +328,12 @@ wsd_headers = wsd/Admin.hpp \
wsd/TileDesc.hpp \
wsd/TraceFile.hpp \
wsd/UserMessages.hpp \
wsd/QuarantineUtil.hpp
wsd/QuarantineUtil.hpp \
wsd/HostUtil.hpp \
wsd/wopi/CheckFileInfo.hpp \
wsd/wopi/StorageConnectionManager.hpp \
wsd/wopi/WopiProxy.hpp \
wsd/wopi/WopiStorage.hpp
shared_headers = common/Common.hpp \
common/Clipboard.hpp \
@ -271,8 +341,10 @@ shared_headers = common/Common.hpp \
common/JsonUtil.hpp \
common/FileUtil.hpp \
common/JailUtil.hpp \
common/LangUtil.hpp \
common/Log.hpp \
common/Protocol.hpp \
common/StateEnum.hpp \
common/StringVector.hpp \
common/Seccomp.hpp \
common/Session.hpp \
@ -280,7 +352,6 @@ shared_headers = common/Common.hpp \
common/Util.hpp \
common/ConfigUtil.hpp \
common/Authorization.hpp \
common/MessageQueue.hpp \
common/Message.hpp \
common/MobileApp.hpp \
common/Png.hpp \
@ -291,6 +362,11 @@ shared_headers = common/Common.hpp \
common/security.h \
common/SpookyV2.h \
common/CommandControl.hpp \
common/Simd.hpp \
common/ThreadPool.hpp \
common/Watchdog.hpp \
kit/KitQueue.hpp \
net/AsyncDNS.hpp \
net/Buffer.hpp \
net/DelaySocket.hpp \
net/FakeSocket.hpp \
@ -300,8 +376,8 @@ shared_headers = common/Common.hpp \
net/ServerSocket.hpp \
net/Socket.hpp \
net/WebSocketHandler.hpp \
net/WebSocketSession.hpp \
tools/Replay.hpp
tools/Replay.hpp \
wasm/base64.hpp
if ENABLE_SSL
shared_headers += net/Ssl.hpp \
net/SslSocket.hpp
@ -309,10 +385,13 @@ endif
kit_headers = kit/ChildSession.hpp \
kit/Delta.hpp \
kit/DeltaSimd.h \
kit/DummyLibreOfficeKit.hpp \
kit/Kit.hpp \
kit/KitHelper.hpp \
kit/KitWebSocket.hpp \
kit/SetupKitEnvironment.hpp \
kit/StateRecorder.hpp \
kit/Watermark.hpp
noinst_HEADERS = $(wsd_headers) $(shared_headers) $(kit_headers) \
@ -320,14 +399,18 @@ noinst_HEADERS = $(wsd_headers) $(shared_headers) $(kit_headers) \
test/UnitHTTP.hpp \
test/HttpTestServer.hpp \
test/WopiTestServer.hpp \
test/countcoolkits.hpp \
test/KitPidHelpers.hpp \
test/lokassert.hpp \
test/test.hpp \
test/testlog.hpp \
test/HttpTestServer.hpp \
test/WOPIUploadConflictCommon.hpp \
test/UnitWSDClient.hpp \
test/helpers.hpp
GIT_BRANCH := $(shell git symbolic-ref --short HEAD)
GIT_HASH := $(shell git log -1 --format=%h)
dist-hook:
git log -1 --format=%h > $(distdir)/dist_git_hash 2> /dev/null || rm $(distdir)/dist_git_hash
mkdir -p $(distdir)/bundled/include/LibreOfficeKit/
@ -341,11 +424,9 @@ dist-hook:
EXTRA_DIST = discovery.xml \
favicon.ico \
coolkitconfig.xcu \
coolwsd.init.rhel6 \
coolwsd.spec \
coolwsd.xml.in \
coolwsd.service \
sysconfig.coolwsd \
debian/compat \
debian/copyright \
debian/coolwsd.preinst \
@ -364,6 +445,7 @@ EXTRA_DIST = discovery.xml \
scripts/unocommands.py \
scripts/refresh-git-hooks \
README.md \
THIRDPARTYLICENSES \
$(man_MANS)
if ENABLE_LIBFUZZER
@ -372,9 +454,11 @@ else
# Use coolwsd to cleanup jails, if any. If it fails, we may have a broken/old coolwsd binary, remove it to rebuild.
# A CI box may switch branches without cleaning up the binaries, if coolwsd from a broken branch is used here
# it will fail all subsequent builds, until it's rebuilt from the new branch. So removing coolwsd after failing is needed.
CLEANUP_COMMAND=if test -s ./coolwsd; then echo "Cleaning up..." && ./coolwsd --disable-cool-user-checking --cleanup --o:logging.level=trace || rm ./coolwsd; fi
CLEANUP_COMMAND=if test -s ./coolwsd; then echo "Cleaning up..." && ./coolwsd --disable-cool-user-checking --cleanup --o:logging.level=trace || rm -f ./coolwsd; fi
endif
CLEANUP_COVERAGE=rm -rf ${abs_top_srcdir}/gcov; find . -iname "*.gc??" -delete
if HAVE_LO_PATH
SYSTEM_STAMP = @SYSTEMPLATE_PATH@/system_stamp
@ -382,7 +466,7 @@ CAPABILITIES = $(if @ENABLE_SETCAP@,true,false)
RUN_GDB = $(if $(GDB_FRONTEND),$(GDB_FRONTEND),gdb --tui --args)
if ENABLE_SETCAP
SET_CAPS_COMMAND=sudo @SETCAP@ cap_fowner,cap_chown,cap_mknod,cap_sys_chroot=ep coolforkit && sudo @SETCAP@ cap_sys_admin=ep coolmount
SET_CAPS_COMMAND=sudo @SETCAP@ cap_fowner,cap_chown,cap_sys_chroot=ep coolforkit && sudo @SETCAP@ cap_sys_admin=ep coolmount
else
SET_CAPS_COMMAND=echo "Skipping capability setting"
endif
@ -414,11 +498,12 @@ clean-am: cleanup clean-binPROGRAMS clean-generic clean-libtool clean-local clea
clean-local:
$(CLEANUP_COMMAND)
if test "z@JAILS_PATH@" != "z"; then rm -rf "@JAILS_PATH@"; fi
if test "z@SYSTEMPLATE_PATH@" != "z"; then rm -rf "@SYSTEMPLATE_PATH@"; fi
if test "z@SYSTEMPLATE_PATH@" != "z"; then rm -rf "@SYSTEMPLATE_PATH@" || echo "WARNING: failed to remove the systemplate"; fi
if test "z@JAILS_PATH@" != "z"; then rm -rf "@JAILS_PATH@" || echo "WARNING: failed to remove all jails cleanly"; fi
rm -rf "${top_srcdir}/loleaflet"
rm -rf loolconfig loolconvert loolforkit loolmap loolmount # kill old binaries
rm -rf loolwsd loolwsd_fuzzer loolstress loolsocketdump
rm -rf loolwsd loolwsd_fuzzer coolwsd_fuzzer loolstress loolsocketdump
$(CLEANUP_COVERAGE)
if ENABLE_DEBUG
# can write to /tmp/coolwsd.log
@ -434,30 +519,46 @@ setup-wsd: all @JAILS_PATH@
@cp $(abs_top_srcdir)/test/data/hello.odt $(abs_top_srcdir)/test/data/hello-world.odt
@cp $(abs_top_srcdir)/test/data/hello.ods $(abs_top_srcdir)/test/data/hello-world.ods
@cp $(abs_top_srcdir)/test/data/hello.odp $(abs_top_srcdir)/test/data/hello-world.odp
@cp $(abs_top_srcdir)/test/data/hello.odg $(abs_top_srcdir)/test/data/hello-world.odg
@echo
COMMON_PARAMS = \
--o:sys_template_path="@SYSTEMPLATE_PATH@" \
--o:child_root_path="@JAILS_PATH@" --o:storage.filesystem[@allow]=true \
--o:ssl.cert_file_path="$(abs_top_srcdir)/etc/cert.pem" \
--o:ssl.key_file_path="$(abs_top_srcdir)/etc/key.pem" \
--o:ssl.ca_file_path="$(abs_top_srcdir)/etc/ca-chain.cert.pem" \
--o:admin_console.username=admin --o:admin_console.password=admin
run: setup-wsd
./coolwsd --o:sys_template_path="@SYSTEMPLATE_PATH@" \
--o:security.capabilities="$(CAPABILITIES)" \
--o:child_root_path="@JAILS_PATH@" --o:storage.filesystem[@allow]=true \
--o:ssl.cert_file_path="$(abs_top_srcdir)/etc/cert.pem" \
--o:ssl.key_file_path="$(abs_top_srcdir)/etc/key.pem" \
--o:ssl.ca_file_path="$(abs_top_srcdir)/etc/ca-chain.cert.pem" \
--o:admin_console.username=admin --o:admin_console.password=admin \
--o:logging.file[@enable]=${OUTPUT_TO_FILE} --o:logging.level=trace \
--o:trace_event[@enable]=true
./coolwsd $(COMMON_PARAMS) \
--o:security.capabilities="$(CAPABILITIES)" \
--o:logging.file[@enable]=${OUTPUT_TO_FILE} --o:logging.level=trace \
--o:trace_event[@enable]=true
if ENABLE_DEBUG
run-one: setup-wsd
./coolwsd --o:sys_template_path="@SYSTEMPLATE_PATH@" \
--o:security.capabilities="$(CAPABILITIES)" \
--o:child_root_path="@JAILS_PATH@" --o:storage.filesystem[@allow]=true \
--o:ssl.cert_file_path="$(abs_top_srcdir)/etc/cert.pem" \
--o:ssl.key_file_path="$(abs_top_srcdir)/etc/key.pem" \
--o:ssl.ca_file_path="$(abs_top_srcdir)/etc/ca-chain.cert.pem" \
--o:admin_console.username=admin --o:admin_console.password=admin \
--o:logging.file[@enable]=true --o:logging.level=trace \
--singlekit
./coolwsd $(COMMON_PARAMS) \
--o:security.capabilities="$(CAPABILITIES)" \
--o:logging.file[@enable]=true --o:logging.level=trace \
--singlekit
run-inproc: setup-wsd
@echo "Launching coolwsd-inproc"
./coolwsd-inproc $(COMMON_PARAMS) \
--o:logging.file[@enable]=true --o:logging.level=trace
run-massif-inproc: setup-wsd
@echo "Launching coolwsd under valgrind for single process"
valgrind --tool=massif --num-callers=64 --trace-children=no -v \
./coolwsd-inproc $(COMMON_PARAMS) \
--o:logging.file[@enable]=false --o:logging.level=trace
run-heaptrack-inproc: setup-wsd
@echo "Launching coolwsd under heaptrack for single process"
heaptrack \
./coolwsd-inproc $(COMMON_PARAMS) \
--o:logging.file[@enable]=false --o:logging.level=trace
endif
sync-writer:
@ -470,62 +571,37 @@ sync-impress:
browser-sync start --config browsersync-config.js --startPath "browser/96c23f663/cool.html?file_path=file://$(abs_top_srcdir)/test/data/hello-world.odp"
run-trace: setup-wsd
./coolwsd --o:sys_template_path="@SYSTEMPLATE_PATH@" \
--o:child_root_path="@JAILS_PATH@" --o:storage.filesystem[@allow]=true \
--o:ssl.cert_file_path="$(abs_top_srcdir)/etc/cert.pem" \
--o:ssl.key_file_path="$(abs_top_srcdir)/etc/key.pem" \
--o:ssl.ca_file_path="$(abs_top_srcdir)/etc/ca-chain.cert.pem" \
--o:admin_console.username=admin --o:admin_console.password=admin \
--o:logging.file[@enable]=false --o:logging.level=trace \
--o:trace[@enable]=true --o:trace.path=${builddir}/trace.txt.gz \
--o:trace.outgoing.record=false
./coolwsd $(COMMON_PARAMS) \
--o:logging.file[@enable]=false --o:logging.level=trace \
--o:trace[@enable]=true --o:trace.path=${builddir}/trace.txt.gz \
--o:trace.outgoing.record=false
run-valgrind: setup-wsd
@echo "Launching coolwsd under valgrind (but not forkit/coolkit, yet)"
valgrind --tool=memcheck --trace-children=no -v --read-var-info=yes \
./coolwsd --o:sys_template_path="@SYSTEMPLATE_PATH@" \
--o:child_root_path="@JAILS_PATH@" --o:storage.filesystem[@allow]=true \
--o:ssl.cert_file_path="$(abs_top_srcdir)/etc/cert.pem" \
--o:ssl.key_file_path="$(abs_top_srcdir)/etc/key.pem" \
--o:ssl.ca_file_path="$(abs_top_srcdir)/etc/ca-chain.cert.pem" \
--o:admin_console.username=admin --o:admin_console.password=admin \
--o:logging.file[@enable]=false --o:logging.level=trace
./coolwsd $(COMMON_PARAMS) \
--o:logging.file[@enable]=false --o:logging.level=trace
run-gdb: setup-wsd
@echo "Launching coolwsd under gdb"
$(RUN_GDB) \
./coolwsd --o:security.capabilities="false" \
--o:sys_template_path="@SYSTEMPLATE_PATH@" \
--o:child_root_path="@JAILS_PATH@" --o:storage.filesystem[@allow]=true \
--o:ssl.cert_file_path="$(abs_top_srcdir)/etc/cert.pem" \
--o:ssl.key_file_path="$(abs_top_srcdir)/etc/key.pem" \
--o:ssl.ca_file_path="$(abs_top_srcdir)/etc/ca-chain.cert.pem" \
--o:admin_console.username=admin --o:admin_console.password=admin \
--o:logging.file[@enable]=false --o:logging.level=error
./coolwsd $(COMMON_PARAMS) \
--o:security.capabilities="false" \
--o:logging.file[@enable]=false --o:logging.level=error
run-callgrind: setup-wsd
@echo "Launching coolwsd under valgrind's callgrind"
valgrind --tool=callgrind --simulate-cache=yes --dump-instr=yes --num-callers=50 --error-limit=no --trace-children=yes \
./coolwsd --o:security.capabilities="false" \
--o:sys_template_path="@SYSTEMPLATE_PATH@" \
--o:child_root_path="@JAILS_PATH@" --o:storage.filesystem[@allow]=true \
--o:ssl.cert_file_path="$(abs_top_srcdir)/etc/cert.pem" \
--o:ssl.key_file_path="$(abs_top_srcdir)/etc/key.pem" \
--o:ssl.ca_file_path="$(abs_top_srcdir)/etc/ca-chain.cert.pem" \
--o:admin_console.username=admin --o:admin_console.password=admin \
--o:logging.file[@enable]=false --o:logging.level=error
./coolwsd $(COMMON_PARAMS) \
--o:security.capabilities="false" \
--o:logging.file[@enable]=false --o:logging.level=error
run-strace: setup-wsd
@echo "Launching coolwsd under strace"
strace -o strace.log -f -tt -s 256 \
./coolwsd --o:security.capabilities="false" \
--o:sys_template_path="@SYSTEMPLATE_PATH@" \
--o:child_root_path="@JAILS_PATH@" --o:storage.filesystem[@allow]=true \
--o:ssl.cert_file_path="$(abs_top_srcdir)/etc/cert.pem" \
--o:ssl.key_file_path="$(abs_top_srcdir)/etc/key.pem" \
--o:ssl.ca_file_path="$(abs_top_srcdir)/etc/ca-chain.cert.pem" \
--o:admin_console.username=admin --o:admin_console.password=admin \
--o:logging.file[@enable]=false --o:logging.level=error
./coolwsd $(COMMON_PARAMS) \
--o:security.capabilities="false" \
--o:logging.file[@enable]=false --o:logging.level=error
else
@ -569,7 +645,7 @@ CLANGXX_COMPILE_FLAGS=clang++ $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
JSON_COMPILE_FLAGS=$(subst ",\",$(subst \,\\,$(CLANGXX_COMPILE_FLAGS)))
JSON_COMPILE_SRC = $(coolwsd_json) $(coolforkit_json) $(shared_json)
JSON_COMPILE_SRC = $(patsubst %.cpp,%.cmd,$(wildcard **/*.cpp))
$(eval $(call file_targets,$(JSON_COMPILE_SRC)))
@ -593,6 +669,15 @@ compile_commands: $(abs_srcdir)/compile_commands.json
browser/node_modules: browser/package.json browser/archived-packages
@cd browser && npm install
eslint: browser/node_modules
@make -C browser eslint
prettier: browser/node_modules
@make -C browser prettier
prettier-write: browser/node_modules
@make -C browser prettier-write
install-exec-hook:
cd $(DESTDIR)$(bindir) && \
$(LN_S) coolconfig loolconfig && \
@ -613,3 +698,37 @@ stress:
$(stress_file) $(trace_dir)/writer-hello-shape.txt \
$(stress_file) $(trace_dir)/writer-quick.txt
if ENABLE_CODE_COVERAGE
GEN_COVERAGE_COMMAND=mkdir -p ${abs_top_srcdir}/gcov && \
lcov --no-external --capture --rc 'lcov_excl_line=' --rc 'lcov_excl_br_line=LOG_|TST_|LOK_|WSD_|TRANSITION|assert' \
--compat libtool=on --directory ${abs_top_srcdir}/. --output-file ${abs_top_srcdir}/gcov/cool.coverage.test.info && \
genhtml --prefix ${abs_top_srcdir}/. --ignore-errors source ${abs_top_srcdir}/gcov/cool.coverage.test.info \
--legend --title "${GIT_BRANCH} @ ${GIT_HASH}" --output-directory=${abs_top_srcdir}/gcov/html && \
echo "Code-Coverage report generated in ${abs_top_srcdir}/gcov/html"
else
GEN_COVERAGE_COMMAND=true
endif
# typically the system nss won't work in a jail and fail to init which is fatal for
# exporting to pdf, which is something that gets tested
check-for-system-nss:
@if test -e "@LO_PATH@/../config_host.mk"; then \
if grep -q SYSTEM_NSS=TRUE "@LO_PATH@/../config_host.mk"; then \
echo make check will fail unless core is configured using --without-system-nss; \
exit 1; \
fi \
fi
check-recursive: eslint
check: check-for-system-nss prettier eslint check-recursive
$(GEN_COVERAGE_COMMAND)
coverage-report:
$(GEN_COVERAGE_COMMAND)
coverage-clean:
$(CLEANUP_COVERAGE)
czech: check
@echo "This should do something much cooler"

View File

@ -35,13 +35,12 @@
poll() calls to be without timeout. Or something similar, depending
on case.
- Recursive mutexes are evil. The last remaining instances should be
removed from the Kit/ChildSession.cppp as/when we move to a single
threaded Kit process.
- Occasionally Control-C (SIGINT) doesn't shut down coolwsd. One has
to kill it with SIGKILL. Which of course leaves all the chroot jails
around.
around. Hitting Control-C a second time will attempt a faster, and
ruder, termination of connections, without waiting for a response.
A third Control-C will issue SIGKILL, which will kill immediately.
To cleanup the jails manually, simply run coolwsd --cleanup.
- There are lots of places where a std::string variable is defined,
initialised with a value, that is never changed. (In many cases it

View File

@ -34,3 +34,33 @@ Signed-off-by: Random J Developer <random@developer.example.org>
using your real name and the email address (sorry, no pseudonyms
or anonymous contributions.)
## Other information to put into your commit message
When reviewing a patch, we look for the following information in the commit message:
- Title: a single line, short and to the point summary of what the patch does.
- The reason is to be able to do `git log --pretty=oneline` and have a usable result.
- Intro: observation of the current state
- Rationale: the problem to be solved is obvious to you, but not to the reviewer. It's good to
have a list of steps to reproduce the problem.
- Problem description: pros and cons of the current state
- Rationale: when some feature doesn't work the way expected, frequently there is some other
use-case that motivated the current behavior. It's easier to not break the old use-case with
your change if you're aware of the old use-case.
- If there was an old use-case and you found it by research, please document it, so the person
reading the commit message finds it easily.
- Solution: give orders to the codebase
- A short description of how you introduce new behavior while not breaking old behavior is useful,
because it may not be too obvious just by looking at what you changed.
An alternative is to have much of this information in a (public) issue, refer to that issue and have
a short commit message. That works better e.g. when using images to demonstrate the problem.

View File

@ -0,0 +1,32 @@
# File Notices
For new files created in this repository, please use the following File
Notices (ie. header in the file describing the Copyright and License):
## C++, JavaScript, TypeScript
```
/*
* Copyright the Collabora Online contributors.
*
* SPDX-License-Identifier: MPL-2.0
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
*/
```
## Makefiles, scripts
```
#
# Copyright the Collabora Online contributors.
#
# SPDX-License-Identifier: MPL-2.0
#
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
#
```

View File

@ -1,15 +1,13 @@
[![Build Status](https://cpci.cbg.collabora.co.uk:8080/view/Tinderbox/job/Tinderbox%20for%20online%20master/badge/icon?subject=master)](https://cpci.cbg.collabora.co.uk:8080/view/Tinderbox/job/Tinderbox%20for%20online%20master/) [![Build Status](https://cpci.cbg.collabora.co.uk:8080/job/Github%20for%20core%20side%20of%20online%20master/badge/icon?subject=GH+core "GitHub core side for online master")](https://cpci.cbg.collabora.co.uk:8080/job/Github%20for%20core%20side%20of%20online%20master/)
<p align="right"><a href="#gitpod"><img alt="Open in Gitpod" src="https://gitpod.io/button/open-in-gitpod.svg"></a></p>
# Collabora Online
[![Master: Pull request policy](https://img.shields.io/badge/Master-PRs%20can%20be%20merge%20without%20approval-42BC00?logoColor=42BC00&logo=git "Main release is still distant. Thanks for your support and contributions! :)")](https://github.com/CollaboraOnline/online/blob/master/CONTRIBUTING.md#contributing-to-source-code)
<!--
[![Master: Pull request policy](https://img.shields.io/badge/Master-protected%2C%20PRs%20need%20approval-red?logoColor=lightred&logo=git "Collabora Team is preparing for the next release, therefore 'master' branch is protected now, PRs need 1 review before merging. Thanks for your support and contributions! :)")](https://github.com/CollaboraOnline/online/blob/master/CONTRIBUTING.md#contributing-to-source-code)
[![Master: Pull request policy](https://img.shields.io/badge/Master-PRs%20can%20be%20merge%20without%20approval-42BC00?logoColor=42BC00&logo=git "Main release is still distant. Thanks for your support and contributions! :)")](https://github.com/CollaboraOnline/online/blob/master/CONTRIBUTING.md#contributing-to-source-code)
-->
[![Master: Pull request policy](https://img.shields.io/badge/Master-protected%2C%20PRs%20need%20approval-red?logoColor=lightred&logo=git "Collabora Team is preparing for the next release, therefore 'master' branch is protected now, PRs need 1 review before merging. Thanks for your support and contributions! :)")](https://github.com/CollaboraOnline/online/blob/master/CONTRIBUTING.md#contributing-to-source-code)
[![irc](https://img.shields.io/badge/IRC-%23cool--dev%20on%20libera-orange.svg)](https://web.libera.chat/?channels=cool-dev)
[![Matrix](https://img.shields.io/badge/Matrix-%23cool--dev-turquoise.svg)](https://matrix.to/#/#cool-dev:matrix.org)
[![Telegram](https://img.shields.io/badge/Telegram-Collabora%20Online-green.svg)](https://t.me/CollaboraOnline)
[![Forum](https://img.shields.io/badge/Forum-Discourse-blue.svg)](https://forum.collaboraonline.com/)
[![Website](https://img.shields.io/badge/Website-collaboraonline.github.io-blueviolet.svg)](https://collaboraonline.github.io/)
@ -17,9 +15,17 @@
[![Gitpod Ready-to-Code](https://img.shields.io/badge/Gitpod-ready--to--code-blue?logo=gitpod)](https://gitpod.io/#https://github.com/CollaboraOnline/online)
**LibreOffice in the Cloud on your own Terms**
**Your own private Office in the Cloud**
![](https://raw.githubusercontent.com/CollaboraOnline/CollaboraOnline.github.io/source/static/images/homepage-image.jpg)
![](https://raw.githubusercontent.com/CollaboraOnline/CollaboraOnline.github.io/master/static/images/homepage-image.png)
## Get in touch 💬
* [📋 Forum](https://forum.collaboraonline.com/)
* [👥 Facebook](https://www.facebook.com/collaboraoffice/)
* [🐣 𝕏(Twitter)](https://twitter.com/CollaboraOffice)
* [🐘 Mastodon](https://mastodon.social/@CollaboraOffice)
## Key features
* View and edit text documents, spreadsheets, presentations & more
@ -29,15 +35,17 @@
## Website
For many more details, build instructions, downloads and more please visit https://collaboraonline.github.io/
For many more details, build instructions, downloads and more please visit https://collaboraonline.github.io/ and also you can check out the [SDK Documentation](https://sdk.collaboraonline.com/contents.html).
## Developer assistance
Please ask your questions on `irc.libera.chat` in our `#cool-dev` channel
Please ask your questions on any of the bridged Matrix/Telegram rooms
* Matrix: [#cool-dev:matrix.org](https://matrix.to/#/#cool-dev:matrix.org)
* Telegram: [CollaboraOnline](https://t.me/CollaboraOnline)
Join the conversation on our Discourse server at https://forum.collaboraonline.com/
Watch the tinderbox status (if it's green) at
https://cpci.cbg.collabora.co.uk:8080/view/Tinderbox/job/Tinderbox%20for%20online%20master/
https://cpci.cbg.collabora.co.uk:8080/job/Tinderbox%20for%20online%20master%20against%20co-22.05/
## Development bits
@ -58,26 +66,21 @@ This project has several components:
## Further recommended reading with build details
Please consult the README files in the component's directory for more details:
- wsd/README
- browser/README
- **[wsd/README](wsd)**
- **[browser/README](browser)**
## iOS and Android apps
See the corresponding READMEs:
* **ios/README**
* **android/README**
* **[ios/README](ios)**
* **[android/README](android)**
## GitPod
Head over to https://collaboraonline.github.io/post/build-code/ select gitpod from the dropdown and follow the steps.
Head over to https://collaboraonline.github.io/post/build-code/#build-code-on-gitpod and follow the steps.
Interesting things to keep in mind:
- Make sure your browser is not blocking windows/tabs from opening from the gitpod workspace URL (maybe add `*.gitpod.io` to your browser's whitelist)
- The GitPod tasks will run automatically and further instructions will be printed out right in the terminal
- VNC tab will open automatically if not just click in the left icon `Remote explorer` and click `6080`. You will see a tab completly black, that's normal.
- As mentioned in those instructions if you are not using the VS Code desktop and if you are only relying on your browser please:
- Do not try to click the URL from the make run out put instead copy that URL and execute `firefox [paste URL here]`
- Head over to the tab where the VNC is opened (black page), you will see Firefox opening there, maximize and have fun.
- You can also run cypress tests via GitPod but you will need to use Firefox, for that just prepend `CYPRESS_BROWSER="firefox"` to the desired command. Example: `CYPRESS_BROWSER="firefox" make check` for every test or `CYPRESS_BROWSER="firefox" make check-desktop spec=impress/scrolling_spec.js` for one specific test on desktop
## Integrating
To [integrate](https://sdk.collaboraonline.com/docs/why_integrate.html) Collabora Online into your own solution, you can see our [step-by-step tutorial](https://sdk.collaboraonline.com/docs/Step_by_step_tutorial.html), view the [available integrations](https://sdk.collaboraonline.com/docs/available_integrations.html), understand the [post message API](https://sdk.collaboraonline.com/docs/postmessage_api.html) used to customize and interact with Collabora Online, and a lot more.
## Enjoy!

View File

@ -6,10 +6,11 @@ Currently the following Collabora Online versions are supported with security up
| Version | Supported |
| ------- | ------------------ |
| 6.4.x | :white_check_mark: |
| 4.2.x | :white_check_mark: |
| 4.0.x | :x: |
| < 4.0 | :x: |
| 24.04.x | :white_check_mark: |
| 23.05.x | :white_check_mark: |
| 22.05.x | :white_check_mark: |
| 21.11.x | :white_check_mark: |
| 6.4.x or older | :x: |
## Reporting a Vulnerability

459
THIRDPARTYLICENSES 100644
View File

@ -0,0 +1,459 @@
Collabora Online binaries may be statically linked against POCO C++ Libraries.
The POCO C++ Libraries are licensed under the Boost Software License. A very liberal license that encourages both commercial and non-commercial use.
THE BOOST SOFTWARE LICENSE 1.0
Permission is hereby granted, free of charge, to any person or organization obtaining a copy of the software and accompanying documentation covered by this license (the "Software") to use, reproduce, display, distribute, execute, and transmit the Software, and to prepare derivative works of the Software, and to permit third-parties to whom the Software is furnished to do so, all subject to the following:
The copyright notices in the Software and this entire statement, including the above license grant, this restriction and the following disclaimer, must be included in all copies of the Software, in whole or in part, and all derivative works of the Software, unless such copies or derivative works are solely in the form of machine-executable object code generated by a source language processor.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Collabora Online binaries may be statically linked against OpenSSL 3.0 Libraries.
For the OpenSSL 3.0 release, and later releases derived from that, the Apache License v2 applies.
Apache License
Version 2.0, January 2004
https://www.apache.org/licenses/
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
1. Definitions.
"License" shall mean the terms and conditions for use, reproduction,
and distribution as defined by Sections 1 through 9 of this document.
"Licensor" shall mean the copyright owner or entity authorized by
the copyright owner that is granting the License.
"Legal Entity" shall mean the union of the acting entity and all
other entities that control, are controlled by, or are under common
control with that entity. For the purposes of this definition,
"control" means (i) the power, direct or indirect, to cause the
direction or management of such entity, whether by contract or
otherwise, or (ii) ownership of fifty percent (50%) or more of the
outstanding shares, or (iii) beneficial ownership of such entity.
"You" (or "Your") shall mean an individual or Legal Entity
exercising permissions granted by this License.
"Source" form shall mean the preferred form for making modifications,
including but not limited to software source code, documentation
source, and configuration files.
"Object" form shall mean any form resulting from mechanical
transformation or translation of a Source form, including but
not limited to compiled object code, generated documentation,
and conversions to other media types.
"Work" shall mean the work of authorship, whether in Source or
Object form, made available under the License, as indicated by a
copyright notice that is included in or attached to the work
(an example is provided in the Appendix below).
"Derivative Works" shall mean any work, whether in Source or Object
form, that is based on (or derived from) the Work and for which the
editorial revisions, annotations, elaborations, or other modifications
represent, as a whole, an original work of authorship. For the purposes
of this License, Derivative Works shall not include works that remain
separable from, or merely link (or bind by name) to the interfaces of,
the Work and Derivative Works thereof.
"Contribution" shall mean any work of authorship, including
the original version of the Work and any modifications or additions
to that Work or Derivative Works thereof, that is intentionally
submitted to Licensor for inclusion in the Work by the copyright owner
or by an individual or Legal Entity authorized to submit on behalf of
the copyright owner. For the purposes of this definition, "submitted"
means any form of electronic, verbal, or written communication sent
to the Licensor or its representatives, including but not limited to
communication on electronic mailing lists, source code control systems,
and issue tracking systems that are managed by, or on behalf of, the
Licensor for the purpose of discussing and improving the Work, but
excluding communication that is conspicuously marked or otherwise
designated in writing by the copyright owner as "Not a Contribution."
"Contributor" shall mean Licensor and any individual or Legal Entity
on behalf of whom a Contribution has been received by Licensor and
subsequently incorporated within the Work.
2. Grant of Copyright License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
copyright license to reproduce, prepare Derivative Works of,
publicly display, publicly perform, sublicense, and distribute the
Work and such Derivative Works in Source or Object form.
3. Grant of Patent License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
(except as stated in this section) patent license to make, have made,
use, offer to sell, sell, import, and otherwise transfer the Work,
where such license applies only to those patent claims licensable
by such Contributor that are necessarily infringed by their
Contribution(s) alone or by combination of their Contribution(s)
with the Work to which such Contribution(s) was submitted. If You
institute patent litigation against any entity (including a
cross-claim or counterclaim in a lawsuit) alleging that the Work
or a Contribution incorporated within the Work constitutes direct
or contributory patent infringement, then any patent licenses
granted to You under this License for that Work shall terminate
as of the date such litigation is filed.
4. Redistribution. You may reproduce and distribute copies of the
Work or Derivative Works thereof in any medium, with or without
modifications, and in Source or Object form, provided that You
meet the following conditions:
(a) You must give any other recipients of the Work or
Derivative Works a copy of this License; and
(b) You must cause any modified files to carry prominent notices
stating that You changed the files; and
(c) You must retain, in the Source form of any Derivative Works
that You distribute, all copyright, patent, trademark, and
attribution notices from the Source form of the Work,
excluding those notices that do not pertain to any part of
the Derivative Works; and
(d) If the Work includes a "NOTICE" text file as part of its
distribution, then any Derivative Works that You distribute must
include a readable copy of the attribution notices contained
within such NOTICE file, excluding those notices that do not
pertain to any part of the Derivative Works, in at least one
of the following places: within a NOTICE text file distributed
as part of the Derivative Works; within the Source form or
documentation, if provided along with the Derivative Works; or,
within a display generated by the Derivative Works, if and
wherever such third-party notices normally appear. The contents
of the NOTICE file are for informational purposes only and
do not modify the License. You may add Your own attribution
notices within Derivative Works that You distribute, alongside
or as an addendum to the NOTICE text from the Work, provided
that such additional attribution notices cannot be construed
as modifying the License.
You may add Your own copyright statement to Your modifications and
may provide additional or different license terms and conditions
for use, reproduction, or distribution of Your modifications, or
for any such Derivative Works as a whole, provided Your use,
reproduction, and distribution of the Work otherwise complies with
the conditions stated in this License.
5. Submission of Contributions. Unless You explicitly state otherwise,
any Contribution intentionally submitted for inclusion in the Work
by You to the Licensor shall be under the terms and conditions of
this License, without any additional terms or conditions.
Notwithstanding the above, nothing herein shall supersede or modify
the terms of any separate license agreement you may have executed
with Licensor regarding such Contributions.
6. Trademarks. This License does not grant permission to use the trade
names, trademarks, service marks, or product names of the Licensor,
except as required for reasonable and customary use in describing the
origin of the Work and reproducing the content of the NOTICE file.
7. Disclaimer of Warranty. Unless required by applicable law or
agreed to in writing, Licensor provides the Work (and each
Contributor provides its Contributions) on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
implied, including, without limitation, any warranties or conditions
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
PARTICULAR PURPOSE. You are solely responsible for determining the
appropriateness of using or redistributing the Work and assume any
risks associated with Your exercise of permissions under this License.
8. Limitation of Liability. In no event and under no legal theory,
whether in tort (including negligence), contract, or otherwise,
unless required by applicable law (such as deliberate and grossly
negligent acts) or agreed to in writing, shall any Contributor be
liable to You for damages, including any direct, indirect, special,
incidental, or consequential damages of any character arising as a
result of this License or out of the use or inability to use the
Work (including but not limited to damages for loss of goodwill,
work stoppage, computer failure or malfunction, or any and all
other commercial damages or losses), even if such Contributor
has been advised of the possibility of such damages.
9. Accepting Warranty or Additional Liability. While redistributing
the Work or Derivative Works thereof, You may choose to offer,
and charge a fee for, acceptance of support, warranty, indemnity,
or other liability obligations and/or rights consistent with this
License. However, in accepting such obligations, You may act only
on Your own behalf and on Your sole responsibility, not on behalf
of any other Contributor, and only if You agree to indemnify,
defend, and hold each Contributor harmless for any liability
incurred by, or claims asserted against, such Contributor by reason
of your accepting any such warranty or additional liability.
END OF TERMS AND CONDITIONS
Collabora Online binaries may be statically linked against libpng, the free reference library for reading and writing PNGs.
COPYRIGHT NOTICE, DISCLAIMER, and LICENSE
=========================================
PNG Reference Library License version 2
---------------------------------------
* Copyright (c) 1995-2024 The PNG Reference Library Authors.
* Copyright (c) 2018-2024 Cosmin Truta.
* Copyright (c) 2000-2002, 2004, 2006-2018 Glenn Randers-Pehrson.
* Copyright (c) 1996-1997 Andreas Dilger.
* Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc.
The software is supplied "as is", without warranty of any kind,
express or implied, including, without limitation, the warranties
of merchantability, fitness for a particular purpose, title, and
non-infringement. In no event shall the Copyright owners, or
anyone distributing the software, be liable for any damages or
other liability, whether in contract, tort or otherwise, arising
from, out of, or in connection with the software, or the use or
other dealings in the software, even if advised of the possibility
of such damage.
Permission is hereby granted to use, copy, modify, and distribute
this software, or portions hereof, for any purpose, without fee,
subject to the following restrictions:
1. The origin of this software must not be misrepresented; you
must not claim that you wrote the original software. If you
use this software in a product, an acknowledgment in the product
documentation would be appreciated, but is not required.
2. Altered source versions must be plainly marked as such, and must
not be misrepresented as being the original software.
3. This Copyright notice may not be removed or altered from any
source or altered source distribution.
Collabora Online binaries may be statically linked against Zstandard library.
BSD License
For Zstandard software
Copyright (c) Meta Platforms, Inc. and affiliates. All rights reserved.
Redistribution and use in source and binary forms, with or without modification,
are permitted provided that the following conditions are met:
* Redistributions of source code must retain the above copyright notice, this
list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright notice,
this list of conditions and the following disclaimer in the documentation
and/or other materials provided with the distribution.
* Neither the name Facebook, nor Meta, nor the names of its contributors may
be used to endorse or promote products derived from this software without
specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
Collabora Online client side JavaScript code uses the following 3rd party modules.
Autolinker.js
Copyright(c) 2020 Gregory Jacobs <greg@greg-jacobs.com>
MIT License
braintee/sanitize-url
Copyright (c) 2017 Braintree
MIT License
Bulma: the modern CSS framework that just works
Copyright (c) 2023 Jeremy Thomas
MIT License
fzstd High performance Zstandard decompression in a pure JavaScript
Copyright (c) 2020 Arjun Barrett
MIT License
hammer.js A javascript library for multi-touch gestures
Copyright (C) 2011-2017 by Jorik Tangelder (Eight Media)
MIT License
jQuery JavaScript Library
Includes Sizzle.js https://sizzlejs.com/
Copyright JS Foundation and other contributors
MIT License
jQuery contextMenu - Plugin for simple contextMenu handling
Copyright (c) 2011-2020 SWIS BV and contributors
MIT License
jQuery Mousewheel
Copyright jQuery Foundation and other contributors
MIT License
jQuery UI
Copyright jQuery Foundation and other contributors
MIT License
Leaflet an open-source JavaScript library for mobile-friendly interactive maps
Copyright (c) 2010-2015, Vladimir Agafonkin
Copyright (c) 2010-2011, CloudMade
All rights reserved.
Redistribution and use in source and binary forms, with or without modification, are
permitted provided that the following conditions are met:
1. Redistributions of source code must retain the above copyright notice, this list of
conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright notice, this list
of conditions and the following disclaimer in the documentation and/or other materials
provided with the distribution.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY
EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR
TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
ResizeObserverPolyfill.js A polyfill for the Resize Observer API
Copyright (c) 2016 Denis Rul
MIT License
Select2 The jQuery replacement for select boxes
Copyright (c) 2012-2017 Kevin Brown, Igor Vaynberg, and Select2 contributors
MIT License
SmartMenus jQuery Plugin
Copyright Vasil Dinkov, Vadikom Web Ltd.
MIT License
w2ui JavaScript UI Library for the Modern Web
Copyright (C) 2014 (vitmalina@gmail.com)
MIT License
The MIT License
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
Montserraft Regular Font
Copyright 2011 The Montserrat Project Authors
This Font Software is licensed under the SIL Open Font License, Version 1.1.
This license is copied below, and is also available with a FAQ at:
https://openfontlicense.org
-----------------------------------------------------------
SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007
-----------------------------------------------------------
PREAMBLE
The goals of the Open Font License (OFL) are to stimulate worldwide
development of collaborative font projects, to support the font creation
efforts of academic and linguistic communities, and to provide a free and
open framework in which fonts may be shared and improved in partnership
with others.
The OFL allows the licensed fonts to be used, studied, modified and
redistributed freely as long as they are not sold by themselves. The
fonts, including any derivative works, can be bundled, embedded,
redistributed and/or sold with any software provided that any reserved
names are not used by derivative works. The fonts and derivatives,
however, cannot be released under any other type of license. The
requirement for fonts to remain under this license does not apply
to any document created using the fonts or their derivatives.
DEFINITIONS
"Font Software" refers to the set of files released by the Copyright
Holder(s) under this license and clearly marked as such. This may
include source files, build scripts and documentation.
"Reserved Font Name" refers to any names specified as such after the
copyright statement(s).
"Original Version" refers to the collection of Font Software components as
distributed by the Copyright Holder(s).
"Modified Version" refers to any derivative made by adding to, deleting,
or substituting -- in part or in whole -- any of the components of the
Original Version, by changing formats or by porting the Font Software to a
new environment.
"Author" refers to any designer, engineer, programmer, technical
writer or other person who contributed to the Font Software.
PERMISSION & CONDITIONS
Permission is hereby granted, free of charge, to any person obtaining
a copy of the Font Software, to use, study, copy, merge, embed, modify,
redistribute, and sell modified and unmodified copies of the Font
Software, subject to the following conditions:
1) Neither the Font Software nor any of its individual components,
in Original or Modified Versions, may be sold by itself.
2) Original or Modified Versions of the Font Software may be bundled,
redistributed and/or sold with any software, provided that each copy
contains the above copyright notice and this license. These can be
included either as stand-alone text files, human-readable headers or
in the appropriate machine-readable metadata fields within text or
binary files as long as those fields can be easily viewed by the user.
3) No Modified Version of the Font Software may use the Reserved Font
Name(s) unless explicit written permission is granted by the corresponding
Copyright Holder. This restriction only applies to the primary font name as
presented to the users.
4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font
Software shall not be used to promote, endorse or advertise any
Modified Version, except to acknowledge the contribution(s) of the
Copyright Holder(s) and the Author(s) or with their explicit written
permission.
5) The Font Software, modified or unmodified, in part or in whole,
must be distributed entirely under this license, and must not be
distributed under any other license. The requirement for fonts to
remain under this license does not apply to any document created
using the Font Software.
TERMINATION
This license becomes null and void if any of the above conditions are
not met.
DISCLAIMER
THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE
COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL
DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM
OTHER DEALINGS IN THE FONT SOFTWARE.

View File

@ -15,6 +15,31 @@ build the native parts on Windows.
Run ./autogen.sh && make
* Build zstd for Android
git clone https://android.googlesource.com/platform/external/zstd/ android-zstd
cd android-zstd
mkdir -p install/armeabi-v7a
cd install/armeabi-v7a
NDK_PATH=~/Android/Sdk/ndk-bundle
cmake \
-DCMAKE_TOOLCHAIN_FILE=${NDK_PATH}/build/cmake/android.toolchain.cmake \
-DANDROID_ABI=armeabi-v7a \
-DCMAKE_ANDROID_ARCH_ABI=armeabi-v7a \
-DANDROID_NDK=${NDK_PATH} \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_SYSTEM_NAME=Android \
-DCMAKE_SYSTEM_VERSION=21 \
../../build/cmake
make
* Build zstd for several platforms:
scripts/build-zstd.sh ~/Android/Sdk/ndk-bundle /opt/libreoffice
This will create a set of folders in install/ that you can configure with.
* Build the POCO for Android
# clone the poco repository in the same folder where LibreOffice core and online folders are placed.
@ -125,7 +150,7 @@ build the native parts on Windows.
Don't forget to change --with-lo-builddir in the following:
./autogen.sh && ./configure CC=~/Android/Sdk/ndk-bundle/toolchains/llvm/prebuilt/linux-x86_64/bin/armv7a-linux-androideabi21-clang CXX=~/Android/Sdk/ndk-bundle/toolchains/llvm/prebuilt/linux-x86_64/bin/armv7a-linux-androideabi21-clang++ --host=arm-linux-androideabi --enable-androidapp --with-lo-builddir=/local/libreoffice/master-android --with-poco-includes=/opt/poco-android/include --with-poco-libs=/opt/poco-android/lib --disable-setcap --enable-silent-rules --enable-debug
./autogen.sh && ./configure CC=~/Android/Sdk/ndk-bundle/toolchains/llvm/prebuilt/linux-x86_64/bin/armv7a-linux-androideabi21-clang CXX=~/Android/Sdk/ndk-bundle/toolchains/llvm/prebuilt/linux-x86_64/bin/armv7a-linux-androideabi21-clang++ --host=arm-linux-androideabi --enable-androidapp --with-lo-builddir=/local/libreoffice/master-android --with-poco-includes=/opt/poco-android/include --with-poco-libs=/opt/poco-android/lib --with-zstd-includes=/opt/libreoffice/android-zstd/lib --with-zstd-libs=/opt/libreoffice/android-zstd/install/armeabi-v7a/lib --disable-setcap --enable-silent-rules --enable-debug
* Build the JavaScript, HTML and CSS files also in the online-android folder

View File

@ -4,13 +4,14 @@ apply plugin: 'com.android.application'
apply from: 'appSettings.gradle'
android {
compileSdkVersion 29
compileSdkVersion 33
buildDir = "${rootProject.getBuildDir()}/app"
ndkVersion "22.1.7171670"
defaultConfig {
// applicationId, versionCode and versionName are defined in appSettings.gradle
minSdkVersion 21
targetSdkVersion 29
targetSdkVersion 33
resValue "string", "app_name", "${liboAppName}"
resValue "string", "vendor", "${liboVendor}"
@ -61,21 +62,30 @@ android {
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'androidx.appcompat:appcompat:1.1.0'
implementation 'androidx.core:core:1.0.2'
implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
implementation 'androidx.recyclerview:recyclerview:1.0.0'
implementation 'com.google.android.material:material:1.1.0-alpha04'
implementation 'com.google.android.play:core:1.8.0'
implementation 'androidx.appcompat:appcompat:1.6.1'
implementation 'androidx.core:core:1.9.0'
implementation 'androidx.constraintlayout:constraintlayout:2.1.4'
implementation 'androidx.recyclerview:recyclerview:1.3.1'
implementation 'com.google.android.material:material:1.6.1'
implementation 'com.google.android.play:core:1.10.3'
//before changing the version please see https://issuetracker.google.com/issues/111662669
implementation 'androidx.preference:preference:1.1.0-alpha01'
implementation 'androidx.preference:preference:1.2.1'
implementation project(path: ':lib')
// https://stackoverflow.com/questions/75263047/duplicate-class-in-kotlin-android
constraints {
implementation("org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.8.0") {
because("kotlin-stdlib-jdk7 is now a part of kotlin-stdlib")
}
implementation("org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.8.0") {
because("kotlin-stdlib-jdk8 is now a part of kotlin-stdlib")
}
}
}
task copyBrandFiles(type: Copy) {
from "${liboBrandingDir}/android"
into "src/main/res"
tasks.register('copyBrandFiles', Copy) {
from "${liboBrandingDir}/android"
into "src/main/res"
}
afterEvaluate {

View File

@ -33,7 +33,7 @@
<activity
android:name=".ui.LibreOfficeUIActivity"
android:configChanges="orientation|screenSize|screenLayout|keyboardHidden|uiMode"
android:label="@string/app_name">
android:exported="true">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
@ -51,7 +51,8 @@
<activity
android:name="org.libreoffice.androidlib.LOActivity"
android:configChanges="orientation|screenSize|screenLayout|keyboardHidden"
android:launchMode="singleTask">
android:launchMode="singleTask"
android:exported="true">
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<action android:name="android.intent.action.EDIT" />
@ -93,6 +94,7 @@
<data android:mimeType="application/vnd.visio.xml" />
<data android:mimeType="application/x-mspublisher" />
<data android:mimeType="application/vnd.ms-excel.sheet.binary.macroenabled.12" />
<data android:mimeType="application/vnd.ms-excel.sheet.macroenabled.12" />
<!-- OOXML -->
<data android:mimeType="application/vnd.openxmlformats-officedocument.spreadsheetml.sheet" />

View File

@ -17,6 +17,7 @@ import androidx.appcompat.app.AppCompatDelegate;
import androidx.preference.Preference;
import androidx.preference.PreferenceFragmentCompat;
import org.libreoffice.androidapp.ui.LibreOfficeUIActivity;
import org.libreoffice.androidlib.LOActivity;
public class SettingsActivity extends AppCompatActivity {
@ -86,6 +87,7 @@ public class SettingsActivity extends AppCompatActivity {
}
AppCompatDelegate.setDefaultNightMode(dayNightMode);
prefs.edit().putInt(LibreOfficeUIActivity.NIGHT_MODE_KEY, dayNightMode).commit();
prefs.edit().putInt(LOActivity.NIGHT_MODE_KEY, dayNightMode).commit();
getActivity().recreate();
}

View File

@ -81,6 +81,7 @@ public class FileUtilities {
// mExtnMap.put(".pps", IMPRESS);
mExtnMap.put(".xls", CALC);
mExtnMap.put(".xlsb", CALC);
mExtnMap.put(".xlsm", CALC);
// MS templates
mExtnMap.put(".dot", DOC);

View File

@ -743,6 +743,7 @@ public class LibreOfficeUIActivity extends AppCompatActivity implements Settings
"application/vnd.visio.xml",
"application/x-mspublisher",
"application/vnd.ms-excel.sheet.binary.macroenabled.12",
"application/vnd.ms-excel.sheet.macroenabled.12",
// OOXML
"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
@ -948,7 +949,7 @@ public class LibreOfficeUIActivity extends AppCompatActivity implements Settings
@Override
protected void onStart() {
super.onStart();
if (ContextCompat.checkSelfPermission(this, Manifest.permission.WRITE_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED) {
if (Build.VERSION.SDK_INT < Build.VERSION_CODES.TIRAMISU && ContextCompat.checkSelfPermission(this, Manifest.permission.WRITE_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED) {
Log.i(LOGTAG, "no permission to read external storage - asking for permission");
ActivityCompat.requestPermissions(this,
new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE},

View File

@ -73,7 +73,7 @@ class RecentFilesAdapter extends RecyclerView.Adapter<RecentFilesAdapter.ViewHol
try {
cursor = activity.getContentResolver().query(uri, null, null, null, null);
if (cursor != null && cursor.moveToFirst())
filename = cursor.getString(cursor.getColumnIndex(OpenableColumns.DISPLAY_NAME));
filename = cursor.getString(cursor.getColumnIndexOrThrow(OpenableColumns.DISPLAY_NAME));
} catch (Exception e) {
return null;
} finally {
@ -94,7 +94,7 @@ class RecentFilesAdapter extends RecyclerView.Adapter<RecentFilesAdapter.ViewHol
try {
cursor = activity.getContentResolver().query(uri, null, null, null, null);
if (cursor != null && cursor.moveToFirst())
length = cursor.getLong(cursor.getColumnIndex(OpenableColumns.SIZE));
length = cursor.getLong(cursor.getColumnIndexOrThrow(OpenableColumns.SIZE));
} catch (Exception e) {
return 0;
} finally {

View File

@ -37,7 +37,7 @@
android:layout_gravity="center"
android:layout_weight="1"
android:ellipsize="end"
android:gravity="center_vertical"
android:gravity="center"
android:maxLines="2"
android:textAlignment="center"
android:textColor="?android:attr/textColorPrimary"
@ -52,8 +52,8 @@
android:layout_gravity="center"
android:contentDescription="@string/file_actions_icon_desc"
android:scaleType="fitStart"
android:tint="?android:attr/textColorPrimary"
app:srcCompat="@drawable/ic_more_vert_black_24dp" />
app:srcCompat="@drawable/ic_more_vert_black_24dp"
app:tint="?android:attr/textColorPrimary" />
</LinearLayout>
</LinearLayout>

View File

@ -3,7 +3,7 @@
<string name="action_about">Arredol de</string>
<string name="title_activity_show_html">Arredol de</string>
<string name="open">Ubrir</string>
<string name="share">Compartir</string>
<string name="share">Fer partache</string>
<string name="title_recents">Fichers recients</string>
<string name="title_browser">Totz os fichers</string>
<string name="app_name_settings">Achustes</string>
@ -24,4 +24,12 @@
<string name="action_cancel">Cancelar</string>
<string name="negative_cancel">Cancelar</string>
<string name="positive_ok">Acceptar</string>
<string name="failed_to_load_file">No s\'ha puesto determinar o fichero a cargar</string>
<string name="pref_sort_title">Orden d\'os fichers</string>
<string name="list_view">Lista</string>
<string name="share_via">Fer partache vía</string>
<string name="storage_permission_required">Se requiere permiso d\'almacenache</string>
<string name="sort_za">Z-A</string>
<string name="sort_az">A-Z</string>
<string name="temp_file_saving_disabled">Iste fichero ye solo que de lectura; o alzau ye desactivau.</string>
</resources>

View File

@ -28,10 +28,88 @@
<string name="pref_user_name">اسم المستخدم</string>
<string name="pref_user_name_info">يُستخدَم عند إضافة تعليق</string>
<string name="app_version_and_hash">الإصدار: %1$s
\nتشفير البعثرة لـ غِت online : %2$s
\nتشفير البعثرة لـ غِت core : %3$s</string>
\nتشفير البعثرة على الخط من قِت: %2$s
\nتشفير البعثرة الأساسي من قِت: %3$s</string>
<string name="app_description">$APP_NAME هو حزمة إنتاجية حديثة سهلة الإستخدام لمعالجة الكلمات والأوراق الممتدة والعروض التقديمية والمزيد.</string>
<string name="no_items">لا عناصر</string>
<string name="pref_sort_summary">حدد كيفية تنظيم الملفات: أبجديا أو بالحجم أو بالتأريخ.</string>
<string name="pref_user_name_guest">مستخدم ضيف</string>
<string name="filter_documents">المستندات</string>
<string name="default_document_name">بلا عنوان</string>
<string name="new_textdocument">مستند نصي جديد</string>
<string name="sort_largest">الأكبر أولا</string>
<string name="title_browser">جميع الملفات</string>
<string name="new_presentation">عرض تقديمي جديد</string>
<string name="sort">ترتيب حسب</string>
<string name="sort_newest">الأحدث أولاً</string>
<string name="open">افتح</string>
<string name="share">شارك</string>
<string name="about_moreinfo">مزيد من المعلومات</string>
<string name="new_spreadsheet">جدول بيانات جديد</string>
<string name="filter">فلترة بحسب</string>
<string name="sort_oldest">الأقدم أولا</string>
<string name="title_recents">الملفات الحديثة</string>
<string name="sort_smallest">الأصغر أولاً</string>
<string name="file_icon_desc">أيقونة الملف</string>
<string name="action_about">عن</string>
<string name="action_settings">اﻹعدادات</string>
<string name="share_via">شارك عبر</string>
<string name="remove_from_list">إزالة من القائمة</string>
<string name="filter_presentations">العروض التقديمية</string>
<string name="document_locations">مواقع المستندات</string>
<string name="local_file_system">نظام الملفات المحلي</string>
<string name="external_sd_file_system">بطاقة SD خارجية</string>
<string name="action_create">إنشاء</string>
<string name="title_activity_show_html">عنْ</string>
<string name="remote_server">الخادم عن بُعد</string>
<string name="theme">السِّمة</string>
<string name="choose_theme">اختر حُلّة</string>
<string name="filter_spreadsheets">جداول البيانات</string>
<string name="share_document">مُشارَكة المستنَد</string>
<string name="about_notice">عرض الملاحظة</string>
<string name="sort_az">من الألف إلى الياء</string>
<string name="sort_za">من الياء إلى الألف</string>
<string name="file_actions_icon_desc">إجراءات الملفات</string>
<string name="filter_everything">الكل</string>
<string name="close_document_locations">إغلاق مواقع المستندات</string>
<string name="local_documents">دليل المستندات</string>
<string name="otg_file_system">ذاكرة فلاش OTG (تجريبي)</string>
<string name="usb_connected_configure">الـ USB موصول. قم بتهيئة جهازك.</string>
<string name="owncloud_unauthorized">يتعذّر التسجيل في الخادوم السحابي. تحقّق من إعداداتك.</string>
<string name="owncloud_wrong_connection">يتعذر الاتصال بالخادوم السحابي. تحقَّق من الإعدادات.</string>
<string name="owncloud_unspecified_error">حدث خطأ غير محدد عند محاولة الاتصال بالخادوم السحابي. تحقّق من إعداداتك أو حاول مجدداً لاحقاً.</string>
<string name="ext_document_provider_error">الملف الجذري غير صحيح. تحقق من إعداداتك لبطاقة sd.</string>
<string name="otg_missing_error">الملف الجذري غير صحيح. تحقَّق من الجهاز OTG أو من إعداداتك.</string>
<string name="server_url">عنوان URL للخادوم</string>
<string name="server_url_and_port">عنوان URL و رقم بوابة الخادوم السحابي.</string>
<string name="user_name">اسم المستخدِم</string>
<string name="password">كلمة المرور</string>
<string name="up_description">الدليل الأب</string>
<string name="cancel_label">إلغاء</string>
<string name="search_label">إذهب إلى</string>
<string name="directory_browser_label">إختَر الدليل</string>
<string name="enter_filename">من فضلك، أدخِل اسم الملف:</string>
<string name="action_overwrite">استبدال</string>
<string name="directory_not_saved">لم يتم حفظ الدليل.</string>
<string name="theme_dark">داكن</string>
<string name="theme_system_default">افتراضية النظام</string>
<string name="theme_light">فاتح</string>
<string name="positive_ok">تمام</string>
<string name="owncloud_settings">إعدادات الخادوم السحابي</string>
<string name="physical_storage_settings">إعدادات عتاد التخزين</string>
<string name="external_sd_path">مسار وحدة SD خارجية</string>
<string name="otg_warning">خاضِّية تجريبية: تستعمل فقط في حالة كان جهاز OTG قابل للكتابة عليه.</string>
<string name="bad_directory">مسار الدليل غير صحيح</string>
<string name="current_dir">الدليل الحالي: %1$s</string>
<string name="title_permission_required">الإذن مطلوب</string>
<string name="reason_required_to_read_documents">إذن التخزين مطلوب لقراءة هذه المستندات.</string>
<string name="create_new_document_title">إنشاء مستند جديد</string>
<string name="unable_to_go_further">يتعذّر الاستمرار.</string>
<string name="bmp_null">ملف الصورة Bmp فارغ!!</string>
<string name="storage_provider_settings">إعدادات مزود خدمة التخزين</string>
<string name="otg_device_path">مسار جهاز OTG</string>
<string name="confirm_label">تأكيد</string>
<string name="negative_im_sure">أنا متأكد</string>
<string name="negative_cancel">إلغاء</string>
<string name="action_cancel">إلغاء</string>
</resources>

View File

@ -88,9 +88,12 @@
<string name="server_url">URL del sirvidor</string>
<string name="external_sd_path">Camín a SD esterna</string>
<string name="pref_user_name_guest">Usuariu invitáu</string>
<string name="pref_user_name_info">Utilízase al engadir comentarios</string>
<string name="pref_user_name_info">Utilízase al amestar comentarios</string>
<string name="pref_user_name">Nome d\'usuariu</string>
<string name="owncloud_settings">Axustes del sirvidor na nube</string>
<string name="password">Conseña</string>
<string name="physical_storage_settings">Axustes d\'almacenamientu físicu</string>
<string name="storage_provider_settings">Axustes del fornidor d\'almacenamientu</string>
<string name="theme_dark">Escuru</string>
<string name="choose_theme">Escueyi\'l tema</string>
</resources>

View File

@ -0,0 +1,2 @@
<?xml version="1.0" encoding="utf-8"?>
<resources></resources>

View File

@ -5,7 +5,7 @@
<string name="current_dir">Directori actual: %1$s</string>
<string name="bad_directory">El camí del directori no és vàlid</string>
<string name="directory_browser_label">Trieu un directori</string>
<string name="search_label">Vés-hi</string>
<string name="search_label">Ves-hi</string>
<string name="cancel_label">Cancel·la</string>
<string name="confirm_label">Confirma</string>
<string name="password">Contrasenya</string>
@ -29,7 +29,7 @@
<string name="document_locations">Ubicacions dels documents</string>
<string name="title_activity_show_html">Quant a</string>
<string name="directory_not_saved">No s\'ha desat el directori.</string>
<string name="bmp_null">El BMP és nul!</string>
<string name="bmp_null">El BMP no és vàlid.</string>
<string name="unable_to_go_further">No és possible anar més enllà.</string>
<string name="action_overwrite">Sobreescriu</string>
<string name="action_create">Crea</string>

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="owncloud_wrong_connection">Methu cysylltu a\'r gweinydd cwmwl. Gwiriwch eich ffurfweddiad.</string>
<string name="usb_connected_configure">USB wedi\'i gysylltu, ffurfweddwch eich dyfais</string>
<string name="usb_connected_configure">USB wedi\'i gysylltu, ffurfweddwch eich dyfais.</string>
<string name="remote_server">Gweinydd pell</string>
<string name="otg_file_system">Dyfais OTG (arbrofol)</string>
<string name="external_sd_file_system">SD allanol</string>
@ -38,19 +38,19 @@
<string name="about_license">Dangos y Drwydded</string>
<string name="pref_show_debug_info_summary">Galluogi i ddangos manylion dadfygio mewn darllenydd dogfennau</string>
<string name="pref_show_debug_info">Dangos Manylion Dadfygio</string>
<string name="pref_filter_summary">Gosod pa hidl ffeiliau ddylai gael eu defnyddio drwy ragosodiad</string>
<string name="pref_filter_summary">Gosod pa hidl ffeiliau ddylai gael eu defnyddio drwy ragosodiad.</string>
<string name="pref_filter_title">Hidl Ffeiliau Rhagosodedig</string>
<string name="pref_sort_title">Trefn Ffeiliau</string>
<string name="pref_file_explorer_title">Cynllun rheolwr ffeiliau</string>
<string name="pref_viewmode_summary">Gweld ffeiliau fel grid neu mewn rhestr</string>
<string name="pref_sort_summary">Dewiswch sut i drefnu ffeiliau: A-Z, yn ôl maint neu ddyddiad</string>
<string name="pref_viewmode_summary">Gweld ffeiliau fel grid neu mewn rhestr.</string>
<string name="pref_sort_summary">Dewiswch sut i drefnu ffeiliau: A-Z, yn ôl maint neu ddyddiad.</string>
<string name="pref_show_hidden_files_summary">Galluogwch i ddangos ffeiliau/ffolderi cudd</string>
<string name="pref_show_hidden_files">Ffeiliau/Ffolderi Cudd</string>
<string name="pref_category_explorer">Gosodiadau Rheolwr Ffeiliau</string>
<string name="grid_view">Grid</string>
<string name="list_view">Rhestr</string>
<string name="failed_to_load_file">Methwyd penderfynu pa ffeil i\'w chadw</string>
<string name="storage_permission_required">Mae angen caniatâd cadw.</string>
<string name="storage_permission_required">Mae angen caniatâd cadw</string>
<string name="file_creation_failed">Methodd creu\'r ffeil</string>
<string name="file_exists_warning">Mae ffeil o\'r enw yna\'n bodoli eisoes, a bydd yn cael ei thros ysgrifennu.</string>
<string name="temp_file_saving_disabled">Darllen yn unig yw\'r ffeil hon, mae cadw wedi ei analluogi.</string>
@ -62,8 +62,8 @@
<string name="app_name_settings">Gosodiadau</string>
<string name="owncloud_unauthorized">Methu mewngofnodi i\'r gweinydd cwmwl. Gwiriwch eich ffurfweddiad.</string>
<string name="title_activity_show_html">Ynghylch</string>
<string name="directory_not_saved">Heb gadw\'r cyfeiriadur</string>
<string name="bmp_null">Mae bmp yn nwll</string>
<string name="directory_not_saved">Heb gadw\'r cyfeiriadur.</string>
<string name="bmp_null">Mae bmp yn nwl!</string>
<string name="unable_to_go_further">Methu mynd ymhellach.</string>
<string name="share_document">Rhannu Dogfen</string>
<string name="loading">Llwytho...</string>
@ -77,7 +77,7 @@
<string name="positive_ok">Iawn</string>
<string name="reason_required_to_read_documents">Mae angen caniatâd ar gyfer darllen eich dogfennau.</string>
<string name="title_permission_required">Mae Angen Caniatâd</string>
<string name="current_dir">"Cyfeiriadur Cyfredol: %1$s"</string>
<string name="current_dir">Cyfeiriadur Cyfredol: %1$s</string>
<string name="bad_directory">Llwybr cyfeiriadur annilys</string>
<string name="directory_browser_label">Dewis Gyfeiriadur</string>
<string name="search_label">Mynd</string>
@ -86,9 +86,9 @@
<string name="up_description">Llinynnau porwr cyfeiriadur</string>
<string name="password">Cyfrinair</string>
<string name="user_name">Enw defnyddiwr</string>
<string name="server_url_and_port">URL a phorth y gweinydd cwmwl</string>
<string name="server_url_and_port">URL a phorth y gweinydd cwmwl.</string>
<string name="server_url">URL y gweinydd</string>
<string name="otg_warning">Nodwedd arbrofol: Defnyddiwch yn unig os yw\'r ddyfais OTG yn ysgrifenadwy</string>
<string name="otg_warning">Nodwedd Arbrofol: Defnyddiwch yn unig os yw\'r ddyfais OTG yn ysgrifenadwy.</string>
<string name="otg_device_path">Llwybr dyfais OTG</string>
<string name="external_sd_path">Llwybr SD allanol</string>
<string name="physical_storage_settings">Gosodiadau offer storio</string>
@ -110,4 +110,7 @@
<string name="theme_system_default">Rhagosodiad y system</string>
<string name="choose_theme">Dewis thema</string>
<string name="theme">Thema</string>
<string name="pref_user_name">Enw Defnyddiwr</string>
<string name="pref_user_name_info">Yn cael ei ddefnyddio wrth ychwanegu sylw</string>
<string name="pref_user_name_guest">Defnyddiwr Gwadd</string>
</resources>

View File

@ -46,7 +46,7 @@
<string name="pref_filter_title">Standard fil-filter</string>
<string name="pref_sort_title">Fil-rækkefølge</string>
<string name="owncloud_unauthorized">Kan ikke logge ind på cloud-serveren. Tjek din konfiguration.</string>
<string name="owncloud_unspecified_error">"Uspecificeret fejl ved forbindelse til cloud-serveren. Tjek din konfiguration og/eller prøv senere."</string>
<string name="owncloud_unspecified_error">Uspecificeret fejl ved forbindelse til cloud-serveren. Tjek din konfiguration og/eller prøv senere.</string>
<string name="server_url_and_port">Cloudserverens URL og port.</string>
<string name="server_url">Serverens URL</string>
<string name="owncloud_settings">Cloudserver-indstillinger</string>
@ -85,11 +85,11 @@
\nonline git-hash: %2$s
\ncore git-hash: %3$s</string>
<string name="loading">Indlæser…</string>
<string name="current_dir">Aktuel mappe: % 1$s</string>
<string name="current_dir">Aktuel mappe: %1$s</string>
<string name="bad_directory">Ugyldig stil til mappe</string>
<string name="directory_browser_label">Vælg mappe</string>
<string name="search_label">Kør</string>
<string name="otg_warning">Eksperimentel funktionalitet: Anvend kun, hvis der kan kan skrives på OTG-enheden.</string>
<string name="otg_warning">Eksperimentel funktionalitet: Anvend kun, hvis der kan skrives på OTG-enheden.</string>
<string name="external_sd_path">Sti til SD-kort</string>
<string name="physical_storage_settings">Indstillinger for fysisk lager</string>
<string name="storage_provider_settings">Indstillinger for lagerleverandør</string>
@ -104,4 +104,12 @@
<string name="pref_category_editor">Redigeringsindstillinger</string>
<string name="pref_category_explorer">Filmanager-indstillinger</string>
<string name="grid_view">Gitter</string>
<string name="pref_user_name">Brugernavn</string>
<string name="pref_user_name_info">Bruges ved tilføjelse af en kommentar</string>
<string name="theme_system_default">Systemstandard</string>
<string name="theme_dark">Mørkt</string>
<string name="theme_light">Lyst</string>
<string name="pref_user_name_guest">Gæstebruger</string>
<string name="theme">Tema</string>
<string name="choose_theme">Vælg tema</string>
</resources>

View File

@ -98,7 +98,7 @@
<string name="sort_largest">Largest first</string>
<string name="sort_smallest">Smallest first</string>
<string name="sort">Sort by</string>
<string name="filter">Filter by</string>
<string name="filter">Filter byy</string>
<string name="pref_category_editor">Editor Settings</string>
<string name="remove_from_list">Remove from the list</string>
<string name="file_actions_icon_desc">File actions</string>

View File

@ -0,0 +1,27 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name_settings">تنظیمات</string>
<string name="app_version_and_hash">نسخه: %1$s
\nبرخط git-hash: %2$s
\nهسته git-hash: %3$s</string>
<string name="app_description">$APP_NAME یک محصول کامل و مدرن و متن باز با کاربری آسان برای واژه پردازی، صفحات گسترده، ارائه ها و... است.</string>
<string name="app_vendor">این انتشار توسط $VENDOR فراهم شده است.</string>
<string name="no_recent_items">لطفا یک پرونده را با استفاده از آیکون پوشه از نوارابزار باز کنید.</string>
<string name="no_items">هیچ مورد</string>
<string name="temp_file_saving_disabled">این فایل فقط برای خواندن است، ذخیره غیر فعال شده است.</string>
<string name="file_exists_warning">فایلی با این نام موجود میباشد و (فایل شما)دوباره روی فایل موجود باز نویسی میشود.</string>
<string name="file_creation_failed">ساخت فایل ناموفق بود</string>
<string name="storage_permission_required">دسترسی به حافظه لازم است</string>
<string name="failed_to_load_file">تعیین کردن فایل برای خوانش فایل ناموفق بود</string>
<string name="list_view">لیست</string>
<string name="grid_view">توری</string>
<string name="pref_category_explorer">تنظیمات مدیر پرونده</string>
<string name="pref_category_editor">تنظیمات ویرایشگر</string>
<string name="pref_show_hidden_files">پرونده‌ها/پوشه‌های پنهان</string>
<string name="pref_show_hidden_files_summary">فعال کردن برای نمایش پرونده‌ها/پوشه‌های پنهان</string>
<string name="pref_sort_summary">انتخاب نحوه مرتب سازی: الفبایی، بر اساس اندازه یا براساس تاریخ.</string>
<string name="pref_viewmode_summary">نمایش پرونده‌ها به صورت فهرستی یا کنار هم.</string>
<string name="pref_file_explorer_title">چیدمان مدیر پرونده</string>
<string name="pref_sort_title">مرتب سازی پرونده</string>
<string name="pref_filter_title">غربال پیش‌فرض پرونده</string>
</resources>

View File

@ -106,4 +106,11 @@
\nIdentificador da versión no repositorio Git «online»: %2$s
\nIdentificador da versión no repositorio Git «core»: %3$s</string>
<string name="pref_user_name">Nome de usuario</string>
<string name="theme">Tema</string>
<string name="choose_theme">Escolla o tema</string>
<string name="pref_user_name_guest">Usuario convidado</string>
<string name="theme_light">Claro</string>
<string name="pref_user_name_info">Úsase ao engadir un comentario</string>
<string name="theme_system_default">Valor predefinido do sistema</string>
<string name="theme_dark">Escuro</string>
</resources>

View File

@ -25,25 +25,25 @@
<string name="app_version">Verzija: %1$s, ID gradnje: %2$s</string>
<string name="app_description">$APP_NAME je moderan softverski paket otvorenog koda s modernim programima za obradu teksta, proračunskih tablica, prezentacija i još mnogo toga.</string>
<string name="app_vendor">Proizvođač izdanja je $VENDOR.</string>
<string name="no_items">Nema elemenata</string>
<string name="no_items">Nema stavki</string>
<string name="temp_file_saving_disabled">Datoteka je zaštićena, spremanje je deaktivirano.</string>
<string name="file_exists_warning">Datoteka s tim imenom već postoji, biti će prepisana.</string>
<string name="file_creation_failed">Neuspjelo stvaranje datoteke</string>
<string name="storage_permission_required">Potrebna je dozvola za spremište</string>
<string name="failed_to_load_file">Neuspjelo određivanje datoteke za učitavanje</string>
<string name="list_view">Popis</string>
<string name="grid_view">Ikone</string>
<string name="grid_view">Mreža</string>
<string name="pref_category_explorer">Postavke upravljača datoteka</string>
<string name="pref_show_hidden_files">Skrivene datoteke i mape</string>
<string name="pref_show_hidden_files_summary">Aktiviraj prikaz skrivenih datoteka i mapa</string>
<string name="pref_sort_summary">Odaberi redoslijed datoteka: A-Z, po veličini ili po datumu.</string>
<string name="pref_viewmode_summary">Prikaži pločasti prikaz ili popis.</string>
<string name="pref_file_explorer_title">Prikaz u upravljaču datoteka</string>
<string name="pref_viewmode_summary">Prikaži datoteke kao mrežu ili kao popis.</string>
<string name="pref_file_explorer_title">Raspored upravljača datoteka</string>
<string name="pref_sort_title">Redoslijed datoteka</string>
<string name="pref_filter_title">Standardno filtriranje datoteka</string>
<string name="pref_filter_summary">Postavi standardno filtriranje datoteka.</string>
<string name="pref_show_debug_info">Prikaži podatke otklanjanje grešaka</string>
<string name="pref_show_debug_info_summary">Aktiviraj za prikaz podataka otklanjanje grešaka u dokumentu</string>
<string name="pref_show_debug_info_summary">Aktiviraj za prikaz informacija o otklanjanju grešaka u prikazivaču dokumenata</string>
<string name="sort">Redoslijed</string>
<string name="action_settings">Postavke</string>
<string name="open">Otvori</string>
@ -52,7 +52,7 @@
<string name="close_document_locations">Zatvori lokacije dokumenata</string>
<string name="local_documents">Mapa dokumenata</string>
<string name="local_file_system">Lokalni datotečni sustav</string>
<string name="external_sd_file_system">Vanjska SD kartica</string>
<string name="external_sd_file_system">Eksterna SD kartica</string>
<string name="otg_file_system">OTG uređaj (eksperimentalno)</string>
<string name="remote_server">Udaljeni poslužitelju</string>
<string name="usb_connected_configure">USB povezan, konfiguriraj uređaj.</string>
@ -63,7 +63,7 @@
<string name="otg_missing_error">Nevažeća root datoteka. Provjeri OTG uređaj i/ili konfiguraciju.</string>
<string name="owncloud_settings">Postavke poslužitelja oblaka</string>
<string name="physical_storage_settings">Postavke fizičkog spremišta</string>
<string name="external_sd_path">Staza vanjske SD kartice</string>
<string name="external_sd_path">Staza eksterne SD kartice</string>
<string name="otg_device_path">Staza OTG uređaja</string>
<string name="otg_warning">Eksperimentalna funkcija: koristi samo, ako je na OTG uređaju dozvoljeno pisanje.</string>
<string name="server_url">URL poslužitelja</string>

View File

@ -0,0 +1,20 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name_settings">Parametros</string>
<string name="app_vendor">Iste version es fornite per $VENDOR.</string>
<string name="no_items">Necun elementos</string>
<string name="storage_permission_required">Es requirite un permission de immagazinage</string>
<string name="pref_show_hidden_files_summary">Activar pro monstrar files/dossieres celate</string>
<string name="title_activity_show_html">A proposito de</string>
<string name="theme">Thema</string>
<string name="choose_theme">Selige un thema</string>
<string name="theme_system_default">Predefinite del systema</string>
<string name="theme_dark">Obscur</string>
<string name="theme_light">Clar</string>
<string name="file_creation_failed">Falleva le creation del file</string>
<string name="pref_category_explorer">Parametros del gestor de files</string>
<string name="pref_show_hidden_files">Files/dossieres celate</string>
<string name="pref_viewmode_summary">Monstrar le files como grillia o in un lista.</string>
<string name="list_view">Lista</string>
<string name="grid_view">Grillia</string>
</resources>

View File

@ -60,4 +60,57 @@
<string name="about_notice">お知らせを表示</string>
<string name="owncloud_unauthorized">クラウドサーバーにログインできません。設定を確認してください。</string>
<string name="owncloud_wrong_connection">クラウドサーバーに接続できません。設定を確認してください。</string>
<string name="pref_category_editor">エディタの設定</string>
<string name="file_exists_warning">この名前のファイルが既に存在するので、上書きされます.</string>
<string name="pref_show_hidden_files">ファイル/フォルダを隠す</string>
<string name="pref_filter_title">標準フィルター</string>
<string name="file_icon_desc">ファイルアイコン</string>
<string name="file_actions_icon_desc">ファイルアクション</string>
<string name="pref_user_name">ユーザー名</string>
<string name="default_document_name">名称未設定</string>
<string name="pref_user_name_guest">ゲストユーザー</string>
<string name="sort">ソート</string>
<string name="filter">フィルター</string>
<string name="share">共有</string>
<string name="document_locations">ドキュメントの場所</string>
<string name="close_document_locations">ドキュメントの場所を閉じる</string>
<string name="local_file_system">ローカルファイルシステム</string>
<string name="remove_from_list">リストから削除する</string>
<string name="share_via">共有法</string>
<string name="failed_to_load_file">ファイルの読み込み先が特定できませんでした</string>
<string name="pref_show_debug_info_summary">ドキュメント ビューアでのデバッグ情報の表示を有効にする</string>
<string name="pref_enable_chrome_debugger">Chromeデバッグ</string>
<string name="pref_enable_chrome_debugger_info">ドキュメント内で Chrome のデバッグ ツールを有効にします</string>
<string name="owncloud_unspecified_error">クラウドサーバーへの接続時に不明なエラーが発生しました。設定を確認し、後で再試行してください。</string>
<string name="ext_document_provider_error">無効なルート ファイルです。 SDカードの設定を確認してください。</string>
<string name="otg_missing_error">無効なルートファルです。OTGデバイスを確認、または設定を確認してください。</string>
<string name="storage_provider_settings">ストレージプロバイダーの設定</string>
<string name="owncloud_settings">クラウドサーバーの設定</string>
<string name="search_label">Go</string>
<string name="title_permission_required">許可が必要です</string>
<string name="negative_im_sure">確定</string>
<string name="pref_user_name_info">コメントを追加する際に使用します</string>
<string name="external_sd_file_system">外部SD</string>
<string name="otg_file_system">OTG デバイス (実験的)</string>
<string name="physical_storage_settings">物理ストレージ設定</string>
<string name="external_sd_path">外部SDパス</string>
<string name="otg_device_path">OTG デバイスのパス</string>
<string name="otg_warning">実験的な機能OTGデバイスが書き込み可能な場合にのみ使用してください。</string>
<string name="server_url">Server URL</string>
<string name="unable_to_go_further">これ以上先に進むことはできません。</string>
<string name="bmp_null">Bmpはnullです</string>
<string name="directory_not_saved">ディレクトリが保存されていません。</string>
<string name="title_activity_show_html">について</string>
<string name="choose_theme">テーマを選択してください</string>
<string name="theme_system_default">システムデフォルト</string>
<string name="theme_light">ライト</string>
<string name="pref_sort_summary">ファイルの並べ替え方法を選択します: A Z、サイズ順、または日付順。</string>
<string name="remote_server">リモートサーバー</string>
<string name="usb_connected_configure">USB が接続されているので、デバイスを設定します。</string>
<string name="theme_dark">ダーク</string>
<string name="pref_filter_summary">デフォルトで使用するファイル フィルタを設定します。</string>
<string name="server_url_and_port">クラウドサーバーのURLとポート。</string>
<string name="bad_directory">無効なディレクトリパス</string>
<string name="reason_required_to_read_documents">ドキュメントを読み取るためにはストレージの許可が必要です。</string>
<string name="local_documents">ドキュメントディレクトリ</string>
</resources>

View File

@ -14,13 +14,103 @@
\n핵심 git-hash : %3$s</string>
<string name="pref_file_explorer_title">파일 관리자 레이아웃</string>
<string name="pref_viewmode_summary">파일을 그리드 또는 리스트로 봅니다.</string>
<string name="pref_sort_summary">파일을 불러올 방법을 선택 하십시오 : A-Z, 크기 또는 날짜</string>
<string name="pref_sort_summary">파일 순서 지정 방법 선택하기: A-Z, 크기 또는 날짜순으로.</string>
<string name="pref_show_hidden_files_summary">숨겨진 파일/폴더 표시 가능</string>
<string name="pref_show_hidden_files">숨겨진 파일/폴더</string>
<string name="pref_category_explorer">파일 관리자 설정</string>
<string name="grid_view">그리드</string>
<string name="failed_to_load_file">로드할 파일을 결정하지 못하였습니다</string>
<string name="failed_to_load_file">불러올 파일을 결정하지 못하였습니다</string>
<string name="storage_permission_required">저장 권한이 필요합니다</string>
<string name="pref_category_editor">편집기 설정</string>
<string name="list_view">목록</string>
<string name="pref_enable_chrome_debugger">크롬 디버깅</string>
<string name="pref_enable_chrome_debugger_info">문서에서 Chrome의 디버깅 도구를 사용하도록 활성화하기</string>
<string name="about_license">라이선스 표시하기</string>
<string name="sort_smallest">가장 작은 것부터</string>
<string name="sort_largest">가장 큰 것부터</string>
<string name="reason_required_to_read_documents">문서를 읽으려면 저장 권한이 필요합니다.</string>
<string name="positive_ok">확인</string>
<string name="negative_im_sure">확실합니다</string>
<string name="action_cancel">취소하기</string>
<string name="create_new_document_title">새 문서 만들기</string>
<string name="unable_to_go_further">더 이상 진행할 수 없습니다.</string>
<string name="bmp_null">Bmp는 null입니다!</string>
<string name="title_activity_show_html">정보</string>
<string name="theme">테마</string>
<string name="pref_user_name">사용자 이름</string>
<string name="pref_user_name_info">주석을 추가할 때 사용됨</string>
<string name="pref_user_name_guest">게스트 사용자</string>
<string name="about_notice">공지사항 표시하기</string>
<string name="new_presentation">새 프레젠테이션</string>
<string name="default_document_name">제목없음</string>
<string name="filter">필터링 기준</string>
<string name="sort_az">A-Z</string>
<string name="sort_za">Z-A</string>
<string name="sort_oldest">가장 오래된 것부터</string>
<string name="sort_newest">가장 최근된 것부터</string>
<string name="file_icon_desc">파일 아이콘</string>
<string name="file_actions_icon_desc">파일 작업</string>
<string name="title_recents">최근 파일</string>
<string name="title_browser">모든 파일</string>
<string name="action_about">정보</string>
<string name="action_settings">설정</string>
<string name="remove_from_list">목록에서 제거하기</string>
<string name="share_via">공유 방법</string>
<string name="filter_everything">모두</string>
<string name="filter_documents">문서</string>
<string name="filter_spreadsheets">스프레드시트</string>
<string name="remote_server">원격 서버</string>
<string name="usb_connected_configure">USB가 연결되고, 장치를 구성합니다.</string>
<string name="owncloud_wrong_connection">클라우드 서버에 연결할 수 없습니다. 구성을 확인하십시오.</string>
<string name="owncloud_unauthorized">클라우드 서버에 로그인할 수 없습니다. 구성을 확인하십시오.</string>
<string name="owncloud_unspecified_error">클라우드 서버에 연결하는 동안 지정되지 않은 오류가 발생했습니다. 구성을 확인하거나 나중에 시도하십시오.</string>
<string name="ext_document_provider_error">잘못된 루트 파일입니다. SD 카드 구성을 확인하십시오.</string>
<string name="otg_missing_error">잘못된 루트 파일입니다. OTG 장치 및/또는 구성을 확인하십시오.</string>
<string name="storage_provider_settings">스토리지 제공업체 설정</string>
<string name="owncloud_settings">클라우드 서버 설정</string>
<string name="physical_storage_settings">물리적 스토리지 설정</string>
<string name="external_sd_path">외부 SD 경로</string>
<string name="otg_device_path">OTG 장치 경로</string>
<string name="otg_warning">실험 기능: OTG 장치가 쓰기 가능한 경우에만 사용합니다.</string>
<string name="server_url">서버 URL</string>
<string name="server_url_and_port">클라우드 서버의 URL 및 포트입니다.</string>
<string name="user_name">사용자 이름</string>
<string name="password">암호</string>
<string name="up_description">상위 디렉터리로</string>
<string name="current_dir">현재 디렉터리: %1$s</string>
<string name="title_permission_required">권한 필요</string>
<string name="enter_filename">파일 이름을 입력하십시오:</string>
<string name="action_create">만들기</string>
<string name="action_overwrite">덮어쓸</string>
<string name="loading">불러오는 중...</string>
<string name="share_document">문서 공유하기</string>
<string name="directory_not_saved">디렉터리가 저장되지 않았습니다.</string>
<string name="choose_theme">테마 고르기</string>
<string name="theme_system_default">시스템 기본값</string>
<string name="theme_dark">어두운 테마</string>
<string name="pref_filter_title">기본 파일 필터</string>
<string name="pref_sort_title">파일 순서</string>
<string name="pref_filter_summary">기본적으로 사용할 파일 필터를 설정합니다.</string>
<string name="pref_show_debug_info">디버그 정보 표시하기</string>
<string name="close_document_locations">문서 위치 닫기</string>
<string name="otg_file_system">OTG 장치 (실험용)</string>
<string name="pref_show_debug_info_summary">문서 뷰어에서 디버그 정보 표시 활성화하기</string>
<string name="local_file_system">로컬 파일 시스템</string>
<string name="external_sd_file_system">외부 SD</string>
<string name="about_moreinfo">더 많은 정보</string>
<string name="sort">정렬 기준</string>
<string name="new_textdocument">새 텍스트 문서</string>
<string name="new_spreadsheet">새 스프레드시트</string>
<string name="share">공유하기</string>
<string name="document_locations">문서 위치</string>
<string name="open">열기</string>
<string name="directory_browser_label">디렉터리 고르기</string>
<string name="filter_presentations">프레젠테이션</string>
<string name="confirm_label">확인하기</string>
<string name="local_documents">문서 디렉터리</string>
<string name="cancel_label">취소하기</string>
<string name="bad_directory">잘못된 디렉터리 경로</string>
<string name="search_label">가기</string>
<string name="negative_cancel">취소하기</string>
<string name="theme_light">밝은 테마</string>
</resources>

View File

@ -1,2 +1,55 @@
<?xml version="1.0" encoding="utf-8"?>
<resources></resources>
<resources>
<string name="app_name_settings">ക്രമീകരണങ്ങൾ</string>
<string name="about_notice">സൂചന കാണിക്കുക</string>
<string name="app_vendor">ഈ പ്രകാശനം $VENDOR ആണ് വിതരണം ചെയ്തത്.</string>
<string name="no_items">ഇനങ്ങളില്ല</string>
<string name="about_license">അധികാരപത്രം കാണിക്കുക</string>
<string name="storage_permission_required">സംഭരണ അനുമതി ആവശ്യമാണ്</string>
<string name="list_view">പട്ടിക</string>
<string name="pref_category_editor">തിരുത്തൽ ക്രമീകരണങ്ങൾ</string>
<string name="action_about">കുറിച്ച്</string>
<string name="open">തുറക്കുക</string>
<string name="pref_user_name">ഉപയോക്തൃനാമം</string>
<string name="pref_user_name_info">ഒരു അഭിപ്രായം ചേർക്കുമ്പോൾ ഉപയോഗിക്കുന്നു</string>
<string name="about_moreinfo">കൂടുതൽ വിവരങ്ങൾ</string>
<string name="new_textdocument">പുതിയ വാചക പ്രമാണം</string>
<string name="new_presentation">പുതിയ അവതരണം</string>
<string name="default_document_name">ശീർഷകമില്ലാത്ത</string>
<string name="sort">ഇങ്ങനെ അടുക്കുക</string>
<string name="sort_smallest">ആദ്യം ഏറ്റവും ചെറുത്</string>
<string name="sort_largest">ആദ്യം ഏറ്റവും വലുത്</string>
<string name="sort_oldest">ഏറ്റവും പഴയത് ആദ്യം</string>
<string name="action_settings">ക്രമീകരണങ്ങൾ</string>
<string name="user_name">ഉപയോക്തൃനാമം</string>
<string name="confirm_label">സ്ഥിരീകരിക്കുക</string>
<string name="cancel_label">റദ്ദാക്കുക</string>
<string name="search_label">പോകൂ</string>
<string name="positive_ok">ശരി</string>
<string name="theme_light">വെളിച്ചം</string>
<string name="theme_dark">ഇരുട്ട്</string>
<string name="pref_user_name_guest">അതിഥി ഉപയോക്താവ്</string>
<string name="share">പങ്കിടുക</string>
<string name="remove_from_list">പട്ടികയിൽ നിന്ന് നീക്കം ചെയ്യുക</string>
<string name="share_via">വഴി പങ്കിടുക</string>
<string name="filter_documents">പ്രമാണങ്ങൾ</string>
<string name="filter_presentations">അവതരണങ്ങൾ</string>
<string name="document_locations">പ്രമാണ സ്ഥാനങ്ങൾ</string>
<string name="close_document_locations">പ്രമാണ സ്ഥാനങ്ങൾ അടയ്ക്കുക</string>
<string name="negative_im_sure">എനിക്ക് ഉറപ്പാണ്</string>
<string name="negative_cancel">റദ്ദാക്കുക</string>
<string name="action_cancel">റദ്ദാക്കുക</string>
<string name="action_create">സൃഷ്ടിക്കുക</string>
<string name="action_overwrite">തിരുത്തിയെഴുതുക</string>
<string name="share_document">പ്രമാണം പങ്കിടുക</string>
<string name="sort_newest">ഏറ്റവും പുതിയത് ആദ്യം</string>
<string name="filter_everything">എല്ലാം</string>
<string name="external_sd_file_system">ബാഹ്യ എസ്ഡി</string>
<string name="title_permission_required">അനുമതി ആവശ്യമാണ്</string>
<string name="reason_required_to_read_documents">നിങ്ങളുടെ പ്രമാണങ്ങൾ വായിക്കുന്നതിന് സംഭരണ അനുമതി ആവശ്യമാണ്.</string>
<string name="create_new_document_title">പുതിയ പ്രമാണം സൃഷ്ടിക്കുക</string>
<string name="unable_to_go_further">കൂടുതൽ മുന്നോട്ട് പോകാൻ കഴിയുന്നില്ല.</string>
<string name="title_activity_show_html">കുറിച്ച്</string>
<string name="choose_theme">പ്രതിപാദ്യം തിരഞ്ഞെടുക്കുക</string>
<string name="theme">പ്രതിപാദ്യം</string>
</resources>

View File

@ -0,0 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="failed_to_load_file">लोड गर्न फाइल निर्धारण गर्न असफल</string>
<string name="loading">लोडहुँदै छ...</string>
<string name="storage_permission_required">भण्डारण अनुमति आवश्यक छ</string>
<string name="temp_file_saving_disabled">यो फाइल पढ्ने मात्र हो, बचत अक्षम छ।</string>
</resources>

View File

@ -35,8 +35,8 @@
<string name="otg_missing_error">Ongeldig rootbestand. Controleer uw OTG-apparaat en/of configuratie.</string>
<string name="ext_document_provider_error">Ongeldig rootbestand. Controleer uw sd-kaartconfiguratie.</string>
<string name="owncloud_unspecified_error">Onbekende fout bij het verbinden met de cloud-server. Controleer uw configuratie en/of probeer het later.</string>
<string name="owncloud_unauthorized">Kan geen verbinding maken met de cloud-server. Controleer uw configuratie.</string>
<string name="owncloud_wrong_connection">Kan geen verbinding maken met de cloud-server. Controleer uw configuratie.</string>
<string name="owncloud_unauthorized">Kan niet aanmelden op de cloud-server. Controleer uw configuratie.</string>
<string name="owncloud_wrong_connection">Kan geen verbinding met de cloud-server maken. Controleer uw configuratie.</string>
<string name="usb_connected_configure">USB aangesloten, stel uw apparaat in.</string>
<string name="remote_server">Externe server</string>
<string name="otg_file_system">OTG-apparaat (experimenteel)</string>
@ -69,7 +69,7 @@
<string name="new_spreadsheet">Nieuw werkblad</string>
<string name="new_presentation">Nieuwe presentatie</string>
<string name="new_textdocument">Nieuw tekstdocument</string>
<string name="about_moreinfo">Meer info</string>
<string name="about_moreinfo">Meer informatie</string>
<string name="about_notice">Kennisgeving tonen</string>
<string name="about_license">Licentie tonen</string>
<string name="pref_show_debug_info_summary">Schakel foutopsporingsinformatie in documentviewer weergeven in</string>
@ -91,7 +91,7 @@
<string name="file_exists_warning">Er bestaat al een bestand met deze naam en zal overschreven worden.</string>
<string name="temp_file_saving_disabled">Dit bestand is alleen-lezen; opslaan is uitgeschakeld.</string>
<string name="no_items">Geen items</string>
<string name="no_recent_items">Open een bestand met het mappictogram op de werkbalk.</string>
<string name="no_recent_items">Open een bestand met behulp van het mappictogram in de werkbalk.</string>
<string name="app_vendor">Deze versie is geleverd door $VENDOR.</string>
<string name="app_description">$APP_NAME is een moderne, gebruiksvriendelijke, open source productiviteitssuite voor tekstverwerking, werkbladen, presentaties en meer.</string>
<string name="app_version">Versie: %1$s
@ -103,7 +103,7 @@
<string name="pref_enable_chrome_debugger_info">Gebruik Chrome\'s hulpmiddel voor foutopsporing in dit document</string>
<string name="remove_from_list">Van de lijst verwijderen</string>
<string name="file_actions_icon_desc">Bestandsacties</string>
<string name="pref_category_editor">Editor-instellingen</string>
<string name="pref_category_editor">Editor instellingen</string>
<string name="app_version_and_hash">Versie: %1$s
\nonline git-hash: %2$s
\ncore git-hash: %3$s</string>

View File

@ -0,0 +1,16 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name_settings">ସେଟିଂ</string>
<string name="sort">ଏହା ଅନୁଯାୟୀ ସଜାନ୍ତୁ</string>
<string name="action_about">ସମ୍ବନ୍ଧରେ</string>
<string name="action_settings">ସେଟିଂ</string>
<string name="search_label">ଯାଅ</string>
<string name="positive_ok">ଠିକ୍ ଅଛି</string>
<string name="password">ପାସ୍‍ୱର୍ଡ଼</string>
<string name="title_activity_show_html">ସମ୍ବନ୍ଧରେ</string>
<string name="theme">ଥିମ୍</string>
<string name="theme_dark">ଗାଢ଼</string>
<string name="theme_light">ହାଲୁକା</string>
<string name="pref_category_editor">ସମ୍ପାଦକ ସେଟିଂ</string>
<string name="about_moreinfo">ଅଧିକ ସୂଚନା</string>
</resources>

View File

@ -3,43 +3,43 @@
<!--string name="app_name" definition is deliberately missing here, it is filled in in build.gradle.-->
<string name="app_name_settings">Configurações</string>
<string name="app_version">Version: %1$s, Build ID: %2$s</string>
<string name="app_description">$APP_NAME é uma moderna suíte de produtividade para processamento de texto, folhas de cálculo e apresentações, de fácil utilização, e open source.</string>
<string name="app_description">$APP_NAME é uma moderna, fácil de usar, suíte de produtividade de código aberto, para processamento de texto, planilhas, apresentações e muito mais.</string>
<string name="app_vendor">Esta versão foi fornecida por $VENDOR.</string>
<string name="no_recent_items">Abra um arquivo através do ícone existente na barra de ferramentas.</string>
<string name="no_items">Nenhum item</string>
<string name="temp_file_saving_disabled">Este documento é apenas de leitura, salvaguardar está desabilitado.</string>
<string name="file_exists_warning">Um ficheiro com o mesmo nome já existe, e será substituído.</string>
<string name="file_creation_failed">Falha na criação do documento</string>
<string name="temp_file_saving_disabled">Este arquivo é apenas de leitura, salvamento está desabilitado.</string>
<string name="file_exists_warning">Um arquivo com esse nome já existe e será sobrescrito.</string>
<string name="file_creation_failed">Falha na criação do arquivo</string>
<string name="storage_permission_required">Permissão de armazenamento é requirida</string>
<string name="failed_to_load_file">Falha no carregamento do documento</string>
<string name="failed_to_load_file">Falha para determinar o arquivo a ser carregado</string>
<string name="list_view">Lista</string>
<string name="grid_view">Grelha</string>
<string name="pref_category_explorer">Configurações do gestor de arquivos</string>
<string name="grid_view">Grade</string>
<string name="pref_category_explorer">Configurações do Gerenciador de Arquivos</string>
<string name="pref_show_hidden_files">Arquivos/pastas ocultas</string>
<string name="pref_show_hidden_files_summary">Mostrar arquivos/pastas ocultas</string>
<string name="pref_sort_summary">Ordenar arquivos por: A-Z, Tamanho ou por data.</string>
<string name="pref_viewmode_summary">Ver arquivos em grelha ou em list.</string>
<string name="pref_file_explorer_title">Layout do gestor de arquivos</string>
<string name="pref_sort_title">Ordem padrão</string>
<string name="pref_filter_title">Filtro padrão</string>
<string name="pref_sort_summary">Ordenar os arquivos: A-Z, por tamanho ou por data.</string>
<string name="pref_viewmode_summary">Ver arquivos em uma grade ou em uma lista.</string>
<string name="pref_file_explorer_title">Layout do gerenciador de arquivos</string>
<string name="pref_sort_title">Ordem dos arquivos</string>
<string name="pref_filter_title">Filtro de arquivo padrão</string>
<string name="pref_filter_summary">Defina qual o filtro de arquivo que deve ser usado por padrão.</string>
<string name="pref_show_debug_info">Mostrar info de depuração </string>
<string name="pref_show_debug_info_summary">Habilitar info de depuração no document viewer</string>
<string name="pref_show_debug_info_summary">Habilitar para mostrar informação de depuração no visualizador de documento</string>
<string name="about_license">Mostrar Licença</string>
<string name="about_notice">Mostar aviso</string>
<string name="about_moreinfo">Mais informação</string>
<string name="new_textdocument">Novo documento de texto</string>
<string name="new_presentation">Nova apresentação </string>
<string name="new_spreadsheet">Nova folha de cálculo</string>
<string name="default_document_name">Sem nome</string>
<string name="filter">Filtrado por</string>
<string name="sort">Ordenado por</string>
<string name="sort_smallest">Mais pequeno primeiro</string>
<string name="sort_largest">Maior em primeiro lugar</string>
<string name="about_notice">Mostrar Aviso</string>
<string name="about_moreinfo">Mais Informação</string>
<string name="new_textdocument">Novo Documento de Texto</string>
<string name="new_presentation">Nova Apresentação</string>
<string name="new_spreadsheet">Nova Planilha</string>
<string name="default_document_name">Sem título</string>
<string name="filter">Filtrar por</string>
<string name="sort">Ordenar por</string>
<string name="sort_smallest">O menor em primeiro</string>
<string name="sort_largest">O maior em primeiro</string>
<string name="sort_az">A-Z</string>
<string name="sort_za">Z-A</string>
<string name="sort_oldest">Mais antigo em primeiro</string>
<string name="sort_newest">Recentes em primeiro</string>
<string name="sort_oldest">Mais antigo primeiro</string>
<string name="sort_newest">Mais recente primeiro</string>
<string name="file_icon_desc">Ícone de arquivo</string>
<string name="title_recents">Arquivos recentes</string>
<string name="title_browser">Todos os arquivos</string>
@ -47,31 +47,31 @@
<string name="action_about">Sobre</string>
<string name="action_settings">Configurações</string>
<string name="open">Abrir</string>
<string name="share">Partilhar</string>
<string name="share_via">Partilhar via</string>
<string name="share">Compartilhar</string>
<string name="share_via">Compartilhar via</string>
<!-- Document browser filters -->
<string name="filter_everything">Tudo</string>
<string name="filter_documents">Documentos</string>
<string name="filter_spreadsheets">Folhas de cálculo</string>
<string name="filter_spreadsheets">Planilhas</string>
<string name="filter_presentations">Apresentações</string>
<!-- Document provider names -->
<string name="document_locations">Locais de arquivos</string>
<string name="close_document_locations">Fechar Locais de arquivos</string>
<string name="local_documents">Diretórios de documentos</string>
<string name="document_locations">Locais de documentos</string>
<string name="close_document_locations">Fechar locais de documentos</string>
<string name="local_documents">Diretório de documentos</string>
<string name="local_file_system">Sistema local de arquivos</string>
<string name="external_sd_file_system">SD externo</string>
<string name="otg_file_system">Dispositivo OTG (experimental)</string>
<string name="remote_server">Servidor remoto</string>
<string name="usb_connected_configure">USB conetado, configure o seu dispositivo.</string>
<string name="usb_connected_configure">USB conectado, configure o seu dispositivo.</string>
<string name="owncloud_wrong_connection">Não foi possível conectar com o servidor na nuvem. Verifique as suas configurações.</string>
<string name="owncloud_unauthorized">Não foi possível iniciar a sessão no servidor. Verifique as suas configurações.</string>
<string name="owncloud_unspecified_error">Erro não especificado ao conetar com o servidor na nuvem. Verifique as suas configurações ou tente mais tarde.</string>
<string name="owncloud_unspecified_error">Erro não especificado ao conectar com o servidor na nuvem. Verifique as suas configurações e/ou tente mais tarde.</string>
<string name="ext_document_provider_error">Arquivo raiz inválido. Verifique a configuração do seu cartão SD.</string>
<string name="otg_missing_error">Arquivo raiz inválido. Verifique seu dispositivo OTG e/ou configuração.</string>
<!-- Edit action names -->
<!-- Feedback messages -->
<!-- Document provider settings -->
<string name="storage_provider_settings">Configurações de servidor</string>
<string name="storage_provider_settings">Configurações do provedor de armazenamento</string>
<string name="owncloud_settings">Configurações do servidor na nuvem</string>
<string name="physical_storage_settings">Configurações de armazenamento físico</string>
<string name="external_sd_path">Caminho SD externo</string>
@ -79,19 +79,19 @@
<string name="otg_warning">Recurso experimental: use somente se o dispositivo OTG for gravável.</string>
<string name="server_url">URL de servidor</string>
<string name="server_url_and_port">URL e porta do servidor na nuvem.</string>
<string name="user_name">Usuário</string>
<string name="user_name">Nome de usuário(a)</string>
<string name="password">Senha</string>
<!-- Directory browser strings -->
<string name="up_description">Ir para um diretório acima</string>
<string name="confirm_label">Confirmar</string>
<string name="cancel_label">Cancelar</string>
<string name="search_label">Ir</string>
<string name="directory_browser_label">Escolha Diretório</string>
<string name="directory_browser_label">Escolher Diretório</string>
<string name="bad_directory">Caminho de diretório inválido</string>
<string name="current_dir">Diretório atual: %1$s</string>
<!-- Permission rationale alert dialog strings -->
<string name="title_permission_required">Permissão necessária</string>
<string name="reason_required_to_read_documents">É necessária permissão de armazenamento para ler seus documentos.</string>
<string name="title_permission_required">Permissão requerida</string>
<string name="reason_required_to_read_documents">Permissão de armazenamento é requerida para ler seus documentos.</string>
<string name="positive_ok">OK</string>
<string name="negative_im_sure">Tenho a certeza</string>
<string name="negative_cancel">Cancelar</string>
@ -99,9 +99,9 @@
<string name="action_cancel">Cancelar</string>
<!-- Create New Document Dialog Strings -->
<string name="create_new_document_title">Criar novo documento</string>
<string name="enter_filename">Introduza o nome do arquivo:</string>
<string name="enter_filename">Por favor, insira o nome do arquivo:</string>
<string name="action_create">Criar</string>
<string name="action_overwrite">Substituir</string>
<string name="action_overwrite">Sobrescrever</string>
<!-- Loading SlideShow Dialog Strings -->
<string name="loading">Carregando...</string>
<!-- Presentation Mode Strings -->
@ -115,8 +115,8 @@
<string name="directory_not_saved">Diretório não salvo.</string>
<string name="title_activity_show_html">Sobre</string>
<string name="share_document">Compartilhar documento</string>
<string name="pref_enable_chrome_debugger_info">Ative para utilizar a ferramenta de debug do Chrome no documento</string>
<string name="pref_enable_chrome_debugger">Debug do Chrome</string>
<string name="pref_enable_chrome_debugger_info">Habilita para utilizar a ferramenta de depuração do Chrome no documento</string>
<string name="pref_enable_chrome_debugger">Depuração do Chrome</string>
<string name="pref_category_editor">Configurações do editor</string>
<string name="remove_from_list">Remover da lista</string>
<string name="file_actions_icon_desc">Ações de arquivo</string>
@ -128,4 +128,7 @@
<string name="theme_system_default">Padrão do sistema</string>
<string name="choose_theme">Escolher tema</string>
<string name="theme">Tema</string>
<string name="pref_user_name_info">Usado ao adicionar um comentário</string>
<string name="pref_user_name">Nome de usuário</string>
<string name="pref_user_name_guest">Usuário Convidado</string>
</resources>

View File

@ -1,2 +1,115 @@
<?xml version="1.0" encoding="utf-8"?>
<resources></resources>
<resources>
<string name="temp_file_saving_disabled">Kjo kartelë është vetëm-lexim, ruajtja është e çaktivizuar.</string>
<string name="storage_permission_required">Lypset leje depozitimi</string>
<string name="failed_to_load_file">Su arrit të përcaktohej kartela për ngarkim</string>
<string name="loading">Po ngarkohet…</string>
<string name="pref_show_debug_info_summary">Aktivizojeni, që të shfaqen hollësi diagnostikimi te parësi i dokumenteve</string>
<string name="pref_enable_chrome_debugger">Diagnostikim Chrome</string>
<string name="pref_enable_chrome_debugger_info">Aktivizojeni, që të përdoret mjeti i diagnostikimit Chrome te dokumenti</string>
<string name="new_spreadsheet">Fletëllogaritje e Re</string>
<string name="owncloud_unauthorized">Sbëhet dot hyrje në llogari te shërbyesi re.</string>
<string name="owncloud_unspecified_error">Gabim i papërcaktuar në lidhjen te shërbyesi re. Kontrolloni formësimin tuaj dhe/ose riprovoni më vonë.</string>
<string name="app_name_settings">Rregullime</string>
<string name="app_description">$APP_NAME është një suitë moderne zyrash, e lehtë për tu përdorur, me burim të hapët, për përpunim tekstesh, fletëllogaritje, paraqitje, etj.</string>
<string name="app_vendor">Kjo hedhje në qarkullim qe sjellë nga $VENDOR.</string>
<string name="no_recent_items">Ju lutemi, hapni një kartelë duke përdorur ikonën dosje te paneli.</string>
<string name="no_items">Ska objekte</string>
<string name="file_exists_warning">Ka tashmë një kartelë me këtë emër dhe do të mbishkruhet.</string>
<string name="file_creation_failed">Krijimi i kartelës dështoi</string>
<string name="list_view">Listë</string>
<string name="grid_view">Mozaik</string>
<string name="pref_category_explorer">Rregullime Përgjegjësi Kartelash</string>
<string name="pref_category_editor">Rregullime Përpunuesi</string>
<string name="pref_show_hidden_files">Kartela/Dosje të Fshehura</string>
<string name="pref_show_hidden_files_summary">Aktivizojeni, që të shfaqen kartela/dosje të fshehura</string>
<string name="pref_sort_summary">Përzgjidhni si të renditen kartelat: A-Z, sipas madhësish, ose datash.</string>
<string name="pref_viewmode_summary">Shihini kartelat si mozaik, ose si një listë.</string>
<string name="pref_file_explorer_title">Skemë përgjegjësi kartelash</string>
<string name="pref_sort_title">Rend Kartelash</string>
<string name="pref_filter_title">Filtër Parazgjedhje Kartelash</string>
<string name="pref_filter_summary">Caktoni cili filtër kartelash duhet përdorur si parazgjedhje.</string>
<string name="pref_show_debug_info">Shfaq Hollësi Diagnostikimi</string>
<string name="about_license">Shfaq Licencë</string>
<string name="about_notice">Shfaq Njoftim</string>
<string name="about_moreinfo">Më Tepër Hollësi</string>
<string name="new_textdocument">Dokument i Ri Tekst</string>
<string name="new_presentation">Paraqitje e Re</string>
<string name="default_document_name">pa titull</string>
<string name="filter">Filtroji sipas</string>
<string name="sort">Renditi sipas</string>
<string name="sort_smallest">Më të vegjlit së pari</string>
<string name="sort_largest">Më të mëdhenjtë së pari</string>
<string name="sort_az">A-Z</string>
<string name="sort_za">Z-A</string>
<string name="sort_oldest">Më të vjetrit së pari</string>
<string name="sort_newest">Më të rinjtë së pari</string>
<string name="file_icon_desc">Ikonë kartelash</string>
<string name="file_actions_icon_desc">Veprime kartelash</string>
<string name="title_recents">Kartela së fundi</string>
<string name="title_browser">Krejt kartelat</string>
<string name="action_about">Mbi</string>
<string name="action_settings">Rregullime</string>
<string name="open">Hape</string>
<string name="share">Ndajeni Me të Tjerët</string>
<string name="remove_from_list">Hiqe nga lista</string>
<string name="share_via">Ndaje me të tjerë përmes</string>
<string name="filter_everything">Gjithçka</string>
<string name="close_document_locations">Mbyll vende dokumentesh</string>
<string name="local_documents">Drejtori dokumentesh</string>
<string name="local_file_system">Sistem vendor kartelash</string>
<string name="external_sd_file_system">SD e jashtme</string>
<string name="otg_file_system">Pajisje OTG (eksperimentale)</string>
<string name="remote_server">Shërbyes i largët</string>
<string name="usb_connected_configure">USB e lidhur, formësoni pajisjen tuaj.</string>
<string name="owncloud_wrong_connection">Slidhet dot te shërbyesi re. Kontrolloni formësimin tuaj.</string>
<string name="ext_document_provider_error">Kartelë rrënjë e pavlefshme. Kontrolloni formësimin e kartës tuaj SD.</string>
<string name="otg_missing_error">Kartelë rrënjë e pavlefshme. Kontrolloni pajisje tuaj OTG dhe/ose formësimin.</string>
<string name="storage_provider_settings">Rregullime depozitimi nga shërbimi</string>
<string name="owncloud_settings">Rregullime shërbyesi re</string>
<string name="physical_storage_settings">Rregullime depozite materiale</string>
<string name="external_sd_path">Shteg SD të jashtme</string>
<string name="otg_device_path">Shteg pajisjeje OTG</string>
<string name="otg_warning">Veçori Eksperimentale: Përdoreni vetëm nëse pajisja OTG është e shkrueshme.</string>
<string name="server_url">URL Shërbyesi</string>
<string name="server_url_and_port">URL dhe portë te shërbyesi re.</string>
<string name="user_name">Emër përdoruesi</string>
<string name="up_description">Te drejtoria mëmë</string>
<string name="confirm_label">Ripohojeni</string>
<string name="cancel_label">Anuloje</string>
<string name="search_label">Shko</string>
<string name="directory_browser_label">Zgjidhni Drejtori</string>
<string name="bad_directory">Shteg i pavlefshëm drejtorie</string>
<string name="current_dir">Drejtoria e Tanishme: %1$s</string>
<string name="reason_required_to_read_documents">Për leximin e dokumenteve tuaja lypset leje depozite.</string>
<string name="negative_im_sure">Jam i sigurt</string>
<string name="negative_cancel">Anuloje</string>
<string name="action_cancel">Anuloje</string>
<string name="create_new_document_title">Krijoni Dokument të Ri</string>
<string name="enter_filename">Ju lutemi, jepni emrin e kartelës:</string>
<string name="action_create">Krijoje</string>
<string name="action_overwrite">Mbishkruaje</string>
<string name="share_document">Ndani Dokument Me të Tjerë</string>
<string name="unable_to_go_further">Sarrihet të shkohet më tej.</string>
<string name="bmp_null">Bpm është e zbrazët!</string>
<string name="directory_not_saved">Drejtoria su ruajt.</string>
<string name="title_activity_show_html">Mbi</string>
<string name="theme">Temë</string>
<string name="choose_theme">Zgjidhni temë</string>
<string name="theme_system_default">Parazgjedhje sistemi</string>
<string name="theme_dark">E errët</string>
<string name="theme_light">E çelët</string>
<string name="pref_user_name">Emër Përdoruesi</string>
<string name="pref_user_name_info">Përdorur kur shtohet një koment</string>
<string name="title_permission_required">Lypset Leje</string>
<string name="positive_ok">OK</string>
<string name="filter_documents">Dokumente</string>
<string name="pref_user_name_guest">Përdorues Mysafir</string>
<string name="filter_spreadsheets">Fletëllogaritje</string>
<string name="filter_presentations">Paraqitje</string>
<string name="document_locations">Vendndodhje dokumentesh</string>
<string name="password">Fjalëkalim</string>
<string name="app_version_and_hash">Version: %1$s
\nonline git-hash: %2$s
\ncore git-hash: %3$s</string>
</resources>

View File

@ -1,10 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="about_license">Показати ліцензію</string>
<string name="pref_enable_chrome_debugger_info">Використовувати в документі зневаджувальні засоби Chrome</string>
<string name="pref_enable_chrome_debugger">Зневадження Chrome</string>
<string name="pref_show_debug_info_summary">Показувати зневаджувальну інформацію в переглядачі документів</string>
<string name="pref_show_debug_info">Показати зневаджувальну інформацію</string>
<string name="pref_enable_chrome_debugger_info">Використовувати в документі засоби налагодження Chrome</string>
<string name="pref_enable_chrome_debugger">Налагодження Chrome</string>
<string name="pref_show_debug_info_summary">Показувати інформацію налагодження в переглядачі документів</string>
<string name="pref_show_debug_info">Показати інформацію налагодження</string>
<string name="pref_filter_summary">Задайте, який фільтр файлів буде типовим.</string>
<string name="pref_filter_title">Типовий фільтр файлів</string>
<string name="pref_sort_title">Порядок файлів</string>
@ -21,7 +21,7 @@
<string name="file_exists_warning">Файл з такою назвою вже існує і буде перезаписаний.</string>
<string name="temp_file_saving_disabled">Цей файл лише для читання, збереження неможливе.</string>
<string name="no_items">Немає елементів</string>
<string name="no_recent_items">Відкрийте файл за допомогою піктограми папки на панелі інструментів.</string>
<string name="no_recent_items">Відкрийте файл за допомогою піктограми теки на панелі інструментів.</string>
<string name="app_vendor">Цей випуск надано $VENDOR.</string>
<string name="app_description">$APP_NAME це сучасний, простий у використанні набір програм з відкритим кодом для обробки текстів, електронних таблиць, презентацій тощо.</string>
<string name="app_version">Версія: %1$s, збірка: %2$s</string>

View File

@ -1,11 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<!--string name="app_name" definition is deliberately missing here, it is filled in in build.gradle.-->
<string name="app_name_settings">Settings</string>
<string name="app_version_and_hash">Version: %1$s\nonline git-hash: %2$s\ncore git-hash: %3$s</string>
<string name="app_description">$APP_NAME is a modern, easy-to-use, open source productivity suite for word processing, spreadsheets, presentations and more.</string>
<string name="app_vendor">This release was supplied by $VENDOR.</string>
<string name="no_recent_items">Please open a file using the folder icon in the toolbar.</string>
<string name="no_items">No items</string>
<string name="temp_file_saving_disabled">This file is read-only, saving is disabled.</string>
@ -13,7 +12,6 @@
<string name="file_creation_failed">File creation failed</string>
<string name="storage_permission_required">Storage permission is required</string>
<string name="failed_to_load_file">Failed to determine the file to load</string>
<string name="list_view">List</string>
<string name="grid_view">Grid</string>
<string name="pref_category_explorer">File Manager Settings</string>
@ -33,16 +31,13 @@
<string name="pref_user_name_guest">Guest User</string>
<string name="pref_enable_chrome_debugger">Chrome Debugging</string>
<string name="pref_enable_chrome_debugger_info">Enable to use Chrome\'s debugging tool in the document</string>
<string name="about_license">Show License</string>
<string name="about_notice">Show Notice</string>
<string name="about_moreinfo">More Info</string>
<string name="new_textdocument">New Text Document</string>
<string name="new_presentation">New Presentation</string>
<string name="new_spreadsheet">New Spreadsheet</string>
<string name="default_document_name">untitled</string>
<string name="filter">Filter by</string>
<string name="sort">Sort by</string>
<string name="sort_smallest">Smallest first</string>
@ -56,20 +51,17 @@
<string name="title_recents">Recent files</string>
<string name="title_browser">All files</string>
<!-- Pref keys as resources ; Not currently used -->
<string name="action_about">About</string>
<string name="action_settings">Settings</string>
<string name="open">Open</string>
<string name="share">Share</string>
<string name="remove_from_list">Remove from the list</string>
<string name="share_via">Share via</string>
<!-- Document browser filters -->
<string name="filter_everything">Everything</string>
<string name="filter_documents">Documents</string>
<string name="filter_spreadsheets">Spreadsheets</string>
<string name="filter_presentations">Presentations</string>
<!-- Document provider names -->
<string name="document_locations">Document locations</string>
<string name="close_document_locations">Close document locations</string>
@ -79,18 +71,13 @@
<string name="otg_file_system">OTG device (experimental)</string>
<string name="remote_server">Remote server</string>
<string name="usb_connected_configure">USB connected, configure your device.</string>
<string name="owncloud_wrong_connection">Cannot connect to the cloud server. Check your configuration.</string>
<string name="owncloud_unauthorized">Cannot log in to the cloud server. Check your configuration.</string>
<string name="owncloud_unspecified_error">Unspecified error connecting to the cloud server. Check your configuration and/or try later.</string>
<string name="ext_document_provider_error">Invalid root file. Check your sd card configuration.</string>
<string name="otg_missing_error">Invalid root file. Check your OTG device and/or configuration.</string>
<!-- Edit action names -->
<!-- Feedback messages -->
<!-- Document provider settings -->
<string name="storage_provider_settings">Storage provider settings</string>
<string name="owncloud_settings">Cloud server settings</string>
@ -102,7 +89,6 @@
<string name="server_url_and_port">URL and port of the cloud server.</string>
<string name="user_name">User name</string>
<string name="password">Password</string>
<!-- Directory browser strings -->
<string name="up_description">To parent directory</string>
<string name="confirm_label">Confirm</string>
@ -111,48 +97,36 @@
<string name="directory_browser_label">Choose Directory</string>
<string name="bad_directory">Invalid directory path</string>
<string name="current_dir">Current Directory: %1$s</string>
<!-- Permission rationale alert dialog strings -->
<string name="title_permission_required">Permission Required</string>
<string name="reason_required_to_read_documents">Storage permission is required for reading your documents.</string>
<string name="positive_ok">OK</string>
<string name="negative_im_sure">I\'m sure</string>
<string name="negative_cancel">Cancel</string>
<!-- Save Alert dialog strings -->
<string name="action_cancel">Cancel</string>
<!-- Create New Document Dialog Strings -->
<string name="create_new_document_title">Create New Document</string>
<string name="enter_filename">Please enter the file name:</string>
<string name="action_create">Create</string>
<string name="action_overwrite">Overwrite</string>
<!-- Loading SlideShow Dialog Strings -->
<string name="loading">Loading...</string>
<string name="share_document">Share Document</string>
<!-- Presentation Mode Strings -->
<!-- Calc Header Menu Strings -->
<!-- Password dialog strings -->
<!-- Insert Image Strings -->
<!-- Clipboard Actions -->
<!-- UNO cmd controller Strings -->
<string name="unable_to_go_further">Unable to go further.</string>
<string name="bmp_null">Bmp is null!</string>
<string name="directory_not_saved">Directory not saved.</string>
<string name="title_activity_show_html">About</string>
<!-- Theme settings -->
<string name="theme">Theme</string>
<string name="choose_theme">Choose theme</string>
<string name="theme_system_default">System default</string>
<string name="theme_dark">Dark</string>
<string name="theme_light">Light</string>
</resources>
</resources>

View File

@ -4,10 +4,11 @@ buildDir = "@abs_top_builddir@/android/build"
buildscript {
repositories {
google()
jcenter()
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:3.4.1'
// before updating make sure https://issuetracker.google.com/issues/293294923 is fixed
classpath 'com.android.tools.build:gradle:3.6.4'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
@ -17,11 +18,11 @@ buildscript {
allprojects {
repositories {
google()
jcenter()
mavenCentral()
}
}
task clean(type: Delete) {
tasks.register('clean', Delete) {
delete rootProject.buildDir
}

View File

@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-5.1.1-all.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.4-all.zip

View File

@ -4,12 +4,13 @@ apply plugin: 'com.android.library'
apply from: 'libSettings.gradle'
android {
compileSdkVersion 29
compileSdkVersion 33
buildDir = "${rootProject.getBuildDir()}/lib"
ndkVersion "22.1.7171670"
defaultConfig {
minSdkVersion 21
targetSdkVersion 29
targetSdkVersion 33
versionCode 1
versionName "1.0"
@ -67,13 +68,22 @@ android {
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'androidx.appcompat:appcompat:1.0.2'
implementation 'com.google.android.material:material:1.1.0-alpha04'
implementation 'androidx.constraintlayout:constraintlayout:1.1.2'
implementation 'androidx.appcompat:appcompat:1.6.1'
implementation 'com.google.android.material:material:1.6.1'
implementation 'androidx.constraintlayout:constraintlayout:2.1.4'
// https://stackoverflow.com/questions/75263047/duplicate-class-in-kotlin-android
constraints {
implementation("org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.8.0") {
because("kotlin-stdlib-jdk7 is now a part of kotlin-stdlib")
}
implementation("org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.8.0") {
because("kotlin-stdlib-jdk8 is now a part of kotlin-stdlib")
}
}
}
task copyUnpackAssets(type: Copy) {
tasks.register('copyUnpackAssets', Copy) {
description "copies assets that need to be extracted on the device"
into 'src/main/assets/unpack'
into('program') {
@ -95,7 +105,7 @@ task copyUnpackAssets(type: Copy) {
}
into('etc/coolwsd') {
from('/android/coolkitconfig.xcu')
includes = [ 'coolkitconfig.xcu' ]
includes = ['coolkitconfig.xcu']
}
into('user/fonts') {
from "${liboInstdir}/share/fonts/truetype"
@ -122,7 +132,7 @@ task copyUnpackAssets(type: Copy) {
filter {
String line ->
line.replaceAll(
'@@APPLICATION_ID@@', new String("${liboApplicationId}")
'@@APPLICATION_ID@@', new String("${liboApplicationId}")
)
}
}
@ -138,15 +148,15 @@ task copyUnpackAssets(type: Copy) {
includes = ['extensions/dict-de/**', 'extensions/dict-en/**', 'extensions/dict-es/**', 'extensions/dict-fr/**', 'extensions/dict-pt-BR/**']
exclude { FileTreeElement details ->
!(details.file.isDirectory() ||
details.file.name.endsWith('.xcu') ||
details.file.name.endsWith('.dic') ||
details.file.name.endsWith('.aff') ||
details.file.name.endsWith('.xml'))
details.file.name.endsWith('.xcu') ||
details.file.name.endsWith('.dic') ||
details.file.name.endsWith('.aff') ||
details.file.name.endsWith('.xml'))
}
}
}
task copyAssets(type: Copy) {
tasks.register('copyAssets', Copy) {
description "copies assets that can be accessed within the installed apk"
into 'src/main/assets'
from("${liboSrcRoot}/instdir/") {
@ -168,7 +178,7 @@ task copyAssets(type: Copy) {
}
}
task createFullConfig(type: Copy) {
tasks.register('createFullConfig', Copy) {
description "copies various configuration bits into the apk"
into('src/main/assets/share/config')
from("${liboInstdir}/share/config") {
@ -176,25 +186,25 @@ task createFullConfig(type: Copy) {
}
}
task copyBrandTheme(type: Copy) {
from "${liboBrandingDir}/online-theme"
into "src/main/assets/share/theme_definitions/online"
tasks.register('copyBrandTheme', Copy) {
from "${liboBrandingDir}/online-theme"
into "src/main/assets/share/theme_definitions/online"
}
task copyDocTemplates(type: Copy) {
from "${rootProject.getRootDir()}/templates/untitled.odp",
"${rootProject.getRootDir()}/templates/untitled.ods",
"${rootProject.getRootDir()}/templates/untitled.odt"
into "src/main/assets/templates"
tasks.register('copyDocTemplates', Copy) {
from "${rootProject.getRootDir()}/templates/untitled.odp",
"${rootProject.getRootDir()}/templates/untitled.ods",
"${rootProject.getRootDir()}/templates/untitled.odt"
into "src/main/assets/templates"
}
task copyKitConfig(type: Copy) {
from "${file(rootProject.getRootDir()).getParent()}/coolkitconfig-mobile.xcu"
into "src/main/assets/etc/coolwsd"
rename { "coolkitconfig.xcu" }
tasks.register('copyKitConfig', Copy) {
from "${file(rootProject.getRootDir()).getParent()}/coolkitconfig-mobile.xcu"
into "src/main/assets/etc/coolwsd"
rename { "coolkitconfig.xcu" }
}
task createStrippedConfig {
tasks.register('createStrippedConfig') {
def preserveDir = file("src/main/assets/share/config/soffice.cfg/empty")
outputs.dir "src/main/assets/share/registry/res"
outputs.file preserveDir
@ -207,7 +217,7 @@ task createStrippedConfig {
}
}
task createRCfiles {
tasks.register('createRCfiles') {
inputs.file "libSettings.gradle"
dependsOn copyUnpackAssets, copyAssets
def sofficerc = file('src/main/assets/unpack/program/sofficerc')
@ -295,7 +305,7 @@ preBuild.dependsOn 'createRCfiles',
'createFullConfig',
'copyBrandTheme'
task generateCoolDebugAssets {
tasks.register('generateCoolDebugAssets') {
doLast {
exec {
commandLine 'make', '-C', "${rootProject.getBuildDir()}/../../browser", 'clean'
@ -306,7 +316,7 @@ task generateCoolDebugAssets {
}
}
task generateCoolReleaseAssets {
tasks.register('generateCoolReleaseAssets') {
doLast {
exec {
commandLine 'make', '-C', "${rootProject.getBuildDir()}/../../browser", 'clean'

View File

@ -1,33 +1,42 @@
cmake_minimum_required(VERSION 3.4.1)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++2a")
add_library(androidapp SHARED
androidapp.cpp
../../../../../common/Authorization.cpp
../../../../../common/ConfigUtil.cpp
../../../../../common/FileUtil.cpp
../../../../../common/CommandControl.cpp
../../../../../common/Crypto-stub.cpp
../../../../../common/FileUtil.cpp
../../../../../common/Log.cpp
../../../../../common/MessageQueue.cpp
../../../../../common/TraceEvent.cpp
../../../../../common/Protocol.cpp
../../../../../common/Simd.cpp
../../../../../common/StringVector.cpp
../../../../../common/Session.cpp
../../../../../common/SigUtil.cpp
../../../../../common/SpookyV2.cpp
../../../../../common/Unit.cpp
../../../../../common/Util.cpp
../../../../../common/CommandControl.cpp
../../../../../common/Util-mobile.cpp
../../../../../kit/ChildSession.cpp
../../../../../kit/DeltaSimd.c
../../../../../kit/Kit.cpp
../../../../../kit/KitQueue.cpp
../../../../../kit/KitWebSocket.cpp
../../../../../net/FakeSocket.cpp
../../../../../net/Socket.cpp
../../../../../wsd/ClientSession.cpp
../../../../../wsd/DocumentBroker.cpp
../../../../../wsd/COOLWSD.cpp
../../../../../wsd/ClientRequestDispatcher.cpp
../../../../../wsd/RequestDetails.cpp
../../../../../wsd/RequestVettingStation.cpp
../../../../../wsd/Storage.cpp
../../../../../wsd/TileCache.cpp)
../../../../../wsd/TileCache.cpp
../../../../../wsd/coolwsd-fork.cpp)
target_compile_definitions(androidapp PRIVATE COOLWSD_CONFIGDIR="/assets/etc/coolwsd")
@ -36,18 +45,26 @@ if(${ANDROID_ABI} STREQUAL "armeabi-v7a")
set(LOBUILDDIR_ABI @LOBUILDDIR@)
set(POCOINCLUDE_ABI @POCOINCLUDE@)
set(POCOLIB_ABI @POCOLIB@)
set(ZSTDINCLUDE_ABI @ZSTDINCLUDE@)
set(ZSTDLIB_ABI @ZSTDLIB@)
elseif(${ANDROID_ABI} STREQUAL "arm64-v8a")
set(LOBUILDDIR_ABI @LOBUILDDIR_ARM64_V8A@)
set(POCOINCLUDE_ABI @POCOINCLUDE_ARM64_V8A@)
set(POCOLIB_ABI @POCOLIB_ARM64_V8A@)
set(ZSTDINCLUDE_ABI @ZSTDINCLUDE_ARM64_V8A@)
set(ZSTDLIB_ABI @ZSTDLIB_ARM64_V8A@)
elseif(${ANDROID_ABI} STREQUAL "x86")
set(LOBUILDDIR_ABI @LOBUILDDIR_X86@)
set(POCOINCLUDE_ABI @POCOINCLUDE_X86@)
set(POCOLIB_ABI @POCOLIB_X86@)
set(ZSTDINCLUDE_ABI @ZSTDINCLUDE_X86@)
set(ZSTDLIB_ABI @ZSTDLIB_X86@)
elseif(${ANDROID_ABI} STREQUAL "x86_64")
set(LOBUILDDIR_ABI @LOBUILDDIR_X86_64@)
set(POCOINCLUDE_ABI @POCOINCLUDE_X86_64@)
set(POCOLIB_ABI @POCOLIB_X86_64@)
set(ZSTDINCLUDE_ABI @ZSTDINCLUDE_X86_64@)
set(ZSTDLIB_ABI @ZSTDLIB_X86_64@)
else()
MESSAGE(FATAL_ERROR "Cannot build for ABI ${ANDROID_ABI}, please add support for that.")
endif()
@ -63,6 +80,7 @@ target_include_directories(androidapp PRIVATE
../../../../../net
../../../../../wsd
${POCOINCLUDE_ABI} # POCO
${ZSTDINCLUDE_ABI} # ZSTD
${LOBUILDDIR_ABI}/workdir/UnpackedTarball/libpng # libpng
${LOBUILDDIR_ABI}/include # LibreOfficeKit
)
@ -120,10 +138,10 @@ target_link_libraries(androidapp
${LOBUILDDIR_ABI}/workdir/LinkTarget/StaticLibrary/liblibpng.a
${POCOLIB_ABI}/libPocoEncodings@POCODEBUG@.a
${POCOLIB_ABI}/libPocoNet@POCODEBUG@.a
${POCOLIB_ABI}/libPocoRedis@POCODEBUG@.a
${POCOLIB_ABI}/libPocoUtil@POCODEBUG@.a
${POCOLIB_ABI}/libPocoXML@POCODEBUG@.a
${POCOLIB_ABI}/libPocoJSON@POCODEBUG@.a
${POCOLIB_ABI}/libPocoFoundation@POCODEBUG@.a
${ZSTDLIB_ABI}/libzstd.a
"${CMAKE_CURRENT_SOURCE_DIR}/lib/${ANDROID_ABI}/liblo-native-code.so"
)

View File

@ -35,6 +35,7 @@ static int fakeClientFd;
static int closeNotificationPipeForForwardingThread[2] = {-1, -1};
static JavaVM* javaVM = nullptr;
static bool lokInitialized = false;
static std::mutex coolwsdRunningMutex;
// Remember the reference to the LOActivity
jclass g_loActivityClz = nullptr;
@ -182,9 +183,11 @@ void closeDocument()
{
// Close one end of the socket pair, that will wake up the forwarding thread that was constructed in HULLO
fakeSocketClose(closeNotificationPipeForForwardingThread[0]);
LOG_DBG("Waiting for Lokit to finish...");
std::unique_lock<std::mutex> lokitLock(COOLWSD::lokit_main_mutex);
LOG_DBG("Lokit has finished.");
LOG_DBG("Waiting for COOLWSD to finish...");
std::unique_lock<std::mutex> lock(COOLWSD::lokit_main_mutex);
std::unique_lock<std::mutex> coolwsdLock(coolwsdRunningMutex);
LOG_DBG("COOLWSD has finished.");
}
@ -345,9 +348,10 @@ Java_org_libreoffice_androidlib_LOActivity_createCOOLWSD(JNIEnv *env, jobject in
{
LOG_DBG("Creating COOLWSD");
{
std::unique_lock<std::mutex> lock(coolwsdRunningMutex);
fakeClientFd = fakeSocketSocket();
LOG_DBG("createCOOLWSD created fakeClientFd: " << fakeClientFd);
std::unique_ptr<COOLWSD> coolwsd(new COOLWSD());
std::unique_ptr<COOLWSD> coolwsd = std::make_unique<COOLWSD>();
coolwsd->run(1, argv);
}
LOG_DBG("One run of COOLWSD completed");

View File

@ -23,6 +23,7 @@ import android.content.pm.ApplicationInfo;
import android.content.pm.PackageManager;
import android.content.res.AssetFileDescriptor;
import android.content.res.AssetManager;
import android.content.res.Configuration;
import android.database.Cursor;
import android.net.Uri;
import android.os.AsyncTask;
@ -74,6 +75,7 @@ import java.util.Map;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.appcompat.app.AppCompatActivity;
import androidx.appcompat.app.AppCompatDelegate;
import androidx.core.app.ActivityCompat;
import androidx.core.content.ContextCompat;
import androidx.localbroadcastmanager.content.LocalBroadcastManager;
@ -96,6 +98,7 @@ public class LOActivity extends AppCompatActivity {
private static final String CLIPBOARD_COOL_SIGNATURE = "cool-clip-magic-4a22437e49a8-";
public static final String RECENT_DOCUMENTS_KEY = "RECENT_DOCUMENTS_LIST";
private static String USER_NAME_KEY = "USER_NAME";
public static final String NIGHT_MODE_KEY = "NIGHT_MODE";
private File mTempFile = null;
@ -349,6 +352,8 @@ public class LOActivity extends AppCompatActivity {
webSettings.setJavaScriptEnabled(true);
mWebView.addJavascriptInterface(this, "COOLMessageHandler");
webSettings.setDomStorageEnabled(true);
// allow debugging (when building the debug version); see details in
// https://developers.google.com/web/tools/chrome-devtools/remote-debugging/webviews
boolean isChromeDebugEnabled = sPrefs.getBoolean("ENABLE_CHROME_DEBUGGING", false);
@ -393,7 +398,7 @@ public class LOActivity extends AppCompatActivity {
}
});
if (ContextCompat.checkSelfPermission(this, Manifest.permission.WRITE_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED) {
if (Build.VERSION.SDK_INT < Build.VERSION_CODES.TIRAMISU && ContextCompat.checkSelfPermission(this, Manifest.permission.WRITE_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED) {
Log.i(TAG, "asking for read storage permission");
ActivityCompat.requestPermissions(this,
new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE},
@ -637,6 +642,7 @@ public class LOActivity extends AppCompatActivity {
@Override
public void onActivityResult(int requestCode, int resultCode, Intent intent) {
super.onActivityResult(requestCode, resultCode, intent);
if (resultCode != RESULT_OK) {
if (requestCode == REQUEST_SELECT_IMAGE_FILE) {
valueCallback.onReceiveValue(null);
@ -655,18 +661,15 @@ public class LOActivity extends AppCompatActivity {
requestCopy = true;
if (getMimeType().equals("text/plain")) {
requestCode = REQUEST_SAVEAS_ODT;
}
else if (getMimeType().equals("text/comma-separated-values")) {
} else if (getMimeType().equals("text/comma-separated-values")) {
requestCode = REQUEST_SAVEAS_ODS;
}
else if (getMimeType().equals("application/vnd.ms-excel.sheet.binary.macroenabled.12")) {
} else if (getMimeType().equals("application/vnd.ms-excel.sheet.binary.macroenabled.12")) {
requestCode = REQUEST_SAVEAS_ODS;
}
else {
} else {
String filename = getFileName(true);
String extension = filename.substring(filename.lastIndexOf('.') + 1);
requestCode = getRequestIDForFormat(extension);
assert(requestCode != 0);
assert (requestCode != 0);
}
}
switch (requestCode) {
@ -703,8 +706,7 @@ public class LOActivity extends AppCompatActivity {
inputStream = new FileInputStream(tempFile);
try {
outputStream = getContentResolver().openOutputStream(intent.getData(), "wt");
}
catch (FileNotFoundException e) {
} catch (FileNotFoundException e) {
Log.i(TAG, "failed with the 'wt' mode, trying without: " + e.getMessage());
outputStream = getContentResolver().openOutputStream(intent.getData());
}
@ -729,7 +731,7 @@ public class LOActivity extends AppCompatActivity {
}
}
if (requestCopy == true) {
assert(_tempFile != null);
assert (_tempFile != null);
mTempFile = _tempFile;
getIntent().setData(intent.getData());
/** add the document to recents */
@ -858,6 +860,11 @@ public class LOActivity extends AppCompatActivity {
if (isLargeScreen() && !isChromeOS())
finalUrlToLoad += "&userinterfacemode=notebookbar";
if(isDarkMode()) {
finalUrlToLoad += "&darkTheme=true";
}
// load the page
mWebView.loadUrl(finalUrlToLoad);
@ -866,6 +873,21 @@ public class LOActivity extends AppCompatActivity {
loadDocumentMillis = android.os.SystemClock.uptimeMillis();
}
private boolean isDarkMode() {
SharedPreferences recentPrefs = getSharedPreferences(EXPLORER_PREFS_KEY, MODE_PRIVATE);
int mode = recentPrefs.getInt(NIGHT_MODE_KEY, AppCompatDelegate.MODE_NIGHT_FOLLOW_SYSTEM);
switch (mode) {
case -1:
int darkModeFlag = getBaseContext().getResources().getConfiguration().uiMode & Configuration.UI_MODE_NIGHT_MASK;
return darkModeFlag == Configuration.UI_MODE_NIGHT_YES;
case 1:
return false;
case 2:
return true;
}
return false;
}
static {
System.loadLibrary("androidapp");
}
@ -960,14 +982,16 @@ public class LOActivity extends AppCompatActivity {
});
// update progress bar when loading
if (message.startsWith("'statusindicator") || message.startsWith("'error:")) {
if (message.startsWith("'progress") || message.startsWith("'error:")) {
runOnUiThread(new Runnable() {
public void run() {
// FIXME: parse properly with JSONObject if starts progress:
// update progress bar if it exists
final String statusIndicatorSetValue = "'statusindicatorsetvalue: ";
final String statusIndicatorSetValue = "'progress: { \"id\":\"setvalue\", \"value\":";
if (message.startsWith(statusIndicatorSetValue)) {
int start = statusIndicatorSetValue.length();
int end = message.indexOf("'", start);
int end = message.indexOf("}", start);
int progress = 0;
try {
@ -977,7 +1001,8 @@ public class LOActivity extends AppCompatActivity {
mProgressDialog.determinateProgress(progress);
}
else if (message.startsWith("'statusindicatorfinish:") || message.startsWith("'error:")) {
else if (message.startsWith("'progress: { \"id\":\"finish\"") ||
message.startsWith("'error:")) {
mProgressDialog.dismiss();
if (BuildConfig.GOOGLE_PLAY_ENABLED && rateAppController != null)
rateAppController.askUserForRating();
@ -1124,7 +1149,7 @@ public class LOActivity extends AppCompatActivity {
try {
cursor = getContentResolver().query(getIntent().getData(), null, null, null, null);
if (cursor != null && cursor.moveToFirst())
filename = cursor.getString(cursor.getColumnIndex(OpenableColumns.DISPLAY_NAME));
filename = cursor.getString(cursor.getColumnIndexOrThrow(OpenableColumns.DISPLAY_NAME));
} catch (Exception e) {
return null;
}

View File

@ -17,4 +17,5 @@
<string name="use_odf">Usar el formatu ODF</string>
<string name="use_text">Usar el formatu Testu</string>
<string name="convert_odf_message">Esti documentu pue contener formatu o conteníu que nun pue guardase nel formatu de ficheru «Testu».</string>
<string name="ask_for_copy">Esti documentu ye namái de llectura. ¿Quies facer una copia pa editala\?</string>
</resources>

View File

@ -0,0 +1,2 @@
<?xml version="1.0" encoding="utf-8"?>
<resources></resources>

View File

@ -4,7 +4,7 @@
<string name="cannot_open_file_chooser">Methu agor dewisydd ffeiliau</string>
<string name="failed_to_insert_image">Methwyd mewnosod delwedd</string>
<string name="failed_to_load_file">Methwyd penderfynu pa ffeil i\'w chadw</string>
<string name="storage_permission_required">Mae angen caniatâd cadw.</string>
<string name="storage_permission_required">Mae angen caniatâd cadw</string>
<string name="temp_file_saving_disabled">Darllen yn unig yw\'r ffeil hon, mae cadw wedi ei analluogi.</string>
<string name="saving">Yn cadw...</string>
<string name="preparing_for_the_first_start_after_an_update">Paratoi am y cychwyn cyntaf ar ôl diweddariad.</string>
@ -14,4 +14,13 @@
<string name="exiting">Gorffen...</string>
<string name="rate_our_app_text">Os ydych yn ei hoffi, rhowch 5 seren i ni ar Google Play. Mae eich adolygiadau da yn ein hysbrydoli.</string>
<string name="file_chromeos_read_only">Nid oes modd cadw\'r ffeil yn y lleoliad yma. Bydd angen ei symud i\'r fan Chwarae ffeiliau ar gyfer mynediad darllen/ysgrifennu llawn.</string>
<string name="restarting">Yn ailgychwyn...</string>
<string name="cant_open_the_document">Methu agor y ddogfen</string>
<string name="view_only">Gweld yn unig</string>
<string name="edit_copy">Golygu copi</string>
<string name="ask_for_copy">Mae\'r ddogfen hon yn ddarllen-yn-unig. Ydych chi eisiau gwneud copi i\'w olygu?</string>
<string name="use_text">Defnyddio Fformat Testun</string>
<string name="use_odf">Defnyddio Fformat ODF</string>
<string name="ask_for_convert_odf">Cadarnhau Fformat Ffeil</string>
<string name="convert_odf_message">Gall y ddogfen hon gynnwys fformatio neu gynnwys nad oes modd ei chadw yn y fformat ffeil \"Testun\" a ddewiswyd ar hyn o bryd .</string>
</resources>

View File

@ -13,4 +13,13 @@
<string name="storage_permission_required">Lagringstilladelse er nødvendig.</string>
<string name="file_chromeos_read_only">Denne fil kan ikke gemmes her og er skrivebeskyttet. Flyt den til Play-filerne og få fulde læse-/skrive-adgang.</string>
<string name="temp_file_saving_disabled">Denne fil er skrivebeskyttet. Lagring er deaktiveret.</string>
<string name="restarting">Genstarter...</string>
<string name="edit_copy">Rediger en kopi</string>
<string name="use_text">Brug Text-format</string>
<string name="use_odf">Brug ODF-format</string>
<string name="ask_for_convert_odf">Bekræft filformat</string>
<string name="convert_odf_message">Dette dokument kan indeholde formatering eller indhold, som ikke kan gemmes i det valgte filformat \"Text\".</string>
<string name="cant_open_the_document">Dokumentet kunne ikke åbnes</string>
<string name="view_only">Kun visning</string>
<string name="ask_for_copy">Dette dokument er skrivebeskyttet. Ønsker du at lave en kopi til redigering\?</string>
</resources>

View File

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="temp_file_saving_disabled">این فایل فقط برای خواندن است، ذخیره غیر فعال شده است.</string>
<string name="storage_permission_required">دسترسی به حافظه لازم است</string>
<string name="failed_to_load_file">تعیین کردن فایل برای خوانش فایل ناموفق بود</string>
</resources>

View File

@ -14,4 +14,13 @@
<string name="later">Máis tarde</string>
<string name="rate_now">Avaliar agora</string>
<string name="file_chromeos_read_only">Non é posíbel gardar este ficheiro neste sitio, polo que se abre só para lectura. Móvao para os ficheiros de Play para un acceso de lectura e escritura completo.</string>
<string name="restarting">Reiniciando...</string>
<string name="cant_open_the_document">Non se puido abrilo documento</string>
<string name="view_only">Só ver</string>
<string name="ask_for_copy">Este documento é só de lectura. Queres facer unha copia para editala\?</string>
<string name="edit_copy">Editar unha copia</string>
<string name="use_text">Empregar o formato Texto</string>
<string name="use_odf">Empregar o formato ODF</string>
<string name="ask_for_convert_odf">Confirme o formato do ficheiro</string>
<string name="convert_odf_message">Este documento pode conter formato ou contido que non poidan ser gardados no formato de ficheiro seleccionado agora, «Texto».</string>
</resources>

View File

@ -3,14 +3,14 @@
<string name="loading">Učitavanje …</string>
<string name="preparing_for_the_first_start_after_an_update">Priprema za prvo pokretanje nakon aktualiziranja.</string>
<string name="saving">Spremanje …</string>
<string name="cannot_open_file_chooser">Nije moguće otvoriti izbornika datoteka</string>
<string name="cannot_open_file_chooser">Nije moguće otvoriti izbornik datoteka</string>
<string name="failed_to_insert_image">Neuspjelo umetanje slike</string>
<string name="failed_to_load_file">Neuspjelo određivanje datoteke za učitavanje</string>
<string name="storage_permission_required">Potrebna je dozvola za spremište</string>
<string name="temp_file_saving_disabled">Datoteka je zaštićena, spremanje je deaktivirano.</string>
<string name="ask_for_copy">Ovaj dokument je samo-za-čitanje. Želiš li izraditi kopiju za uređivanje\?</string>
<string name="edit_copy">Uredi kopiju</string>
<string name="view_only">Samo prikaz</string>
<string name="view_only">Samo za prikaz</string>
<string name="restarting">Ponovo pokretanje …</string>
<string name="exiting">Zatvaranje …</string>
<string name="rate_our_app_text">Ako ti se sviđa, daj nam 5 zvjezdica na Google Play stranici. Tvoje dobre kritike su nam najbolja motivacija.</string>
@ -19,8 +19,8 @@
<string name="rate_now">Ocijeni sada</string>
<string name="file_chromeos_read_only">Datoteku nije moguće spremiti na ovom mjestu, otvorit će se u zaštićenom stanju. Premjesti je u datoteke za reprodukciju za potpuni pristup čitanju/pisanju.</string>
<string name="cant_open_the_document">Dokument se ne može otvoriti</string>
<string name="convert_odf_message">Ovaj dokument može sadržavati formatiranje ili sadržaj koji se ne može spremiti u trenutačno odabranom tekstualnom formatu datoteke.</string>
<string name="convert_odf_message">Ovaj dokument može sadržavati formatiranje ili sadržaj koji se ne može spremiti u trenutačno odabran datotečni format „Tekst”.</string>
<string name="use_text">Koristi tekstualni format</string>
<string name="ask_for_convert_odf">Potvrdi format datoteke</string>
<string name="ask_for_convert_odf">Potvrdi datotečni format</string>
<string name="use_odf">Koristi ODF format</string>
</resources>

View File

@ -0,0 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="storage_permission_required">Es requirite un permission de immagazinage</string>
</resources>

View File

@ -18,4 +18,9 @@
<string name="edit_copy">Modifica una copia</string>
<string name="view_only">Visualizza solo</string>
<string name="restarting">Riavvio…</string>
<string name="use_text">Utilizza il formato di testo</string>
<string name="use_odf">Utilizza il formato ODF</string>
<string name="ask_for_convert_odf">Conferma il formato del file</string>
<string name="convert_odf_message">Questo documento può contenere formattazione o contenuto che non può essere salvato nel formato di file attualmente selezionato \"testo\".</string>
<string name="cant_open_the_document">Impossibile aprire il documento</string>
</resources>

View File

@ -7,7 +7,19 @@
<string name="view_only">表示のみ</string>
<string name="edit_copy">コピーを編集する</string>
<string name="ask_for_copy">このドキュメントは読み取り専用です。編集用にコピーを作成しますか?</string>
<string name="restarting">再起動しています...</string>
<string name="restarting">再起動...</string>
<string name="exiting">終了しています...</string>
<string name="rate_our_app_title">%1$s をご利用いただきありがとうございます!</string>
<string name="rate_now">今すぐ評価</string>
<string name="later">あとで</string>
<string name="use_text">テキスト形式を使用する</string>
<string name="use_odf">ODF フォーマットを使用する</string>
<string name="cant_open_the_document">ドキュメントを開くことが出来ませんでした</string>
<string name="file_chromeos_read_only">このファイルは選択した場所に保存できません。選択した場所は読み取り専用です。読み書き可能なフォルダを選択してください。</string>
<string name="ask_for_convert_odf">ファイルフォーマットの確認</string>
<string name="convert_odf_message">このドキュメントには、現在選択されているファイル形式「テキスト」で保存できない形式やコンテンツが含まれる場合があります.</string>
<string name="rate_our_app_text">お気に召されましたら、Google Playで5つ星を付与してください。 あなたの素晴らしいレビューは私たちにとって最高のモチベーションとなります。</string>
<string name="failed_to_load_file">ファイルの読み込み先が特定できませんでした</string>
<string name="cannot_open_file_chooser">選択したファイルを開けません</string>
<string name="preparing_for_the_first_start_after_an_update">更新後の開始を準備しています。</string>
</resources>

View File

@ -0,0 +1,2 @@
<?xml version="1.0" encoding="utf-8"?>
<resources></resources>

View File

@ -0,0 +1,23 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="temp_file_saving_disabled">이 파일은 읽기 전용이며, 저장이 비활성화됩니다.</string>
<string name="file_chromeos_read_only">이 파일은 이 위치에 저장할 수 없으며, 읽기 전용으로 열립니다. 전체 읽기/쓰기 액세스를 위해 재생 파일로 이동합니다.</string>
<string name="storage_permission_required">저장 권한이 필요합니다</string>
<string name="failed_to_load_file">불러올 파일을 결정하지 못하였습니다</string>
<string name="failed_to_insert_image">이미지를 삽입하지 못했습니다</string>
<string name="cannot_open_file_chooser">파일 선택기를 열 수 없습니다</string>
<string name="preparing_for_the_first_start_after_an_update">업데이트 후 첫 번째 시작을 준비하는 중입니다.</string>
<string name="rate_now">지금 평가</string>
<string name="rate_our_app_title">%1$s를 이용해 주셔서 감사합니다!</string>
<string name="loading">불러오는 중...</string>
<string name="exiting">종료 중...</string>
<string name="restarting">다시 시작하는 중...</string>
<string name="cant_open_the_document">문서를 열 수 없습니다</string>
<string name="view_only">보기 전용</string>
<string name="edit_copy">사본 편집하기</string>
<string name="ask_for_copy">이 문서는 읽기 전용입니다. 편집을 위해 사본을 만드시겠습니까\?</string>
<string name="use_text">텍스트 형식 사용하기</string>
<string name="use_odf">ODF 형식 사용하기</string>
<string name="ask_for_convert_odf">파일 형식 확정하기</string>
<string name="convert_odf_message">이 문서에는 현재 선택한 \"텍스트\" 파일 형식으로 저장할 수 없는 서식 또는 콘텐츠가 포함되어 있을 수 있습니다.</string>
</resources>

View File

@ -1,2 +1,16 @@
<?xml version="1.0" encoding="utf-8"?>
<resources></resources>
<resources>
<string name="edit_copy">ഒരു പകർപ്പ് തിരുത്തുക</string>
<string name="storage_permission_required">സംഭരണ അനുമതി ആവശ്യമാണ്</string>
<string name="failed_to_insert_image">ചിത്രം ചേർക്കുന്നതിൽ പരാജയപ്പെട്ടു</string>
<string name="preparing_for_the_first_start_after_an_update">ഒരു പുതുക്കലിനുശേഷം ആദ്യ തുടക്കത്തിനായി തയ്യാറെടുക്കുന്നു.</string>
<string name="rate_now">ഇപ്പോൾ നിരക്ക് ചെയ്യുക</string>
<string name="later">പിന്നീട്</string>
<string name="rate_our_app_title">%1$s ഉപയോഗിച്ചതിന് നന്ദി!</string>
<string name="exiting">പുറത്തുകടക്കുന്നു...</string>
<string name="restarting">പുനരാരംഭിക്കുന്നു...</string>
<string name="view_only">കാണുക മാത്രം</string>
<string name="cant_open_the_document">പ്രമാണം തുറക്കാനായില്ല</string>
<string name="ask_for_copy">ഈ പ്രമാണം വായിക്കാൻ മാത്രമുള്ളതാണ്. തിരുത്താൻ നിങ്ങൾക്ക് ഒരു പകർപ്പ് നിർമ്മിക്കണോ\?</string>
<string name="rate_our_app_text">നിങ്ങൾക്കിത് ഇഷ്‌ടമാണെങ്കിൽ, ഗൂഗിൾ പ്ലേസ്റ്റോറിൽ ഞങ്ങൾക്ക് 5 നക്ഷത്രങ്ങൾ നൽകുക. നിങ്ങളുടെ നല്ല അവലോകനങ്ങളാണ് ഞങ്ങളുടെ മികച്ച പ്രചോദനം.</string>
</resources>

View File

@ -19,4 +19,8 @@
<string name="view_only">Kun visning</string>
<string name="restarting">Starter på ny…</string>
<string name="cant_open_the_document">Kunne ikke åpne dokumentet</string>
<string name="convert_odf_message">Dette dokumentet kan inneholde formatering eller innhold som ikke kan lagres i det for øyeblikket valgte filformatet \"Tekst\".</string>
<string name="use_odf">Bruk ODF format</string>
<string name="ask_for_convert_odf">Bekreft filformat</string>
<string name="use_text">Bruk tekstformat</string>
</resources>

View File

@ -0,0 +1,25 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="failed_to_load_file">लोड गर्न फाइल निर्धारण गर्न असफल</string>
<string name="temp_file_saving_disabled">यो फाइल पढ्ने मात्र हो, बचत अक्षम छ।</string>
<string name="storage_permission_required">भण्डारण अनुमति आवश्यक छ</string>
<string name="later">पछि</string>
<string name="rate_our_app_text">यदि तपाईंलाई यो मनपर्छ भने, कृपया हामीलाई गुगल प्ले मा ५ ताराहरू दिनुहोस्। तपाईंको राम्रो समीक्षा हाम्रो सबै भन्दा राम्रो प्रेरणा हो।</string>
<string name="loading">लोडहुँदै छ...</string>
<string name="exiting">बाहिर निस्कँदै...</string>
<string name="restarting">पुन: सुरु गर्दै...</string>
<string name="cant_open_the_document">कागजात खोल्न सकेन</string>
<string name="view_only">हेर्नुहोस मात्र</string>
<string name="edit_copy">प्रतिलिपि सम्पादन गर्नुहोस्</string>
<string name="ask_for_copy">यो कागजात पढ्ने मात्र हो। के तपाइँ सम्पादनको लागि प्रतिलिपि बनाउन चाहनुहुन्छ\?</string>
<string name="use_text">शब्द ढाँचा प्रयोग गर्नुहोस्</string>
<string name="use_odf">ODF ढाँचा प्रयोग गर्नुहोस्</string>
<string name="ask_for_convert_odf">फाइल ढाँचा पुष्टि गर्नुहोस्</string>
<string name="convert_odf_message">यस कागजातमा ढाँचा वा सामग्री हुन सक्छ जुन हाल चयन गरिएको फाइल ढाँचा \"पाठ\" मा बचत गर्न सकिँदैन।</string>
<string name="file_chromeos_read_only">यो फाइल यस स्थानमा बचत गर्न सकिँदैन, यसलाई पढ्न-मात्र खोल्दै। पूर्ण पढ्न/लेखन पहुँचको लागि यसलाई प्ले फाइलहरूमा सार्नुहोस्।</string>
<string name="failed_to_insert_image">छवि सम्मिलित गर्न असफल भयो</string>
<string name="rate_now">अहिले मूल्याङ्कन गर्नुहोस्</string>
<string name="rate_our_app_title">%1$s प्रयोग गर्नुभएकोमा धन्यवाद!</string>
<string name="cannot_open_file_chooser">फाइल चयनकर्ता खोल्न सकिँदैन</string>
<string name="preparing_for_the_first_start_after_an_update">अपडेट पछि पहिलो सुरुवातको लागि तयारी गर्दै।</string>
</resources>

View File

@ -15,7 +15,7 @@
<string name="exiting">Afsluiten...</string>
<string name="ask_for_copy">Dit document is alleen-lezen. Wil je een kopie maken om te bewerken\?</string>
<string name="edit_copy">Bewerk een kopie</string>
<string name="view_only">Alleen-lezen</string>
<string name="view_only">Alleen bekijken</string>
<string name="restarting">Opnieuw starten...</string>
<string name="file_chromeos_read_only">Het bestand kan op deze locatie niet worden bewaard; het wordt alleen-lezen geopend. Verplaats het naar Play-bestanden voor volledige lees- en schrijftoegang.</string>
<string name="use_text">Gebruik Tekst-opmaak</string>

View File

@ -0,0 +1,2 @@
<?xml version="1.0" encoding="utf-8"?>
<resources></resources>

View File

@ -1,23 +1,27 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="temp_file_saving_disabled">Este documento é apenas de leitura, salvaguardar está desabilitado.</string>
<string name="temp_file_saving_disabled">Este arquivo é apenas de leitura, salvamento está desabilitado.</string>
<string name="storage_permission_required">Permissão de armazenamento é requirida</string>
<string name="failed_to_load_file">Falha no carregamento do documento</string>
<string name="failed_to_insert_image">Falha ao inserir imagem</string>
<string name="cannot_open_file_chooser">Não foi possível abrir o gestor de arquivos</string>
<string name="failed_to_load_file">Falha para determinar o arquivo a ser carregado</string>
<string name="failed_to_insert_image">Falha para inserir imagem</string>
<string name="cannot_open_file_chooser">Não foi possível abrir o gerenciador de arquivos</string>
<!-- Loading SlideShow Dialog Strings -->
<string name="loading">Carregando...</string>
<string name="saving">Salvando...</string>
<string name="preparing_for_the_first_start_after_an_update">Preparando para iniciar após uma atualização.</string>
<string name="rate_now">Avaliar agora</string>
<string name="rate_our_app_text">Se gostou dele, marque 5 estrelas no Google Play. Sua avaliação positiva é nossa melhor motivação.</string>
<string name="rate_our_app_text">Se você gostar, por favor, dê-nos 5 estrelas no Google Play. Suas boas críticas são nossa melhor motivação.</string>
<string name="rate_our_app_title">Obrigado por usar %1$s!</string>
<string name="later">Mais tarde</string>
<string name="exiting">Saindo...</string>
<string name="file_chromeos_read_only">Este arquivo não pode ser salvo neste local, abrindo-o em só leitura. Mova-o para os arquivos de Play para poder ler e gravar o arquivo.</string>
<string name="file_chromeos_read_only">Este arquivo não pode ser salvo nesse local, abrindo-o como somente leitura. Mova-o para os arquivos Play para ter acesso total de leitura/gravação.</string>
<string name="ask_for_copy">Este documento é somente para leitura. Você quer fazer uma cópia para editá-lo\?</string>
<string name="edit_copy">Editar uma cópia</string>
<string name="view_only">Apenas visualização</string>
<string name="restarting">Reiniciando...</string>
<string name="cant_open_the_document">Não foi possível abrir o documento</string>
<string name="use_odf">Usar Formato ODF</string>
<string name="ask_for_convert_odf">Confirmar formato de arquivo</string>
<string name="use_text">Usar Formato de Texto</string>
<string name="convert_odf_message">Este documento pode conter formatação ou conteúdo que não pode ser salvo no formato de arquivo \"Texto\" atualmente selecionado.</string>
</resources>

View File

@ -9,8 +9,8 @@
<string name="preparing_for_the_first_start_after_an_update">Estamos a preparar o arranque após a atualização.</string>
<string name="saving">A guardar...</string>
<string name="exiting">A sair...</string>
<string name="rate_our_app_text">Se gostou da aplicação, assinale 5 estrelas na Google Play. As avaliações positivas proporcionam motivação.</string>
<string name="rate_our_app_title">Obrigado por utilizar %1$s!</string>
<string name="rate_our_app_text">Se gostou da aplicação, dê-nos 5 estrelas no Google Play. As avaliações positivas são a nossa maior motivação.</string>
<string name="rate_our_app_title">Obrigado por utilizar o %1$s!</string>
<string name="later">Mais tarde</string>
<string name="rate_now">Avaliar agora</string>
<string name="file_chromeos_read_only">O ficheiro não pode ser guardado neste local. Mova-o para os ficheiros \'Play\' de modo a que o possa ler/escrever.</string>

View File

@ -1,2 +1,25 @@
<?xml version="1.0" encoding="utf-8"?>
<resources></resources>
<resources>
<string name="rate_now">Vlerësojeni tani</string>
<string name="cant_open_the_document">Su hap dot dokumenti</string>
<string name="temp_file_saving_disabled">Kjo kartelë është vetëm-lexim, ruajtja është e çaktivizuar.</string>
<string name="file_chromeos_read_only">Kjo kartelë smund të ruhet në këtë vend, po hapet si vetëm-lexim. Për përdorim të plotë lexim/shkrim, kalojeni te kartelat Play.</string>
<string name="storage_permission_required">Lypset leje depozitimi</string>
<string name="failed_to_load_file">Su arrit të përcaktohej kartela për ngarkim</string>
<string name="failed_to_insert_image">Su arrit të futej figurë</string>
<string name="cannot_open_file_chooser">Shapet dot zgjedhës kartelash</string>
<string name="preparing_for_the_first_start_after_an_update">Po përgatitet për nisjen e parë pas një përditësimi.</string>
<string name="later">Më vonë</string>
<string name="rate_our_app_title">Faleminderit që përdorni %1$s!</string>
<string name="rate_our_app_text">Nëse e pëlqeni, jepnani 5 yje në Google Play. Shqyrtimet tuaja dashamirëse janë motivimi ynë më i mirë.</string>
<string name="loading">Po ngarkohet…</string>
<string name="exiting">Po dilet…</string>
<string name="restarting">Po riniset…</string>
<string name="view_only">Vetëm parje</string>
<string name="edit_copy">Përpunoni një kopje</string>
<string name="ask_for_copy">Ky dokument është vetëm-lexim. Doni të bëhet një kopje për përpunim\?</string>
<string name="use_text">Përdor Formatin Tekst</string>
<string name="use_odf">Përdorim Formatin ODF</string>
<string name="ask_for_convert_odf">Ripohoni Format Kartele</string>
<string name="convert_odf_message">Ky dokument mund të përmbajë formatim, ose lëndë që smund të ruhet nën formatin e përzgjedhur aktualisht “Tekst”.</string>
</resources>

View File

@ -20,7 +20,6 @@
<string name="view_only">View only</string>
<string name="edit_copy">Edit a copy</string>
<string name="ask_for_copy">This document is read-only. Do you want to make a copy for editing\?</string>
<string name="use_text">Use Text Format</string>
<string name="use_odf">Use ODF Format</string>
<string name="ask_for_convert_odf">Confirm File Format</string>

Binary file not shown.

View File

@ -3,7 +3,6 @@
srcdir=`dirname $0`
test -n "$srcdir" || srcdir=.
olddir=`pwd`
cd "$srcdir"
function failed {
@ -32,10 +31,22 @@ autoreconf || failed "autoreconf"
scripts/refresh-git-hooks || failed "refresh-git-hooks"
if [ $# -gt 0 ]; then
# If we got parameters, we can execute configure directly.
echo -n "Result: All went OK, running $srcdir/configure "
for arg in "$@"
do
echo -n "'${arg}' "
done
echo "now."
$srcdir/configure "$@" || failed "configure"
exit 0
fi
cat << EOF
Result: All went OK, please run $srcdir/configure (with the appropriate parameters) now.
EOF
cd "$olddir"
# vim:set shiftwidth=4 softtabstop=4 expandtab:

View File

@ -0,0 +1,221 @@
/src/control/ColorPicker.js
/src/control/Control.AlertDialog.js
/src/control/Control.Attribution.js
/src/control/Control.ColumnGroup.ts
/src/control/Control.ColumnHeader.ts
/src/control/Control.Command.js
/src/control/Control.ContextMenu.js
/src/control/Control.CornerGroup.ts
/src/control/Control.CornerHeader.ts
/src/control/Control.DocumentNameInput.js
/src/control/Control.DocumentRepair.js
/src/control/Control.DownloadProgress.js
/src/control/Control.FormulaBar.js
/src/control/Control.FormulaBarJSDialog.js
/src/control/Control.GroupBase.ts
/src/control/Control.Header.ts
/src/control/Control.IdleHandler.ts
/src/control/Control.js
/src/control/Control.JSDialog.js
/src/control/Control.JSDialogBuilder.js
/src/control/Control.LanguageDialog.js
/src/control/Control.Layers.js
/src/control/Control.LokDialog.js
/src/control/Control.Menubar.js
/src/control/Control.MobileBottomBar.js
/src/control/Control.MobileSlide.js
/src/control/Control.MobileTopBar.ts
/src/control/Control.MobileWizard.js
/src/control/Control.MobileWizardBuilder.js
/src/control/Control.MobileWizardPopup.js
/src/control/Control.MobileWizardWindow.js
/src/control/Control.Notebookbar.js
/src/control/Control.NotebookbarBuilder.js
/src/control/Control.NotebookbarCalc.js
/src/control/Control.NotebookbarDraw.js
/src/control/Control.NotebookbarImpress.js
/src/control/Control.NotebookbarWriter.js
/src/control/Control.PartsPreview.js
/src/control/Control.Permission.js
/src/control/Control.PresentationBar.js
/src/control/Control.RowGroup.ts
/src/control/Control.RowHeader.ts
/src/control/Control.Scroll.Annotation.js
/src/control/Control.SearchBar.js
/src/control/Control.Selection.js
/src/control/Control.SheetsBar.js
/src/control/Control.Sidebar.js
/src/control/Control.StatusBar.js
/src/control/Control.Tabs.js
/src/control/Control.Toolbar.js
/src/control/Control.TopToolbar.js
/src/control/Control.UIManager.js
/src/control/Control.UserList.js
/src/control/Control.Zotero.js
/src/control/IFrameDialog.js
/src/control/jsdialog/Util.Dropdown.js
/src/control/jsdialog/Util.FocusCycle.js
/src/control/jsdialog/Util.ModalHelper.js
/src/control/jsdialog/Util.StateChange.ts
/src/control/jsdialog/Widget.Calendar.js
/src/control/jsdialog/Widget.Combobox.js
/src/control/jsdialog/Widget.DrawingArea.js
/src/control/jsdialog/Widget.FormulabarEdit.js
/src/control/jsdialog/Widget.Frame.js
/src/control/jsdialog/Widget.IconView.js
/src/control/jsdialog/Widget.LanguageSelector.js
/src/control/jsdialog/Widget.MenuButton.js
/src/control/jsdialog/Widget.MobileBorderSelector.js
/src/control/jsdialog/Widget.MobileTabControl.js
/src/control/jsdialog/Widget.MultilineEdit.js
/src/control/jsdialog/Widget.Progressbar.js
/src/control/jsdialog/Widget.ScrolledWindow.js
/src/control/jsdialog/Widget.Timefield.js
/src/control/jsdialog/Widget.TreeView.js
/src/control/Parts.js
/src/control/Permission.js
/src/control/Ruler.js
/src/control/Scroll.js
/src/control/Search.js
/src/control/Signing.js
/src/control/Styles.js
/src/control/Toolbar.js
/src/core/Class.js
/src/core/Debug.js
/src/core/Events.js
/src/core/Handler.js
/src/core/Log.js
/src/core/LOUtil.js
/src/core/Matrix.js
/src/core/geometry.ts
/src/core/Rectangle.ts
/src/core/Socket.js
/src/core/Util.js
/src/docstate.js
/src/dom/DomEvent.js
/src/dom/DomEvent.MultiClick.js
/src/dom/DomEvent.Pointer.js
/src/dom/DomUtil.js
/src/dom/Draggable.js
/src/dom/NotebookbarAccessibility.js
/src/dom/NotebookbarAccessibilityDefinitions.js
/src/dom/PosAnimation.js
/src/dom/PosAnimation.Timer.js
/src/errormessages.js
/src/geo/crs/CRS.js
/src/geo/LatLng.js
/src/geo/LatLngBounds.js
/src/geo/projection/Projection.LonLat.js
/src/geometry/Bounds.ts
/src/geometry/LineUtil.js
/src/geometry/Point.ts
/src/geometry/PolyUtil.js
/src/geometry/Transformation.ts
/src/layer/BackgroundColor.js
/src/layer/CalcSplitPanesContext.ts
/src/layer/FeatureGroup.js
/src/layer/FormFieldButtonLayer.js
/src/layer/Layer.js
/src/layer/Layer.Popup.js
/src/layer/LayerGroup.js
/src/layer/marker/A11yTextInput.js
/src/layer/marker/Cursor.ts
/src/layer/marker/DivIcon.js
/src/layer/marker/Icon.Default.js
/src/layer/marker/Icon.js
/src/layer/marker/Marker.Drag.js
/src/layer/marker/Marker.js
/src/layer/marker/Marker.Popup.js
/src/layer/marker/ProgressOverlay.js
/src/layer/marker/TextInput.js
/src/layer/Popup.js
/src/layer/SplitPanesContext.ts
/src/canvas/sections/AutoFillMarkerSection.ts
/src/canvas/sections/CellCursorSection.ts
/src/canvas/sections/CellSelectionHandleSection.ts
/src/canvas/sections/HTMLObjectSection.ts
/src/canvas/sections/CalcValidityDropDownSection.ts
/src/canvas/sections/TextSelectionHandleSection.ts
/src/layer/tile/CalcTileLayer.js
/src/canvas/CanvasSectionContainer.ts
/src/canvas/CanvasSectionObject.ts
/src/canvas/CanvasSectionProps.js
/src/layer/tile/CanvasTileLayer.js
/src/canvas/sections/CommentListSection.ts
/src/canvas/sections/CalcGridSection.ts
/src/canvas/sections/SplitSection.ts
/src/canvas/sections/PixelGridSection.ts
/src/canvas/sections/CommentSection.ts
/src/canvas/sections/ContentControlSection.ts
/src/layer/tile/ImpressTileLayer.js
/src/canvas/sections/ScrollSection.ts
/src/layer/tile/SheetGeometry.ts
/src/layer/tile/SheetSwitch.ts
/src/layer/tile/TileLayer.TableOverlay.js
/src/canvas/sections/TilesSection.ts
/src/layer/tile/WriterTileLayer.js
/src/layer/vector/Canvas.js
/src/layer/vector/CanvasOverlay.ts
/src/layer/vector/CDarkOverlay.ts
/src/layer/vector/CEventsHandler.ts
/src/layer/vector/Circle.js
/src/layer/vector/CircleMarker.js
/src/layer/vector/CLineUtil.ts
/src/layer/vector/CPath.ts
/src/layer/vector/CPointSet.ts
/src/layer/vector/CPolygon.ts
/src/layer/vector/CPolyline.ts
/src/layer/vector/CPolyUtil.ts
/src/layer/vector/CRectangle.ts
/src/layer/vector/CSplitterLine.ts
/src/layer/vector/Path.Drag.js
/src/layer/vector/Path.Drag.Transform.js
/src/layer/vector/Path.js
/src/layer/vector/Path.Popup.js
/src/layer/vector/Path.Transform.Canvas.js
/src/layer/vector/Path.Transform.js
/src/layer/vector/Path.Transform.SVG.js
/src/layer/vector/Path.Transform.SVG.VML.js
/src/layer/vector/Path.Transform.Util.js
/src/layer/vector/Polygon.js
/src/layer/vector/Polyline.js
/src/layer/vector/Rectangle.js
/src/layer/vector/Renderer.js
/src/layer/vector/SplitPanesRenderer.js
/src/layer/vector/SplitPanesSVG.js
/src/layer/vector/SVG.js
/src/layer/vector/SVG.VML.js
/src/layer/vector/SVGGroup.js
/src/main.js
/src/map/anim/Map.PanAnimation.js
/src/map/Clipboard.js
/src/map/handler/Map.DoubleClickZoom.js
/src/map/handler/Map.Drag.js
/src/map/handler/Map.Feedback.js
/src/map/handler/Map.FileInserter.js
/src/map/handler/Map.Keyboard.js
/src/map/handler/Map.KeyboardShortcuts.ts
/src/map/handler/Map.Mouse.js
/src/map/handler/Map.Print.js
/src/map/handler/Map.Scroll.js
/src/map/handler/Map.SlideShow.js
/src/map/handler/Map.StateChanges.js
/src/map/handler/Map.TouchGesture.js
/src/map/handler/Map.VersionBar.js
/src/map/handler/Map.Welcome.js
/src/map/handler/Map.WOPI.js
/src/map/Map.js
/src/UNO/Key.js
/js/global.js
/js/ResizeObserverPolyfill.js
/admin/src/AdminClusterOverview.js
/admin/src/AdminClusterOverviewAbout.js
/admin/src/AdminSocketAnalytics.js
/admin/src/AdminSocketBase.js
/admin/src/AdminSocketHistory.js
/admin/src/AdminSocketLog.js
/admin/src/AdminSocketOverview.js
/admin/src/AdminSocketSettings.js
/admin/src/Base.js
/admin/src/ModalDialogCreator.ts
/admin/src/Util.js

View File

@ -1,12 +1,8 @@
# We only directly edit toolbar.js in dist/
**/js/Autolinker.js
**/js/json2.js
**/js/select2.js
**/js/vex.combined.js
**/js/sanitize-url.js
**/js/l10n.js
**/js/w2ui-1.5.rc1.js
**/src/unocommands.js
**/js/viamapi-client.js
node_modules
dist/src
dist/src

View File

@ -1,26 +1,23 @@
{
"extends": "eslint:recommended",
"extends": [
"eslint:recommended",
"prettier"
],
"rules": {
"camelcase": 2,
"quotes": [2, "single"],
"no-mixed-spaces-and-tabs": [2, "smart-tabs"],
"space-in-parens": 2,
"space-before-blocks": 2,
"keyword-spacing": 2,
"no-lonely-if": 2,
"comma-style": 2,
"indent": [2, "tab", {"VariableDeclarator": 0}],
"no-underscore-dangle": 0,
"no-constant-condition": 0,
"no-multi-spaces": 0,
"strict": 0,
"key-spacing": 0,
"no-shadow": 0,
"no-console": 0,
"no-control-regex": 0,
"no-useless-escape": 0,
"semi": 2,
"no-redeclare": 0
"no-redeclare": 0,
/// Rules that are set to warn will fail in CI but not when building for development:
"no-debugger": 1,
"no-unreachable": 1,
"no-unused-vars": 1,
},
"globals": {
"L": true,
@ -30,6 +27,9 @@
"env": {
"browser": true
},
"parserOptions": {
"ecmaVersion": 2017
},
"overrides": [
{
"files": ["**/*.ts"],

2
browser/.gitignore vendored
View File

@ -8,8 +8,10 @@ index.html
bower.json
component.json
mocha.log
mocha_tests/*.js
tscompile.done
duplication.log
_site
dist/*.js

View File

@ -0,0 +1,8 @@
# We only directly edit toolbar.js in dist/
**/js/Autolinker.js
**/js/select2.js
**/js/sanitize-url.js
**/js/l10n.js
**/src/unocommands.js
node_modules
dist/src

View File

@ -0,0 +1 @@
singleQuote: true

View File

@ -31,14 +31,16 @@ endif
MOCHA_DIR = $(srcdir)/mocha_tests
MOCHA_TS_FILES = $(wildcard $(MOCHA_DIR)/*.ts)
MOCHA_TS_JS_FILES := $(MOCHA_TS_FILES:.ts=.js)
# tsc can report a failure, but still create a .js and a second make attempt will succeed,
# so if this returns an error then delete the target
$(MOCHA_TS_JS_FILES): %.js: %.ts
$(builddir)/node_modules/typescript/bin/tsc $< --outfile $@ --module none --lib dom,es2016 --target ES5
$(builddir)/node_modules/typescript/bin/tsc $< --outfile $@ --module none --lib dom,es2016 --target ES5 || (rm -f $@ && false)
JQUERY_LIGHTNESS_IMAGE_PATH = $(srcdir)/images/jquery-ui-lightness
JQUERY_LIGHTNESS_IMAGES = $(wildcard $(JQUERY_LIGHTNESS_IMAGE_PATH)/*.png)
JQUERY_LIGHTNESS_DIST_IMAGES = $(patsubst $(JQUERY_LIGHTNESS_IMAGE_PATH)/%.png,$(DIST_FOLDER)/images/%.png,$(JQUERY_LIGHTNESS_IMAGES))
JQUERY_MINIFIED_IMAGE_PATH = node_modules/jquery-ui-dist/images
JQUERY_MINIFIED_IMAGE_PATH = node_modules/jquery-ui/themes/base/images
JQUERY_MINIFIED_IMAGES = $(wildcard $(JQUERY_MINIFIED_IMAGE_PATH)/*.png)
JQUERY_MINIFIED_DIST_IMAGES = $(patsubst $(JQUERY_MINIFIED_IMAGE_PATH)/%.png,$(DIST_FOLDER)/images/%.png,$(JQUERY_MINIFIED_IMAGES))
@ -54,8 +56,10 @@ endif
COOL_HTML_SRC = $(shell find $(srcdir)/html -name '*.html')
COOL_HTML_DST = $(patsubst $(srcdir)/html/%.html,$(DIST_FOLDER)/%.html,$(COOL_HTML_SRC))
if ENABLE_WELCOME_MESSAGE
COOL_WELCOME_SRC = $(shell find $(srcdir)/welcome -name '*')
COOL_WELCOME_DST = $(patsubst $(srcdir)/welcome/%,$(DIST_FOLDER)/welcome/%,$(COOL_WELCOME_SRC))
endif
COOL_ADMIN_SRC = $(shell find $(srcdir)/admin -name '*.html' -or -name '*.css' -or -name '*.ttf' -or -name 'OFL.txt' -or -name '*.svg')
COOL_ADMIN_ALL = $(shell find $(srcdir)/admin -name '*')
@ -103,55 +107,48 @@ COOL_ADMIN_JS =\
admin/src/AdminSocketAnalytics.js \
admin/src/AdminSocketSettings.js \
admin/src/AdminSocketHistory.js \
admin/src/AdminSocketLog.js
admin/src/AdminSocketLog.js \
admin/src/AdminClusterOverview.js \
admin/src/AdminClusterOverviewAbout.js
NODE_MODULES_SRC =\
autolinker@3.14.1 \
json-js@1.1.2 \
select2@4.0.13 \
vex-js@4.1.0 \
l10n-for-node@0.0.1 \
@braintree/sanitize-url@4.0.1
@braintree/sanitize-url@6.0.0
COOL_CSS_LST =\
$(builddir)/node_modules/select2/dist/css/select2.css \
$(srcdir)/css/w2ui-1.5.rc1.css \
$(srcdir)/css/leaflet.css \
$(srcdir)/css/leaflet-spinner.css \
$(srcdir)/css/selectionMarkers.css \
$(srcdir)/css/color-palette.css \
$(srcdir)/css/color-palette-dark.css \
$(srcdir)/css/cool.css \
$(srcdir)/css/toolbar.css \
$(srcdir)/css/toolbar-mobile.css \
$(srcdir)/css/partsPreviewControl.css \
$(srcdir)/css/searchControl.css \
$(srcdir)/css/impress.css \
$(srcdir)/css/impress-mobile.css \
$(srcdir)/css/spreadsheet.css \
$(srcdir)/css/writer-mobile.css \
$(srcdir)/css/editor.css \
$(srcdir)/css/writer.css \
$(srcdir)/css/iframedialog.css \
$(builddir)/node_modules/jquery-contextmenu/dist/jquery.contextMenu.css \
$(builddir)/node_modules/vex-js/dist/css/vex.css \
$(builddir)/node_modules/vex-js/dist/css/vex-theme-plain.css \
$(builddir)/node_modules/vex-js/dist/css/vex-theme-bottom-right-corner.css \
$(builddir)/node_modules/smartmenus/dist/css/sm-core-css.css \
$(builddir)/node_modules/smartmenus/dist/css/sm-simple/sm-simple.css \
$(srcdir)/css/welcome.css \
$(srcdir)/css/menubar.css \
$(srcdir)/css/mobilewizard.css \
$(srcdir)/css/jsdialogs.css \
$(srcdir)/css/btns.css \
$(srcdir)/css/notebookbar.css \
$(srcdir)/css/jssidebar.css \
$(srcdir)/css/override-vex.css \
$(srcdir)/css/override-smartmenus.css \
$(srcdir)/css/jquery-ui-lightness.css \
$(srcdir)/css/infobar.css
if ENABLE_FEEDBACK
COOL_CSS_LST += $(srcdir)/css/iframedialog.css \
$(srcdir)/css/welcome.css
endif
COOL_CSS = $(filter %,$(COOL_CSS_LST))
COOL_CSS_DST = $(foreach file,$(COOL_CSS),$(DIST_FOLDER)/$(notdir $(file)))
@ -164,15 +161,15 @@ NODE_MODULES_JS =\
node_modules/jquery/dist/jquery.js \
node_modules/jquery-mousewheel/jquery.mousewheel.js \
node_modules/jquery-contextmenu/dist/jquery.contextMenu.js \
node_modules/jquery-ui-dist/jquery-ui.js \
node_modules/smartmenus/dist/jquery.smartmenus.js
node_modules/jquery-ui/dist/jquery-ui.js \
$(shell find node_modules/jquery-ui/ui/i18n -name '*.js') \
node_modules/smartmenus/dist/jquery.smartmenus.js \
node_modules/fzstd/umd/index.js
COOL_LIBS_JS =\
ResizeObserverPolyfill.js \
Autolinker.js \
json2.js \
select2.js \
vex.combined.js \
sanitize-url.js
if !ENABLE_MOBILEAPP
@ -180,10 +177,6 @@ COOL_LIBS_JS +=\
l10n.js
endif
COOL_LIBS_JS +=\
w2ui-1.5.rc1.js \
viamapi-client.js
NODE_MODULES_JS_SRC = $(patsubst %.js,$(builddir)/%.js,$(NODE_MODULES_JS))
NODE_MODULES_JS_DST = $(patsubst %.js,$(DIST_FOLDER)/%.js,$(NODE_MODULES_JS))
@ -194,6 +187,9 @@ COOL_LIBS_JS_DST = $(patsubst %.js,$(DIST_FOLDER)/%.js,$(COOL_LIBS_JS))
# this list includes both Javascript and Typescript generated files
# in a rather precise order.
COOL_JS_LST =\
src/docstate.js \
src/docstatefunctions.js \
src/docdispatcher.ts \
src/Leaflet.js \
src/errormessages.js \
src/unocommands.js \
@ -201,10 +197,13 @@ COOL_JS_LST =\
src/core/Log.js \
src/core/Util.js \
src/core/LOUtil.js \
src/core/geometry.ts \
src/core/Rectangle.ts \
src/core/Class.js \
src/core/Events.js \
src/core/Socket.js \
src/core/Matrix.js \
src/core/Debug.js \
src/geometry/Point.ts \
src/geometry/Bounds.ts \
src/geometry/Transformation.ts \
@ -212,17 +211,28 @@ COOL_JS_LST =\
src/geo/LatLngBounds.js \
src/geo/projection/Projection.LonLat.js \
src/geo/crs/CRS.js \
src/geo/crs/CRS.Simple.js \
src/control/IFrameDialog.js \
src/map/Map.js \
src/control/Control.IdleHandler.ts \
src/map/Clipboard.js \
src/layer/tile/SheetSwitch.ts \
src/layer/Layer.js \
src/layer/tile/SheetGeometry.ts \
src/layer/tile/CanvasSectionProps.js \
src/layer/tile/CanvasSectionContainer.ts \
src/layer/tile/CommentSection.ts \
src/layer/tile/CommentListSection.ts \
src/layer/tile/TilesSection.ts \
src/layer/tile/AutoFillMarkerSection.ts \
src/canvas/CanvasSectionProps.js \
src/canvas/CanvasSectionContainer.ts \
src/canvas/CanvasSectionObject.ts \
src/canvas/sections/CommentSection.ts \
src/canvas/sections/CommentListSection.ts \
src/canvas/sections/CalcGridSection.ts \
src/canvas/sections/SplitSection.ts \
src/canvas/sections/PixelGridSection.ts \
src/canvas/sections/TilesSection.ts \
src/canvas/sections/AutoFillMarkerSection.ts \
src/canvas/sections/CellCursorSection.ts \
src/canvas/sections/CellSelectionHandleSection.ts \
src/canvas/sections/HTMLObjectSection.ts \
src/canvas/sections/CalcValidityDropDownSection.ts \
src/canvas/sections/TextSelectionHandleSection.ts \
src/layer/vector/CEventsHandler.ts \
src/layer/vector/CPointSet.ts \
src/layer/vector/CPath.ts \
@ -234,21 +244,20 @@ COOL_JS_LST =\
src/layer/vector/CSplitterLine.ts \
src/layer/marker/Cursor.ts \
src/layer/vector/CanvasOverlay.ts \
src/layer/tile/ScrollSection.ts \
src/canvas/sections/ScrollSection.ts \
src/layer/tile/CanvasTileLayer.js \
src/layer/SplitPanesContext.ts \
src/layer/vector/CDarkOverlay.ts \
src/layer/SplitPanesContext.ts \
src/layer/CalcSplitPanesContext.ts \
src/layer/vector/CDarkOverlay.ts \
src/layer/tile/TileLayer.TableOverlay.js \
src/layer/tile/WriterTileLayer.js \
src/layer/tile/ImpressTileLayer.js \
src/layer/tile/CalcTileLayer.js \
src/canvas/sections/ContentControlSection.ts \
src/layer/BackgroundColor.js \
src/layer/ImageOverlay.js \
src/layer/marker/ProgressOverlay.js \
src/layer/marker/TextInput.js \
src/layer/marker/A11yTextInput.js \
src/layer/marker/Icon.js \
src/layer/marker/Icon.Default.js \
src/layer/marker/Marker.js \
@ -285,13 +294,18 @@ COOL_JS_LST =\
src/layer/FormFieldButtonLayer.js \
src/dom/DomEvent.js \
src/dom/Draggable.js \
src/dom/NotebookbarAccessibilityDefinitions.js \
src/dom/NotebookbarAccessibility.js \
src/map/handler/Map.Drag.js \
src/map/handler/Map.Scroll.js \
src/map/handler/Map.DoubleClickZoom.js \
src/dom/DomEvent.Pointer.js \
src/map/handler/Map.TouchGesture.js \
src/map/handler/Map.BoxZoom.js \
src/map/handler/Map.Keyboard.js \
src/map/handler/Map.KeyboardShortcuts.ts \
src/map/handler/Map.Welcome.js \
src/map/handler/Map.Feedback.js \
src/map/handler/Map.VersionBar.js \
src/dom/DomEvent.MultiClick.js \
src/map/handler/Map.Mouse.js \
src/map/handler/Map.Print.js \
@ -300,18 +314,19 @@ COOL_JS_LST =\
src/map/handler/Map.StateChanges.js \
src/map/handler/Map.WOPI.js \
src/layer/marker/Marker.Drag.js \
src/control/Control.AboutDialog.ts \
src/control/Control.Toolbar.js \
src/control/Control.Command.js \
src/control/Control.js \
src/control/Control.PartsPreview.js \
src/control/Control.GroupBase.js \
src/control/Control.CornerGroup.js \
src/control/Control.RowGroup.js \
src/control/Control.ColumnGroup.js \
src/control/Control.CornerHeader.js \
src/control/Control.Header.js \
src/control/Control.ColumnHeader.js \
src/control/Control.RowHeader.js \
src/control/Control.GroupBase.ts \
src/control/Control.CornerGroup.ts \
src/control/Control.RowGroup.ts \
src/control/Control.ColumnGroup.ts \
src/control/Control.CornerHeader.ts \
src/control/Control.Header.ts \
src/control/Control.ColumnHeader.ts \
src/control/Control.RowHeader.ts \
src/control/Control.DocumentRepair.js \
src/control/Control.DownloadProgress.js \
src/control/Control.ContextMenu.js \
@ -321,25 +336,50 @@ COOL_JS_LST =\
src/control/Control.Selection.js \
src/control/Control.LokDialog.js \
src/control/Control.AlertDialog.js \
src/control/Control.Infobar.js src/control/ColorPicker.js \
src/control/ColorPicker.ts \
src/control/jsdialog/Component.Toolbar.ts \
src/control/jsdialog/Definitions.Menu.ts \
src/control/jsdialog/Util.Dropdown.js \
src/control/jsdialog/Util.Events.ts \
src/control/jsdialog/Util.FocusCycle.js \
src/control/jsdialog/Util.MessageRouter.ts \
src/control/jsdialog/Util.ModalHelper.js \
src/control/jsdialog/Util.ScrollableBar.ts \
src/control/jsdialog/Util.SnackbarController.ts \
src/control/jsdialog/Util.StateChange.ts \
src/control/jsdialog/Widget.Calendar.js \
src/control/jsdialog/Widget.ColorPicker.ts \
src/control/jsdialog/Widget.Combobox.js \
src/control/jsdialog/Widget.Containers.ts \
src/control/jsdialog/Widget.DrawingArea.js \
src/control/jsdialog/Widget.FormulabarEdit.js \
src/control/jsdialog/Widget.Frame.js \
src/control/jsdialog/Widget.HTMLContent.ts \
src/control/jsdialog/Widget.IconView.js \
src/control/jsdialog/Widget.MenuButton.js \
src/control/jsdialog/Widget.MobileBorderSelector.js \
src/control/jsdialog/Widget.MobileTabControl.js \
src/control/jsdialog/Widget.MultilineEdit.js \
src/control/jsdialog/Widget.Progressbar.js \
src/control/jsdialog/Widget.ScrolledWindow.js \
src/control/jsdialog/Widget.Timefield.js \
src/control/jsdialog/Widget.TreeView.js \
src/control/Control.JSDialog.js \
src/control/Control.JSDialogBuilder.js \
src/control/Control.MobileWizardBuilder.js \
src/control/Control.MobileWizardWindow.js \
src/control/Control.MobileWizard.js \
src/control/Control.MobileWizardPopup.js \
src/control/Control.LanguageDialog.js \
src/control/Control.Attribution.js \
src/control/Control.MobileSlide.js \
src/control/Control.Scale.js \
src/control/Control.StatusBar.js \
src/control/Control.SearchBar.js \
src/control/Control.MobileTopBar.js \
src/control/Control.MobileSearchBar.ts \
src/control/Control.MobileTopBar.ts \
src/control/Control.MobileBottomBar.js \
src/control/Control.UserList.js \
src/control/Control.FormulaBar.js \
src/control/Control.UserList.ts \
src/control/Control.FormulaBarJSDialog.js \
src/control/Control.SheetsBar.js \
src/control/Control.PresentationBar.js \
src/control/Control.SigningBar.js \
src/control/Control.TopToolbar.js \
src/control/Control.UIManager.js \
src/control/Control.DocumentNameInput.js \
@ -349,9 +389,13 @@ COOL_JS_LST =\
src/control/Control.NotebookbarImpress.js \
src/control/Control.NotebookbarDraw.js \
src/control/Control.NotebookbarBuilder.js \
src/control/Control.AutofilterDropdown.js \
src/control/Control.Layers.js \
src/control/Control.Sidebar.js \
src/control/AutoCompletePopup.ts \
src/control/Control.Mention.ts \
src/control/Control.FormulaUsagePopup.ts \
src/control/Control.FormulaAutoCompletePopup.ts \
src/control/Control.Zotero.js \
src/control/Search.js \
src/control/Permission.js \
src/control/Toolbar.js \
@ -360,21 +404,11 @@ COOL_JS_LST =\
src/control/Scroll.js \
src/control/Styles.js \
src/control/Ruler.js \
src/control/VRuler.ts \
src/dom/PosAnimation.js \
src/map/anim/Map.PanAnimation.js \
src/dom/PosAnimation.Timer.js \
src/control/Control.Scroll.Annotation.js \
src/layer/marker/DivOverlay.js
if ENABLE_FEEDBACK
COOL_JS_LST +=\
src/control/IFrameDialog.js \
src/map/handler/Map.Infobar.js \
src/map/handler/Map.Feedback.js \
src/map/handler/Map.Welcome.js
endif
COOL_JS_LST +=\
src/main.js
COOL_JS_WEBORDER = $(filter %,$(COOL_JS_LST))
@ -396,6 +430,8 @@ INTERMEDIATE_DIR ?= $(if $(IS_SEPARATE),$(abs_builddir)/debug,$(abs_builddir)/re
EXTRA_DIST = $(shell find . -type f -not -path './.git/*' -not -path './node_modules/*' | sed 's/.\///')
COOL_JS_BUNDLE = $(patsubst %.ts,%.js,$(COOL_JS_WEBORDER))
define bundle_cool
$(if $(IS_SEPARATE),\
@touch $@,
@ -405,7 +441,7 @@ define bundle_cool
-DMOBILEAPPNAME="$(APP_NAME)" \
-DVERSION=$(COOL_VERSION) \
-DCOPYRIGHT=$(srcdir)/src/copyright.js \
-DCOOL_JS=$(subst $(SPACE),$(COMMA),$(patsubst src/%.ts,$(DIST_FOLDER)/src/%.js,$(COOL_JS_WEBORDER))) \
-DCOOL_JS=$(subst $(SPACE),$(COMMA),$(patsubst src/%,$(DIST_FOLDER)/src/%,$(COOL_JS_BUNDLE))) \
$(srcdir)/cool-src.js.m4 > $@)
endef
@ -434,6 +470,7 @@ define bundle_all
-DCOOL_JS=$(INTERMEDIATE_DIR)/cool-src.js \
$(srcdir)/bundle.js.m4 > $(INTERMEDIATE_DIR)/bundle.js
@$(NODE) node_modules/uglify-js/bin/uglifyjs \
-O max_line_len=100 \
$(INTERMEDIATE_DIR)/bundle.js \
--output $@)
endef
@ -450,6 +487,21 @@ define global_file
@$(NODE) node_modules/uglify-js/bin/uglifyjs $< --output $@)
endef
define run_eslint_check
@$(NODE) node_modules/eslint/bin/eslint.js \
--resolve-plugins-relative-to $(abs_builddir) \
--ignore-path $(srcdir)/.eslintignore \
--config .eslintrc \
--no-eslintrc $(1)
endef
define run_prettier_check
@$(NODE) node_modules/.bin/prettier \
--ignore-path $(srcdir)/.prettierignore \
--ignore-path $(srcdir)/.beforeprettier \
$(1)
endef
.PHONY: build-cool
all-local: build-cool
@ -458,6 +510,29 @@ if !ENABLE_MOBILEAPP
ADMIN_BUNDLE = $(DIST_FOLDER)/admin-bundle.js
endif
if ENABLE_WASM
$(DIST_FOLDER)/online%: $(abs_top_builddir)/wasm/online%
@mkdir -p $(dir $@)
@cp $< $@
$(DIST_FOLDER)/soffice%: $(abs_top_builddir)/wasm/soffice%
@mkdir -p $(dir $@)
@cp $< $@
WASM_FILES= \
$(DIST_FOLDER)/online.js \
$(DIST_FOLDER)/online.wasm \
$(DIST_FOLDER)/online.worker.js \
$(DIST_FOLDER)/soffice.data \
$(DIST_FOLDER)/soffice.data.js.metadata
if ENABLE_DEBUG
WASM_FILES += \
$(DIST_FOLDER)/online.wasm.debug.wasm
endif
endif
$(TYPESCRIPT_JS_DIR)/%.js: $(srcdir)/%.ts
@mkdir -p $(dir $@)
$(builddir)/node_modules/typescript/bin/tsc --outFile $@ $<
@ -476,7 +551,8 @@ build-cool: \
$(DIST_FOLDER)/device-tablet.css \
$(DIST_FOLDER)/device-desktop.css \
$(DIST_FOLDER)/bundle.js \
$(DIST_FOLDER)/cool.html
$(DIST_FOLDER)/cool.html \
$(WASM_FILES)
@echo "build cool completed"
if ENABLE_ANDROIDAPP
@if test -d "$(APP_BRANDING_DIR)" ; then cp -a "$(APP_BRANDING_DIR)/branding.css" "$(APP_BRANDING_DIR)/branding.js" $(DIST_FOLDER)/ ; else touch $(DIST_FOLDER)/branding.css ; fi
@ -498,17 +574,18 @@ $(DIST_FOLDER)/admin-bundle.js: $(COOL_ADMIN_DST) \
$(INTERMEDIATE_DIR)/admin-src.js: $(COOL_ADMIN_TS_JS) $(COOL_ADMIN_JS)
@mkdir -p $(dir $@)
@echo "Checking for admin JS errors..."
@$(NODE) node_modules/eslint/bin/eslint.js --resolve-plugins-relative-to $(abs_builddir) --ignore-path $(srcdir)/.eslintignore --config $(srcdir)/.eslintrc --no-eslintrc $(srcdir)/admin/src
$(call run_eslint_check,--ignore-pattern $(COOL_ADMIN_TS_JS) $(srcdir)/admin/src)
$(call run_prettier_check,--debug-check $(srcdir)/admin/src)
@awk 'FNR == 1 {print ""} 1' $(COOL_ADMIN_TS_JS) $(patsubst %.js,$(srcdir)/%.js,$(COOL_ADMIN_JS)) > $@
$(INTERMEDIATE_DIR)/cool-src.js: tscompile.done $(call prereq_cool) $(COOL_JS_DST)
$(INTERMEDIATE_DIR)/cool-src.js: tscompile.done $(call prereq_cool) $(COOL_JS_DST) $(abs_top_srcdir)/scripts/unocommands.py
@mkdir -p $(dir $@)
$(abs_top_srcdir)/scripts/unocommands.py --check $(abs_top_srcdir)
@printf "Checking for obsolete JS build intermediates in this makefile... "
@if ! test "z$(COOL_ASSERT_INTERSECT)" == "z"; then echo; echo "Error: please remove obsolete files:"; echo "$(COOL_ASSERT_INTERSECT)"; exit 1; else echo "clean"; fi
@echo "Checking for cool JS errors..."
@$(NODE) node_modules/eslint/bin/eslint.js $(srcdir)/src --resolve-plugins-relative-to $(abs_builddir) \
$(srcdir)/js --ignore-path $(srcdir)/.eslintignore --no-eslintrc --config $(srcdir)/.eslintrc
$(call run_eslint_check,$(srcdir)/src $(srcdir)/js)
$(call run_prettier_check,--debug-check $(srcdir)/src $(srcdir)/js/global.js)
@echo "Bundling cool..."
$(call bundle_cool)
@ -534,10 +611,11 @@ $(DIST_FOLDER)/cool.html: $(srcdir)/html/cool.html.m4 \
$(DIST_FOLDER)/bundle.js
@echo "Generating cool.html..."
m4 -PE -DBUNDLE=$(IS_BUNDLE) \
-DENABLE_FEEDBACK=$(ENABLE_FEEDBACK) \
-DIOSAPP=$(ENABLE_IOSAPP) \
-DGTKAPP=$(ENABLE_GTKAPP) \
-DDEBUG=$(ENABLE_DEBUG) \
-DANDROIDAPP=$(ENABLE_ANDROIDAPP) \
-DEMSCRIPTENAPP=$(ENABLE_EMSCRIPTENAPP) \
-DMOBILEAPPNAME="$(APP_NAME)" \
-DCOOL_CSS="$(subst $(SPACE),$(COMMA),$(COOL_CSS_M4))" \
-DGLOBAL_JS="$(DIST_FOLDER)/global.js" \
@ -583,6 +661,7 @@ $(DIST_FOLDER)/%.html: $(srcdir)/html/%.html
`ln -sf $(abs_srcdir)/$< $@`; \
fi
if ENABLE_WELCOME_MESSAGE
$(DIST_FOLDER)/welcome/%: $(srcdir)/welcome/%
@mkdir -p $(dir $@)
@if test -z '$(ENABLE_BROWSERSYNC)'; then \
@ -590,7 +669,7 @@ $(DIST_FOLDER)/welcome/%: $(srcdir)/welcome/%
else \
`ln -sf $(abs_srcdir)/$< $@`; \
fi
endif
if ENABLE_DEBUG
SourceMap=--allowJs true --sourceMap true --inlineSources true
@ -651,9 +730,25 @@ $(DIST_FOLDER)/admin/%: $(srcdir)/admin/%
@mkdir -p $(dir $@)
@cp $< $@
if ENABLE_DEBUG
install-data-hook:
mkdir -p $(DESTDIR)$(pkgdatadir)/browser; \
cp -a dist/ $(DESTDIR)$(pkgdatadir)/browser/;
else
install-data-hook:
mkdir -p $(DESTDIR)$(pkgdatadir)/browser; \
rsync -a --exclude='src' \
--exclude='debug.html' \
--exclude='framed.doc.html' \
--exclude='framed.html' \
--exclude='load.doc.html' \
--exclude='multidocs.html' \
--exclude='tsconfig.tsbuildinfo' \
dist $(DESTDIR)$(pkgdatadir)/browser/;
if ENABLE_WASM
find $(DESTDIR)$(pkgdatadir)/browser/dist -type f ! -iname "*.png" -exec brotli --force {} \;
endif
endif
libs:
@mkdir -p $(abs_srcdir)/libs
@ -668,21 +763,25 @@ pot:
admin/src/AdminSocketOverview.js \
admin/src/AdminSocketSettings.js \
admin/src/Util.js \
js/w2ui-1.5.rc1.js \
src/control/ColorPicker.js \
js/global.js \
src/control/ColorPicker.ts \
src/control/Control.AboutDialog.ts \
src/control/Control.AlertDialog.js \
src/control/Control.Command.js \
src/control/Control.ContextMenu.js \
src/control/Control.DocumentNameInput.js \
src/control/Control.DocumentRepair.js \
src/control/Control.DownloadProgress.js \
src/control/Control.FormulaBar.js \
src/control/Control.FormulaBarJSDialog.js \
src/control/Control.IdleHandler.ts \
src/control/Control.JSDialogBuilder.js \
src/control/Control.LanguageDialog.js \
src/control/Control.Menubar.js \
src/control/Control.MobileBottomBar.js \
src/control/Control.MobileTopBar.js \
src/control/Control.MobileTopBar.ts \
src/control/Control.MobileWizardBuilder.js \
src/control/Control.MobileWizardWindow.js \
src/control/Control.MobileWizard.js \
src/control/Control.Notebookbar.js \
src/control/Control.NotebookbarBuilder.js \
src/control/Control.NotebookbarCalc.js \
@ -692,28 +791,64 @@ pot:
src/control/Control.PartsPreview.js \
src/control/Control.PresentationBar.js \
src/control/Control.Scroll.Annotation.js \
src/control/Control.SearchBar.js \
src/control/Control.MobileSearchBar.ts \
src/control/Control.SheetsBar.js \
src/control/Control.StatusBar.js \
src/control/Control.Tabs.js \
src/control/Control.Toolbar.js \
src/control/Control.TopToolbar.js \
src/control/Control.UserList.js \
src/control/Control.UIManager.js \
src/control/Control.UserList.ts \
src/control/Control.Zotero.js \
src/control/Parts.js \
src/control/Permission.js \
src/control/Ruler.js \
src/control/VRuler.ts \
src/control/Signing.js \
src/control/Toolbar.js \
src/control/jsdialog/Component.Toolbar.ts \
src/control/jsdialog/Definitions.Menu.ts \
src/control/jsdialog/Util.Dropdown.js \
src/control/jsdialog/Util.Events.ts \
src/control/jsdialog/Util.FocusCycle.js \
src/control/jsdialog/Util.MessageRouter.ts \
src/control/jsdialog/Util.ModalHelper.js \
src/control/jsdialog/Util.ScrollableBar.ts \
src/control/jsdialog/Util.SnackbarController.ts \
src/control/jsdialog/Util.StateChange.ts \
src/control/jsdialog/Widget.Calendar.js \
src/control/jsdialog/Widget.ColorPicker.ts \
src/control/jsdialog/Widget.Combobox.js \
src/control/jsdialog/Widget.Containers.ts \
src/control/jsdialog/Widget.DrawingArea.js \
src/control/jsdialog/Widget.FormulabarEdit.js \
src/control/jsdialog/Widget.Frame.js \
src/control/jsdialog/Widget.HTMLContent.ts \
src/control/jsdialog/Widget.IconView.js \
src/control/jsdialog/Widget.MenuButton.js \
src/control/jsdialog/Widget.MobileBorderSelector.js \
src/control/jsdialog/Widget.MobileTabControl.js \
src/control/jsdialog/Widget.MultilineEdit.js \
src/control/jsdialog/Widget.Progressbar.js \
src/control/jsdialog/Widget.ScrolledWindow.js \
src/control/jsdialog/Widget.Timefield.js \
src/control/jsdialog/Widget.TreeView.js \
src/core/Socket.js \
src/core/Debug.js \
src/docstate.js \
src/docstatefunctions.js \
src/docdispatcher.ts \
src/errormessages.js \
src/layer/tile/CanvasTileLayer.js \
src/layer/tile/CommentListSection.ts \
src/layer/tile/CommentSection.ts \
src/canvas/sections/CommentListSection.ts \
src/canvas/sections/CommentSection.ts \
src/main.js \
src/map/Clipboard.js \
src/map/Map.js \
src/map/handler/Map.Feedback.js \
src/map/handler/Map.FileInserter.js \
src/map/handler/Map.Keyboard.js \
src/map/handler/Map.SlideShow.js \
src/map/handler/Map.WOPI.js
html2po --pot --input=html/cool-help.html --output=po/templates/cool-help.pot --duplicates=merge
@ -755,23 +890,50 @@ jsconfig: $(abs_srcdir)/jsconfig.json $(abs_srcdir)/admin/jsconfig.json
build-tests: $(MOCHA_TS_JS_FILES)
@echo "Build of mocha test finished."
eslint: $(COOL_ADMIN_TS_JS)
$(call run_eslint_check,--max-warnings 0 \
--ignore-pattern $(COOL_ADMIN_TS_JS) \
$(srcdir)/src \
$(srcdir)/js \
$(srcdir)/admin/src)
prettier:
$(call run_prettier_check,--check \
$(srcdir)/src \
$(srcdir)/js \
$(srcdir)/admin/src)
prettier-write:
$(call run_prettier_check,--write \
$(srcdir)/src \
$(srcdir)/js \
$(srcdir)/admin/src)
MOCHA_TEST_LOG = "`pwd`/mocha.log"
DUPLICATION_TEST_LOG = "`pwd`/duplication.log"
check-local: $(MOCHA_TS_JS_FILES)
@echo "Running mocha tests..."
@echo > ${MOCHA_TEST_LOG}
@if $(NODE) node_modules/mocha/bin/mocha "$(srcdir)/mocha_tests/**/*.js" 2> ${MOCHA_TEST_LOG} 1>&2; then \
@if npm test 2> ${MOCHA_TEST_LOG} 1>&2; then \
echo "Mocha tests finished successfully. Results in ${MOCHA_TEST_LOG}"; \
else \
cat ${MOCHA_TEST_LOG}; \
exit 1; \
fi
SSL_FLAG = `xmllint --xpath 'string(/config/ssl/enable)' $(abs_top_builddir)/coolwsd.xml`
@echo "Checking code duplication..."
@echo > ${DUPLICATION_TEST_LOG}
@if npm run duplication 2> ${DUPLICATION_TEST_LOG} 1>&2; then \
echo "Code duplication tests finished successfully."; \
else \
cat ${DUPLICATION_TEST_LOG}; \
exit 1; \
fi
# the delay (in miliseconds) between each emulated key stroke for each view
# the delay (in milliseconds) between each emulated key stroke for each view
typing_speed=100
# The duration of the typing (in miliseconds)
typing_duration=30000
# The duration of the typing (in milliseconds)
typing_duration=60000
# By default 6 views are spawned in the document.
single_view="false"
# --inspect flag for the first view. Ideally should be used with single_view=true
@ -786,6 +948,6 @@ perf-test:
echo 'Making fresh copy of the perf-test-edit.odt document'; \
cp $(abs_top_srcdir)/test/data/perf-test.odt $(abs_top_builddir)/test/data/perf-test-edit.odt; \
fi
$(NODE) $(abs_srcdir)/test/bootstrap.js $(SSL_FLAG) $(abs_top_builddir) $(abs_srcdir) $(typing_speed) $(single_view) $(typing_duration) $(node_inspect) ${record_stats}
$(NODE) $(abs_srcdir)/test/bootstrap.js $(abs_top_builddir) $(abs_srcdir) $(typing_speed) $(single_view) $(typing_duration) $(node_inspect) ${record_stats}
# for now - unwinding ts and js deps for different targets is a real pain.
.NOTPARALLEL:

View File

@ -29,7 +29,7 @@ To update any of the dependency, process often goes like this:
1.) Change version of the dependency in package.json
2.) Do an `npm update <package_name>', which fetches the new module from npm registry. Make sure that
only the module that you want to update is updated.
3.) `npm shrinkwrap --dev` to update npm-shrinkwrap.json with newer information. You might see
3.) `npm shrinkwrap --include=dev` to update npm-shrinkwrap.json with newer information. You might see
that this tool updates path convention of tarballs inside node_shrinkwrap/ also, but this
should get corrected in next step.
4.) Do `shrinkpack', which should remove the old tarball, add new one, and make appropriate
@ -217,10 +217,11 @@ Parts (like slides in presentation, or sheets in spreadsheets):
+ [e.part] - if the preview is for a part
+ e.docType
Statusindicator (when the document is loading):
progress (when the document is loading):
- events
map.on('statusindicator', function (e) {}) where:
map.on('progress', function (e) {}) where:
+ e.statusType = 'start' | 'setvalue' | 'finish' | 'coolloaded' | 'alltilesloaded'
+ e.type == 'bg' for a background operation
+ e.value == a value from 0 to 100 indicating the status
if the statusType is 'setvalue
+ 'coolloaded' is fired when the JS code is initialized and the document
@ -387,10 +388,10 @@ x menu-nb-hamburger > ul (calculated from jquery.smartmenus.js)
-------------------------------------------
on the top
-------------------------------------------
1105 dialogs
1105 dialogs, tooltips
1001 mobile-edit-button
1500 mobile-wizard (with class=menuwizard)
1501 toolbar-hamburger (with class=menuwizard-opened)
2000 vex-overlay
2001 vex dialog (vex-content)
2000 JSDialog overlay
2001 JSDialog modal
-------------------------------------------

View File

@ -63,6 +63,7 @@
<th class="has-text-centered"><script>document.write(l10nstrings.strElapsedTime)</script></th>
<th class="has-text-centered"><script>document.write(l10nstrings.strIdleTime)</script></th>
<th class="has-text-centered"><script>document.write(l10nstrings.strModified)</script></th>
<th class="has-text-centered"><script>document.write(l10nstrings.strUploaded)</script></th>
</tr>
</thead>
<tbody id="doclist"></tbody>

View File

@ -1,8 +1,17 @@
/* -*- js-indent-level: 8 -*- */
/*
* Copyright the Collabora Online contributors.
*
* SPDX-License-Identifier: MPL-2.0
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
*/
/* Stringtable for Admin Console User Interface */
var l10nstrings = {};
l10nstrings.strProductName = 'Collabora Online Development Edition';
l10nstrings.strProductName = 'Collabora Online Development Edition (unbranded)';
l10nstrings.strAdminConsole = _('Admin console');
l10nstrings.strSettings = _('Settings');
l10nstrings.strOverview = _('Overview');
@ -26,6 +35,7 @@ l10nstrings.strViewers = _('Views');
l10nstrings.strElapsedTime = _('Elapsed time');
l10nstrings.strIdleTime = _('Idle time');
l10nstrings.strModified = _('Modified');
l10nstrings.strUploaded = _('Uploaded');
l10nstrings.strWopihost = _('WOPI host');
l10nstrings.strKill = _('Kill');
l10nstrings.strGraphs = _('Graphs');
@ -54,7 +64,8 @@ l10nstrings.strLogLevels = _('Log Levels');
l10nstrings.strCloseModal = _('Close');
l10nstrings.strUpdateLogLevels = _('Update Log Levels');
l10nstrings.strVersionInfo = _('Version Information');
l10nstrings.strLicense = _('License');
l10nstrings.strAbout = _('About');
if (module) {
module.exports = l10nstrings;
}

View File

@ -0,0 +1,70 @@
<script>
if (typeof brandProductName !== 'undefined') {l10nstrings.strProductName = brandProductName}
document.title = l10nstrings.strProductName + ' - ' + l10nstrings.strAdminConsole;
var host = (window.location.protocol === 'https:' ? 'wss://': 'ws://') + window.location.host + '%SERVICE_ROOT%/cool/adminws';
if (routeToken) {
host += '?RouteToken=' + routeToken
}
</script>
<div class="is-fullwidth has-text-white" style="height:62px;background-color:#17191E;line-height:50px;">
<a style="margin-left:12px;color:#9D998D;"><script>document.write(l10nstrings.strProductName + ' - ' + l10nstrings.strAdminConsole)</script></a>
<a style="margin-right:12px;color:#9D998D;" id="a-settings-tablet" href="adminSettings.html" class="is-hidden-mobile is-pulled-right add-routetoken"><script>document.write(l10nstrings.strSettings)</script></a>
<div class="dropdown is-hoverable is-right is-pulled-right is-hidden-tablet" style="margin-right:12px;">
<div class="dropdown-trigger">
<button class="button has-text-white" aria-haspopup="true" aria-controls="dropdown-menu1" style="width:40px;background-color:#17191E;border:none;">
<span>&#9776;</span>
<span class="icon is-small">
<i class="fas fa-angle-down" aria-hidden="true"></i>
</span>
</button>
</div>
<div class="dropdown-menu" id="dropdown-menu1" role="menu">
<div class="dropdown-content">
<div class="dropdown-item">
<div class="list is-hoverable" style="height:100%;">
<a id="a-overwiew-mobile" class="list-item add-routetoken" href="admin.html"><script>document.write(l10nstrings.strOverview)</script></a>
<a id="a-analytics-mobile" class="list-item add-routetoken" href="adminAnalytics.html"><script>document.write(l10nstrings.strAnalytics)</script></a>
<a id="a-history-mobile" class="list-item add-routetoken" href="adminHistory.html"><script>document.write(l10nstrings.strHistory)</script></a>
<a id="a-log-mobile" class="list-item add-routetoken" href="adminLog.html"><script>document.write(l10nstrings.strLog)</script></a>
<a id="a-settingsmenu-mobile" class="list-item add-routetoken" href="adminSettings.html"><script>document.write(l10nstrings.strSettings)</script></a>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="columns is-fullwidth" style="height:calc(100vh - 62px);background-color: #F5F5F5;">
<nav class="column is-hidden-mobile is-narrow" id="column-admin-panel" style="width:225px;">
<div class="list is-hoverable" style="height:100%;">
<a class="list-item" id="button-admin-panel-collapse" href="#">&larr;</a>
<a id="a-overwiew-tablet" class="list-item add-routetoken" href="admin.html"><script>document.write(l10nstrings.strOverview)</script></a>
<a id="a-analytics-tablet" class="list-item add-routetoken" href="adminAnalytics.html"><script>document.write(l10nstrings.strAnalytics)</script></a>
<a id="a-history-tablet" class="list-item add-routetoken" href="adminHistory.html"><script>document.write(l10nstrings.strHistory)</script></a>
<a id="a-log-tablet" class="list-item add-routetoken" href="adminLog.html"><script>document.write(l10nstrings.strLog)</script></a>
<a id="a-settingsmenu-tablet" class="list-item add-routetoken" href="adminSettings.html"><script>document.write(l10nstrings.strSettings)</script></a>
</div>
</nav>
<div class="column is-narrow is-hidden-mobile" id="column-admin-panel-expand" style="width:70px;display:none;">
<div class="list is-hoverable">
<a class="list-item" id="button-admin-panel-expand" href="#">&rarr;</a>
</div>
</div>
<div class="column">
<!--%MAIN_CONTENT%-->
</div>
</div>
<script>
if (routeToken) {
// update href attributes
var anchors = document.getElementsByClassName('add-routetoken');
for (var i = 0; i < anchors.length; i++) {
var href = anchors[i].getAttribute('href');
var updatedHref = href + '?RouteToken=' + routeToken;
anchors[i].setAttribute('href', updatedHref);
}
}
</script>

View File

@ -0,0 +1,47 @@
<script>
if (typeof brandProductName !== 'undefined') { l10nstrings.strProductName = brandProductName }
document.title = l10nstrings.strProductName + ' - ' + l10nstrings.strAdminConsole;
var host = (window.location.protocol === 'https:' ? 'wss://' : 'ws://') + window.location.host + '/controller/adminws';
</script>
<style>
.is-rounded {
border-radius: 8px;
}
.is-top-rounded {
border-top-right-radius: 8px;
border-top-left-radius: 8px;
}
/* Set to scroll otherwise tablets can spill over into other cards*/
.card {
overflow: auto;
}
/* Decrease left panel when on laptop */
@media screen and (max-width: 1024px) {
#column-admin-panel {
width: 20% !important;
}
}
/* Hide left panel before reaching mobile (there is no space) */
@media screen and (max-width: 960px) {
#column-admin-panel {
display: none !important;
}
}
</style>
<div class="is-fullwidth has-text-white" style="height:62px;background-color:#17191E;line-height:50px;">
<a style="margin-left:12px;color:#9D998D;">
<script>document.write(l10nstrings.strProductName + ' - ' + l10nstrings.strAdminConsole)</script>
</a>
<a style="margin-right:12px;color:#9D998D;" id="a-settings-tablet" href="adminClusterOverviewAbout.html"
class="is-hidden-mobile is-pulled-right">
<script>document.write(l10nstrings.strAbout)</script>
</a>
</div>
<!--%MAIN_CONTENT%-->

View File

@ -0,0 +1,21 @@
<main>
<div class="columns is-fullwidth" style="background-color: #F5F5F5; min-height: 100vh">
<nav class="column is-hidden-mobile is-narrow" id="column-admin-panel" style="width:350px;">
<div class="list is-hoverable" style="height:100%;">
<a class="list-item" id="button-admin-panel-collapse" href="#">&larr; Pod</a>
</div>
</nav>
<div class="column is-narrow is-hidden-mobile" id="column-admin-panel-expand" style="width:70px;display:none;">
<div class="list is-hoverable">
<a class="list-item" id="button-admin-panel-expand" href="#">&rarr;</a>
</div>
</div>
<div class="column">
<div class="tile is-ancestor" id="tileAncestor" style="flex-wrap: wrap;">
<script>
Admin.ClusterOverview(host, '%ROUTE_TOKEN%');
</script>
</div>
</div>
</div>
</main>

View File

@ -0,0 +1,43 @@
<main>
<div class="columns is-fullwidth" style="background-color: #F5F5F5; min-height: 100vh">
<div class="container">
<script>
Admin.ClusterOverviewAbout(host, '%ROUTE_TOKEN%');
var aboutButton = document.getElementById('a-settings-tablet');
if (aboutButton) {
aboutButton.setAttribute('href', 'adminClusterOverview.html');
aboutButton.innerHTML = l10nstrings.strOverview;
}
</script>
<div class="columns">
<div class="column">
<h3 class="title is-3">
<script>document.write(l10nstrings.strAbout)</script>
</h3>
</div>
</div>
<div class="tabs">
<ul>
<li id="tab-documents-open" class="is-active"><a id="button-licenseview" href="#licenseview">
COOL Controller
<script>document.write(l10nstrings.strLicense)</script>
</a></li>
</ul>
</div>
<div id="licenseview" class="mtabs">
<p>
<div id="license-content"></div>
</p>
</div>
</div>
</div>
</main>
<script>
window.location.href += '#licenseview';
document.getElementById('button-licenseview').onclick = function (e) {
document.getElementById('button-licenseview').parentNode.className = 'is-active';
}
</script>

View File

@ -1,9 +1,21 @@
<main>
<div class="container">
<script>Admin.Settings(host);</script>
<div class="columns">
<div class="column">
<h3 class="title is-3"><script>document.write(l10nstrings.strSettings)</script></h3>
</div>
<div class="column has-text-right">
<button id="btnShutdown" type="submit" class="button is-danger" style="min-width:140px; margin-inline-end:14px"><script>document.write(l10nstrings.strShutdown)</script></button>
</div>
</div>
<div class="tabs">
<ul>
<li id="tab-documents-open" class="is-active"><a id="button-opview" href="#opview"><script>document.write(l10nstrings.strSettings)</script></a></li>
<li id="tab-users-online"><a id="button-versionview" href="#versionview"><script>document.write(l10nstrings.strVersionInfo)</script></a></li>
</ul>
</div>
<div id="opview" class="mtabs">
<form id="admin_settings">
<div class="field is-horizontal">
<div class="field-label is-normal">
@ -119,26 +131,37 @@
</div>
</div>
</form>
<div class="section">
<h4><script>document.write(l10nstrings.strVersionInfo)</script></h4>
</div>
<div id="versionview" class="mtabs">
<p>
<h5><b>COOLWSD</b></h5>
<div id="coolwsd-version"></div>
<div id="coolwsd-buildconfig"></div>
</p>
<p>
<h5><b>LOKit</b></h5>
<div id="lokit-version"></div>
<div id="lokit-buildconfig"></div>
</p>
</div>
<div class="section is-fullwidth has-text-right">
<button id="btnShutdown" type="submit" class="button is-danger" style="min-width:140px;"><script>document.write(l10nstrings.strShutdown)</script></button>
</div>
</div>
</div>
</div>
</main>
<script>
document.getElementById('a-settings-mobile').classList.add('is-active');
document.getElementById('a-settingsmenu-mobile').classList.add('is-active');
document.getElementById('a-settingsmenu-tablet').classList.add('is-active');
window.location.href += '#opview';
// Switching tabs is done by css rules. We will set "is-active" classes here.
document.getElementById('button-versionview').onclick = function() {
document.getElementById('button-versionview').parentNode.className = 'is-active';
document.getElementById('button-opview').parentNode.className = '';
}
document.getElementById('button-opview').onclick = function() {
document.getElementById('button-opview').parentNode.className = 'is-active';
document.getElementById('button-versionview').parentNode.className = '';
}
</script>

View File

@ -11,7 +11,15 @@
<title>Collabora Online - Admin console</title>
<link rel=StyleSheet href="%SERVICE_ROOT%/browser/%VERSION%/admin/css/bulma.min.css" type="text/css" />
<script src="%SERVICE_ROOT%/browser/%VERSION%/admin-bundle.js"></script>
<script>
var params = new URLSearchParams(window.location.search);
var routeToken = params.get('RouteToken');
var adminBundleSrc = '%SERVICE_ROOT%/browser/%VERSION%/admin-bundle.js';
if (routeToken) {
adminBundleSrc += '?RouteToken=' + routeToken
}
document.write('<script src="' + adminBundleSrc + '"><\/script>');
</script>
<style>
@font-face {
@ -52,74 +60,27 @@
</head>
<body>
<!--%BRANDING_JS%-->
<script>
if (typeof brandProductName !== 'undefined') {l10nstrings.strProductName = brandProductName}
document.title = l10nstrings.strProductName + ' - ' + l10nstrings.strAdminConsole;
var host = (window.location.protocol === 'https:' ? 'wss://': 'ws://') + window.location.host + '%SERVICE_ROOT%/cool/adminws/';
</script>
<div class="is-fullwidth has-text-white" style="height:62px;background-color:#17191E;line-height:50px;">
<a style="margin-left:12px;color:#9D998D;"><script>document.write(l10nstrings.strProductName + ' - ' + l10nstrings.strAdminConsole)</script></a>
<a style="margin-right:12px;color:#9D998D;" id="a-settings-tablet" href="adminSettings.html" class="is-hidden-mobile is-pulled-right"><script>document.write(l10nstrings.strSettings)</script></a>
<div class="dropdown is-hoverable is-right is-pulled-right is-hidden-tablet" style="margin-right:12px;">
<div class="dropdown-trigger">
<button class="button has-text-white" aria-haspopup="true" aria-controls="dropdown-menu1" style="width:40px;background-color:#17191E;border:none;">
<span>&#9776;</span>
<span class="icon is-small">
<i class="fas fa-angle-down" aria-hidden="true"></i>
</span>
</button>
</div>
<div class="dropdown-menu" id="dropdown-menu1" role="menu">
<div class="dropdown-content">
<div class="dropdown-item">
<div class="list is-hoverable" style="height:100%;">
<a id="a-overwiew-mobile" class="list-item" href="admin.html"><script>document.write(l10nstrings.strOverview)</script></a>
<a id="a-analytics-mobile" class="list-item" href="adminAnalytics.html"><script>document.write(l10nstrings.strAnalytics)</script></a>
<a id="a-history-mobile" class="list-item" href="adminHistory.html"><script>document.write(l10nstrings.strHistory)</script></a>
<a id="a-log-mobile" class="list-item" href="adminLog.html"><script>document.write(l10nstrings.strLog)</script></a>
<a id="a-settings-mobile" class="list-item" href="adminSettings.html"><script>document.write(l10nstrings.strSettings)</script></a>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="columns is-fullwidth" style="height:calc(100vh - 70px);background-color: #F5F5F5;">
<nav class="column is-hidden-mobile is-narrow" id="column-admin-panel" style="width:225px;">
<div class="list is-hoverable" style="height:100%;">
<a class="list-item" id="button-admin-panel-collapse" href="#">&larr;</a>
<a id="a-overwiew-tablet" class="list-item" href="admin.html"><script>document.write(l10nstrings.strOverview)</script></a>
<a id="a-analytics-tablet" class="list-item" href="adminAnalytics.html"><script>document.write(l10nstrings.strAnalytics)</script></a>
<a id="a-history-tablet" class="list-item" href="adminHistory.html"><script>document.write(l10nstrings.strHistory)</script></a>
<a id="a-log-tablet" class="list-item" href="adminLog.html"><script>document.write(l10nstrings.strLog)</script></a>
</div>
</nav>
<div class="column is-narrow is-hidden-mobile" id="column-admin-panel-expand" style="width:70px;display:none;">
<div class="list is-hoverable">
<a class="list-item" id="button-admin-panel-expand" href="#">&rarr;</a>
</div>
</div>
<div class="column">
<!--%MAIN_CONTENT%-->
</div>
</div>
<script>
window.addEventListener('load', function() {
document.getElementById('button-admin-panel-expand').onclick = function() {
document.getElementById('column-admin-panel').style.display = 'block';
document.getElementById('column-admin-panel-expand').style.display = 'none';
};
document.getElementById('button-admin-panel-collapse').onclick = function() {
document.getElementById('column-admin-panel').style.display = 'none';
document.getElementById('column-admin-panel-expand').style.display = 'block';
};
});
</script>
<!--%BODY%-->
<!--%FOOTER%-->
<script>
window.jwtToken = '%JWT_TOKEN%';
window.addEventListener('load', function () {
var buttonAdminPanelExpand = document.getElementById('button-admin-panel-expand');
if (buttonAdminPanelExpand) {
buttonAdminPanelExpand.onclick = function () {
document.getElementById('column-admin-panel').style.display = 'block';
document.getElementById('column-admin-panel-expand').style.display = 'none';
};
}
var buttonAdminPanelCollapse = document.getElementById('button-admin-panel-collapse');
if (buttonAdminPanelCollapse) {
buttonAdminPanelCollapse.onclick = function () {
document.getElementById('column-admin-panel').style.display = 'none';
document.getElementById('column-admin-panel-expand').style.display = 'block';
};
}
});
</script>
</body>
</html>
</html>

View File

@ -1,18 +1,20 @@
/* -*- js-indent-level: 8 -*- */
/*
* Copyright the Collabora Online contributors.
*
* SPDX-License-Identifier: MPL-2.0
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
*/
// CSS requires
require('vex-js/dist/css/vex.css');
require('vex-js/dist/css/vex-theme-plain.css');
var $ = require('jquery');
global.$ = global.jQuery = $;
require('json-js/json2');
require('l10n-for-node');
var vex = require('vex-js/dist/js/vex.combined.js');
vex.defaultOptions.className = 'vex-theme-plain';
global.vex = vex;
global._ = function (string) {
return string.toLocaleString();
};
@ -20,4 +22,4 @@ global._ = function (string) {
global.l10nstrings = require('./admin.strings.js');
global.d3 = require('d3');
global.Admin = require('admin-src.js');
global.Admin = require('admin-src.js');

View File

@ -0,0 +1,585 @@
/* -*- js-indent-level: 8 -*- */
/*
* Copyright the Collabora Online contributors.
*
* SPDX-License-Identifier: MPL-2.0
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
*/
/*
* Socket to be intialized on opening the cluster overview page in Admin console
*/
/* global DlgLoading _ AdminSocketBase Admin d3 Map Util DlgYesNo */
var AdminClusterOverview = AdminSocketBase.extend({
constructor: function (host, routeToken) {
this.base(host);
this.routeToken = routeToken;
},
_statsData: new Map(),
_size: 20,
_statIntervalId: 0,
_graphDimensions: {
x: 756,
y: 115,
},
_graphMargins: {
top: 10,
right: 0,
bottom: 10,
left: 80
},
_interval: 5000,
addStat: function (serverId) {
var offset = 0;
var memData = [];
var cpuData = [];
for (var i = 0; i < this._size; i++) {
memData.unshift({ time: -(offset), value: 0 });
cpuData.unshift({ time: -(offset), value: 0 });
offset += this._interval;
}
this._statsData.set(serverId, {
mem: memData,
cpu: cpuData,
});
},
updateStat: function (serverId, mem, cpuUsage) {
var stat = this._statsData.get(serverId);
if (serverId) {
for (var i = stat.mem.length - 1; i > 0; i--) {
stat.mem[i].time = stat.mem[i - 1].time;
stat.cpu[i].time = stat.cpu[i - 1].time;
}
stat.mem.push({ time: 0, value: mem });
stat.cpu.push({ time: 0, value: cpuUsage });
if (stat.mem.length > this._size) {
stat.mem.shift();
}
if (stat.cpu.length > this._size) {
stat.cpu.shift();
}
}
},
deleteStat: function (serverId) {
this._statsData.delete(serverId);
},
createCard: function (server) {
var card = document.createElement('div');
card.className = 'tile is-child card is-rounded';
card.id = 'card-' + server.serverId;
var cardHeader = document.createElement('header');
cardHeader.className = 'card-header is-top-rounded';
var cardTitle = document.createElement('p');
cardTitle.className = 'card-header-title';
if (server.podname) {
cardTitle.textContent = server.podname;
} else {
console.warn('podname doesnot exist, using serverId instead of podname on card title');
cardTitle.textContent = server.serverId;
}
cardHeader.appendChild(cardTitle);
card.appendChild(cardHeader);
var cardContent = document.createElement('div');
cardContent.className = 'card-content';
var mainTile = document.createElement('div');
mainTile.className = 'tile is-fullwidth is-vertical';
var cpuSubTitle = document.createElement('p');
cpuSubTitle.className = 'tile is-fullwidth subtitle';
cpuSubTitle.textContent = _('CPU History');
cpuSubTitle.setAttribute('style', 'margin-bottom: 0rem !important');
mainTile.appendChild(cpuSubTitle);
var data = this._statsData.get(server.serverId);
var cpuGraph = this.createGraph('cpu', data.cpu, server.cpu);
mainTile.appendChild(cpuGraph);
var memorySubTitle = document.createElement('p');
memorySubTitle.className = 'tile is-fullwidth subtitle';
memorySubTitle.textContent = _('Memory History');
memorySubTitle.setAttribute('style', 'margin-bottom: 0rem !important; margin-top:1.5rem');
mainTile.appendChild(memorySubTitle);
var memGraph = this.createGraph('mem', data.mem, Util.humanizeMem(server.memory));
mainTile.appendChild(memGraph);
var horizontalTile = document.createElement('div');
horizontalTile.className = 'tile is-fullwidth';
var routeTokenTile = this.createTile(_('RouteToken'), server.routeToken, 'route');
horizontalTile.appendChild(routeTokenTile);
var serverIdTile = this.createTile(_('ServerId'), server.serverId, 'serverId');
horizontalTile.appendChild(serverIdTile);
cardContent.appendChild(mainTile);
cardContent.appendChild(horizontalTile);
card.appendChild(cardContent);
var parentTile = document.createElement('div');
parentTile.className = 'tile is-parent is-4';
parentTile.appendChild(card);
var tileAncestor = document.getElementById('tileAncestor');
tileAncestor.appendChild(parentTile);
},
updateCardContent: function (cardId, server) {
var card = document.getElementById(cardId);
card.querySelector('#cpu-usage').textContent = server.cpu + '%';
card.querySelector('#mem-con').textContent = Util.humanizeMem(server.memory);
card.querySelector('#route').textContent = server.routeToken;
var data = this._statsData.get(server.serverId);
var memObj = this.getScaleAndLine(data.mem);
var cpuObj = this.getScaleAndLine(data.cpu);
var memSvg = card.querySelector('#mem-graph svg');
d3.select(memSvg).select('path.line')
.datum(data.mem)
.attr('d', memObj.line);
var innerWidth = this._graphDimensions.x - this._graphMargins.left - this._graphMargins.right;
var yAxisMemGenerator = d3.axisLeft(memObj.yScale)
.tickFormat(function (d) {
return Util.humanizeMem(d);
});
yAxisMemGenerator.ticks(2);
yAxisMemGenerator.tickSize(-innerWidth);
var yAxisMem = d3.select(memSvg).select('.y-axis')
.transition()
.duration(500)
.call(yAxisMemGenerator);
yAxisMem.select('.domain').attr('stroke-width', 0);
yAxisMem.selectAll('.tick line').attr('stroke', '#EDEDED');
var cpuSvg = card.querySelector('#cpu-graph svg');
d3.select(cpuSvg).select('path.line')
.datum(data.cpu)
.attr('d', cpuObj.line);
var yAxisCpuGenerator = d3.axisLeft(cpuObj.yScale)
.tickFormat(function (d) {
return d + '%';
});
yAxisCpuGenerator.ticks(2);
yAxisCpuGenerator.tickSize(-innerWidth);
var yAxisCpu = d3.select(cpuSvg).select('.y-axis')
.transition()
.duration(500)
.call(yAxisCpuGenerator);
yAxisCpu.select('.domain').attr('stroke-width', 0);
yAxisCpu.selectAll('.tick line').attr('stroke', '#EDEDED');
},
createGraph: function (graphName, data, currData) {
var tileParent = document.createElement('div');
tileParent.className = 'tile is-parent is-vertical';
var graphChild = document.createElement('div');
graphChild.className = 'tile is-child';
var spanforBullet = document.createElement('span');
spanforBullet.textContent = '● ';
if (graphName == 'cpu') {
var cpuStat = document.createElement('p');
cpuStat.className = 'pb-1 has-text-right';
spanforBullet.style = 'color:blue';
var spanforText = document.createElement('span');
spanforText.id = 'cpu-usage';
spanforText.textContent = currData + '%';
cpuStat.appendChild(spanforBullet);
cpuStat.appendChild(spanforText);
tileParent.appendChild(cpuStat);
} else if (graphName == 'mem') {
var memStat = document.createElement('p');
memStat.className = 'pb-1 has-text-right';
spanforBullet.style = 'color:green';
var spanforText = document.createElement('span');
spanforText.id = 'mem-con';
spanforText.textContent = currData;
memStat.appendChild(spanforBullet);
memStat.appendChild(spanforText);
tileParent.appendChild(memStat);
}
var figure = document.createElement('figure');
figure.id = graphName + '-graph';
var svg = d3.select(figure).append('svg')
.attr('viewBox', '0 0 ' + this._graphDimensions.x + ' ' + this._graphDimensions.y)
.append('g')
.attr('transform', 'translate(' + this._graphMargins.left + ',' + this._graphMargins.top + ')');
var obj = this.getScaleAndLine(data);
var yAxisGenerator;
if (graphName == 'cpu') {
yAxisGenerator = d3.axisLeft(obj.yScale)
.tickFormat(function (d) {
return d + '%';
});
yAxisGenerator.ticks(3);
} else if (graphName == 'mem') {
yAxisGenerator = d3.axisLeft(obj.yScale)
.tickFormat(function (d) {
return Util.humanizeMem(d);
});
yAxisGenerator.ticks(3);
}
var innerWidth = this._graphDimensions.x - this._graphMargins.left - this._graphMargins.right;
yAxisGenerator.tickSize(-innerWidth);
var yAxis = svg.append('g')
.attr('class', 'y-axis axis')
.style('font-size', '1em')
.call(yAxisGenerator);
yAxis.select('.domain').attr('stroke-width', 0);
yAxis.selectAll('.tick line').attr('stroke', '#EDEDED');
// add empty axis
var xAxis = svg.append('g')
.attr('class', 'x-axis axis')
.attr('transform', 'translate(0,' + (this._graphDimensions.y - this._graphMargins.bottom - this._graphMargins.top) + ')')
.call(d3.axisBottom(obj.xScale).tickSize(0).tickValues([]));
xAxis.select('.domain').attr('stroke', '#DBDBDB');
var lineColor = 'blue';
if (graphName == 'mem') {
lineColor = 'green';
}
svg.append('path')
.attr('class', 'line')
.datum(data)
.attr('d', obj.line)
.attr('stroke', lineColor)
.attr('stroke-width', 2)
.attr('stroke-linejoin', 'round')
.attr('fill', 'none');
graphChild.appendChild(figure);
tileParent.appendChild(graphChild);
return tileParent;
},
getScaleAndLine: function (data) {
var xAccessor = function (d) {
return d.time;
};
var yAccessor = function (d) {
return d.value;
};
var xDomain = d3.extent(data, xAccessor);
var yDomain = [0, d3.max(data, yAccessor)];
var width = this._graphDimensions.x - this._graphMargins.left - this._graphMargins.right;
var height = this._graphDimensions.y - this._graphMargins.top - this._graphMargins.bottom;
var xScale = d3.scaleTime()
.domain(xDomain)
.range([0, width]);
var yScale = d3.scaleLinear()
.domain(yDomain)
.range([height, 0]);
var line = d3.line()
.x(function (d) {
return xScale(xAccessor(d));
}).y(function (d) {
return yScale(yAccessor(d));
}).curve(d3.curveBumpX);
return {
xScale: xScale,
yScale: yScale,
line: line,
};
},
createRow: function (filename, mem, pid) {
var row = document.createElement('tr');
row.id = 'doc-' + pid;
var documentCell = document.createElement('td');
documentCell.textContent = filename;
documentCell.className = 'has-text-left';
var memoryCell = document.createElement('td');
memoryCell.textContent = mem;
memoryCell.className = 'has-text-centered docmem';
row.appendChild(documentCell);
row.appendChild(memoryCell);
return row;
},
createDocumentTable: function (documents) {
var table = document.createElement('table');
table.className = 'table is-fullwidth is-striped is-bordered';
var tableHeader = document.createElement('thead');
var tableHeaderRow = document.createElement('tr');
var documentNameHeader = document.createElement('th');
documentNameHeader.textContent = _('Document');
documentNameHeader.className = 'has-text-centered';
var documentMemoryHeader = document.createElement('th');
documentMemoryHeader.textContent = _('Memory');
documentMemoryHeader.className = 'has-text-centered';
tableHeaderRow.appendChild(documentNameHeader);
tableHeaderRow.appendChild(documentMemoryHeader);
tableHeader.appendChild(tableHeaderRow);
table.appendChild(tableHeader);
var tableBody = document.createElement('tbody');
var that = this;
documents.forEach(function (doc) {
var row = that.createRow(doc.documentName, Util.humanizeMem(doc.memoryConsumed), doc.pid);
tableBody.appendChild(row);
});
table.appendChild(tableBody);
return table;
},
createTile: function (heading, value, id) {
var tile = document.createElement('div');
tile.className = 'tile has-text-centered is-fullwidth';
var tileParent = document.createElement('div');
tileParent.className = 'tile is-parent';
var tileChild = document.createElement('div');
tileChild.className = 'tile is-child has-text-centered';
var elementHeading = document.createElement('p');
elementHeading.className = 'heading';
elementHeading.textContent = heading;
var elementValue = document.createElement('p');
elementValue.className = 'subtitle';
elementValue.textContent = value;
elementValue.id = id;
tileChild.appendChild(elementHeading);
tileChild.appendChild(elementValue);
tileParent.appendChild(tileChild);
return tileParent;
},
createAnchor: function (server) {
var anchor = document.createElement('a');
anchor.className = 'list-item';
anchor.id = 'anchor' + server.serverId;
anchor.href = server.ingressUrl + '/browser/dist/admin/admin.html?RouteToken=' + server.routeToken;
anchor.setAttribute('target', '_blank');
if (server.podname) {
anchor.textContent = server.podname;
} else {
console.warn('podname doesnot exist, using serverId instead of podname on anchor tag');
anchor.textContent = server.serverId;
}
return anchor;
},
updateAnchor: function (server) {
var anchor = document.getElementById('anchor' + server.serverId);
anchor.id = 'anchor' + server.serverId;
anchor.href = server.ingressUrl + '/browser/dist/admin/admin.html?RouteToken=' + server.routeToken;
},
onSocketMessage: function (e) {
var textMsg;
if (typeof e.data === 'string') {
textMsg = e.data;
}
else {
textMsg = '';
}
if (textMsg.startsWith('stats')) {
var stats = JSON.parse(textMsg.substring(textMsg.indexOf('[')));
var srvList = document.querySelector('#column-admin-panel .list');
var that = this;
stats.forEach(function (srvStat) {
var anchor = document.getElementById('anchor' + srvStat.serverId);
if (anchor) {
that.updateAnchor(srvStat);
} else {
anchor = that.createAnchor(srvStat);
srvList.appendChild(anchor);
}
var cardId = 'card-' + srvStat.serverId;
var card = document.getElementById(cardId);
if (card) {
that.updateStat(srvStat.serverId, srvStat.memory, srvStat.cpu);
that.updateCardContent(cardId, srvStat);
} else {
that.addStat(srvStat.serverId);
that.createCard(srvStat);
}
});
} else if (textMsg.startsWith('documents')) {
var srvs = JSON.parse(textMsg.substring(textMsg.indexOf('[')));
var that = this;
srvs.forEach(function (srv) {
var cardId = 'card-' + srv.serverId;
var card = document.getElementById(cardId);
if (card && srv.documents.length) {
var table = that.createDocumentTable(srv.documents);
card.querySelector('.card-content').appendChild(table);
}
});
} else if (textMsg.startsWith('adddoc')) {
textMsg = textMsg.substring('adddoc'.length);
var tokens = textMsg.trim().split(' ');
if (tokens.length < 4) {
return;
}
var serverId = tokens[0];
var pid = tokens[1];
var filename = tokens[2];
var mem = tokens[3];
var cardId = 'card-' + serverId;
var card = document.getElementById(cardId);
if (card) {
var table = card.querySelector('table');
if (!table) {
table = this.createDocumentTable([{ documentName: decodeURI(filename), memoryConsumed: mem, pid: pid }]);
card.querySelector('.card-content').appendChild(table);
} else {
var row = this.createRow(decodeURI(filename), Util.humanizeMem(Number.parseInt(mem)), pid);
card.querySelector('tbody').appendChild(row);
}
}
} else if (textMsg.startsWith('rmdoc')) {
textMsg = textMsg.substring('rmdoc'.length);
var tokens = textMsg.trim().split(' ');
if (tokens.length < 3) {
return;
}
var serverId = tokens[0];
var pid = tokens[1];
var cardId = 'card-' + serverId;
var card = document.getElementById(cardId);
if (card) {
card.querySelector('#doc-' + pid).remove();
var rows = card.querySelectorAll('tbody tr');
if (rows.length == 0) {
card.querySelector('table').remove();
}
}
} else if (textMsg.startsWith('propchange')) {
textMsg = textMsg.substring('propchange'.length);
var tokens = textMsg.trim().split(' ');
if (tokens.length < 3) {
return;
}
var serverId = tokens[0];
var pid = tokens[1];
var newMem = tokens[2];
var cardId = 'card-' + serverId;
var card = document.getElementById(cardId);
if (card) {
var row = card.querySelector('#doc-' + pid);
if (row) {
row.querySelector('.docmem').textContent = Util.humanizeMem(Number.parseInt(newMem));
}
}
} else if (textMsg.startsWith('rmsrv')) {
textMsg = textMsg.substring('rmsrv'.length);
var tokens = textMsg.trim().split(' ');
if (tokens.length < 1) {
return;
}
var serverId = tokens[0];
var cardId = 'card-' + serverId;
var card = document.getElementById(cardId).parentElement;
if (card) {
card.remove();
}
var anchor = document.getElementById('anchor' + serverId);
if (anchor) {
anchor.remove();
}
} else if (textMsg.startsWith('scaling')) {
var msg = textMsg.split(' ')[1];
if (msg == 'true') {
var dialog = (new DlgLoading())
.text(_('Please wait kubernetes cluster is scaling...'));
dialog.open();
} else {
this.socket.send('stats');
DlgLoading.close();
}
} else if (textMsg == 'InvalidAuthToken' || textMsg == 'NotAuthenticated') {
var msg;
if (window.location.protocol === 'http:') {
// Browsers refuse to overwrite the jwt cookie in this case.
msg = _('Failed to set jwt authentication cookie over insecure connection');
}
else {
msg = _('Failed to authenticate this session over protocol %0');
msg = msg.replace('%0', window.location.protocol);
}
var dialog = (new DlgYesNo())
.title(_('Warning'))
.text(_(msg))
.yesButtonText(_('OK'))
.noButtonText(_('Cancel'))
.type('warning');
this.pageWillBeRefreshed = true;
dialog.open();
}
},
onSocketOpen: function () {
this.socket.send('auth jwt=' + window.jwtToken + ' routeToken=' + this.routeToken);
this.socket.send('stats');
this.socket.send('documents');
var that = this;
this._statIntervalId = setInterval(function () {
that.socket.send('stats');
}, this._interval);
},
onSocketClose: function () {
clearInterval(this._statIntervalId);
this.base.call(this);
}
});
Admin.ClusterOverview = function (host, routeToken) {
return new AdminClusterOverview(host, routeToken);
};

View File

@ -0,0 +1,35 @@
/* -*- js-indent-level: 8 -*- */
/* global AdminSocketBase Admin $ */
var AdminClusterOverviewAbout = AdminSocketBase.extend({
constructor: function(host, routeToken) {
this.base(host);
this.routeToken = routeToken;
},
onSocketMessage: function(e) {
var textMsg;
if (typeof e.data === 'string') {
textMsg = e.data;
}
else {
textMsg = '';
}
if (textMsg.startsWith('license')) {
$('#license-content').html(textMsg.substring('license: '.length));
}
},
onSocketOpen: function() {
this.socket.send('auth jwt=' + window.jwtToken + ' routeToken=' + this.routeToken);
this.socket.send('license');
},
onSocketClose: function() {
this.base.call(this);
}
});
Admin.ClusterOverviewAbout = function(host, routeToken) {
return new AdminClusterOverviewAbout(host, routeToken);
};

View File

@ -1,8 +1,17 @@
/* -*- js-indent-level: 8 -*- */
/*
Socket to be intialized on opening the analytics page in Admin console
containing various graphs to show to the user on specified interval
*/
* Copyright the Collabora Online contributors.
*
* SPDX-License-Identifier: MPL-2.0
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
*/
/*
* Socket to be intialized on opening the analytics page in Admin console
* containing various graphs to show to the user on specified interval
*/
/* global _ d3 Util AdminSocketBase $ Admin */
var AdminSocketAnalytics = AdminSocketBase.extend({

Some files were not shown because too many files have changed in this diff Show More