In desktop-browser-online-calc, when the sidebar is shown, the
tabs/sheets bar is partly covered by it. This is a problem when there
are many sheets in the calc document because it is impossible to
switch to last few sheets because sidebar covers those entries in
the tabs-bar.
This patch adjusts the tab-bar container's width according to sidebar
width changes just like how formula-input canvas width is adjusted.
This also includes some css adjustments neccessary to hide the ugly
browser induced vertical-scrollbar for the child of tabs container
when adjusting the width of the container.
Change-Id: Iea3a658926d6f563a970bb9b6da9807818d36c26
Reviewed-on: https://gerrit.libreoffice.org/c/online/+/89897
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-by: Henry Castro <hcastro@collabora.com>
Reviewed-by: Michael Meeks <michael.meeks@collabora.com>
Allows comparing tokens with C strings without a heap allocation. Do the
same when comparing two tokens from two different StringVectors.
And use it at all places where operator ==() has an argument, which is a
StringVector::operator []() result.
Change-Id: Id36eff96767ab99b235ecbd12fb14446a3efa869
Reviewed-on: https://gerrit.libreoffice.org/c/online/+/90201
Reviewed-by: Michael Meeks <michael.meeks@collabora.com>
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Even when the document reached the boundary,
autoscrolling function was being called unnecessary
until certain conditions are met
this did not cause the document to scroll beyond the boundary
bu it used to consume some CPU
follow up for: https://gerrit.libreoffice.org/c/online/+/88072
Change-Id: I1cb6d6917c70de18af369d827e986a16eeb50c99
Reviewed-on: https://gerrit.libreoffice.org/c/online/+/88421
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-by: Henry Castro <hcastro@collabora.com>
There is not much more we can test about styles,
since now we have only an apply style button.
Change-Id: I92a1a6dc60701743af44928966475cf4471b317b
Reviewed-on: https://gerrit.libreoffice.org/c/online/+/90108
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-by: Tamás Zolnai <tamas.zolnai@collabora.com>
In mobile vertical view impress slide previews were not visible
Change-Id: I24420577769e1124f9c7004ced54786522aa4bce
Reviewed-on: https://gerrit.libreoffice.org/c/online/+/89758
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-by: Henry Castro <hcastro@collabora.com>
Before this patch, it used to scroll a fixed 120 px and does not
guarantee the visibility of the last tab especially if there are
lots of sheets in the document.
For scrolling to last tab, just use native scrollLeft attribute
rather than relying on jquery. On setting native scrollLeft to a
very high value, it ensures that it scrolls to the maximum possible
level (and shows the last tab) according to MDN scrollLeft documentation.
https://developer.mozilla.org/en-US/docs/Web/API/Element/scrollLeft
Sadly jquery documentation for its scrollLeft() does not mention
anything about the behaviour on setting a very high value(more than
maximum scroll), even though it appears to work.
Change-Id: I05142c1d3d63551fa2dc8359e41e30edc78a7d09
Reviewed-on: https://gerrit.libreoffice.org/c/online/+/89948
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-by: Henry Castro <hcastro@collabora.com>
Sometimes it is very useful to have one "lokit" process,
to focus on a 100% reproducible bug, and not worry
that server pre-spawn several processes.
Change-Id: I414a8145b53a0601a282cba9c245833f5d07f404
Reviewed-on: https://gerrit.libreoffice.org/c/online/+/89999
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-by: Henry Castro <hcastro@collabora.com>
Whenever the tab-bar contents are updated, restore the last
known scroll position.
This fixes a very annoying problem while selecting a sheet in
a document with many many sheets. Everytime the user selects a sheet
(closer to the last sheet), the tab-bar's scroll position is reset
to sheet#1, so if the user wants to select another sheet near the
last sheet, they have to scroll again a lot to see it.
Change-Id: I7e79b6e1a7b19223e1dbd9b3aab6c6f2b4d422b2
Reviewed-on: https://gerrit.libreoffice.org/c/online/+/89946
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-by: Henry Castro <hcastro@collabora.com>
Probably these were just not adapted by accident in commit
f70e627795 (WebSocket - simplify
handleMessage for now., 2020-03-05).
Change-Id: I578d95d938c0c466e9547dcda3d2b297dc347a34
Reviewed-on: https://gerrit.libreoffice.org/c/online/+/90076
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
WebSocketHandler handles this complexity for us now, and for the
forseeable future. Simplify to prepare for larger re-factor.
Change-Id: I73b919885adc358cb6502a13492cdac85c34459c
Reviewed-on: https://gerrit.libreoffice.org/c/online/+/90059
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-by: Michael Meeks <michael.meeks@collabora.com>
fix runing the server with --disable-setcap, very useful
to debug when attaching kit process
Change-Id: I5ded5a1aa1924a9325ae76be46b32c0020d8ce35
WARNING: This is just for development and debugging purposes
Reviewed-on: https://gerrit.libreoffice.org/c/online/+/89970
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-by: Henry Castro <hcastro@collabora.com>
A crash happens when "back" is hit with a NPE exception because
mainHandler is null (not yet initilized). This changes the code
so mainHandler is initialized on demand and if not before, then
at least when initUI is called.
Change-Id: Id20b2093315ba41dac205fc4e94f31d00a4fe1f1
Reviewed-on: https://gerrit.libreoffice.org/c/online/+/89953
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-by: Michael Meeks <michael.meeks@collabora.com>
It is a flexible bundling of all javascript libraries and
each platform (ANDROID, IOS, Desktop) can remove or add
from node_modules or imported according to its requirements.
Maybe in a near future some external libraries could be loaded
on demand or lazy loading that are not necessary when the page
is loading.
Change-Id: Ief5d4973ab29a4fb3c4848c3e1653a24fff0da69
Reviewed-on: https://gerrit.libreoffice.org/c/online/+/89860
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Tested-by: Henry Castro <hcastro@collabora.com>
Reviewed-by: Henry Castro <hcastro@collabora.com>
It's not necessary when we build with one job, but when
there are more jobs they try to start their own Xvfb
and they might use the same DISPLAY number for that
which leads to a failure or a freeze.
See also:
https://docs.cypress.io/guides/guides/continuous-integration.html#Xvfb
Change-Id: I2fb301b1d8e889b2898d6792fb38cece303129a6
Because in this case, the output of the different threads will be
mixed in the command line.
For sequential build keep the original behavior.
Change-Id: Ibf9bf7c6111f8b5b0cf188fab66b97dedd613c65
$.inArray does not work because the parsed msg
is not an array
Change-Id: I68a8312da17b0832b09a88afeaf05ad75a2c6e2d
Reviewed-on: https://gerrit.libreoffice.org/c/online/+/89833
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-by: Andras Timar <andras.timar@collabora.com>
This sets the "launchMode" of the LOActivity to "singleTask" and
implements "onNewIntent". This is necessary so that we don't
duplicate LOActivity instances, as that isn't handled correctly
and can cause a freeze or in some cases that text input from one
instance is sent to the other. The back button stack isn't ideal
as it still can return us to LibreOfficeUIActivity even when the
activity is started from some other app, but this at least is
consistent with how some other apps work.
Change-Id: Idd11214578ec124661e2612bb49ba7e4bc4f3cea
Reviewed-on: https://gerrit.libreoffice.org/c/online/+/89811
Reviewed-by: Michael Meeks <michael.meeks@collabora.com>
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
It is a flexible bundling of the loleafet source files
and each platform (ANDROID, IOS, DESKTOP) can prevent to
bundle some files that is not necessary.
(i.e Mouse handling in native mobile devices)
Change-Id: If018bcc8682df5ae4bf5dd9943aa977e18c0de36
Reviewed-on: https://gerrit.libreoffice.org/c/online/+/89734
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Tested-by: Henry Castro <hcastro@collabora.com>
Reviewed-by: Henry Castro <hcastro@collabora.com>
Debian 8 has gcc-4.9, which emits -Werror in case a parameter and a
member function has the same name. Given that we also use -Werror
unconditionally, this breaks the build. Newer gcc/clang versions relaxed
this warning, so this was not a problem in those cases.
Change-Id: I7ad09370d96aa7384b2c117dd8de421644898b50
Reviewed-on: https://gerrit.libreoffice.org/c/online/+/89785
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>